Thu Jan 28 01:57:31 2021 UTC ()
Remove x86_genfb_mtrr_init. PATs have been available since the Pentium III
and this code has been #if notyet'd shortly after being introduced.


(jmcneill)
diff -r1.4 -r1.5 src/sys/arch/x86/include/genfb_machdep.h
diff -r1.87 -r1.88 src/sys/arch/x86/pci/pci_machdep.c
diff -r1.15 -r1.16 src/sys/arch/x86/x86/genfb_machdep.c
diff -r1.12 -r1.13 src/sys/arch/x86/x86/hyperv.c

cvs diff -r1.4 -r1.5 src/sys/arch/x86/include/genfb_machdep.h (expand / switch to unified diff)

--- src/sys/arch/x86/include/genfb_machdep.h 2019/11/30 05:28:28 1.4
+++ src/sys/arch/x86/include/genfb_machdep.h 2021/01/28 01:57:31 1.5
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: genfb_machdep.h,v 1.4 2019/11/30 05:28:28 nonaka Exp $ */ 1/* $NetBSD: genfb_machdep.h,v 1.5 2021/01/28 01:57:31 jmcneill Exp $ */
2 2
3/*- 3/*-
4 * Copyright (c) 2009 Jared D. McNeill <jmcneill@invisible.ca> 4 * Copyright (c) 2009 Jared D. McNeill <jmcneill@invisible.ca>
5 * All rights reserved. 5 * All rights reserved.
6 * 6 *
7 * Redistribution and use in source and binary forms, with or without 7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions 8 * modification, are permitted provided that the following conditions
9 * are met: 9 * are met:
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer. 11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright 12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the 13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution. 14 * documentation and/or other materials provided with the distribution.
@@ -21,18 +21,17 @@ @@ -21,18 +21,17 @@
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26 * POSSIBILITY OF SUCH DAMAGE. 26 * POSSIBILITY OF SUCH DAMAGE.
27 */ 27 */
28 28
29#ifndef _X86_GENFB_MACHDEP_H 29#ifndef _X86_GENFB_MACHDEP_H
30#define _X86_GENFB_MACHDEP_H 30#define _X86_GENFB_MACHDEP_H
31 31
32int x86_genfb_init(void); 32int x86_genfb_init(void);
33int x86_genfb_cnattach(void); 33int x86_genfb_cnattach(void);
34void x86_genfb_mtrr_init(uint64_t, uint32_t); 
35void x86_genfb_set_console_dev(device_t); 34void x86_genfb_set_console_dev(device_t);
36void x86_genfb_ddb_trap_callback(int); 35void x86_genfb_ddb_trap_callback(int);
37 36
38#endif /* !_X86_GENFB_MACHDEP_H */ 37#endif /* !_X86_GENFB_MACHDEP_H */

cvs diff -r1.87 -r1.88 src/sys/arch/x86/pci/pci_machdep.c (expand / switch to unified diff)

--- src/sys/arch/x86/pci/pci_machdep.c 2020/05/04 15:55:56 1.87
+++ src/sys/arch/x86/pci/pci_machdep.c 2021/01/28 01:57:31 1.88
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: pci_machdep.c,v 1.87 2020/05/04 15:55:56 jdolecek Exp $ */ 1/* $NetBSD: pci_machdep.c,v 1.88 2021/01/28 01:57:31 jmcneill Exp $ */
2 2
3/*- 3/*-
4 * Copyright (c) 1997, 1998 The NetBSD Foundation, Inc. 4 * Copyright (c) 1997, 1998 The NetBSD Foundation, Inc.
5 * All rights reserved. 5 * All rights reserved.
6 * 6 *
7 * This code is derived from software contributed to The NetBSD Foundation 7 * This code is derived from software contributed to The NetBSD Foundation
8 * by Jason R. Thorpe of the Numerical Aerospace Simulation Facility, 8 * by Jason R. Thorpe of the Numerical Aerospace Simulation Facility,
9 * NASA Ames Research Center. 9 * NASA Ames Research Center.
10 * 10 *
11 * Redistribution and use in source and binary forms, with or without 11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions 12 * modification, are permitted provided that the following conditions
13 * are met: 13 * are met:
14 * 1. Redistributions of source code must retain the above copyright 14 * 1. Redistributions of source code must retain the above copyright
@@ -63,27 +63,27 @@ @@ -63,27 +63,27 @@
63/* 63/*
64 * Machine-specific functions for PCI autoconfiguration. 64 * Machine-specific functions for PCI autoconfiguration.
65 * 65 *
66 * On PCs, there are two methods of generating PCI configuration cycles. 66 * On PCs, there are two methods of generating PCI configuration cycles.
67 * We try to detect the appropriate mechanism for this machine and set 67 * We try to detect the appropriate mechanism for this machine and set
68 * up a few function pointers to access the correct method directly. 68 * up a few function pointers to access the correct method directly.
69 * 69 *
70 * The configuration method can be hard-coded in the config file by 70 * The configuration method can be hard-coded in the config file by
71 * using `options PCI_CONF_MODE=N', where `N' is the configuration mode 71 * using `options PCI_CONF_MODE=N', where `N' is the configuration mode
72 * as defined in section 3.6.4.1, `Generating Configuration Cycles'. 72 * as defined in section 3.6.4.1, `Generating Configuration Cycles'.
73 */ 73 */
74 74
75#include <sys/cdefs.h> 75#include <sys/cdefs.h>
76__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.87 2020/05/04 15:55:56 jdolecek Exp $"); 76__KERNEL_RCSID(0, "$NetBSD: pci_machdep.c,v 1.88 2021/01/28 01:57:31 jmcneill Exp $");
77 77
78#include <sys/types.h> 78#include <sys/types.h>
79#include <sys/param.h> 79#include <sys/param.h>
80#include <sys/time.h> 80#include <sys/time.h>
81#include <sys/systm.h> 81#include <sys/systm.h>
82#include <sys/errno.h> 82#include <sys/errno.h>
83#include <sys/device.h> 83#include <sys/device.h>
84#include <sys/bus.h> 84#include <sys/bus.h>
85#include <sys/cpu.h> 85#include <sys/cpu.h>
86#include <sys/kmem.h> 86#include <sys/kmem.h>
87 87
88#include <uvm/uvm_extern.h> 88#include <uvm/uvm_extern.h>
89 89
@@ -1008,28 +1008,26 @@ x86_genfb_set_mapreg(void *opaque, int i @@ -1008,28 +1008,26 @@ x86_genfb_set_mapreg(void *opaque, int i
1008 outb(IO_VGA + VGA_DAC_PALETTE, (uint8_t)b >> 2); 1008 outb(IO_VGA + VGA_DAC_PALETTE, (uint8_t)b >> 2);
1009} 1009}
1010 1010
1011static bool 1011static bool
1012x86_genfb_setmode(struct genfb_softc *sc, int newmode) 1012x86_genfb_setmode(struct genfb_softc *sc, int newmode)
1013{ 1013{
1014#if NGENFB > 0 1014#if NGENFB > 0
1015# if NACPICA > 0 && defined(VGA_POST) 1015# if NACPICA > 0 && defined(VGA_POST)
1016 static int curmode = WSDISPLAYIO_MODE_EMUL; 1016 static int curmode = WSDISPLAYIO_MODE_EMUL;
1017# endif 1017# endif
1018 1018
1019 switch (newmode) { 1019 switch (newmode) {
1020 case WSDISPLAYIO_MODE_EMUL: 1020 case WSDISPLAYIO_MODE_EMUL:
1021 x86_genfb_mtrr_init(sc->sc_fboffset, 
1022 sc->sc_height * sc->sc_stride); 
1023# if NACPICA > 0 && defined(VGA_POST) 1021# if NACPICA > 0 && defined(VGA_POST)
1024 if (curmode != newmode) { 1022 if (curmode != newmode) {
1025 if (vga_posth != NULL && acpi_md_vesa_modenum != 0) { 1023 if (vga_posth != NULL && acpi_md_vesa_modenum != 0) {
1026 vga_post_set_vbe(vga_posth, 1024 vga_post_set_vbe(vga_posth,
1027 acpi_md_vesa_modenum); 1025 acpi_md_vesa_modenum);
1028 } 1026 }
1029 } 1027 }
1030# endif 1028# endif
1031 break; 1029 break;
1032 } 1030 }
1033 1031
1034# if NACPICA > 0 && defined(VGA_POST) 1032# if NACPICA > 0 && defined(VGA_POST)
1035 curmode = newmode; 1033 curmode = newmode;

cvs diff -r1.15 -r1.16 src/sys/arch/x86/x86/genfb_machdep.c (expand / switch to unified diff)

--- src/sys/arch/x86/x86/genfb_machdep.c 2019/11/30 05:28:28 1.15
+++ src/sys/arch/x86/x86/genfb_machdep.c 2021/01/28 01:57:31 1.16
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: genfb_machdep.c,v 1.15 2019/11/30 05:28:28 nonaka Exp $ */ 1/* $NetBSD: genfb_machdep.c,v 1.16 2021/01/28 01:57:31 jmcneill Exp $ */
2 2
3/*- 3/*-
4 * Copyright (c) 2009 Jared D. McNeill <jmcneill@invisible.ca> 4 * Copyright (c) 2009 Jared D. McNeill <jmcneill@invisible.ca>
5 * All rights reserved. 5 * All rights reserved.
6 * 6 *
7 * Redistribution and use in source and binary forms, with or without 7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions 8 * modification, are permitted provided that the following conditions
9 * are met: 9 * are met:
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer. 11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright 12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the 13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution. 14 * documentation and/or other materials provided with the distribution.
@@ -21,41 +21,38 @@ @@ -21,41 +21,38 @@
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26 * POSSIBILITY OF SUCH DAMAGE. 26 * POSSIBILITY OF SUCH DAMAGE.
27 */ 27 */
28 28
29/* 29/*
30 * Early attach support for raster consoles 30 * Early attach support for raster consoles
31 */ 31 */
32 32
33#include <sys/cdefs.h> 33#include <sys/cdefs.h>
34__KERNEL_RCSID(0, "$NetBSD: genfb_machdep.c,v 1.15 2019/11/30 05:28:28 nonaka Exp $"); 34__KERNEL_RCSID(0, "$NetBSD: genfb_machdep.c,v 1.16 2021/01/28 01:57:31 jmcneill Exp $");
35 
36#include "opt_mtrr.h" 
37 35
38#include <sys/param.h> 36#include <sys/param.h>
39#include <sys/conf.h> 37#include <sys/conf.h>
40#include <sys/device.h> 38#include <sys/device.h>
41#include <sys/ioctl.h> 39#include <sys/ioctl.h>
42#include <sys/kernel.h> 40#include <sys/kernel.h>
43#include <sys/kmem.h> 41#include <sys/kmem.h>
44#include <sys/lwp.h> 42#include <sys/lwp.h>
45 43
46#include <sys/bus.h> 44#include <sys/bus.h>
47#include <machine/bootinfo.h> 45#include <machine/bootinfo.h>
48#include <machine/mtrr.h> 
49 46
50#include <dev/wscons/wsconsio.h> 47#include <dev/wscons/wsconsio.h>
51#include <dev/wscons/wsdisplayvar.h> 48#include <dev/wscons/wsdisplayvar.h>
52#include <dev/rasops/rasops.h> 49#include <dev/rasops/rasops.h>
53#include <dev/wsfont/wsfont.h> 50#include <dev/wsfont/wsfont.h>
54#include <dev/wscons/wsdisplay_vconsvar.h> 51#include <dev/wscons/wsdisplay_vconsvar.h>
55 52
56#include <dev/wsfb/genfbvar.h> 53#include <dev/wsfb/genfbvar.h>
57#include <arch/x86/include/genfb_machdep.h> 54#include <arch/x86/include/genfb_machdep.h>
58 55
59#include "wsdisplay.h" 56#include "wsdisplay.h"
60#include "genfb.h" 57#include "genfb.h"
61#include "acpica.h" 58#include "acpica.h"
@@ -89,62 +86,26 @@ x86_genfb_set_console_dev(device_t dev) @@ -89,62 +86,26 @@ x86_genfb_set_console_dev(device_t dev)
89void 86void
90x86_genfb_ddb_trap_callback(int where) 87x86_genfb_ddb_trap_callback(int where)
91{ 88{
92 if (x86_genfb_console_dev == NULL) 89 if (x86_genfb_console_dev == NULL)
93 return; 90 return;
94 91
95 if (where) { 92 if (where) {
96 genfb_enable_polling(x86_genfb_console_dev); 93 genfb_enable_polling(x86_genfb_console_dev);
97 } else { 94 } else {
98 genfb_disable_polling(x86_genfb_console_dev); 95 genfb_disable_polling(x86_genfb_console_dev);
99 } 96 }
100} 97}
101 98
102void 
103x86_genfb_mtrr_init(uint64_t physaddr, uint32_t size) 
104{ 
105#if notyet 
106#ifdef MTRR 
107 struct mtrr mtrr; 
108 int error, n; 
109 
110 if (mtrr_funcs == NULL) { 
111 aprint_debug("%s: no mtrr funcs\n", __func__); 
112 return; 
113 } 
114 
115 mtrr.base = physaddr; 
116 mtrr.len = size; 
117 mtrr.type = MTRR_TYPE_WC; 
118 mtrr.flags = MTRR_VALID; 
119 mtrr.owner = 0; 
120 
121 aprint_debug("%s: 0x%" PRIx64 "-0x%" PRIx64 "\n", __func__, 
122 mtrr.base, mtrr.base + mtrr.len - 1); 
123 
124 n = 1; 
125 KERNEL_LOCK(1, NULL); 
126 error = mtrr_set(&mtrr, &n, curlwp->l_proc, MTRR_GETSET_KERNEL); 
127 if (n != 0) 
128 mtrr_commit(); 
129 KERNEL_UNLOCK_ONE(NULL); 
130 
131 aprint_debug("%s: mtrr_set returned %d\n", __func__, error); 
132#else 
133 aprint_debug("%s: kernel lacks MTRR option\n", __func__); 
134#endif 
135#endif 
136} 
137 
138int 99int
139x86_genfb_init(void) 100x86_genfb_init(void)
140{ 101{
141 static int inited, attached; 102 static int inited, attached;
142 struct rasops_info *ri = &x86_genfb_console_screen.scr_ri; 103 struct rasops_info *ri = &x86_genfb_console_screen.scr_ri;
143 const struct btinfo_framebuffer *fbinfo; 104 const struct btinfo_framebuffer *fbinfo;
144 bus_space_tag_t t = x86_bus_space_mem; 105 bus_space_tag_t t = x86_bus_space_mem;
145 bus_space_handle_t h; 106 bus_space_handle_t h;
146 void *bits; 107 void *bits;
147 int err; 108 int err;
148 109
149 if (inited) 110 if (inited)
150 return attached; 111 return attached;

cvs diff -r1.12 -r1.13 src/sys/arch/x86/x86/hyperv.c (expand / switch to unified diff)

--- src/sys/arch/x86/x86/hyperv.c 2020/10/12 12:11:03 1.12
+++ src/sys/arch/x86/x86/hyperv.c 2021/01/28 01:57:31 1.13
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: hyperv.c,v 1.12 2020/10/12 12:11:03 ryoon Exp $ */ 1/* $NetBSD: hyperv.c,v 1.13 2021/01/28 01:57:31 jmcneill Exp $ */
2 2
3/*- 3/*-
4 * Copyright (c) 2009-2012,2016-2017 Microsoft Corp. 4 * Copyright (c) 2009-2012,2016-2017 Microsoft Corp.
5 * Copyright (c) 2012 NetApp Inc. 5 * Copyright (c) 2012 NetApp Inc.
6 * Copyright (c) 2012 Citrix Inc. 6 * Copyright (c) 2012 Citrix Inc.
7 * All rights reserved. 7 * All rights reserved.
8 * 8 *
9 * Redistribution and use in source and binary forms, with or without 9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions 10 * modification, are permitted provided that the following conditions
11 * are met: 11 * are met:
12 * 1. Redistributions of source code must retain the above copyright 12 * 1. Redistributions of source code must retain the above copyright
13 * notice unmodified, this list of conditions, and the following 13 * notice unmodified, this list of conditions, and the following
14 * disclaimer. 14 * disclaimer.
@@ -23,27 +23,27 @@ @@ -23,27 +23,27 @@
23 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 23 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
24 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */ 29 */
30 30
31/** 31/**
32 * Implements low-level interactions with Hyper-V/Azure 32 * Implements low-level interactions with Hyper-V/Azure
33 */ 33 */
34#include <sys/cdefs.h> 34#include <sys/cdefs.h>
35#ifdef __KERNEL_RCSID 35#ifdef __KERNEL_RCSID
36__KERNEL_RCSID(0, "$NetBSD: hyperv.c,v 1.12 2020/10/12 12:11:03 ryoon Exp $"); 36__KERNEL_RCSID(0, "$NetBSD: hyperv.c,v 1.13 2021/01/28 01:57:31 jmcneill Exp $");
37#endif 37#endif
38#ifdef __FBSDID 38#ifdef __FBSDID
39__FBSDID("$FreeBSD: head/sys/dev/hyperv/vmbus/hyperv.c 331757 2018-03-30 02:25:12Z emaste $"); 39__FBSDID("$FreeBSD: head/sys/dev/hyperv/vmbus/hyperv.c 331757 2018-03-30 02:25:12Z emaste $");
40#endif 40#endif
41 41
42#ifdef _KERNEL_OPT 42#ifdef _KERNEL_OPT
43#include "lapic.h" 43#include "lapic.h"
44#include "genfb.h" 44#include "genfb.h"
45#include "opt_ddb.h" 45#include "opt_ddb.h"
46#include "vmbus.h" 46#include "vmbus.h"
47#include "wsdisplay.h" 47#include "wsdisplay.h"
48#endif 48#endif
49 49
@@ -1046,34 +1046,26 @@ hyperv_modcmd(modcmd_t cmd, void *aux) @@ -1046,34 +1046,26 @@ hyperv_modcmd(modcmd_t cmd, void *aux)
1046 return rv; 1046 return rv;
1047} 1047}
1048 1048
1049#if NVMBUS > 0 1049#if NVMBUS > 0
1050/* 1050/*
1051 * genfb at vmbus 1051 * genfb at vmbus
1052 */ 1052 */
1053static struct genfb_pmf_callback pmf_cb; 1053static struct genfb_pmf_callback pmf_cb;
1054static struct genfb_mode_callback mode_cb; 1054static struct genfb_mode_callback mode_cb;
1055 1055
1056static bool 1056static bool
1057x86_genfb_setmode(struct genfb_softc *sc, int newmode) 1057x86_genfb_setmode(struct genfb_softc *sc, int newmode)
1058{ 1058{
1059#if NGENFB > 0 
1060 switch (newmode) { 
1061 case WSDISPLAYIO_MODE_EMUL: 
1062 x86_genfb_mtrr_init(sc->sc_fboffset, 
1063 sc->sc_height * sc->sc_stride); 
1064 break; 
1065 } 
1066#endif 
1067 return true; 1059 return true;
1068} 1060}
1069 1061
1070static bool 1062static bool
1071x86_genfb_suspend(device_t dev, const pmf_qual_t *qual) 1063x86_genfb_suspend(device_t dev, const pmf_qual_t *qual)
1072{ 1064{
1073 return true; 1065 return true;
1074} 1066}
1075 1067
1076static bool 1068static bool
1077x86_genfb_resume(device_t dev, const pmf_qual_t *qual) 1069x86_genfb_resume(device_t dev, const pmf_qual_t *qual)
1078{ 1070{
1079#if NGENFB > 0 1071#if NGENFB > 0