Subject: Re: custom kernel (from NetBSD one)
To: Joel CARNAT <joel@carnat.net>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: port-xen
Date: 05/09/2005 16:27:02
On Sat, May 07, 2005 at 06:07:16PM +0200, Joel CARNAT wrote:
> Hi,
> 
> just booting XEN0 (from netbsd-3 src) I see there is no ACPI nor
> CardBus support. As I have a laptop with bad APM issues and atheros
> wifi cardbus for connection, I feel a bit disapointed ;)
> 
> I tried to take my NetBSD kernel and add the diffs from GENERIC vs
> XEN0 but this does not work. First try said :
> ATHERIA.XEN0:262: ioapic*: unknown device `ioapic'
> ATHERIA.XEN0:290: acpi0: unknown device `acpi'
> ATHERIA.XEN0:297: acpiacad*: unknown device `acpiacad'
> ATHERIA.XEN0:298: acpibat*: unknown device `acpibat'
> ATHERIA.XEN0:299: acpibut*: unknown device `acpibut'
> ATHERIA.XEN0:300: acpiec*: unknown device `acpiec'
> ATHERIA.XEN0:301: acpilid*: unknown device `acpilid'
> ATHERIA.XEN0:302: acpitz*: unknown device `acpitz'
> ATHERIA.XEN0:305: com* at acpi?: `acpi' unknown
> ... blabla
> 
> Then I uncommented "include 	"arch/i386/conf/std.i386"" and got :
> ../../../../arch/xen/conf/std.xen:6: syntax error
> ../../../../arch/xen/conf/std.xen:8: already have options `EXEC_AOUT=1'
> ../../../../arch/xen/conf/std.xen:9: already have options `EXEC_ELF32=1'
> ../../../../arch/xen/conf/std.xen:10: already have options `EXEC_SCRIPT=1'
> ../../../../arch/xen/conf/std.xen:12: already have options `INET6_MD_CKSUM=1'
> ATHERIA.XEN0:1225: hypervisor*: unknown device `hypervisor'
> ... blabla
> 
> The diff between NetBSD and Xen kernel are :
> -(ptijo@atheria)-(NetBSD 3.0_BETA)-(0 jobs)-(Sat May 07)-
> -(17:58)-(/usr/src/sys/arch/i386/conf)- diff -u2 ATHERIA ATHERIA.XEN0 
> --- ATHERIA     2005-05-07 14:47:07.000000000 +0200
> +++ ATHERIA.XEN0        2005-05-07 18:04:53.000000000 +0200
> @@ -6,4 +6,5 @@
>  
>  include        "arch/i386/conf/std.i386"
> +include                "arch/xen/conf/std.xen"
>  
>  options        INCLUDE_CONFIG_FILE     # embed config file in kernel binary
> @@ -1220,2 +1221,11 @@
>  pseudo-device  wsfont
>  pseudo-device  ksyms                   # /dev/ksyms
> +
> +# xen
> +hypervisor*    at mainbus?             # Xen hypervisor
> +npx0           at hypervisor?          # x86 math coprocessor
> +xencons*       at hypervisor?          # Xen virtual console
> +pci*           at hypervisor? bus ?
> +#xen pseudo-devices
> +pseudo-device  xenevt
> +
> 
> So,
> 
> 1. is there ACPI and/or cardbus support on Xen (domain0) ?

No. ACPI can't be done as it's not exported by the Xen kernel to the domains.
ACPI is managed by the Xen kernel itself.
I'm not sure cardbus can work either, because the domain0 kernel doesn't
have access to the interrupt routing informations (but the Xen kernel may
take care of that).


-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--