qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Amos Kong <akong@redhat.com>
To: mst@redhat.com, linux-pci@vger.kernel.org, seabios@seabios.org,
	qemu-devel@nongnu.org, jbarnes@virtuousgeek.org, rjw@sisk.pl,
	alex.williamson@redhat.com, kevin@koconnor.net
Subject: Re: [Qemu-devel] [RESEND PATCH v3] hotplug: add device per func in ACPI DSDT tables
Date: Wed, 09 May 2012 15:35:02 +0800	[thread overview]
Message-ID: <4FAA1E26.4070102@redhat.com> (raw)
In-Reply-To: <20120509072452.14872.92530.stgit@t>

[-- Attachment #1: Type: text/plain, Size: 4619 bytes --]

On 09/05/12 15:24, Amos Kong wrote:
> Boot up a Linux VM with 8 pci block devices which
> are the 8 functions in one pci slot.
> | # qemu-kvm ...
> | -drive file=images/u0,if=none,id=drv0,format=qcow2,cache=none \
> | -device virtio-blk-pci,drive=drv0,id=v0,multifunction=on,addr=0x03.0 \
> | ....
> | -drive file=images/u7,if=none,id=drv7,format=qcow2,cache=none \
> | -device virtio-blk-pci,drive=drv7,id=v7,multifunction=on,addr=0x03.7 \
>
> Check devices in guest.
> | vm)# ls /dev/vd*
> |    vda vdb vdc vde vdf vdg vdh
> | vm)# lspci |grep block
> | 00:03.0 SCSI storage controller: Red Hat, Inc Virtio block device
> |    ...
> | 00:03.7 SCSI storage controller: Red Hat, Inc Virtio block device
> |
>
> Func1~7 still exist in guest after hot-removing the whole slot
> through qemu monitor.
> | vm)# lspci |grep block    (00:03.0 disappeared)
> | 00:03.1 SCSI storage controller: Red Hat, Inc Virtio block device (rev ff)
> |    ...
> | 00:03.7 SCSI storage controller: Red Hat, Inc Virtio block device (rev ff)
> | vm)# ls /dev/vd*          (vda disappeared)
> |    vdb vdc vde vdf vdg vdh
> | vm)# mkfs /dev/vdb
> |    INFO: task mkfs.ext2:1784 blocked for more than 120 seconds. (task hung)
>
>
> Currently only func0 is defined in ACPI DSDT table
> of seabios, and only hot-adding func0 would cause
> a ACPI event for notification. Other funcs except
> func0 wouldn't be registered in linux pci driver.
> (we can only found func0 in slot->funcs list of
> pci driver).
>
> When VM pci driver receives an ACPI event for
> hot-removing, it will only clean functions in
> slot->funcs list, the other funcs could not be
> cleaned.
>
> This patch adds device per function in ACPI DSDT tables,
> then all funcs will be registered in slot->funcs list.
> It's coincident with microsoft's example:
> http://www.microsoft.com/china/whdc/system/pnppwr/hotadd/hotplugpci.mspx#EUH

Attached 'seabios/out/ssdt-pcihp.dsl.i'.

btw, the first mail is little big (86K), please delete hex part
when you reply, thanks.


> Have tested with linux/winxp/win7, hot-adding/hot-remving,
> single/multiple function devices, they are all fine(all
> added devices can be removed).
>
> This patch includes some bits mst wrote, thanks!
> ---
> old discussion: http://marc.info/?l=kvm&m=132428400917405&w=2
>
> Signed-off-by: Amos Kong<akong@redhat.com>
> CC: Michael S. Tsirkin<mst@redhat.com>
> ---
>   src/ssdt-pcihp.dsl |   17
>   src/ssdt-pcihp.hex | 8869 +++++++++++++++++++++++++++++++++++++++++++++++++++-
>   2 files changed, 8781 insertions(+), 105 deletions(-)
>
> diff --git a/src/ssdt-pcihp.dsl b/src/ssdt-pcihp.dsl
> index 4b435b8..2a3c326 100644
> --- a/src/ssdt-pcihp.dsl
> +++ b/src/ssdt-pcihp.dsl
> @@ -17,14 +17,23 @@ DefinitionBlock ("ssdt-pcihp.aml", "SSDT", 0x01, "BXPC", "BXSSDTPCIHP", 0x1)
>           // at runtime, if the slot is detected to not support hotplug.
>           // Extract the offset of the address dword and the
>           // _EJ0 name to allow this patching.
> -#define hotplug_slot(slot)                              \
> -        Device (S##slot) {                              \
> +#define hotplug_func(slot, fn)                          \
> +        Device (S##slot##fn) {                          \
>              ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword  \
> -           Name (_ADR, 0x##slot##0000)                  \
> +           Name (_ADR, 0x##slot##000##fn)               \
>              ACPI_EXTRACT_METHOD_STRING aml_ej0_name      \
>              Method (_EJ0, 1) { Return(PCEJ(0x##slot)) }  \
>              Name (_SUN, 0x##slot)                        \
>           }
> +#define hotplug_slot(slot)     \
> +        hotplug_func(slot, 0)  \
> +        hotplug_func(slot, 1)  \
> +        hotplug_func(slot, 2)  \
> +        hotplug_func(slot, 3)  \
> +        hotplug_func(slot, 4)  \
> +        hotplug_func(slot, 5)  \
> +        hotplug_func(slot, 6)  \
> +        hotplug_func(slot, 7)
>
>           hotplug_slot(01)
>           hotplug_slot(02)
> @@ -59,7 +68,7 @@ DefinitionBlock ("ssdt-pcihp.aml", "SSDT", 0x01, "BXPC", "BXSSDTPCIHP", 0x1)
>           hotplug_slot(1f)
>
>   #define gen_pci_hotplug(slot)   \
> -            If (LEqual(Arg0, 0x##slot)) { Notify(S##slot, Arg1) }
> +            If (LEqual(Arg0, 0x##slot)) { Notify(S##slot##0, Arg1) }
>
>           Method(PCNT, 2) {
>               gen_pci_hotplug(01)
> diff --git a/src/ssdt-pcihp.hex b/src/ssdt-pcihp.hex
> index b15ad5a..b0c1e84 100644
> --- a/src/ssdt-pcihp.hex
> +++ b/src/ssdt-pcihp.hex
> @@ -1,80 +1,514 @@
>   static unsigned short aml_adr_dword[] = {
> -0x3e,
> -0x62,
> -0x88,

....

-- 
			Amos.

[-- Attachment #2: ssdt-pcihp.dsl.i --]
[-- Type: text/plain, Size: 51457 bytes --]


/* ACPI_EXTRACT_ALL_CODE ssdp_pcihp_aml */


DefinitionBlock ("ssdt-pcihp.aml", "SSDT", 0x01, "BXPC", "BXSSDTPCIHP", 0x1)
{






    External (\_SB.PCI0, DeviceObj)
    External (\_SB.PCI0.PCEJ, MethodObj)

    Scope(\_SB.PCI0) {
        Device (S010) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x010000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x01)) } Name (_SUN, 0x01) } Device (S011) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x010001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x01)) } Name (_SUN, 0x01) } Device (S012) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x010002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x01)) } Name (_SUN, 0x01) } Device (S013) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x010003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x01)) } Name (_SUN, 0x01) } Device (S014) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x010004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x01)) } Name (_SUN, 0x01) } Device (S015) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x010005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x01)) } Name (_SUN, 0x01) } Device (S016) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x010006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x01)) } Name (_SUN, 0x01) } Device (S017) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x010007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x01)) } Name (_SUN, 0x01) }
        Device (S020) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x020000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x02)) } Name (_SUN, 0x02) } Device (S021) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x020001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x02)) } Name (_SUN, 0x02) } Device (S022) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x020002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x02)) } Name (_SUN, 0x02) } Device (S023) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x020003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x02)) } Name (_SUN, 0x02) } Device (S024) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x020004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x02)) } Name (_SUN, 0x02) } Device (S025) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x020005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x02)) } Name (_SUN, 0x02) } Device (S026) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x020006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x02)) } Name (_SUN, 0x02) } Device (S027) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x020007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x02)) } Name (_SUN, 0x02) }
        Device (S030) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x030000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x03)) } Name (_SUN, 0x03) } Device (S031) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x030001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x03)) } Name (_SUN, 0x03) } Device (S032) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x030002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x03)) } Name (_SUN, 0x03) } Device (S033) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x030003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x03)) } Name (_SUN, 0x03) } Device (S034) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x030004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x03)) } Name (_SUN, 0x03) } Device (S035) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x030005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x03)) } Name (_SUN, 0x03) } Device (S036) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x030006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x03)) } Name (_SUN, 0x03) } Device (S037) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x030007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x03)) } Name (_SUN, 0x03) }
        Device (S040) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x040000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x04)) } Name (_SUN, 0x04) } Device (S041) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x040001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x04)) } Name (_SUN, 0x04) } Device (S042) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x040002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x04)) } Name (_SUN, 0x04) } Device (S043) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x040003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x04)) } Name (_SUN, 0x04) } Device (S044) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x040004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x04)) } Name (_SUN, 0x04) } Device (S045) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x040005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x04)) } Name (_SUN, 0x04) } Device (S046) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x040006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x04)) } Name (_SUN, 0x04) } Device (S047) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x040007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x04)) } Name (_SUN, 0x04) }
        Device (S050) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x050000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x05)) } Name (_SUN, 0x05) } Device (S051) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x050001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x05)) } Name (_SUN, 0x05) } Device (S052) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x050002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x05)) } Name (_SUN, 0x05) } Device (S053) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x050003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x05)) } Name (_SUN, 0x05) } Device (S054) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x050004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x05)) } Name (_SUN, 0x05) } Device (S055) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x050005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x05)) } Name (_SUN, 0x05) } Device (S056) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x050006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x05)) } Name (_SUN, 0x05) } Device (S057) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x050007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x05)) } Name (_SUN, 0x05) }
        Device (S060) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x060000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x06)) } Name (_SUN, 0x06) } Device (S061) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x060001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x06)) } Name (_SUN, 0x06) } Device (S062) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x060002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x06)) } Name (_SUN, 0x06) } Device (S063) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x060003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x06)) } Name (_SUN, 0x06) } Device (S064) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x060004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x06)) } Name (_SUN, 0x06) } Device (S065) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x060005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x06)) } Name (_SUN, 0x06) } Device (S066) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x060006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x06)) } Name (_SUN, 0x06) } Device (S067) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x060007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x06)) } Name (_SUN, 0x06) }
        Device (S070) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x070000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x07)) } Name (_SUN, 0x07) } Device (S071) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x070001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x07)) } Name (_SUN, 0x07) } Device (S072) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x070002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x07)) } Name (_SUN, 0x07) } Device (S073) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x070003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x07)) } Name (_SUN, 0x07) } Device (S074) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x070004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x07)) } Name (_SUN, 0x07) } Device (S075) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x070005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x07)) } Name (_SUN, 0x07) } Device (S076) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x070006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x07)) } Name (_SUN, 0x07) } Device (S077) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x070007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x07)) } Name (_SUN, 0x07) }
        Device (S080) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x080000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x08)) } Name (_SUN, 0x08) } Device (S081) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x080001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x08)) } Name (_SUN, 0x08) } Device (S082) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x080002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x08)) } Name (_SUN, 0x08) } Device (S083) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x080003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x08)) } Name (_SUN, 0x08) } Device (S084) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x080004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x08)) } Name (_SUN, 0x08) } Device (S085) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x080005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x08)) } Name (_SUN, 0x08) } Device (S086) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x080006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x08)) } Name (_SUN, 0x08) } Device (S087) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x080007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x08)) } Name (_SUN, 0x08) }
        Device (S090) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x090000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x09)) } Name (_SUN, 0x09) } Device (S091) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x090001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x09)) } Name (_SUN, 0x09) } Device (S092) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x090002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x09)) } Name (_SUN, 0x09) } Device (S093) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x090003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x09)) } Name (_SUN, 0x09) } Device (S094) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x090004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x09)) } Name (_SUN, 0x09) } Device (S095) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x090005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x09)) } Name (_SUN, 0x09) } Device (S096) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x090006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x09)) } Name (_SUN, 0x09) } Device (S097) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x090007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x09)) } Name (_SUN, 0x09) }
        Device (S0a0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0a0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0a)) } Name (_SUN, 0x0a) } Device (S0a1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0a0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0a)) } Name (_SUN, 0x0a) } Device (S0a2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0a0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0a)) } Name (_SUN, 0x0a) } Device (S0a3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0a0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0a)) } Name (_SUN, 0x0a) } Device (S0a4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0a0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0a)) } Name (_SUN, 0x0a) } Device (S0a5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0a0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0a)) } Name (_SUN, 0x0a) } Device (S0a6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0a0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0a)) } Name (_SUN, 0x0a) } Device (S0a7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0a0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0a)) } Name (_SUN, 0x0a) }
        Device (S0b0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0b0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0b)) } Name (_SUN, 0x0b) } Device (S0b1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0b0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0b)) } Name (_SUN, 0x0b) } Device (S0b2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0b0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0b)) } Name (_SUN, 0x0b) } Device (S0b3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0b0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0b)) } Name (_SUN, 0x0b) } Device (S0b4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0b0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0b)) } Name (_SUN, 0x0b) } Device (S0b5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0b0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0b)) } Name (_SUN, 0x0b) } Device (S0b6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0b0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0b)) } Name (_SUN, 0x0b) } Device (S0b7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0b0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0b)) } Name (_SUN, 0x0b) }
        Device (S0c0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0c0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0c)) } Name (_SUN, 0x0c) } Device (S0c1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0c0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0c)) } Name (_SUN, 0x0c) } Device (S0c2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0c0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0c)) } Name (_SUN, 0x0c) } Device (S0c3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0c0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0c)) } Name (_SUN, 0x0c) } Device (S0c4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0c0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0c)) } Name (_SUN, 0x0c) } Device (S0c5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0c0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0c)) } Name (_SUN, 0x0c) } Device (S0c6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0c0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0c)) } Name (_SUN, 0x0c) } Device (S0c7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0c0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0c)) } Name (_SUN, 0x0c) }
        Device (S0d0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0d0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0d)) } Name (_SUN, 0x0d) } Device (S0d1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0d0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0d)) } Name (_SUN, 0x0d) } Device (S0d2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0d0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0d)) } Name (_SUN, 0x0d) } Device (S0d3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0d0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0d)) } Name (_SUN, 0x0d) } Device (S0d4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0d0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0d)) } Name (_SUN, 0x0d) } Device (S0d5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0d0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0d)) } Name (_SUN, 0x0d) } Device (S0d6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0d0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0d)) } Name (_SUN, 0x0d) } Device (S0d7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0d0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0d)) } Name (_SUN, 0x0d) }
        Device (S0e0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0e0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0e)) } Name (_SUN, 0x0e) } Device (S0e1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0e0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0e)) } Name (_SUN, 0x0e) } Device (S0e2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0e0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0e)) } Name (_SUN, 0x0e) } Device (S0e3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0e0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0e)) } Name (_SUN, 0x0e) } Device (S0e4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0e0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0e)) } Name (_SUN, 0x0e) } Device (S0e5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0e0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0e)) } Name (_SUN, 0x0e) } Device (S0e6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0e0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0e)) } Name (_SUN, 0x0e) } Device (S0e7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0e0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0e)) } Name (_SUN, 0x0e) }
        Device (S0f0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0f0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0f)) } Name (_SUN, 0x0f) } Device (S0f1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0f0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0f)) } Name (_SUN, 0x0f) } Device (S0f2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0f0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0f)) } Name (_SUN, 0x0f) } Device (S0f3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0f0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0f)) } Name (_SUN, 0x0f) } Device (S0f4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0f0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0f)) } Name (_SUN, 0x0f) } Device (S0f5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0f0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0f)) } Name (_SUN, 0x0f) } Device (S0f6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0f0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0f)) } Name (_SUN, 0x0f) } Device (S0f7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x0f0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x0f)) } Name (_SUN, 0x0f) }
        Device (S100) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x100000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x10)) } Name (_SUN, 0x10) } Device (S101) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x100001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x10)) } Name (_SUN, 0x10) } Device (S102) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x100002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x10)) } Name (_SUN, 0x10) } Device (S103) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x100003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x10)) } Name (_SUN, 0x10) } Device (S104) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x100004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x10)) } Name (_SUN, 0x10) } Device (S105) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x100005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x10)) } Name (_SUN, 0x10) } Device (S106) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x100006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x10)) } Name (_SUN, 0x10) } Device (S107) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x100007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x10)) } Name (_SUN, 0x10) }
        Device (S110) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x110000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x11)) } Name (_SUN, 0x11) } Device (S111) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x110001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x11)) } Name (_SUN, 0x11) } Device (S112) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x110002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x11)) } Name (_SUN, 0x11) } Device (S113) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x110003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x11)) } Name (_SUN, 0x11) } Device (S114) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x110004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x11)) } Name (_SUN, 0x11) } Device (S115) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x110005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x11)) } Name (_SUN, 0x11) } Device (S116) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x110006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x11)) } Name (_SUN, 0x11) } Device (S117) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x110007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x11)) } Name (_SUN, 0x11) }
        Device (S120) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x120000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x12)) } Name (_SUN, 0x12) } Device (S121) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x120001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x12)) } Name (_SUN, 0x12) } Device (S122) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x120002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x12)) } Name (_SUN, 0x12) } Device (S123) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x120003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x12)) } Name (_SUN, 0x12) } Device (S124) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x120004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x12)) } Name (_SUN, 0x12) } Device (S125) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x120005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x12)) } Name (_SUN, 0x12) } Device (S126) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x120006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x12)) } Name (_SUN, 0x12) } Device (S127) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x120007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x12)) } Name (_SUN, 0x12) }
        Device (S130) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x130000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x13)) } Name (_SUN, 0x13) } Device (S131) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x130001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x13)) } Name (_SUN, 0x13) } Device (S132) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x130002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x13)) } Name (_SUN, 0x13) } Device (S133) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x130003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x13)) } Name (_SUN, 0x13) } Device (S134) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x130004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x13)) } Name (_SUN, 0x13) } Device (S135) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x130005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x13)) } Name (_SUN, 0x13) } Device (S136) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x130006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x13)) } Name (_SUN, 0x13) } Device (S137) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x130007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x13)) } Name (_SUN, 0x13) }
        Device (S140) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x140000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x14)) } Name (_SUN, 0x14) } Device (S141) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x140001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x14)) } Name (_SUN, 0x14) } Device (S142) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x140002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x14)) } Name (_SUN, 0x14) } Device (S143) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x140003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x14)) } Name (_SUN, 0x14) } Device (S144) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x140004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x14)) } Name (_SUN, 0x14) } Device (S145) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x140005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x14)) } Name (_SUN, 0x14) } Device (S146) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x140006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x14)) } Name (_SUN, 0x14) } Device (S147) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x140007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x14)) } Name (_SUN, 0x14) }
        Device (S150) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x150000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x15)) } Name (_SUN, 0x15) } Device (S151) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x150001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x15)) } Name (_SUN, 0x15) } Device (S152) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x150002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x15)) } Name (_SUN, 0x15) } Device (S153) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x150003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x15)) } Name (_SUN, 0x15) } Device (S154) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x150004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x15)) } Name (_SUN, 0x15) } Device (S155) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x150005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x15)) } Name (_SUN, 0x15) } Device (S156) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x150006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x15)) } Name (_SUN, 0x15) } Device (S157) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x150007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x15)) } Name (_SUN, 0x15) }
        Device (S160) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x160000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x16)) } Name (_SUN, 0x16) } Device (S161) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x160001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x16)) } Name (_SUN, 0x16) } Device (S162) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x160002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x16)) } Name (_SUN, 0x16) } Device (S163) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x160003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x16)) } Name (_SUN, 0x16) } Device (S164) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x160004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x16)) } Name (_SUN, 0x16) } Device (S165) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x160005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x16)) } Name (_SUN, 0x16) } Device (S166) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x160006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x16)) } Name (_SUN, 0x16) } Device (S167) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x160007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x16)) } Name (_SUN, 0x16) }
        Device (S170) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x170000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x17)) } Name (_SUN, 0x17) } Device (S171) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x170001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x17)) } Name (_SUN, 0x17) } Device (S172) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x170002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x17)) } Name (_SUN, 0x17) } Device (S173) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x170003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x17)) } Name (_SUN, 0x17) } Device (S174) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x170004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x17)) } Name (_SUN, 0x17) } Device (S175) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x170005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x17)) } Name (_SUN, 0x17) } Device (S176) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x170006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x17)) } Name (_SUN, 0x17) } Device (S177) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x170007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x17)) } Name (_SUN, 0x17) }
        Device (S180) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x180000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x18)) } Name (_SUN, 0x18) } Device (S181) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x180001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x18)) } Name (_SUN, 0x18) } Device (S182) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x180002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x18)) } Name (_SUN, 0x18) } Device (S183) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x180003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x18)) } Name (_SUN, 0x18) } Device (S184) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x180004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x18)) } Name (_SUN, 0x18) } Device (S185) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x180005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x18)) } Name (_SUN, 0x18) } Device (S186) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x180006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x18)) } Name (_SUN, 0x18) } Device (S187) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x180007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x18)) } Name (_SUN, 0x18) }
        Device (S190) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x190000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x19)) } Name (_SUN, 0x19) } Device (S191) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x190001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x19)) } Name (_SUN, 0x19) } Device (S192) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x190002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x19)) } Name (_SUN, 0x19) } Device (S193) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x190003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x19)) } Name (_SUN, 0x19) } Device (S194) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x190004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x19)) } Name (_SUN, 0x19) } Device (S195) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x190005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x19)) } Name (_SUN, 0x19) } Device (S196) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x190006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x19)) } Name (_SUN, 0x19) } Device (S197) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x190007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x19)) } Name (_SUN, 0x19) }
        Device (S1a0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1a0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1a)) } Name (_SUN, 0x1a) } Device (S1a1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1a0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1a)) } Name (_SUN, 0x1a) } Device (S1a2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1a0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1a)) } Name (_SUN, 0x1a) } Device (S1a3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1a0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1a)) } Name (_SUN, 0x1a) } Device (S1a4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1a0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1a)) } Name (_SUN, 0x1a) } Device (S1a5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1a0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1a)) } Name (_SUN, 0x1a) } Device (S1a6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1a0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1a)) } Name (_SUN, 0x1a) } Device (S1a7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1a0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1a)) } Name (_SUN, 0x1a) }
        Device (S1b0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1b0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1b)) } Name (_SUN, 0x1b) } Device (S1b1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1b0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1b)) } Name (_SUN, 0x1b) } Device (S1b2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1b0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1b)) } Name (_SUN, 0x1b) } Device (S1b3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1b0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1b)) } Name (_SUN, 0x1b) } Device (S1b4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1b0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1b)) } Name (_SUN, 0x1b) } Device (S1b5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1b0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1b)) } Name (_SUN, 0x1b) } Device (S1b6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1b0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1b)) } Name (_SUN, 0x1b) } Device (S1b7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1b0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1b)) } Name (_SUN, 0x1b) }
        Device (S1c0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1c0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1c)) } Name (_SUN, 0x1c) } Device (S1c1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1c0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1c)) } Name (_SUN, 0x1c) } Device (S1c2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1c0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1c)) } Name (_SUN, 0x1c) } Device (S1c3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1c0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1c)) } Name (_SUN, 0x1c) } Device (S1c4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1c0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1c)) } Name (_SUN, 0x1c) } Device (S1c5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1c0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1c)) } Name (_SUN, 0x1c) } Device (S1c6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1c0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1c)) } Name (_SUN, 0x1c) } Device (S1c7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1c0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1c)) } Name (_SUN, 0x1c) }
        Device (S1d0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1d0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1d)) } Name (_SUN, 0x1d) } Device (S1d1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1d0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1d)) } Name (_SUN, 0x1d) } Device (S1d2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1d0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1d)) } Name (_SUN, 0x1d) } Device (S1d3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1d0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1d)) } Name (_SUN, 0x1d) } Device (S1d4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1d0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1d)) } Name (_SUN, 0x1d) } Device (S1d5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1d0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1d)) } Name (_SUN, 0x1d) } Device (S1d6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1d0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1d)) } Name (_SUN, 0x1d) } Device (S1d7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1d0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1d)) } Name (_SUN, 0x1d) }
        Device (S1e0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1e0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1e)) } Name (_SUN, 0x1e) } Device (S1e1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1e0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1e)) } Name (_SUN, 0x1e) } Device (S1e2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1e0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1e)) } Name (_SUN, 0x1e) } Device (S1e3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1e0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1e)) } Name (_SUN, 0x1e) } Device (S1e4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1e0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1e)) } Name (_SUN, 0x1e) } Device (S1e5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1e0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1e)) } Name (_SUN, 0x1e) } Device (S1e6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1e0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1e)) } Name (_SUN, 0x1e) } Device (S1e7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1e0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1e)) } Name (_SUN, 0x1e) }
        Device (S1f0) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1f0000) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1f)) } Name (_SUN, 0x1f) } Device (S1f1) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1f0001) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1f)) } Name (_SUN, 0x1f) } Device (S1f2) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1f0002) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1f)) } Name (_SUN, 0x1f) } Device (S1f3) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1f0003) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1f)) } Name (_SUN, 0x1f) } Device (S1f4) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1f0004) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1f)) } Name (_SUN, 0x1f) } Device (S1f5) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1f0005) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1f)) } Name (_SUN, 0x1f) } Device (S1f6) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1f0006) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1f)) } Name (_SUN, 0x1f) } Device (S1f7) { 
/* ACPI_EXTRACT_NAME_DWORD_CONST aml_adr_dword */
 Name (_ADR, 0x1f0007) 
/* ACPI_EXTRACT_METHOD_STRING aml_ej0_name */
 Method (_EJ0, 1) { Return(PCEJ(0x1f)) } Name (_SUN, 0x1f) }
        Method(PCNT, 2) {
            If (LEqual(Arg0, 0x01)) { Notify(S010, Arg1) }
            If (LEqual(Arg0, 0x02)) { Notify(S020, Arg1) }
            If (LEqual(Arg0, 0x03)) { Notify(S030, Arg1) }
            If (LEqual(Arg0, 0x04)) { Notify(S040, Arg1) }
            If (LEqual(Arg0, 0x05)) { Notify(S050, Arg1) }
            If (LEqual(Arg0, 0x06)) { Notify(S060, Arg1) }
            If (LEqual(Arg0, 0x07)) { Notify(S070, Arg1) }
            If (LEqual(Arg0, 0x08)) { Notify(S080, Arg1) }
            If (LEqual(Arg0, 0x09)) { Notify(S090, Arg1) }
            If (LEqual(Arg0, 0x0a)) { Notify(S0a0, Arg1) }
            If (LEqual(Arg0, 0x0b)) { Notify(S0b0, Arg1) }
            If (LEqual(Arg0, 0x0c)) { Notify(S0c0, Arg1) }
            If (LEqual(Arg0, 0x0d)) { Notify(S0d0, Arg1) }
            If (LEqual(Arg0, 0x0e)) { Notify(S0e0, Arg1) }
            If (LEqual(Arg0, 0x0f)) { Notify(S0f0, Arg1) }
            If (LEqual(Arg0, 0x10)) { Notify(S100, Arg1) }
            If (LEqual(Arg0, 0x11)) { Notify(S110, Arg1) }
            If (LEqual(Arg0, 0x12)) { Notify(S120, Arg1) }
            If (LEqual(Arg0, 0x13)) { Notify(S130, Arg1) }
            If (LEqual(Arg0, 0x14)) { Notify(S140, Arg1) }
            If (LEqual(Arg0, 0x15)) { Notify(S150, Arg1) }
            If (LEqual(Arg0, 0x16)) { Notify(S160, Arg1) }
            If (LEqual(Arg0, 0x17)) { Notify(S170, Arg1) }
            If (LEqual(Arg0, 0x18)) { Notify(S180, Arg1) }
            If (LEqual(Arg0, 0x19)) { Notify(S190, Arg1) }
            If (LEqual(Arg0, 0x1a)) { Notify(S1a0, Arg1) }
            If (LEqual(Arg0, 0x1b)) { Notify(S1b0, Arg1) }
            If (LEqual(Arg0, 0x1c)) { Notify(S1c0, Arg1) }
            If (LEqual(Arg0, 0x1d)) { Notify(S1d0, Arg1) }
            If (LEqual(Arg0, 0x1e)) { Notify(S1e0, Arg1) }
            If (LEqual(Arg0, 0x1f)) { Notify(S1f0, Arg1) }
        }
    }
}

  reply	other threads:[~2012-05-09  7:35 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20111214010645.GA2044@morn.localdomain>
2012-05-09  7:24 ` [Qemu-devel] [RESEND PATCH v3] hotplug: add device per func in ACPI DSDT tables Amos Kong
2012-05-09  7:35   ` Amos Kong [this message]
2012-05-09  8:46   ` Michael S. Tsirkin
2012-05-09  8:59     ` Amos Kong
2012-05-09  9:53       ` Amos Kong
2012-05-09 13:47   ` Alex Williamson
2012-05-09 16:08     ` Amos Kong
2012-05-10 16:50     ` Jiang Liu
2012-05-10 17:03       ` Michael S. Tsirkin
2012-05-10 17:17   ` Jiang Liu
2012-05-10 17:42     ` Michael S. Tsirkin
2012-05-10 17:46       ` Jiang Liu
2012-05-10 23:40         ` Amos Kong
2012-05-11 10:14         ` [Qemu-devel] [SeaBIOS] " Gleb Natapov
2012-05-11 15:44           ` Jiang Liu
2012-05-11 17:04             ` Gleb Natapov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4FAA1E26.4070102@redhat.com \
    --to=akong@redhat.com \
    --cc=alex.williamson@redhat.com \
    --cc=jbarnes@virtuousgeek.org \
    --cc=kevin@koconnor.net \
    --cc=linux-pci@vger.kernel.org \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=rjw@sisk.pl \
    --cc=seabios@seabios.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).