Module Name: src Committed By: bouyer Date: Thu Jun 23 14:32:16 UTC 2022
Modified Files: src/sys/arch/xen/conf: files.compat src/sys/arch/xen/xen: hypervisor.c Log Message: Don't override isadma defflag for Xen, now that isadma is built for Xen PV too. While there, match amd64 mainbus and call isa_dmainit() before attaching acpi. Fixes a panic at boot on some hardware with a floppy disk controller. To generate a diff of this commit: cvs rdiff -u -r1.33 -r1.34 src/sys/arch/xen/conf/files.compat cvs rdiff -u -r1.95 -r1.96 src/sys/arch/xen/xen/hypervisor.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/xen/conf/files.compat diff -u src/sys/arch/xen/conf/files.compat:1.33 src/sys/arch/xen/conf/files.compat:1.34 --- src/sys/arch/xen/conf/files.compat:1.33 Sat Apr 25 15:26:17 2020 +++ src/sys/arch/xen/conf/files.compat Thu Jun 23 14:32:16 2022 @@ -1,4 +1,4 @@ -# $NetBSD: files.compat,v 1.33 2020/04/25 15:26:17 bouyer Exp $ +# $NetBSD: files.compat,v 1.34 2022/06/23 14:32:16 bouyer Exp $ # NetBSD: files.x86,v 1.10 2003/10/08 17:30:00 bouyer Exp # options for MP configuration through the MP spec @@ -9,7 +9,6 @@ defflag lapic.h XXXLAPIC defflag apm.h XXXAPM defflag eisa.h XXXEISA -defflag isadma.h XXXISADMA defflag mca.h XXXMCA defflag ega.h XXXEGA defflag pcdisplay.h XXXPCDISPLAY Index: src/sys/arch/xen/xen/hypervisor.c diff -u src/sys/arch/xen/xen/hypervisor.c:1.95 src/sys/arch/xen/xen/hypervisor.c:1.96 --- src/sys/arch/xen/xen/hypervisor.c:1.95 Wed May 25 15:52:25 2022 +++ src/sys/arch/xen/xen/hypervisor.c Thu Jun 23 14:32:16 2022 @@ -1,4 +1,4 @@ -/* $NetBSD: hypervisor.c,v 1.95 2022/05/25 15:52:25 bouyer Exp $ */ +/* $NetBSD: hypervisor.c,v 1.96 2022/06/23 14:32:16 bouyer Exp $ */ /* * Copyright (c) 2005 Manuel Bouyer. @@ -53,7 +53,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: hypervisor.c,v 1.95 2022/05/25 15:52:25 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: hypervisor.c,v 1.96 2022/06/23 14:32:16 bouyer Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -63,6 +63,7 @@ __KERNEL_RCSID(0, "$NetBSD: hypervisor.c #include "xenbus.h" #include "xencons.h" #include "isa.h" +#include "isadma.h" #include "pci.h" #include "acpica.h" #include "kernfs.h" @@ -689,6 +690,14 @@ hypervisor_attach(device_t parent, devic #if defined(DOM0OPS) #if defined(XENPV) +#if NISADMA > 0 && NACPICA > 0 + /* + * ACPI needs ISA DMA initialized before they start probing. + */ + isa_dmainit(&x86_isa_chipset, x86_bus_space_io, &isa_bus_dma_tag, + self); +#endif + #if NPCI > 0 #if NACPICA > 0 if (acpi_present) {