diff options
| author | joerg <joerg@NetBSD.org> | 2008-07-31 14:05:05 +0000 |
|---|---|---|
| committer | joerg <joerg@NetBSD.org> | 2008-07-31 14:05:05 +0000 |
| commit | 0b2a6aef8430ed45db1db58ff49ee2bb6ac045ab (patch) | |
| tree | 3cc506376dbb51f083c0eaa96a93dceee429e347 /sys | |
| parent | 4a733c2463c6d232cca26aa5c07acf735a0068de (diff) | |
machdep.acpi_vbios_reset = 2 --> vga_pci_resume will use x86emu to do a
POST when options VGA_POST is present.
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/arch/x86/acpi/acpi_wakeup.c | 8 | ||||
| -rw-r--r-- | sys/arch/x86/x86/mpacpi.c | 10 | ||||
| -rw-r--r-- | sys/dev/pci/vga_pci.c | 9 |
3 files changed, 18 insertions, 9 deletions
diff --git a/sys/arch/x86/acpi/acpi_wakeup.c b/sys/arch/x86/acpi/acpi_wakeup.c index 3b76218ff77..851d67f65d5 100644 --- a/sys/arch/x86/acpi/acpi_wakeup.c +++ b/sys/arch/x86/acpi/acpi_wakeup.c @@ -1,4 +1,4 @@ -/* $NetBSD: acpi_wakeup.c,v 1.6 2008/05/11 15:32:20 ad Exp $ */ +/* $NetBSD: acpi_wakeup.c,v 1.7 2008/07/31 14:05:05 joerg Exp $ */ /*- * Copyright (c) 2002 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: acpi_wakeup.c,v 1.6 2008/05/11 15:32:20 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: acpi_wakeup.c,v 1.7 2008/07/31 14:05:05 joerg Exp $"); /*- * Copyright (c) 2001 Takanori Watanabe <takawata@jp.freebsd.org> @@ -109,7 +109,7 @@ static paddr_t acpi_wakeup_paddr = 3 * PAGE_SIZE; static vaddr_t acpi_wakeup_vaddr; static int acpi_md_node = CTL_EOL; -static int acpi_md_vbios_reset = 1; +int acpi_md_vbios_reset = 1; /* Referenced by dev/pci/vga_pci.c */ static int acpi_md_beep_on_reset = 0; static int sysctl_md_acpi_vbios_reset(SYSCTLFN_ARGS); @@ -446,7 +446,7 @@ sysctl_md_acpi_vbios_reset(SYSCTLFN_ARGS) if (error || newp == NULL) return error; - if (t < 0 || t > 1) + if (t < 0 || t > 2) return EINVAL; acpi_md_vbios_reset = t; diff --git a/sys/arch/x86/x86/mpacpi.c b/sys/arch/x86/x86/mpacpi.c index 14f4ccfd7de..1e69d64587e 100644 --- a/sys/arch/x86/x86/mpacpi.c +++ b/sys/arch/x86/x86/mpacpi.c @@ -1,4 +1,4 @@ -/* $NetBSD: mpacpi.c,v 1.67 2008/07/21 11:51:59 cegger Exp $ */ +/* $NetBSD: mpacpi.c,v 1.68 2008/07/31 14:05:05 joerg Exp $ */ /* * Copyright (c) 2003 Wasabi Systems, Inc. @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mpacpi.c,v 1.67 2008/07/21 11:51:59 cegger Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mpacpi.c,v 1.68 2008/07/31 14:05:05 joerg Exp $"); #include "acpi.h" #include "opt_acpi.h" @@ -750,6 +750,12 @@ mpacpi_pciroute(struct mpacpi_pcibus *mpr) break; dev = ACPI_HIWORD(ptrp->Address); + if (ptrp->Source[0] == 0 && + (ptrp->SourceIndex == 14 || ptrp->SourceIndex == 15)) { + printf("Skipping PCI routing entry for PCI IDE compat IRQ"); + continue; + } + mpi = &mp_intrs[mpacpi_intr_index]; mpi->bus_pin = (dev << 2) | (ptrp->Pin & 3); mpi->bus = mpb; diff --git a/sys/dev/pci/vga_pci.c b/sys/dev/pci/vga_pci.c index 3d524a0a940..e8bd2b7bc3f 100644 --- a/sys/dev/pci/vga_pci.c +++ b/sys/dev/pci/vga_pci.c @@ -1,4 +1,4 @@ -/* $NetBSD: vga_pci.c,v 1.42 2008/05/18 19:54:11 jmcneill Exp $ */ +/* $NetBSD: vga_pci.c,v 1.43 2008/07/31 14:05:05 joerg Exp $ */ /* * Copyright (c) 1995, 1996 Carnegie-Mellon University. @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: vga_pci.c,v 1.42 2008/05/18 19:54:11 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: vga_pci.c,v 1.43 2008/07/31 14:05:05 joerg Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -263,12 +263,15 @@ vga_pci_rescan(struct device *self, const char *ifattr, const int *locators) static bool vga_pci_resume(device_t dv PMF_FN_ARGS) { +#ifdef VGA_POST + extern int acpi_md_vbios_reset; +#endif struct vga_pci_softc *sc = device_private(dv); vga_resume(&sc->sc_vga); #ifdef VGA_POST - if (sc->sc_posth != NULL) + if (sc->sc_posth != NULL && acpi_md_vbios_reset == 2) vga_post_call(sc->sc_posth); #endif |
