Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Sep 2011 09:38:30 -0500
From:      "Roger Anderson" <roger@rogeranderson.org>
To:        <freebsd-acpi@freebsd.org>
Subject:   suspicious power dissipation values is a problem?
Message-ID:  <004201cc786c$21e68ba0$65b3a2e0$@org>

next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.

------=_NextPart_000_0043_01CC7842.391083A0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit

I am trying to figure out if the suspicious power dissipation values
messages below are an issue.

 

I have identical machines with Intel SE7520JR2 mother boards, when I updated
to the latest bios I started getting these messages.   The machine with the
old bios doesn't have the issue

 

Any ideas?

 

Thanks

Roger

 

 

Sep 21 09:08:31 eventtest kernel: fdc0: <floppy drive controller (FDE)> port
0x3f0-0x3f5,0x3f7 irq 6 drq 2 on acpi0

Sep 21 09:08:31 eventtest kernel: fdc0: [FILTER]

Sep 21 09:08:31 eventtest kernel: pmtimer0 on isa0

Sep 21 09:08:31 eventtest kernel: orm0: <ISA Option ROMs> at iomem
0xc0000-0xca7ff,0xca800-0xcb7ff,0xcb800-0xcc7ff,0xcc800-0xd4fff pnpid
ORM0000 on isa0

Sep 21 09:08:31 eventtest kernel: sc0: <System console> at flags 0x100 on
isa0

Sep 21 09:08:31 eventtest kernel: sc0: VGA <16 virtual consoles,
flags=0x300>

Sep 21 09:08:31 eventtest kernel: vga0: <Generic ISA VGA> at port
0x3c0-0x3df iomem 0xa0000-0xbffff on isa0

Sep 21 09:08:31 eventtest kernel: ppc0: parallel port not found.

Sep 21 09:08:31 eventtest kernel: ACPI Warning for \_PR_.CPU1._PSS:
SubPackage[8,9] - suspicious power dissipation values
(20100331/nsrepair2-514)

Sep 21 09:08:31 eventtest kernel: acpi_perf0: <ACPI CPU Frequency Control>
on cpu0

Sep 21 09:08:31 eventtest kernel: ACPI Warning for \_PR_.CPU1._PSS:
SubPackage[8,9] - suspicious power dissipation values
(20100331/nsrepair2-514)

Sep 21 09:08:31 eventtest kernel: ACPI Warning for \_PR_.CPU2._PSS:
SubPackage[8,9] - suspicious power dissipation values
(20100331/nsrepair2-514)

Sep 21 09:08:31 eventtest kernel: acpi_perf1: <ACPI CPU Frequency Control>
on cpu1

Sep 21 09:08:31 eventtest kernel: ACPI Warning for \_PR_.CPU2._PSS:
SubPackage[8,9] - suspicious power dissipation values
(20100331/nsrepair2-514)

Sep 21 09:08:31 eventtest kernel: ACPI Warning for \_PR_.CPU3._PSS:
SubPackage[8,9] - suspicious power dissipation values
(20100331/nsrepair2-514)

Sep 21 09:08:31 eventtest kernel: acpi_perf2: <ACPI CPU Frequency Control>
on cpu2

Sep 21 09:08:31 eventtest kernel: ACPI Warning for \_PR_.CPU3._PSS:
SubPackage[8,9] - suspicious power dissipation values
(20100331/nsrepair2-514)

Sep 21 09:08:31 eventtest kernel: ACPI Warning for \_PR_.CPU4._PSS:
SubPackage[8,9] - suspicious power dissipation values
(20100331/nsrepair2-514)

Sep 21 09:08:31 eventtest kernel: acpi_perf3: <ACPI CPU Frequency Control>
on cpu3

Sep 21 09:08:31 eventtest kernel: ACPI Warning for \_PR_.CPU4._PSS:
SubPackage[8,9] - suspicious power dissipation values
(20100331/nsrepair2-514)

Sep 21 09:08:31 eventtest kernel: p4tcc0: <CPU Frequency Thermal Control> on
cpu0

Sep 21 09:08:31 eventtest kernel: p4tcc1: <CPU Frequency Thermal Control> on
cpu1

Sep 21 09:08:31 eventtest kernel: p4tcc2: <CPU Frequency Thermal Control> on
cpu2

Sep 21 09:08:31 eventtest kernel: p4tcc3: <CPU Frequency Thermal Control> on
cpu3

 

 

 

----------------------   The machine with the OLD bios
---------------------------

Sep 21 06:02:05 eventtest kernel: sc0: <System console> at flags 0x100 on
isa0

Sep 21 06:02:05 eventtest kernel: sc0: VGA <16 virtual consoles,
flags=0x300>

Sep 21 06:02:05 eventtest kernel: vga0: <Generic ISA VGA> at port
0x3c0-0x3df iomem 0xa0000-0xbffff on isa0

Sep 21 06:02:05 eventtest kernel: ppc0: parallel port not found.

Sep 21 06:02:05 eventtest kernel: est0: <Enhanced SpeedStep Frequency
Control> on cpu0

Sep 21 06:02:05 eventtest kernel: est: CPU supports Enhanced Speedstep, but
is not recognized.

Sep 21 06:02:05 eventtest kernel: est: cpu_vendor GenuineIntel, msr
122c0000122c

Sep 21 06:02:05 eventtest kernel: device_attach: est0 attach returned 6

Sep 21 06:02:05 eventtest kernel: p4tcc0: <CPU Frequency Thermal Control> on
cpu0

Sep 21 06:02:05 eventtest kernel: est1: <Enhanced SpeedStep Frequency
Control> on cpu1


------=_NextPart_000_0043_01CC7842.391083A0
Content-Type: application/octet-stream;
	name="intel_SE7520JR2.asl"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="intel_SE7520JR2.asl"

/*
  RSD PTR: OEM=3DACPIAM, ACPI_Rev=3D1.0x (0)
	RSDT=3D0xdffe0000, cksum=3D89
 */
/*
  RSDT: Length=3D56, Revision=3D1, Checksum=3D77,
	OEMID=3DA M I, OEM Table ID=3D7520JR23, OEM Revision=3D0x9000629,
	Creator ID=3DMSFT, Creator Revision=3D0x97
	Entries=3D{ 0xdffe0200, 0xdffe0390, 0xdffe0460, 0xdffe04b0, 0xdffef040 =
}
 */
/*
  FACP: Length=3D132, Revision=3D2, Checksum=3D45,
	OEMID=3DA M I, OEM Table ID=3DOEMFACP, OEM Revision=3D0x9000629,
	Creator ID=3DMSFT, Creator Revision=3D0x97
 	FACS=3D0xdffef000, DSDT=3D0xdffe04f0
	INT_MODEL=3DAPIC
	Preferred_PM_Profile=3DUnspecified (0)
	SCI_INT=3D9
	SMI_CMD=3D0xb2, ACPI_ENABLE=3D0xe1, ACPI_DISABLE=3D0x1e, =
S4BIOS_REQ=3D0x0
	PSTATE_CNT=3D0xe2
	PM1a_EVT_BLK=3D0x400-0x403
	PM1a_CNT_BLK=3D0x404-0x405
	PM_TMR_BLK=3D0x408-0x40b
	GPE0_BLK=3D0x428-0x42f
	CST_CNT=3D0xe3
	P_LVL2_LAT=3D101 us, P_LVL3_LAT=3D1001 us
	FLUSH_SIZE=3D1024, FLUSH_STRIDE=3D16
	DUTY_OFFSET=3D1, DUTY_WIDTH=3D3
	DAY_ALRM=3D13, MON_ALRM=3D0, CENTURY=3D50
	IAPC_BOOT_ARCH=3D{LEGACY_DEVICES,8042}
	Flags=3D{WBINVD,C1_SUPPORTED,SLEEP_BUTTON,S4_RTC_WAKE}
 */
/*
  FACS:	Length=3D64, HwSig=3D0x00000000, Firm_Wake_Vec=3D0x00000000
	Global_Lock=3D
	Flags=3D
	Version=3D1
 */
/*
  DSDT: Length=3D18768, Revision=3D1, Checksum=3D30,
	OEMID=3DSJR2A, OEM Table ID=3DSJR2A092, OEM Revision=3D0x92,
	Creator ID=3DINTL, Creator Revision=3D0x2002026
 */
/*
  APIC: Length=3D176, Revision=3D1, Checksum=3D63,
	OEMID=3DA M I, OEM Table ID=3DOEMAPIC, OEM Revision=3D0x9000629,
	Creator ID=3DMSFT, Creator Revision=3D0x97
	Local APIC ADDR=3D0xfee00000
	Flags=3D{PC-AT}

	Type=3DLocal APIC
	ACPI CPU=3D1
	Flags=3D{ENABLED}
	APIC ID=3D0

	Type=3DLocal APIC
	ACPI CPU=3D2
	Flags=3D{ENABLED}
	APIC ID=3D6

	Type=3DLocal APIC
	ACPI CPU=3D3
	Flags=3D{ENABLED}
	APIC ID=3D1

	Type=3DLocal APIC
	ACPI CPU=3D4
	Flags=3D{ENABLED}
	APIC ID=3D7

	Type=3DLocal APIC
	ACPI CPU=3D5
	Flags=3D{DISABLED}
	APIC ID=3D132

	Type=3DLocal APIC
	ACPI CPU=3D6
	Flags=3D{DISABLED}
	APIC ID=3D133

	Type=3DLocal APIC
	ACPI CPU=3D7
	Flags=3D{DISABLED}
	APIC ID=3D134

	Type=3DLocal APIC
	ACPI CPU=3D8
	Flags=3D{DISABLED}
	APIC ID=3D135

	Type=3DIO APIC
	APIC ID=3D8
	INT BASE=3D0
	ADDR=3D0x00000000fec00000

	Type=3DIO APIC
	APIC ID=3D9
	INT BASE=3D24
	ADDR=3D0x00000000fec80000

	Type=3DIO APIC
	APIC ID=3D10
	INT BASE=3D48
	ADDR=3D0x00000000fec80400

	Type=3DINT Override
	BUS=3D0
	IRQ=3D0
	INTR=3D2
	Flags=3D{Polarity=3Dconforming, Trigger=3Dconforming}

	Type=3DINT Override
	BUS=3D0
	IRQ=3D9
	INTR=3D9
	Flags=3D{Polarity=3Dactive-hi, Trigger=3Dlevel}

	Type=3DLocal APIC NMI
	ACPI CPU=3D1
	LINT Pin=3D1
	Flags=3D{Polarity=3Dconforming, Trigger=3Dconforming}

	Type=3DLocal APIC NMI
	ACPI CPU=3D2
	LINT Pin=3D1
	Flags=3D{Polarity=3Dconforming, Trigger=3Dconforming}
 */
/*
  SPCR: Length=3D80, Revision=3D1, Checksum=3D248,
	OEMID=3DA M I, OEM Table ID=3DOEMSPCR, OEM Revision=3D0x9000629,
	Creator ID=3DMSFT, Creator Revision=3D0x97
 */
/*
  MCFG: Length=3D60, Revision=3D1, Checksum=3D105,
	OEMID=3DA M I, OEM Table ID=3DOEMMCFG, OEM Revision=3D0x9000629,
	Creator ID=3DMSFT, Creator Revision=3D0x97

	Base Address=3D0x00000000e0000000
	Segment Group=3D0x0000
	Start Bus=3D0
	End Bus=3D255
 */
/*
  OEMB: Length=3D64, Revision=3D1, Checksum=3D159,
	OEMID=3DA M I, OEM Table ID=3DAMI_OEM, OEM Revision=3D0x9000629,
	Creator ID=3DMSFT, Creator Revision=3D0x97
 */
/*
 * Intel ACPI Component Architecture
 * AML Disassembler version 20100331
 *
 * Disassembly of /tmp/acpidump.gm7QuJ, Wed Sep 21 09:15:29 2011
 *
 *
 * Original Table Header:
 *     Signature        "DSDT"
 *     Length           0x00004950 (18768)
 *     Revision         0x01 **** ACPI 1.0, no 64-bit math support
 *     Checksum         0x1E
 *     OEM ID           "SJR2A"
 *     OEM Table ID     "SJR2A092"
 *     OEM Revision     0x00000092 (146)
 *     Compiler ID      "INTL"
 *     Compiler Version 0x02002026 (33562662)
 */
DefinitionBlock ("/tmp/acpidump.aml", "DSDT", 1, "SJR2A", "SJR2A092", =
0x00000092)
{
    Scope (\_PR)
    {
        Processor (CPU1, 0x01, 0x00000410, 0x06)
        {
            OperationRegion (SSDT, SystemMemory, 0xDFFE4E40, 0x02E4)
            Name (NCPU, 0x02)
            Name (TYPE, 0x80000000)
            Name (HNDL, 0x80000000)
            Name (TBLD, 0x00)
            Method (_PDC, 1, NotSerialized)
            {
                CreateDWordField (Arg0, 0x08, DAT0)
                Store (DAT0, TYPE)
                OperationRegion (PMRG, SystemIO, \PMBS, 0x50)
                Field (PMRG, ByteAcc, NoLock, Preserve)
                {
                            Offset (0x41),=20
                    DEV4,   1,=20
                    DEV5,   1,=20
                    DEV6,   1,=20
                    DEV7,   1,=20
                    STS4,   1,=20
                    STS5,   1,=20
                    STS6,   1,=20
                    STS7,   1
                }

                If (LEqual (TBLD, 0x00))
                {
                    If (LAnd (LEqual (NCPU, 0x02), LEqual (And (TYPE, =
0x08),=20
                        0x08)))
                    {
                        Store (0x01, STS7)
                        Store (0x01, DEV7)
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }

                    If (LAnd (LEqual (NCPU, 0x01), LEqual (And (TYPE, =
0x09),=20
                        0x09)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }
                }
            }
        }
    }

    Scope (\_PR)
    {
        Processor (CPU2, 0x02, 0x00000410, 0x06)
        {
            OperationRegion (SSDT, SystemMemory, 0xDFFE5130, 0x02E4)
            Name (NCPU, 0x02)
            Name (TYPE, 0x80000000)
            Name (HNDL, 0x80000000)
            Name (TBLD, 0x00)
            Method (_PDC, 1, NotSerialized)
            {
                CreateDWordField (Arg0, 0x08, DAT0)
                Store (DAT0, TYPE)
                OperationRegion (PMRG, SystemIO, \PMBS, 0x50)
                Field (PMRG, ByteAcc, NoLock, Preserve)
                {
                            Offset (0x41),=20
                    DEV4,   1,=20
                    DEV5,   1,=20
                    DEV6,   1,=20
                    DEV7,   1,=20
                    STS4,   1,=20
                    STS5,   1,=20
                    STS6,   1,=20
                    STS7,   1
                }

                If (LEqual (TBLD, 0x00))
                {
                    If (LAnd (LEqual (NCPU, 0x02), LEqual (And (TYPE, =
0x08),=20
                        0x08)))
                    {
                        Store (0x01, STS6)
                        Store (0x01, DEV6)
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }

                    If (LAnd (LEqual (NCPU, 0x01), LEqual (And (TYPE, =
0x09),=20
                        0x09)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }
                }
            }
        }
    }

    Scope (\_PR)
    {
        Processor (CPU3, 0x03, 0x00000410, 0x06)
        {
            OperationRegion (SSDT, SystemMemory, 0xDFFE5420, 0x02E4)
            Name (NCPU, 0x02)
            Name (TYPE, 0x80000000)
            Name (HNDL, 0x80000000)
            Name (TBLD, 0x00)
            Method (_PDC, 1, NotSerialized)
            {
                CreateDWordField (Arg0, 0x08, DAT0)
                Store (DAT0, TYPE)
                If (LEqual (TBLD, 0x00))
                {
                    If (LAnd (LEqual (NCPU, 0x02), LEqual (And (TYPE, =
0x08),=20
                        0x08)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }

                    If (LAnd (LEqual (NCPU, 0x01), LEqual (And (TYPE, =
0x09),=20
                        0x09)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }
                }
            }
        }
    }

    Scope (\_PR)
    {
        Processor (CPU4, 0x04, 0x00000410, 0x06)
        {
            OperationRegion (SSDT, SystemMemory, 0xDFFE5710, 0x02E4)
            Name (NCPU, 0x02)
            Name (TYPE, 0x80000000)
            Name (HNDL, 0x80000000)
            Name (TBLD, 0x00)
            Method (_PDC, 1, NotSerialized)
            {
                CreateDWordField (Arg0, 0x08, DAT0)
                Store (DAT0, TYPE)
                If (LEqual (TBLD, 0x00))
                {
                    If (LAnd (LEqual (NCPU, 0x02), LEqual (And (TYPE, =
0x08),=20
                        0x08)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }

                    If (LAnd (LEqual (NCPU, 0x01), LEqual (And (TYPE, =
0x09),=20
                        0x09)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }
                }
            }
        }
    }

    Scope (\_PR)
    {
        Processor (CPU5, 0x05, 0x00000410, 0x06)
        {
            OperationRegion (SSDT, SystemMemory, 0xFFFF0000, 0xFFFF)
            Name (NCPU, 0x00)
            Name (TYPE, 0x80000000)
            Name (HNDL, 0x80000000)
            Name (TBLD, 0x00)
            Method (_PDC, 1, NotSerialized)
            {
                CreateDWordField (Arg0, 0x08, DAT0)
                Store (DAT0, TYPE)
                If (LEqual (TBLD, 0x00))
                {
                    If (LAnd (LEqual (NCPU, 0x02), LEqual (And (TYPE, =
0x08),=20
                        0x08)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }
                }
            }
        }
    }

    Scope (\_PR)
    {
        Processor (CPU6, 0x06, 0x00000410, 0x06)
        {
            OperationRegion (SSDT, SystemMemory, 0xFFFF0000, 0xFFFF)
            Name (NCPU, 0x00)
            Name (TYPE, 0x80000000)
            Name (HNDL, 0x80000000)
            Name (TBLD, 0x00)
            Method (_PDC, 1, NotSerialized)
            {
                CreateDWordField (Arg0, 0x08, DAT0)
                Store (DAT0, TYPE)
                If (LEqual (TBLD, 0x00))
                {
                    If (LAnd (LEqual (NCPU, 0x02), LEqual (And (TYPE, =
0x08),=20
                        0x08)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }
                }
            }
        }
    }

    Scope (\_PR)
    {
        Processor (CPU7, 0x07, 0x00000410, 0x06)
        {
            OperationRegion (SSDT, SystemMemory, 0xFFFF0000, 0xFFFF)
            Name (NCPU, 0x00)
            Name (TYPE, 0x80000000)
            Name (HNDL, 0x80000000)
            Name (TBLD, 0x00)
            Method (_PDC, 1, NotSerialized)
            {
                CreateDWordField (Arg0, 0x08, DAT0)
                Store (DAT0, TYPE)
                If (LEqual (TBLD, 0x00))
                {
                    If (LAnd (LEqual (NCPU, 0x02), LEqual (And (TYPE, =
0x08),=20
                        0x08)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }
                }
            }
        }
    }

    Scope (\_PR)
    {
        Processor (CPU8, 0x08, 0x00000410, 0x06)
        {
            OperationRegion (SSDT, SystemMemory, 0xFFFF0000, 0xFFFF)
            Name (NCPU, 0x00)
            Name (TYPE, 0x80000000)
            Name (HNDL, 0x80000000)
            Name (TBLD, 0x00)
            Method (_PDC, 1, NotSerialized)
            {
                CreateDWordField (Arg0, 0x08, DAT0)
                Store (DAT0, TYPE)
                If (LEqual (TBLD, 0x00))
                {
                    If (LAnd (LEqual (NCPU, 0x02), LEqual (And (TYPE, =
0x08),=20
                        0x08)))
                    {
                        Load (SSDT, HNDL)
                        Store (0x01, TBLD)
                    }
                }
            }
        }
    }

    OperationRegion (BIOS, SystemMemory, 0xDFFEF064, 0xFF)
    Field (BIOS, ByteAcc, NoLock, Preserve)
    {
        SS1,    1,=20
        SS2,    1,=20
        SS3,    1,=20
        SS4,    1,=20
                Offset (0x01),=20
        IOST,   16,=20
        TOPM,   32,=20
        ROMS,   32,=20
        MG1B,   32,=20
        MG1L,   32,=20
        MG2B,   32,=20
        MG2L,   32
    }

    Name (SPIO, 0x2E)
    Name (IO1B, 0x0680)
    Name (IO1L, 0x20)
    Name (IOSB, 0x0640)
    Name (IOSL, 0x20)
    Name (IOPB, 0x0600)
    Name (IOPL, 0x10)
    Name (IOXB, 0x06C0)
    Name (IOXL, 0x20)
    Name (PMBS, 0x0400)
    Name (PMLN, 0x80)
    Name (GPBS, 0x0500)
    Name (GPLN, 0x40)
    Name (SMBS, 0x00)
    Name (SMBL, 0x20)
    Name (APIC, 0x01)
    Name (PCIB, 0xE0000000)
    Name (PCIL, 0x10000000)
    Name (FMCB, 0x0700)
    Name (FMCL, 0x20)
    Name (HMCB, 0x0720)
    Name (HMCL, 0x20)
    Name (WDTB, 0x0740)
    Name (WDTL, 0x10)
    Name (ACPH, 0xDE)
    Name (SUSW, 0xFF)
    Name (IOPO, 0x06AE)
    Name (IOFR, 0x06AF)
    Name (IOOL, 0x01)
    Name (IOUL, 0x01)
    Name (BMC1, 0x0CA2)
    Name (BMC2, 0x0CA4)
    Name (BM1L, 0x02)
    Name (BM2L, 0x02)
    Name (PM30, 0x0430)
    Name (MIQW, 0x01)
    Method (RRIO, 4, NotSerialized)
    {
        Store ("RRIO", Debug)
    }

    Method (RDMA, 3, NotSerialized)
    {
        Store ("rDMA", Debug)
    }

    Name (PICM, 0x00)
    Method (_PIC, 1, NotSerialized)
    {
        If (Arg0)
        {
            Store (0xAA, DBG8)
        }
        Else
        {
            Store (0xAC, DBG8)
        }

        Store (Arg0, PICM)
    }

    Name (OSVR, Ones)
    Method (OSFL, 0, NotSerialized)
    {
        If (LNotEqual (OSVR, Ones))
        {
            Return (OSVR)
        }

        If (LEqual (PICM, 0x00))
        {
            Store (0xAC, DBG8)
        }

        Store (0x01, OSVR)
        If (MCTH (\_OS, "Microsoft Windows NT"))
        {
            Store (0x00, OSVR)
        }
        Else
        {
            If (MCTH (\_OS, "Microsoft WindowsME: Millennium Edition"))
            {
                Store (0x02, OSVR)
            }
        }

        Return (OSVR)
    }

    Name (OSNV, Ones)
    Method (OSNF, 0, NotSerialized)
    {
        If (LNotEqual (OSNV, Ones))
        {
            Return (OSNV)
        }

        Store (0x01, OSNV)
        If (CondRefOf (\_OSI, Local1))
        {
            If (\_OSI ("Windows 2006"))
            {
                Store (0x00, OSNV)
            }

            If (\_OSI ("Windows 2001.1 SP1"))
            {
                ShiftLeft (0x01, 0x0F, Local0)
                If (And (IOST, Local0))
                {
                    Store (0x00, OSNV)
                }
            }
        }
        Else
        {
            Store (0x01, OSNV)
        }

        Return (OSNV)
    }

    Method (MCTH, 2, NotSerialized)
    {
        If (LLess (SizeOf (Arg0), SizeOf (Arg1)))
        {
            Return (Zero)
        }

        Add (SizeOf (Arg0), 0x01, Local0)
        Name (BUF0, Buffer (Local0) {})
        Name (BUF1, Buffer (Local0) {})
        Store (Arg0, BUF0)
        Store (Arg1, BUF1)
        While (Local0)
        {
            Decrement (Local0)
            If (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf =
(Index (
                BUF1, Local0))))
            {
                Return (Zero)
            }
        }

        Return (One)
    }

    Name (PRWP, Package (0x02)
    {
        Zero,=20
        Zero
    })
    Method (GPRW, 2, NotSerialized)
    {
        Store (Arg0, Index (PRWP, 0x00))
        Store (ShiftLeft (SS1, 0x01), Local0)
        Or (Local0, ShiftLeft (SS2, 0x02), Local0)
        Or (Local0, ShiftLeft (SS3, 0x03), Local0)
        Or (Local0, ShiftLeft (SS4, 0x04), Local0)
        If (And (ShiftLeft (0x01, Arg1), Local0))
        {
            Store (Arg1, Index (PRWP, 0x01))
        }
        Else
        {
            ShiftRight (Local0, 0x01, Local0)
            If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02)))
            {
                FindSetLeftBit (Local0, Index (PRWP, 0x01))
            }
            Else
            {
                FindSetRightBit (Local0, Index (PRWP, 0x01))
            }
        }

        Return (PRWP)
    }

    Name (WAKP, Package (0x02)
    {
        Zero,=20
        Zero
    })
    OperationRegion (DEB0, SystemIO, 0x80, 0x01)
    Field (DEB0, ByteAcc, NoLock, Preserve)
    {
        DBG8,   8
    }

    OperationRegion (DEB1, SystemIO, 0x90, 0x02)
    Field (DEB1, WordAcc, NoLock, Preserve)
    {
        DBG9,   16
    }

    OperationRegion (DEBA, SystemIO, 0x84, 0x01)
    Field (DEBA, ByteAcc, NoLock, Preserve)
    {
        DBGA,   8
    }

    OperationRegion (DEBB, SystemIO, 0x85, 0x01)
    Field (DEBB, ByteAcc, NoLock, Preserve)
    {
        DBGB,   8
    }

    Scope (\_SB)
    {
        Method (GFRI, 0, NotSerialized)
        {
            Store (0x00, Local1)
            Store (GP40, Local0)
            ShiftLeft (Local0, 0x02, Local0)
            Or (Local1, Local0, Local1)
            Store (GP41, Local0)
            ShiftLeft (Local0, 0x01, Local0)
            Or (Local1, Local0, Local1)
            Store (GP00, Local0)
            ShiftLeft (Local0, 0x00, Local0)
            Or (Local1, Local0, Local1)
            Return (Local1)
        }

        Name (PR80, Package (0x0E)
        {
            Package (0x04)
            {
                0x0005FFFF,=20
                0x00,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x01,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x02,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x03,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x02,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x03,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x00,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x01,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x03,=20
                LNKB,=20
                0x00
            }
        })
        Name (AR80, Package (0x0E)
        {
            Package (0x04)
            {
                0x0005FFFF,=20
                0x00,=20
                0x00,=20
                0x1A
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x01,=20
                0x00,=20
                0x19
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x00,=20
                0x00,=20
                0x18
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x01,=20
                0x00,=20
                0x1B
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x02,=20
                0x00,=20
                0x1D
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x03,=20
                0x00,=20
                0x1C
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x00,=20
                0x00,=20
                0x1C
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x01,=20
                0x00,=20
                0x1D
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x02,=20
                0x00,=20
                0x1B
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x03,=20
                0x00,=20
                0x18
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x00,=20
                0x00,=20
                0x1B
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x01,=20
                0x00,=20
                0x18
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x02,=20
                0x00,=20
                0x1A
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x03,=20
                0x00,=20
                0x19
            }
        })
        Name (PR00, Package (0x1F)
        {
            Package (0x04)
            {
                0x0001FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x001FFFFF,=20
                0x00,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x001FFFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x001DFFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x001DFFFF,=20
                0x01,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x001DFFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x001DFFFF,=20
                0x03,=20
                LNKH,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0006FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0006FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0006FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0006FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            }
        })
        Name (AR00, Package (0x1F)
        {
            Package (0x04)
            {
                0x0001FFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0x001FFFFF,=20
                0x00,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0x001FFFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0x001DFFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0x001DFFFF,=20
                0x01,=20
                0x00,=20
                0x13
            },=20

            Package (0x04)
            {
                0x001DFFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0x001DFFFF,=20
                0x03,=20
                0x00,=20
                0x17
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0x0002FFFF,=20
                0x03,=20
                0x00,=20
                0x13
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x03,=20
                0x00,=20
                0x13
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x03,=20
                0x00,=20
                0x13
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x03,=20
                0x00,=20
                0x13
            },=20

            Package (0x04)
            {
                0x0006FFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0x0006FFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0x0006FFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0x0006FFFF,=20
                0x03,=20
                0x00,=20
                0x13
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x03,=20
                0x00,=20
                0x13
            }
        })
        Name (PR01, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            }
        })
        Name (AR01, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x03,=20
                0x00,=20
                0x13
            }
        })
        Name (PR05, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            }
        })
        Name (AR05, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x03,=20
                0x00,=20
                0x13
            }
        })
        Name (PR0A, Package (0x04)
        {
            Package (0x04)
            {
                0x0001FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            }
        })
        Name (AR0A, Package (0x04)
        {
            Package (0x04)
            {
                0x0001FFFF,=20
                0x00,=20
                0x00,=20
                0x48
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x01,=20
                0x00,=20
                0x49
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x02,=20
                0x00,=20
                0x4A
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x03,=20
                0x00,=20
                0x4B
            }
        })
        Name (PR0B, Package (0x04)
        {
            Package (0x04)
            {
                0x0001FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            }
        })
        Name (AR0B, Package (0x04)
        {
            Package (0x04)
            {
                0x0001FFFF,=20
                0x00,=20
                0x00,=20
                0x60
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x01,=20
                0x00,=20
                0x61
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x02,=20
                0x00,=20
                0x62
            },=20

            Package (0x04)
            {
                0x0001FFFF,=20
                0x03,=20
                0x00,=20
                0x63
            }
        })
        Name (PR06, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            }
        })
        Name (AR06, Package (0x04)
        {
            Package (0x04)
            {
                0xFFFF,=20
                0x00,=20
                0x00,=20
                0x10
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x01,=20
                0x00,=20
                0x11
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x02,=20
                0x00,=20
                0x12
            },=20

            Package (0x04)
            {
                0xFFFF,=20
                0x03,=20
                0x00,=20
                0x13
            }
        })
        Name (PR09, Package (0x0E)
        {
            Package (0x04)
            {
                0x0004FFFF,=20
                0x00,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x01,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x01,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x03,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0008FFFF,=20
                0x00,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0008FFFF,=20
                0x01,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0008FFFF,=20
                0x02,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0008FFFF,=20
                0x03,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0009FFFF,=20
                0x00,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0009FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0009FFFF,=20
                0x02,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0009FFFF,=20
                0x03,=20
                LNKD,=20
                0x00
            }
        })
        Name (AR09, Package (0x0E)
        {
            Package (0x04)
            {
                0x0004FFFF,=20
                0x00,=20
                0x00,=20
                0x36
            },=20

            Package (0x04)
            {
                0x0004FFFF,=20
                0x01,=20
                0x00,=20
                0x37
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x00,=20
                0x00,=20
                0x34
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x01,=20
                0x00,=20
                0x33
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x02,=20
                0x00,=20
                0x32
            },=20

            Package (0x04)
            {
                0x0007FFFF,=20
                0x03,=20
                0x00,=20
                0x31
            },=20

            Package (0x04)
            {
                0x0008FFFF,=20
                0x00,=20
                0x00,=20
                0x33
            },=20

            Package (0x04)
            {
                0x0008FFFF,=20
                0x01,=20
                0x00,=20
                0x32
            },=20

            Package (0x04)
            {
                0x0008FFFF,=20
                0x02,=20
                0x00,=20
                0x31
            },=20

            Package (0x04)
            {
                0x0008FFFF,=20
                0x03,=20
                0x00,=20
                0x34
            },=20

            Package (0x04)
            {
                0x0009FFFF,=20
                0x00,=20
                0x00,=20
                0x32
            },=20

            Package (0x04)
            {
                0x0009FFFF,=20
                0x01,=20
                0x00,=20
                0x31
            },=20

            Package (0x04)
            {
                0x0009FFFF,=20
                0x02,=20
                0x00,=20
                0x34
            },=20

            Package (0x04)
            {
                0x0009FFFF,=20
                0x03,=20
                0x00,=20
                0x33
            }
        })
        Name (PR08, Package (0x06)
        {
            Package (0x04)
            {
                0x0005FFFF,=20
                0x00,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x01,=20
                LNKB,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x00,=20
                LNKA,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x01,=20
                LNKD,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x02,=20
                LNKC,=20
                0x00
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x03,=20
                LNKB,=20
                0x00
            }
        })
        Name (AR08, Package (0x06)
        {
            Package (0x04)
            {
                0x0005FFFF,=20
                0x00,=20
                0x00,=20
                0x1A
            },=20

            Package (0x04)
            {
                0x0005FFFF,=20
                0x01,=20
                0x00,=20
                0x19
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x00,=20
                0x00,=20
                0x18
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x01,=20
                0x00,=20
                0x1B
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x02,=20
                0x00,=20
                0x1A
            },=20

            Package (0x04)
            {
                0x0003FFFF,=20
                0x03,=20
                0x00,=20
                0x19
            }
        })
        Name (PR07, Package (0x01)
        {
            Package (0x04)
            {
                0x000CFFFF,=20
                0x00,=20
                LNKB,=20
                0x00
            }
        })
        Name (AR07, Package (0x01)
        {
            Package (0x04)
            {
                0x000CFFFF,=20
                0x00,=20
                0x00,=20
                0x11
            }
        })
        Name (PRSA, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {3,4,7,10,11,12,14,15}
        })
        Alias (PRSA, PRSB)
        Alias (PRSA, PRSC)
        Alias (PRSA, PRSD)
        Alias (PRSA, PRSE)
        Alias (PRSA, PRSF)
        Alias (PRSA, PRSG)
        Name (PRSH, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {5}
        })
        Name (PSA1, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {7}
        })
        Alias (PSA1, PSB1)
        Alias (PSA1, PSC1)
        Alias (PSA1, PSD1)
        Alias (PRSA, PSE1)
        Alias (PRSA, PSF1)
        Alias (PRSA, PSG1)
        Name (PSH1, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, )
                {5}
        })
        Device (PCI0)
        {
            Name (_HID, EisaId ("PNP0A03"))
            Name (_ADR, 0x00)
            Method (^BN00, 0, NotSerialized)
            {
                Return (0x00)
            }

            Method (_BBN, 0, NotSerialized)
            {
                Return (BN00 ())
            }

            Name (_UID, 0x00)
            Method (_PRT, 0, NotSerialized)
            {
                If (PICM)
                {
                    Return (AR00)
                }

                Return (PR00)
            }

            Device (IDE0)
            {
                Name (_ADR, 0x001F0001)
                Name (REGF, 0x01)
                Method (_REG, 2, NotSerialized)
                {
                    If (LEqual (Arg0, 0x02))
                    {
                        Store (Arg1, REGF)
                    }
                }

                Name (TIM0, Package (0x08)
                {
                    Package (0x04)
                    {
                        0x78,=20
                        0xB4,=20
                        0xF0,=20
                        0x0384
                    },=20

                    Package (0x04)
                    {
                        0x23,=20
                        0x21,=20
                        0x10,=20
                        0x00
                    },=20

                    Package (0x04)
                    {
                        0x0B,=20
                        0x09,=20
                        0x04,=20
                        0x00
                    },=20

                    Package (0x06)
                    {
                        0x70,=20
                        0x49,=20
                        0x36,=20
                        0x27,=20
                        0x19,=20
                        0x0F
                    },=20

                    Package (0x06)
                    {
                        0x00,=20
                        0x01,=20
                        0x02,=20
                        0x01,=20
                        0x02,=20
                        0x01
                    },=20

                    Package (0x06)
                    {
                        0x00,=20
                        0x00,=20
                        0x00,=20
                        0x01,=20
                        0x01,=20
                        0x01
                    },=20

                    Package (0x04)
                    {
                        0x04,=20
                        0x03,=20
                        0x02,=20
                        0x00
                    },=20

                    Package (0x04)
                    {
                        0x02,=20
                        0x01,=20
                        0x00,=20
                        0x00
                    }
                })
                Name (TMD0, Buffer (0x14) {})
                CreateDWordField (TMD0, 0x00, PIO0)
                CreateDWordField (TMD0, 0x04, DMA0)
                CreateDWordField (TMD0, 0x08, PIO1)
                CreateDWordField (TMD0, 0x0C, DMA1)
                CreateDWordField (TMD0, 0x10, CHNF)
                OperationRegion (CFG2, PCI_Config, 0x40, 0x20)
                Field (CFG2, DWordAcc, NoLock, Preserve)
                {
                    PMPT,   4,=20
                    PSPT,   4,=20
                    PMRI,   6,=20
                            Offset (0x02),=20
                    SMPT,   4,=20
                    SSPT,   4,=20
                    SMRI,   6,=20
                            Offset (0x04),=20
                    PSRI,   4,=20
                    SSRI,   4,=20
                            Offset (0x08),=20
                    PM3E,   1,=20
                    PS3E,   1,=20
                    SM3E,   1,=20
                    SS3E,   1,=20
                            Offset (0x0A),=20
                    PMUT,   2,=20
                        ,   2,=20
                    PSUT,   2,=20
                            Offset (0x0B),=20
                    SMUT,   2,=20
                        ,   2,=20
                    SSUT,   2,=20
                            Offset (0x0C),=20
                            Offset (0x14),=20
                    PM6E,   1,=20
                    PS6E,   1,=20
                    SM6E,   1,=20
                    SS6E,   1,=20
                    PMCR,   1,=20
                    PSCR,   1,=20
                    SMCR,   1,=20
                    SSCR,   1,=20
                        ,   4,=20
                    PMAE,   1,=20
                    PSAE,   1,=20
                    SMAE,   1,=20
                    SSAE,   1
                }

                Name (GMPT, 0x00)
                Name (GMUE, 0x00)
                Name (GMUT, 0x00)
                Name (GMCR, 0x00)
                Name (GSPT, 0x00)
                Name (GSUE, 0x00)
                Name (GSUT, 0x00)
                Name (GSCR, 0x00)
                Device (CHN0)
                {
                    Name (_ADR, 0x00)
                    Method (_GTM, 0, NotSerialized)
                    {
                        ShiftLeft (PSCR, 0x01, Local1)
                        Or (PMCR, Local1, Local0)
                        ShiftLeft (PMAE, 0x02, Local3)
                        ShiftLeft (PM6E, 0x01, Local4)
                        Or (Local3, Local4, Local3)
                        Or (PM3E, Local3, Local1)
                        ShiftLeft (PMPT, 0x04, Local3)
                        Or (Local1, Local3, Local1)
                        ShiftLeft (PSAE, 0x02, Local3)
                        ShiftLeft (PS6E, 0x01, Local4)
                        Or (Local3, Local4, Local3)
                        Or (PS3E, Local3, Local2)
                        ShiftLeft (PSPT, 0x04, Local3)
                        Or (Local2, Local3, Local2)
                        Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, =
PSUT, Local0))
                    }

                    Method (_STM, 3, NotSerialized)
                    {
                        Store (Arg0, Debug)
                        Store (Arg0, TMD0)
                        ShiftLeft (PMAE, 0x02, Local3)
                        ShiftLeft (PM6E, 0x01, Local4)
                        Or (Local3, Local4, Local3)
                        Or (PM3E, Local3, Local0)
                        ShiftLeft (PMPT, 0x04, Local3)
                        Or (Local0, Local3, Local0)
                        ShiftLeft (PSAE, 0x02, Local3)
                        ShiftLeft (PS6E, 0x01, Local4)
                        Or (Local3, Local4, Local3)
                        Or (PS3E, Local3, Local1)
                        ShiftLeft (PSPT, 0x04, Local3)
                        Or (Local1, Local3, Local1)
                        Store (PMRI, GMPT)
                        Store (Local0, GMUE)
                        Store (PMUT, GMUT)
                        Store (PMCR, GMCR)
                        Store (PSRI, GSPT)
                        Store (Local1, GSUE)
                        Store (PSUT, GSUT)
                        Store (PSCR, GSCR)
                        STM ()
                        Store (GMPT, PMRI)
                        Store (GMUE, Local0)
                        Store (GMUT, PMUT)
                        Store (GMCR, PMCR)
                        Store (GSUE, Local1)
                        Store (GSUT, PSUT)
                        Store (GSCR, PSCR)
                        If (And (Local0, 0x01))
                        {
                            Store (0x01, PM3E)
                        }
                        Else
                        {
                            Store (0x00, PM3E)
                        }

                        If (And (Local0, 0x02))
                        {
                            Store (0x01, PM6E)
                        }
                        Else
                        {
                            Store (0x00, PM6E)
                        }

                        If (And (Local0, 0x04))
                        {
                            Store (0x01, PMAE)
                        }
                        Else
                        {
                            Store (0x00, PMAE)
                        }

                        If (And (Local1, 0x01))
                        {
                            Store (0x01, PS3E)
                        }
                        Else
                        {
                            Store (0x00, PS3E)
                        }

                        If (And (Local1, 0x02))
                        {
                            Store (0x01, PS6E)
                        }
                        Else
                        {
                            Store (0x00, PS6E)
                        }

                        If (And (Local1, 0x04))
                        {
                            Store (0x01, PSAE)
                        }
                        Else
                        {
                            Store (0x00, PSAE)
                        }

                        Store (GTF (0x00, Arg1), ATA0)
                        Store (GTF (0x01, Arg2), ATA1)
                    }

                    Device (DRV0)
                    {
                        Name (_ADR, 0x00)
                        Method (_GTF, 0, NotSerialized)
                        {
                            Return (RATA (ATA0))
                        }
                    }

                    Device (DRV1)
                    {
                        Name (_ADR, 0x01)
                        Method (_GTF, 0, NotSerialized)
                        {
                            Return (RATA (ATA1))
                        }
                    }
                }

                Device (CHN1)
                {
                    Name (_ADR, 0x01)
                    Method (_GTM, 0, NotSerialized)
                    {
                        ShiftLeft (SSCR, 0x01, Local1)
                        Or (SMCR, Local1, Local0)
                        ShiftLeft (SMAE, 0x02, Local3)
                        ShiftLeft (SM6E, 0x01, Local4)
                        Or (Local3, Local4, Local3)
                        Or (SM3E, Local3, Local1)
                        ShiftLeft (SMPT, 0x04, Local3)
                        Or (Local1, Local3, Local1)
                        ShiftLeft (SSAE, 0x02, Local3)
                        ShiftLeft (SS6E, 0x01, Local4)
                        Or (Local3, Local4, Local3)
                        Or (SS3E, Local3, Local2)
                        ShiftLeft (SSPT, 0x04, Local3)
                        Or (Local2, Local3, Local2)
                        Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, =
SSUT, Local0))
                    }

                    Method (_STM, 3, NotSerialized)
                    {
                        Store (Arg0, Debug)
                        Store (Arg0, TMD0)
                        ShiftLeft (SMAE, 0x02, Local3)
                        ShiftLeft (SM6E, 0x01, Local4)
                        Or (Local3, Local4, Local3)
                        Or (SM3E, Local3, Local0)
                        ShiftLeft (SMPT, 0x04, Local3)
                        Or (Local0, Local3, Local0)
                        ShiftLeft (SSAE, 0x02, Local3)
                        ShiftLeft (SS6E, 0x01, Local4)
                        Or (Local3, Local4, Local3)
                        Or (SS3E, Local3, Local1)
                        ShiftLeft (SSPT, 0x04, Local3)
                        Or (Local1, Local3, Local1)
                        Store (SMRI, GMPT)
                        Store (Local0, GMUE)
                        Store (SMUT, GMUT)
                        Store (SMCR, GMCR)
                        Store (SSRI, GSPT)
                        Store (Local1, GSUE)
                        Store (SSUT, GSUT)
                        Store (SSCR, GSCR)
                        STM ()
                        Store (GMPT, SMRI)
                        Store (GMUE, Local0)
                        Store (GMUT, SMUT)
                        Store (GMCR, SMCR)
                        Store (GSUE, Local1)
                        Store (GSUT, SSUT)
                        Store (GSCR, SSCR)
                        If (And (Local0, 0x01))
                        {
                            Store (0x01, SM3E)
                        }
                        Else
                        {
                            Store (0x00, SM3E)
                        }

                        If (And (Local0, 0x02))
                        {
                            Store (0x01, SM6E)
                        }
                        Else
                        {
                            Store (0x00, SM6E)
                        }

                        If (And (Local0, 0x04))
                        {
                            Store (0x01, SMAE)
                        }
                        Else
                        {
                            Store (0x00, SMAE)
                        }

                        If (And (Local1, 0x01))
                        {
                            Store (0x01, SS3E)
                        }
                        Else
                        {
                            Store (0x00, SS3E)
                        }

                        If (And (Local1, 0x02))
                        {
                            Store (0x01, SS6E)
                        }
                        Else
                        {
                            Store (0x00, SS6E)
                        }

                        If (And (Local1, 0x04))
                        {
                            Store (0x01, SSAE)
                        }
                        Else
                        {
                            Store (0x00, SSAE)
                        }

                        Store (GTF (0x00, Arg1), ATA2)
                        Store (GTF (0x01, Arg2), ATA3)
                    }

                    Device (DRV0)
                    {
                        Name (_ADR, 0x00)
                        Method (_GTF, 0, NotSerialized)
                        {
                            Return (RATA (ATA2))
                        }
                    }

                    Device (DRV1)
                    {
                        Name (_ADR, 0x01)
                        Method (_GTF, 0, NotSerialized)
                        {
                            Return (RATA (ATA3))
                        }
                    }
                }

                Method (GTM, 7, Serialized)
                {
                    Store (Ones, PIO0)
                    Store (Ones, PIO1)
                    Store (Ones, DMA0)
                    Store (Ones, DMA1)
                    Store (0x10, CHNF)
                    If (REGF) {}
                    Else
                    {
                        Return (TMD0)
                    }

                    If (And (Arg1, 0x20))
                    {
                        Or (CHNF, 0x02, CHNF)
                    }

                    Store (Match (DerefOf (Index (TIM0, 0x01)), MEQ, =
Arg0, MTR,=20
                        0x00, 0x00), Local6)
                    Store (DerefOf (Index (DerefOf (Index (TIM0, 0x00)), =
Local6)),=20
                        Local7)
                    Store (Local7, DMA0)
                    Store (Local7, PIO0)
                    If (And (Arg4, 0x20))
                    {
                        Or (CHNF, 0x08, CHNF)
                    }

                    Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, =
Arg3, MTR,=20
                        0x00, 0x00), Local6)
                    Store (DerefOf (Index (DerefOf (Index (TIM0, 0x00)), =
Local6)),=20
                        Local7)
                    Store (Local7, DMA1)
                    Store (Local7, PIO1)
                    If (And (Arg1, 0x07))
                    {
                        Store (Arg2, Local5)
                        If (And (Arg1, 0x02))
                        {
                            Add (Local5, 0x02, Local5)
                        }

                        If (And (Arg1, 0x04))
                        {
                            Add (Local5, 0x04, Local5)
                        }

                        Store (DerefOf (Index (DerefOf (Index (TIM0, =
0x03)), Local5)),=20
                            DMA0)
                        Or (CHNF, 0x01, CHNF)
                    }

                    If (And (Arg4, 0x07))
                    {
                        Store (Arg5, Local5)
                        If (And (Arg4, 0x02))
                        {
                            Add (Local5, 0x02, Local5)
                        }

                        If (And (Arg4, 0x04))
                        {
                            Add (Local5, 0x04, Local5)
                        }

                        Store (DerefOf (Index (DerefOf (Index (TIM0, =
0x03)), Local5)),=20
                            DMA1)
                        Or (CHNF, 0x04, CHNF)
                    }

                    Store (TMD0, Debug)
                    Return (TMD0)
                }

                Method (STM, 0, Serialized)
                {
                    If (REGF) {}
                    Else
                    {
                        Store (0x00, GMUE)
                        Store (0x00, GMUT)
                        Store (0x00, GSUE)
                        Store (0x00, GSUT)
                        If (And (CHNF, 0x01))
                        {
                            Store (Match (DerefOf (Index (TIM0, 0x03)), =
MLE, DMA0, MTR,=20
                                0x00, 0x00), Local0)
                            If (LGreater (Local0, 0x05))
                            {
                                Store (0x05, Local0)
                            }

                            Store (DerefOf (Index (DerefOf (Index (TIM0, =
0x04)), Local0)),=20
                                GMUT)
                            Or (GMUE, 0x01, GMUE)
                            If (LGreater (Local0, 0x02))
                            {
                                Or (GMUE, 0x02, GMUE)
                            }

                            If (LGreater (Local0, 0x04))
                            {
                                And (GMUE, 0xFD, GMUE)
                                Or (GMUE, 0x04, GMUE)
                            }
                        }
                        Else
                        {
                            If (Or (LEqual (PIO0, Ones), LEqual (PIO0, =
0x00)))
                            {
                                If (And (LLess (DMA0, Ones), LGreater =
(DMA0, 0x00)))
                                {
                                    Store (DMA0, PIO0)
                                    Or (GMUE, 0x80, GMUE)
                                }
                            }
                        }

                        If (And (CHNF, 0x04))
                        {
                            Store (Match (DerefOf (Index (TIM0, 0x03)), =
MLE, DMA1, MTR,=20
                                0x00, 0x00), Local0)
                            If (LGreater (Local0, 0x05))
                            {
                                Store (0x05, Local0)
                            }

                            Store (DerefOf (Index (DerefOf (Index (TIM0, =
0x04)), Local0)),=20
                                GSUT)
                            Or (GSUE, 0x01, GSUE)
                            If (LGreater (Local0, 0x02))
                            {
                                Or (GSUE, 0x02, GSUE)
                            }

                            If (LGreater (Local0, 0x04))
                            {
                                And (GSUE, 0xFD, GSUE)
                                Or (GSUE, 0x04, GSUE)
                            }
                        }
                        Else
                        {
                            If (Or (LEqual (PIO1, Ones), LEqual (PIO1, =
0x00)))
                            {
                                If (And (LLess (DMA1, Ones), LGreater =
(DMA1, 0x00)))
                                {
                                    Store (DMA1, PIO1)
                                    Or (GSUE, 0x80, GSUE)
                                }
                            }
                        }

                        If (And (CHNF, 0x02))
                        {
                            Or (GMUE, 0x20, GMUE)
                        }

                        If (And (CHNF, 0x08))
                        {
                            Or (GSUE, 0x20, GSUE)
                        }

                        And (Match (DerefOf (Index (TIM0, 0x00)), MGE, =
PIO0, MTR,=20
                            0x00, 0x00), 0x07, Local0)
                        Store (DerefOf (Index (DerefOf (Index (TIM0, =
0x01)), Local0)),=20
                            Local1)
                        Store (Local1, GMPT)
                        If (LLess (Local0, 0x03))
                        {
                            Or (GMUE, 0x50, GMUE)
                        }

                        And (Match (DerefOf (Index (TIM0, 0x00)), MGE, =
PIO1, MTR,=20
                            0x00, 0x00), 0x07, Local0)
                        Store (DerefOf (Index (DerefOf (Index (TIM0, =
0x02)), Local0)),=20
                            Local1)
                        Store (Local1, GSPT)
                        If (LLess (Local0, 0x03))
                        {
                            Or (GSUE, 0x50, GSUE)
                        }
                    }
                }

                Name (AT01, Buffer (0x07)
                {
                    0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF
                })
                Name (AT02, Buffer (0x07)
                {
                    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90
                })
                Name (AT03, Buffer (0x07)
                {
                    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6
                })
                Name (AT04, Buffer (0x07)
                {
                    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91
                })
                Name (ATA0, Buffer (0x1D) {})
                Name (ATA1, Buffer (0x1D) {})
                Name (ATA2, Buffer (0x1D) {})
                Name (ATA3, Buffer (0x1D) {})
                Name (ATAB, Buffer (0x1D) {})
                CreateByteField (ATAB, 0x00, CMDC)
                Method (GTFB, 3, Serialized)
                {
                    Multiply (CMDC, 0x38, Local0)
                    Add (Local0, 0x08, Local1)
                    CreateField (ATAB, Local1, 0x38, CMDX)
                    Multiply (CMDC, 0x07, Local0)
                    CreateByteField (ATAB, Add (Local0, 0x02), A001)
                    CreateByteField (ATAB, Add (Local0, 0x06), A005)
                    Store (Arg0, CMDX)
                    Store (Arg1, A001)
                    Store (Arg2, A005)
                    Increment (CMDC)
                }

                Method (GTF, 2, Serialized)
                {
                    Store (Arg1, Debug)
                    Store (0x00, CMDC)
                    Name (ID49, 0x0C00)
                    Name (ID59, 0x00)
                    Name (ID53, 0x04)
                    Name (ID63, 0x0F00)
                    Name (ID88, 0x0F00)
                    Name (IRDY, 0x01)
                    Name (PIOT, 0x00)
                    Name (DMAT, 0x00)
                    If (LEqual (SizeOf (Arg1), 0x0200))
                    {
                        CreateWordField (Arg1, 0x62, IW49)
                        Store (IW49, ID49)
                        CreateWordField (Arg1, 0x6A, IW53)
                        Store (IW53, ID53)
                        CreateWordField (Arg1, 0x7E, IW63)
                        Store (IW63, ID63)
                        CreateWordField (Arg1, 0x76, IW59)
                        Store (IW59, ID59)
                        CreateWordField (Arg1, 0xB0, IW88)
                        Store (IW88, ID88)
                    }

                    Store (0xA0, Local7)
                    If (Arg0)
                    {
                        Store (0xB0, Local7)
                        And (CHNF, 0x08, IRDY)
                        If (And (CHNF, 0x10))
                        {
                            Store (PIO1, PIOT)
                        }
                        Else
                        {
                            Store (PIO0, PIOT)
                        }

                        If (And (CHNF, 0x04))
                        {
                            If (And (CHNF, 0x10))
                            {
                                Store (DMA1, DMAT)
                            }
                            Else
                            {
                                Store (DMA0, DMAT)
                            }
                        }
                    }
                    Else
                    {
                        And (CHNF, 0x02, IRDY)
                        Store (PIO0, PIOT)
                        If (And (CHNF, 0x01))
                        {
                            Store (DMA0, DMAT)
                        }
                    }

                    If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00
                        )), DMAT))
                    {
                        Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, =
DMAT, MTR,=20
                            0x00, 0x00), Local1)
                        If (LGreater (Local1, 0x05))
                        {
                            Store (0x05, Local1)
                        }

                        GTFB (AT01, Or (0x40, Local1), Local7)
                    }
                    Else
                    {
                        If (LAnd (And (ID63, 0xFF00), PIOT))
                        {
                            And (Match (DerefOf (Index (TIM0, 0x00)), =
MGE, PIOT, MTR,=20
                                0x00, 0x00), 0x03, Local0)
                            Or (0x20, DerefOf (Index (DerefOf (Index =
(TIM0, 0x07)), Local0
                                )), Local1)
                            GTFB (AT01, Local1, Local7)
                        }
                    }

                    If (IRDY)
                    {
                        And (Match (DerefOf (Index (TIM0, 0x00)), MGE, =
PIOT, MTR,=20
                            0x00, 0x00), 0x07, Local0)
                        Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, =
0x06)), Local0
                            )), Local1)
                        GTFB (AT01, Local1, Local7)
                    }
                    Else
                    {
                        If (And (ID49, 0x0400))
                        {
                            GTFB (AT01, 0x01, Local7)
                        }
                    }

                    If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF)))
                    {
                        GTFB (AT03, And (ID59, 0xFF), Local7)
                    }

                    Store (ATAB, Debug)
                    Return (ATAB)
                }

                Method (RATA, 1, NotSerialized)
                {
                    CreateByteField (Arg0, 0x00, CMDN)
                    Multiply (CMDN, 0x38, Local0)
                    CreateField (Arg0, 0x08, Local0, RETB)
                    Store (RETB, Debug)
                    Return (RETB)
                }
            }

            Device (USB1)
            {
                Name (_ADR, 0x001D0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x03, 0x01))
                }
            }

            Device (USB2)
            {
                Name (_ADR, 0x001D0001)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x04, 0x01))
                }
            }

            Device (USB3)
            {
                Name (_ADR, 0x001D0002)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0C, 0x01))
                }
            }

            Device (USB4)
            {
                Name (_ADR, 0x001D0003)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0E, 0x01))
                }
            }

            Device (EUSB)
            {
                Name (_ADR, 0x001D0007)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0D, 0x01))
                }
            }

            Device (IDE1)
            {
                Name (_ADR, 0x001F0002)
            }

            Device (SBRG)
            {
                Name (_ADR, 0x001F0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x1C, 0x01))
                }

                Device (PIC)
                {
                    Name (_HID, EisaId ("PNP0000"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0020,             // Range Minimum
                            0x0020,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x00A0,             // Range Minimum
                            0x00A0,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IRQNoFlags ()
                            {2}
                    })
                }

                Device (DMAD)
                {
                    Name (_HID, EisaId ("PNP0200"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        DMA (Compatibility, BusMaster, Transfer8, )
                            {4}
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x0081,             // Range Minimum
                            0x0081,             // Range Maximum
                            0x00,               // Alignment
                            0x03,               // Length
                            )
                        IO (Decode16,
                            0x0087,             // Range Minimum
                            0x0087,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0089,             // Range Minimum
                            0x0089,             // Range Maximum
                            0x00,               // Alignment
                            0x03,               // Length
                            )
                        IO (Decode16,
                            0x008F,             // Range Minimum
                            0x008F,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x00C0,             // Range Minimum
                            0x00C0,             // Range Maximum
                            0x00,               // Alignment
                            0x20,               // Length
                            )
                    })
                }

                Device (TMR)
                {
                    Name (_HID, EisaId ("PNP0100"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0040,             // Range Minimum
                            0x0040,             // Range Maximum
                            0x00,               // Alignment
                            0x04,               // Length
                            )
                        IRQNoFlags ()
                            {0}
                    })
                }

                Device (RTC0)
                {
                    Name (_HID, EisaId ("PNP0B00"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0070,             // Range Minimum
                            0x0070,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IRQNoFlags ()
                            {8}
                    })
                }

                Device (PS2K)
                {
                    Name (_HID, EisaId ("PNP0303"))
                    Name (_CID, EisaId ("PNP030B"))
                    Method (_STA, 0, NotSerialized)
                    {
                        ShiftLeft (0x01, 0x0A, Local0)
                        If (And (IOST, Local0))
                        {
                            Return (0x0F)
                        }

                        Return (0x00)
                    }

                    Method (_PRW, 0, NotSerialized)
                    {
                        Return (Package (0x02)
                        {
                            0x1C,=20
                            0x01
                        })
                    }

                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0060,             // Range Minimum
                            0x0060,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0064,             // Range Minimum
                            0x0064,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IRQNoFlags ()
                            {1}
                    })
                }

                Device (PS2M)
                {
                    Name (_HID, EisaId ("PNP0F03"))
                    Name (_CID, EisaId ("PNP0F13"))
                    Method (_STA, 0, NotSerialized)
                    {
                        ShiftLeft (0x01, 0x0C, Local0)
                        If (And (IOST, Local0))
                        {
                            Return (0x0F)
                        }

                        Return (0x00)
                    }

                    Method (_PRW, 0, NotSerialized)
                    {
                        Return (Package (0x02)
                        {
                            0x1C,=20
                            0x01
                        })
                    }

                    Name (CRS1, ResourceTemplate ()
                    {
                        IRQNoFlags ()
                            {12}
                    })
                    Name (CRS2, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0060,             // Range Minimum
                            0x0060,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0064,             // Range Minimum
                            0x0064,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IRQNoFlags ()
                            {12}
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        ShiftLeft (0x01, 0x0A, Local0)
                        If (And (IOST, Local0))
                        {
                            Return (CRS1)
                        }
                        Else
                        {
                            Return (CRS2)
                        }
                    }
                }

                Device (SPKR)
                {
                    Name (_HID, EisaId ("PNP0800"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0061,             // Range Minimum
                            0x0061,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                    })
                }

                Device (COPR)
                {
                    Name (_HID, EisaId ("PNP0C04"))
                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x00F0,             // Range Minimum
                            0x00F0,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IRQNoFlags ()
                            {13}
                    })
                }

                Device (UAR1)
                {
                    Name (_UID, 0x01)
                    Name (_HID, EisaId ("PNP0501"))
                    Method (_STA, 0, NotSerialized)
                    {
                        Return (DSTA (0x00))
                    }

                    Method (_DIS, 0, NotSerialized)
                    {
                        DCNT (0x00, 0x00)
                    }

                    Method (_CRS, 0, NotSerialized)
                    {
                        Return (DCRS (0x00, 0x00))
                    }

                    Method (_SRS, 1, NotSerialized)
                    {
                        DSRS (Arg0, 0x00)
                    }

                    Method (_PRS, 0, NotSerialized)
                    {
                        Return (CMPR)
                    }

                    Name (CMPR, ResourceTemplate ()
                    {
                        StartDependentFn (0x00, 0x00)
                        {
                            IO (Decode16,
                                0x03F8,             // Range Minimum
                                0x03F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {4}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03F8,             // Range Minimum
                                0x03F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02F8,             // Range Minimum
                                0x02F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03E8,             // Range Minimum
                                0x03E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02E8,             // Range Minimum
                                0x02E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        EndDependentFn ()
                    })
                }

                Device (UAR2)
                {
                    Name (_UID, 0x02)
                    Method (_HID, 0, NotSerialized)
                    {
                        Return (UHID (0x01))
                    }

                    Method (_STA, 0, NotSerialized)
                    {
                        Return (DSTA (0x01))
                    }

                    Method (_DIS, 0, NotSerialized)
                    {
                        DCNT (0x01, 0x00)
                    }

                    Method (_CRS, 0, NotSerialized)
                    {
                        Return (DCRS (0x01, 0x01))
                    }

                    Method (_SRS, 1, NotSerialized)
                    {
                        DSRS (Arg0, 0x01)
                    }

                    Method (_PRS, 0, NotSerialized)
                    {
                        Return (CMPR)
                    }

                    Name (CMPR, ResourceTemplate ()
                    {
                        StartDependentFn (0x00, 0x00)
                        {
                            IO (Decode16,
                                0x02F8,             // Range Minimum
                                0x02F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03F8,             // Range Minimum
                                0x03F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02F8,             // Range Minimum
                                0x02F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03E8,             // Range Minimum
                                0x03E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02E8,             // Range Minimum
                                0x02E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03F8,             // Range Minimum
                                0x03F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {0,1,2,3}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02F8,             // Range Minimum
                                0x02F8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {0,1,2,3}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03E8,             // Range Minimum
                                0x03E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {0,1,2,3}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x02E8,             // Range Minimum
                                0x02E8,             // Range Maximum
                                0x01,               // Alignment
                                0x08,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {0,1,2,3}
                        }
                        EndDependentFn ()
                    })
                }

                Device (FDC)
                {
                    Name (_HID, EisaId ("PNP0700"))
                    Name (_FDE, Package (0x05)
                    {
                        0x02,=20
                        0x02,=20
                        0x02,=20
                        0x02,=20
                        0x02
                    })
                    Method (_STA, 0, NotSerialized)
                    {
                        Return (DSTA (0x03))
                    }

                    Method (_DIS, 0, NotSerialized)
                    {
                        DCNT (0x03, 0x00)
                    }

                    Method (_CRS, 0, NotSerialized)
                    {
                        DCRS (0x03, 0x01)
                        Store (IRQM, IRQE)
                        Store (DMAM, DMAE)
                        Store (IO11, IO21)
                        Store (IO12, IO22)
                        Store (0x06, LEN2)
                        Add (IO21, 0x07, IO31)
                        Store (IO31, IO32)
                        Store (0x01, LEN3)
                        Return (CRS2)
                    }

                    Method (_SRS, 1, NotSerialized)
                    {
                        DSRS (Arg0, 0x03)
                        CreateWordField (Arg0, 0x11, IRQE)
                        CreateByteField (Arg0, 0x14, DMAE)
                        ENFG (CGLD (0x03))
                        If (IRQE)
                        {
                            FindSetRightBit (IRQE, Local0)
                            Subtract (Local0, 0x01, INTR)
                        }
                        Else
                        {
                            Store (0x00, INTR)
                        }

                        If (DMAE)
                        {
                            FindSetRightBit (DMAE, Local0)
                            Subtract (Local0, 0x01, DMCH)
                        }
                        Else
                        {
                            Store (0x04, DMCH)
                        }

                        EXFG ()
                    }

                    Name (_PRS, ResourceTemplate ()
                    {
                        StartDependentFn (0x00, 0x00)
                        {
                            IO (Decode16,
                                0x03F0,             // Range Minimum
                                0x03F0,             // Range Maximum
                                0x01,               // Alignment
                                0x06,               // Length
                                )
                            IO (Decode16,
                                0x03F7,             // Range Minimum
                                0x03F7,             // Range Maximum
                                0x01,               // Alignment
                                0x01,               // Length
                                )
                            IRQNoFlags ()
                                {6}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {2}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x03F0,             // Range Minimum
                                0x03F0,             // Range Maximum
                                0x01,               // Alignment
                                0x06,               // Length
                                )
                            IO (Decode16,
                                0x03F7,             // Range Minimum
                                0x03F7,             // Range Maximum
                                0x01,               // Alignment
                                0x01,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {0,1,2,3}
                        }
                        StartDependentFnNoPri ()
                        {
                            IO (Decode16,
                                0x0370,             // Range Minimum
                                0x0370,             // Range Maximum
                                0x01,               // Alignment
                                0x06,               // Length
                                )
                            IO (Decode16,
                                0x0377,             // Range Minimum
                                0x0377,             // Range Maximum
                                0x01,               // Alignment
                                0x01,               // Length
                                )
                            IRQNoFlags ()
                                {3,4,5,6,7,10,11,12}
                            DMA (Compatibility, NotBusMaster, Transfer8, =
)
                                {0,1,2,3}
                        }
                        EndDependentFn ()
                    })
                }

                Device (SIOR)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Method (_UID, 0, NotSerialized)
                    {
                        Return (SPIO)
                    }

                    Name (CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y00)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y01)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y02)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y03)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y04)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y05)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y06)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y07)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y08)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y09)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        If (LAnd (LNotEqual (SPIO, 0x03F0), LGreater =
(SPIO, 0xF0)))
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y00._MIN, GP10)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y00._MAX, GP11)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y00._LEN, GPL1)
                            Store (SPIO, GP10)
                            Store (SPIO, GP11)
                            Store (0x02, GPL1)
                        }

                        If (IO1B)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y01._MIN, GP20)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y01._MAX, GP21)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y01._LEN, GPL2)
                            Store (IO1B, GP20)
                            Store (IO1B, GP21)
                            Store (IO1L, GPL2)
                        }

                        If (IOSB)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y02._MIN, GP30)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y02._MAX, GP31)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y02._LEN, GPL3)
                            Store (IOSB, GP30)
                            Store (IOSB, GP31)
                            Store (IOSL, GPL3)
                        }

                        If (IOPB)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y03._MIN, GP40)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y03._MAX, GP41)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y03._LEN, GPL4)
                            Store (IOPB, GP40)
                            Store (IOPB, GP41)
                            Store (IOPL, GPL4)
                        }

                        If (IOXB)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y04._MIN, GP50)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y04._MAX, GP51)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y04._LEN, GPL5)
                            Store (IOXB, GP50)
                            Store (IOXB, GP51)
                            Store (IOXL, GPL5)
                        }

                        If (FMCB)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y05._MIN, GP60)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y05._MAX, GP61)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y05._LEN, GPL6)
                            Store (FMCB, GP60)
                            Store (FMCB, GP61)
                            Store (FMCL, GPL6)
                        }

                        If (HMCB)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y06._MIN, GP70)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y06._MAX, GP71)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y06._LEN, GPL7)
                            Store (HMCB, GP70)
                            Store (HMCB, GP71)
                            Store (HMCL, GPL7)
                        }

                        If (WDTB)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y07._MIN, GP80)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y07._MAX, GP81)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y07._LEN, GPL8)
                            Store (WDTB, GP80)
                            Store (WDTB, GP81)
                            Store (WDTL, GPL8)
                        }

                        If (IOPO)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y08._MIN, GP90)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y08._MAX, GP91)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y08._LEN, GPL9)
                            Store (IOPO, GP90)
                            Store (IOPO, GP91)
                            Store (IOOL, GPL9)
                        }

                        If (IOFR)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y09._MIN, GPA0)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y09._MAX, GPA1)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.SIOR._Y09._LEN, GPLA)
                            Store (IOFR, GPA0)
                            Store (IOFR, GPA1)
                            Store (IOUL, GPLA)
                        }

                        Return (CRS)
                    }
                }

                Name (DCAT, Package (0x16)
                {
                    0x03,=20
                    0x02,=20
                    0x01,=20
                    0x00,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0x07,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF,=20
                    0xFF
                })
                Mutex (MUT0, 0x00)
                Method (ENFG, 1, NotSerialized)
                {
                    Acquire (MUT0, 0x0FFF)
                    Store (Arg0, LDN)
                }

                Method (EXFG, 0, NotSerialized)
                {
                    Release (MUT0)
                }

                Method (LPTM, 1, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    And (OPT0, 0x02, Local0)
                    EXFG ()
                    Return (Local0)
                }

                Method (UHID, 1, NotSerialized)
                {
                    If (LEqual (Arg0, 0x01))
                    {
                        ENFG (CGLD (Arg0))
                        And (OPT1, 0x38, Local0)
                        EXFG ()
                        If (Local0)
                        {
                            Return (0x1005D041)
                        }
                    }

                    Return (0x0105D041)
                }

                Name (WPSM, 0x00)
                Name (WPSK, 0x00)
                Method (SIOS, 1, NotSerialized)
                {
                    Store ("SIOS", Debug)
                    If (LLess (Arg0, 0x05))
                    {
                        Store (0x01, MSD)
                        Store (0x01, KBDD)
                        ENFG (0x06)
                        Or (OPT0, 0x01, OPT0)
                        EXFG ()
                        If (WPSM)
                        {
                            While (MSS)
                            {
                                Store (0x01, MSS)
                                Store (0x00, MSEV)
                                Store (0x01, MSEV)
                                Store (0x01, MSE)
                                Sleep (0x03E8)
                            }

                            Store (0x01, DBGA)
                        }

                        If (WPSK)
                        {
                            While (KBS)
                            {
                                Store (0x01, KBS)
                                Store (0x00, KBEV)
                                Store (0x01, KBEV)
                                Store (0x01, KBE)
                                Sleep (0x03E8)
                            }

                            Store (0x01, DBGB)
                        }
                    }
                }

                Method (SIOW, 1, NotSerialized)
                {
                    Store ("SIOW", Debug)
                    ENFG (0x06)
                    And (OPT0, 0xFE, OPT0)
                    EXFG ()
                    Store (0x00, MSEV)
                    Store (0x00, MSE)
                    Store (0x01, MSS)
                    Store (0x00, MSD)
                    Store (0x00, KBEV)
                    Store (0x00, KBE)
                    Store (0x01, KBS)
                    Store (0x00, KBDD)
                }

                Method (SIOH, 0, NotSerialized)
                {
                    Store ("SIOH", Debug)
                }

                OperationRegion (IOID, SystemIO, SPIO, 0x02)
                Field (IOID, ByteAcc, NoLock, Preserve)
                {
                    INDX,   8,=20
                    DATA,   8
                }

                IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
                {
                            Offset (0x07),=20
                    LDN,    8,=20
                            Offset (0x30),=20
                    ACTR,   8,=20
                            Offset (0x60),=20
                    IOAH,   8,=20
                    IOAL,   8,=20
                    IOH2,   8,=20
                    IOL2,   8,=20
                            Offset (0x70),=20
                    INTR,   8,=20
                            Offset (0x74),=20
                    DMCH,   8,=20
                            Offset (0xF0),=20
                    OPT0,   8,=20
                    OPT1,   8,=20
                    OPT2,   8
                }

                Method (CGLD, 1, NotSerialized)
                {
                    Return (DerefOf (Index (DCAT, Arg0)))
                }

                Method (DSTA, 1, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    Store (ACTR, Local0)
                    EXFG ()
                    If (LEqual (Local0, 0xFF))
                    {
                        Return (0x00)
                    }

                    And (Local0, 0x01, Local0)
                    Or (IOST, ShiftLeft (Local0, Arg0), IOST)
                    If (Local0)
                    {
                        Return (0x0F)
                    }
                    Else
                    {
                        If (And (ShiftLeft (0x01, Arg0), IOST))
                        {
                            Return (0x0D)
                        }
                        Else
                        {
                            Return (0x00)
                        }
                    }
                }

                Method (DCNT, 2, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    ShiftLeft (IOAH, 0x08, Local1)
                    Or (IOAL, Local1, Local1)
                    RRIO (Arg0, Arg1, Local1, 0x08)
                    If (LAnd (LLess (DMCH, 0x04), LNotEqual (And (DMCH, =
0x03,=20
                        Local1), 0x00)))
                    {
                        RDMA (Arg0, Arg1, Increment (Local1))
                    }

                    Store (Arg1, ACTR)
                    EXFG ()
                }

                Name (CRS1, ResourceTemplate ()
                {
                    IO (Decode16,
                        0x0000,             // Range Minimum
                        0x0000,             // Range Maximum
                        0x01,               // Alignment
                        0x00,               // Length
                        _Y0C)
                    IRQNoFlags (_Y0A)
                        {}
                    DMA (Compatibility, NotBusMaster, Transfer8, _Y0B)
                        {}
                })
                CreateWordField (CRS1, \_SB.PCI0.SBRG._Y0A._INT, IRQM)
                CreateByteField (CRS1, \_SB.PCI0.SBRG._Y0B._DMA, DMAM)
                CreateWordField (CRS1, \_SB.PCI0.SBRG._Y0C._MIN, IO11)
                CreateWordField (CRS1, \_SB.PCI0.SBRG._Y0C._MAX, IO12)
                CreateByteField (CRS1, \_SB.PCI0.SBRG._Y0C._LEN, LEN1)
                Name (CRS2, ResourceTemplate ()
                {
                    IO (Decode16,
                        0x0000,             // Range Minimum
                        0x0000,             // Range Maximum
                        0x01,               // Alignment
                        0x00,               // Length
                        _Y0F)
                    IO (Decode16,
                        0x0000,             // Range Minimum
                        0x0000,             // Range Maximum
                        0x01,               // Alignment
                        0x00,               // Length
                        _Y10)
                    IRQNoFlags (_Y0D)
                        {6}
                    DMA (Compatibility, NotBusMaster, Transfer8, _Y0E)
                        {2}
                })
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y0D._INT, IRQE)
                CreateByteField (CRS2, \_SB.PCI0.SBRG._Y0E._DMA, DMAE)
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y0F._MIN, IO21)
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y0F._MAX, IO22)
                CreateByteField (CRS2, \_SB.PCI0.SBRG._Y0F._LEN, LEN2)
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y10._MIN, IO31)
                CreateWordField (CRS2, \_SB.PCI0.SBRG._Y10._MAX, IO32)
                CreateByteField (CRS2, \_SB.PCI0.SBRG._Y10._LEN, LEN3)
                Method (DCRS, 2, NotSerialized)
                {
                    ENFG (CGLD (Arg0))
                    ShiftLeft (IOAH, 0x08, IO11)
                    Or (IOAL, IO11, IO11)
                    Store (IO11, IO12)
                    Subtract (FindSetRightBit (IO11), 0x01, Local0)
                    ShiftLeft (0x01, Local0, LEN1)
                    If (INTR)
                    {
                        ShiftLeft (0x01, INTR, IRQM)
                    }
                    Else
                    {
                        Store (0x00, IRQM)
                    }

                    If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, =
0x00)))
                    {
                        Store (0x00, DMAM)
                    }
                    Else
                    {
                        And (DMCH, 0x03, Local1)
                        ShiftLeft (0x01, Local1, DMAM)
                    }

                    EXFG ()
                    Return (CRS1)
                }

                Method (DSRS, 2, NotSerialized)
                {
                    CreateWordField (Arg0, 0x09, IRQM)
                    CreateByteField (Arg0, 0x0C, DMAM)
                    CreateWordField (Arg0, 0x02, IO11)
                    ENFG (CGLD (Arg1))
                    And (IO11, 0xFF, IOAL)
                    ShiftRight (IO11, 0x08, IOAH)
                    If (IRQM)
                    {
                        FindSetRightBit (IRQM, Local0)
                        Subtract (Local0, 0x01, INTR)
                    }
                    Else
                    {
                        Store (0x00, INTR)
                    }

                    If (DMAM)
                    {
                        FindSetRightBit (DMAM, Local0)
                        Subtract (Local0, 0x01, DMCH)
                    }
                    Else
                    {
                        Store (0x04, DMCH)
                    }

                    EXFG ()
                    DCNT (Arg1, 0x01)
                }

                OperationRegion (SWC0, SystemIO, IOSB, IOSL)
                Field (SWC0, ByteAcc, NoLock, Preserve)
                {
                            Offset (0x06),=20
                        ,   4,=20
                    MSD,    1,=20
                    KBDD,   1,=20
                            Offset (0x13),=20
                    KBEV,   4,=20
                    MSEV,   3
                }

                OperationRegion (GPE1, SystemIO, IOPB, IOPL)
                Field (GPE1, ByteAcc, NoLock, Preserve)
                {
                            Offset (0x0A),=20
                        ,   2,=20
                    MSS,    1,=20
                    KBS,    1,=20
                            Offset (0x0E),=20
                        ,   2,=20
                    MSE,    1,=20
                    KBE,    1
                }

                Method (\_SB.PCI0.SBRG.PS2M._PSW, 1, NotSerialized)
                {
                    Store (Arg0, WPSM)
                }

                Method (\_SB.PCI0.SBRG.PS2K._PSW, 1, NotSerialized)
                {
                    Store (Arg0, WPSK)
                }

                Device (RMSC)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Name (_UID, 0x10)
                    Name (CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0010,             // Range Minimum
                            0x0010,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x0022,             // Range Minimum
                            0x0022,             // Range Maximum
                            0x00,               // Alignment
                            0x1E,               // Length
                            )
                        IO (Decode16,
                            0x0044,             // Range Minimum
                            0x0044,             // Range Maximum
                            0x00,               // Alignment
                            0x1C,               // Length
                            )
                        IO (Decode16,
                            0x0062,             // Range Minimum
                            0x0062,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0065,             // Range Minimum
                            0x0065,             // Range Maximum
                            0x00,               // Alignment
                            0x0B,               // Length
                            )
                        IO (Decode16,
                            0x0072,             // Range Minimum
                            0x0072,             // Range Maximum
                            0x00,               // Alignment
                            0x0E,               // Length
                            )
                        IO (Decode16,
                            0x0080,             // Range Minimum
                            0x0080,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0084,             // Range Minimum
                            0x0084,             // Range Maximum
                            0x00,               // Alignment
                            0x03,               // Length
                            )
                        IO (Decode16,
                            0x0088,             // Range Minimum
                            0x0088,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x008C,             // Range Minimum
                            0x008C,             // Range Maximum
                            0x00,               // Alignment
                            0x03,               // Length
                            )
                        IO (Decode16,
                            0x0090,             // Range Minimum
                            0x0090,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x00A2,             // Range Minimum
                            0x00A2,             // Range Maximum
                            0x00,               // Alignment
                            0x1E,               // Length
                            )
                        IO (Decode16,
                            0x00E0,             // Range Minimum
                            0x00E0,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x04D0,             // Range Minimum
                            0x04D0,             // Range Maximum
                            0x00,               // Alignment
                            0x02,               // Length
                            )
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y11)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y12)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y13)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y14)
                        IO (Decode16,
                            0x0000,             // Range Minimum
                            0x0000,             // Range Maximum
                            0x00,               // Alignment
                            0x00,               // Length
                            _Y15)
                        IO (Decode16,
                            0x0900,             // Range Minimum
                            0x0900,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        IO (Decode16,
                            0x0910,             // Range Minimum
                            0x0910,             // Range Maximum
                            0x00,               // Alignment
                            0x10,               // Length
                            )
                        Memory32Fixed (ReadWrite,
                            0xFED20000,         // Address Base
                            0x00070000,         // Address Length
                            )
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y11._MIN, GP00)
                        CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y11._MAX, GP01)
                        CreateByteField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y11._LEN, GP0L)
                        Store (PMBS, GP00)
                        Store (PMBS, GP01)
                        Store (PMLN, GP0L)
                        If (SMBS)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y12._MIN, GP10)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y12._MAX, GP11)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y12._LEN, GP1L)
                            Store (SMBS, GP10)
                            Store (SMBS, GP11)
                            Store (SMBL, GP1L)
                        }

                        If (GPBS)
                        {
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y13._MIN, GP20)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y13._MAX, GP21)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y13._LEN, GP2L)
                            Store (GPBS, GP20)
                            Store (GPBS, GP21)
                            Store (GPLN, GP2L)
                        }

                        If (LEqual (GS28, 0x00))
                        {
                            If (LNotEqual (OSNF (), 0x00))
                            {
                                CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y14._MIN, GP80)
                                CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y14._MAX, GP81)
                                CreateByteField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y14._LEN, GP8L)
                                Store (BMC1, GP80)
                                Store (BMC1, GP81)
                                Store (BM1L, GP8L)
                            }

                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y15._MIN, GP90)
                            CreateWordField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y15._MAX, GP91)
                            CreateByteField (CRS, =
\_SB.PCI0.SBRG.RMSC._Y15._LEN, GP9L)
                            Store (BMC2, GP90)
                            Store (BMC2, GP91)
                            Store (BM2L, GP9L)
                        }

                        Return (CRS)
                    }
                }

                Device (MI0)
                {
                    Name (_HID, EisaId ("IPI0001"))
                    Name (_UID, 0x00)
                    Method (_STA, 0, NotSerialized)
                    {
                        Store (0x00, Local0)
                        If (LEqual (OSNF (), 0x00))
                        {
                            If (LEqual (GS28, 0x00))
                            {
                                Store (0x0F, Local0)
                            }
                        }

                        Return (Local0)
                    }

                    Method (_PS0, 0, NotSerialized)
                    {
                    }

                    Method (_PS3, 0, NotSerialized)
                    {
                    }

                    Method (_DIS, 0, NotSerialized)
                    {
                    }

                    Name (_CRS, ResourceTemplate ()
                    {
                        IO (Decode16,
                            0x0CA2,             // Range Minimum
                            0x0CA2,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                        IO (Decode16,
                            0x0CA3,             // Range Minimum
                            0x0CA3,             // Range Maximum
                            0x00,               // Alignment
                            0x01,               // Length
                            )
                    })
                    Method (_IFT, 0, NotSerialized)
                    {
                        Return (0x01)
                    }

                    Method (_SRV, 0, NotSerialized)
                    {
                        Return (0x0200)
                    }
                }

                Device (\_SB.PCI0.PCIE)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Name (_UID, 0x11)
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadOnly,
                            0xE0000000,         // Address Base
                            0x10000000,         // Address Length
                            _Y16)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateDWordField (CRS, \_SB.PCI0.PCIE._Y16._BAS, =
BAS1)
                        CreateDWordField (CRS, \_SB.PCI0.PCIE._Y16._LEN, =
LEN1)
                        Store (\PCIB, BAS1)
                        Store (\PCIL, LEN1)
                        Return (CRS)
                    }
                }

                Device (OMSC)
                {
                    Name (_HID, EisaId ("PNP0C02"))
                    Name (_UID, 0x00)
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y17)
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y18)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        If (APIC)
                        {
                            CreateDWordField (CRS, =
\_SB.PCI0.SBRG.OMSC._Y17._LEN, ML01)
                            CreateDWordField (CRS, =
\_SB.PCI0.SBRG.OMSC._Y17._BAS, MB01)
                            CreateDWordField (CRS, =
\_SB.PCI0.SBRG.OMSC._Y18._LEN, ML02)
                            CreateDWordField (CRS, =
\_SB.PCI0.SBRG.OMSC._Y18._BAS, MB02)
                            Store (0xFEC00000, MB01)
                            Store (0x1000, ML01)
                            Store (0xFEE00000, MB02)
                            Store (0x1000, ML02)
                        }

                        Return (CRS)
                    }
                }

                Device (\_SB.RMEM)
                {
                    Name (_HID, EisaId ("PNP0C01"))
                    Name (_UID, 0x01)
                    Name (CRS, ResourceTemplate ()
                    {
                        Memory32Fixed (ReadWrite,
                            0x00000000,         // Address Base
                            0x000A0000,         // Address Length
                            )
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y19)
                        Memory32Fixed (ReadOnly,
                            0x000E0000,         // Address Base
                            0x00020000,         // Address Length
                            _Y1A)
                        Memory32Fixed (ReadWrite,
                            0x00100000,         // Address Base
                            0x00000000,         // Address Length
                            _Y1B)
                        Memory32Fixed (ReadOnly,
                            0x00000000,         // Address Base
                            0x00000000,         // Address Length
                            _Y1C)
                    })
                    Method (_CRS, 0, NotSerialized)
                    {
                        CreateDWordField (CRS, \_SB.RMEM._Y19._BAS, =
BAS1)
                        CreateDWordField (CRS, \_SB.RMEM._Y19._LEN, =
LEN1)
                        CreateDWordField (CRS, \_SB.RMEM._Y1A._BAS, =
BAS2)
                        CreateDWordField (CRS, \_SB.RMEM._Y1A._LEN, =
LEN2)
                        CreateDWordField (CRS, \_SB.RMEM._Y1B._LEN, =
LEN3)
                        CreateDWordField (CRS, \_SB.RMEM._Y1C._BAS, =
BAS4)
                        CreateDWordField (CRS, \_SB.RMEM._Y1C._LEN, =
LEN4)
                        If (OSFL ()) {}
                        Else
                        {
                            If (MG1B)
                            {
                                If (LGreater (MG1B, 0x000C0000))
                                {
                                    Store (0x000C0000, BAS1)
                                    Subtract (MG1B, BAS1, LEN1)
                                }
                            }
                            Else
                            {
                                Store (0x000C0000, BAS1)
                                Store (0x00020000, LEN1)
                            }

                            If (Add (MG1B, MG1L, Local0))
                            {
                                Store (Local0, BAS2)
                                Subtract (0x00100000, BAS2, LEN2)
                            }
                        }

                        Subtract (MG2B, 0x00100000, LEN3)
                        Add (MG2B, MG2L, BAS4)
                        Subtract (0x00, BAS4, LEN4)
                        Return (CRS)
                    }
                }
            }

            Device (EPA0)
            {
                Name (_ADR, 0x00020000)
                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR01)
                    }

                    Return (PR01)
                }

                Device (PXHA)
                {
                    Name (_ADR, 0x00)
                    Method (_PRT, 0, NotSerialized)
                    {
                        Store (\_SB.GFRI (), Local1)
                        If (LEqual (Local1, 0x03))
                        {
                            If (PICM)
                            {
                                Return (AR80)
                            }

                            Return (PR80)
                        }
                        Else
                        {
                            If (PICM)
                            {
                                Return (AR08)
                            }

                            Return (PR08)
                        }
                    }
                }

                Device (PXHB)
                {
                    Name (_ADR, 0x02)
                    Method (_PRT, 0, NotSerialized)
                    {
                        If (PICM)
                        {
                            Return (AR09)
                        }

                        Return (PR09)
                    }
                }
            }

            Device (EPA1)
            {
                Name (_ADR, 0x00030000)
            }

            Device (EPB0)
            {
                Name (_ADR, 0x00040000)
            }

            Device (EPB1)
            {
                Name (_ADR, 0x00050000)
            }

            Device (EPC0)
            {
                Name (_ADR, 0x00060000)
                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR05)
                    }

                    Return (PR05)
                }

                Device (PXDA)
                {
                    Method (_ADR, 0, NotSerialized)
                    {
                        Store (0x00, Local0)
                        Store (\_SB.GFRI (), Local1)
                        If (LOr (LEqual (Local1, 0x00), LEqual (Local1, =
0x01)))
                        {
                            Store (0x00FF0000, Local0)
                        }

                        Return (Local0)
                    }

                    Method (_PRT, 0, NotSerialized)
                    {
                        If (PICM)
                        {
                            Return (AR0A)
                        }

                        Return (PR0A)
                    }
                }

                Device (PXDB)
                {
                    Method (_ADR, 0, NotSerialized)
                    {
                        Store (0x02, Local0)
                        Store (\_SB.GFRI (), Local1)
                        If (LOr (LEqual (Local1, 0x00), LEqual (Local1, =
0x01)))
                        {
                            Store (0x00FF0002, Local0)
                        }

                        Return (Local0)
                    }

                    Method (_PRT, 0, NotSerialized)
                    {
                        If (PICM)
                        {
                            Return (AR0B)
                        }

                        Return (PR0B)
                    }
                }

                Device (PCE1)
                {
                    Name (_ADR, 0xFFFF)
                    Method (_PRW, 0, NotSerialized)
                    {
                        Return (GPRW (0x17, 0x01))
                    }
                }
            }

            Device (EPC1)
            {
                Name (_ADR, 0x00070000)
                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR06)
                    }

                    Return (PR06)
                }

                Device (PCE2)
                {
                    Name (_ADR, 0xFFFF)
                    Method (_PRW, 0, NotSerialized)
                    {
                        Return (GPRW (0x17, 0x01))
                    }
                }
            }

            Device (P0P7)
            {
                Name (_ADR, 0x001E0000)
                Method (_PRW, 0, NotSerialized)
                {
                    Return (GPRW (0x0B, 0x04))
                }

                Method (_PRT, 0, NotSerialized)
                {
                    If (PICM)
                    {
                        Return (AR07)
                    }

                    Return (PR07)
                }
            }
        }

        Scope (\_GPE)
        {
            Method (_L03, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.USB1, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L04, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.USB2, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L0C, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.USB3, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L0E, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.USB4, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L0D, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.EUSB, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L1C, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.SBRG, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }

            Method (_L17, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.EPC0.PCE1, 0x02)
                Notify (\_SB.PCI0.EPC1.PCE2, 0x02)
            }

            Method (_L0B, 0, NotSerialized)
            {
                Notify (\_SB.PCI0.P0P7, 0x02)
                Notify (\_SB.PWRB, 0x02)
            }
        }

        Device (PWRB)
        {
            Name (_HID, EisaId ("PNP0C0C"))
            Name (_UID, 0xAA)
            Name (_STA, 0x0B)
        }
    }

    Scope (\_SB)
    {
        Name (XCPD, 0x00)
        Name (XNPT, 0x01)
        Name (XCAP, 0x02)
        Name (XDCP, 0x04)
        Name (XDCT, 0x08)
        Name (XDST, 0x0A)
        Name (XLCP, 0x0C)
        Name (XLCT, 0x10)
        Name (XLST, 0x12)
        Name (XSCP, 0x14)
        Name (XSCT, 0x18)
        Name (XSST, 0x1A)
        Name (XRCT, 0x1C)
        Mutex (MUTE, 0x00)
        Method (RBPE, 1, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            Add (Arg0, \PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x01)
            Field (PCFG, ByteAcc, NoLock, Preserve)
            {
                XCFG,   8
            }

            Release (MUTE)
            Return (XCFG)
        }

        Method (RWPE, 1, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFE, Arg0)
            Add (Arg0, \PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x02)
            Field (PCFG, WordAcc, NoLock, Preserve)
            {
                XCFG,   16
            }

            Release (MUTE)
            Return (XCFG)
        }

        Method (RDPE, 1, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFC, Arg0)
            Add (Arg0, \PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x04)
            Field (PCFG, DWordAcc, NoLock, Preserve)
            {
                XCFG,   32
            }

            Release (MUTE)
            Return (XCFG)
        }

        Method (WBPE, 2, NotSerialized)
        {
            Acquire (MUTE, 0x0FFF)
            Add (Arg0, \PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x01)
            Field (PCFG, ByteAcc, NoLock, Preserve)
            {
                XCFG,   8
            }

            Store (Arg1, XCFG)
            Release (MUTE)
        }

        Method (WWPE, 2, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFE, Arg0)
            Add (Arg0, \PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x02)
            Field (PCFG, WordAcc, NoLock, Preserve)
            {
                XCFG,   16
            }

            Store (Arg1, XCFG)
            Release (MUTE)
        }

        Method (WDPE, 2, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFC, Arg0)
            Add (Arg0, \PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x04)
            Field (PCFG, DWordAcc, NoLock, Preserve)
            {
                XCFG,   32
            }

            Store (Arg1, XCFG)
            Release (MUTE)
        }

        Method (RWDP, 3, NotSerialized)
        {
            Acquire (MUTE, 0x03E8)
            And (Arg0, 0xFFFFFFFC, Arg0)
            Add (Arg0, \PCIB, Local0)
            OperationRegion (PCFG, SystemMemory, Local0, 0x04)
            Field (PCFG, DWordAcc, NoLock, Preserve)
            {
                XCFG,   32
            }

            And (XCFG, Arg2, Local1)
            Or (Local1, Arg1, XCFG)
            Release (MUTE)
        }

        Method (RPME, 1, NotSerialized)
        {
            Add (Arg0, 0x84, Local0)
            Store (\_SB.RDPE (Local0), Local1)
            If (LEqual (Local1, 0xFFFFFFFF))
            {
                Return (0x00)
            }
            Else
            {
                If (LAnd (Local1, 0x00010000))
                {
                    \_SB.WDPE (Local0, And (Local1, 0x00010000))
                    Return (0x01)
                }

                Return (0x00)
            }
        }
    }

    Method (\_SB.PCI0.EPA0.PXHA._PRW, 0, NotSerialized)
    {
        Return (GPRW (0x18, 0x04))
    }

    Method (\_SB.PCI0.EPA0.PXHB._PRW, 0, NotSerialized)
    {
        Return (GPRW (0x18, 0x04))
    }

    Method (\_SB.PCI0.EPC0._PRW, 0, NotSerialized)
    {
        Return (GPRW (0x18, 0x04))
    }

    Method (\_SB.PCI0.EPC1._PRW, 0, NotSerialized)
    {
        Return (GPRW (0x18, 0x04))
    }

    Scope (\_GPE)
    {
        Method (_L18, 0, NotSerialized)
        {
            If (\_SB.RPME (0x00010000))
            {
                Notify (\_SB.PCI0.EPA0, 0x02)
            }

            If (\_SB.RPME (0x00018000))
            {
                Notify (\_SB.PCI0.EPA1, 0x02)
            }

            If (\_SB.RPME (0x00020000))
            {
                Notify (\_SB.PCI0.EPB0, 0x02)
            }

            If (\_SB.RPME (0x00028000))
            {
                Notify (\_SB.PCI0.EPB1, 0x02)
            }

            If (\_SB.RPME (0x00030000))
            {
                PXL3 ()
            }

            If (\_SB.RPME (0x00038000))
            {
                Notify (\_SB.PCI0.EPC1, 0x02)
            }
        }

        Method (PXL1, 0, NotSerialized)
        {
            Store (\_SB.RDPE (0x00010084), Local0)
            Store (\_SB.RDPE (0x00010018), Local1)
            ShiftRight (Local0, 0x08, Local0)
            And (Local0, 0xFF, Local0)
            ShiftRight (Local1, 0x08, Local1)
            And (Local1, 0xFF, Local1)
            If (LEqual (Local0, Local1))
            {
                Notify (\_SB.PCI0.EPA0, 0x02)
            }
            Else
            {
                ShiftLeft (Local1, 0x14, Local1)
                Add (Local1, 0x18, Local1)
                Store (\_SB.RDPE (Local1), Local1)
                ShiftRight (Local1, 0x08, Local1)
                And (Local1, 0xFF, Local2)
                ShiftRight (Local1, 0x08, Local1)
                And (Local1, 0xFF, Local3)
                If (LAnd (LGreaterEqual (Local0, Local2), LLessEqual =
(Local0, Local3)))
                {
                    Notify (\_SB.PCI0.EPA0.PXHA, 0x02)
                }
                Else
                {
                    Notify (\_SB.PCI0.EPA0.PXHB, 0x02)
                }
            }
        }

        Method (PXL3, 0, NotSerialized)
        {
            Store (\_SB.RDPE (0x00030084), Local0)
            Store (\_SB.RDPE (0x00030018), Local1)
            ShiftRight (Local0, 0x08, Local0)
            And (Local0, 0xFF, Local0)
            ShiftRight (Local1, 0x08, Local1)
            And (Local1, 0xFF, Local1)
            If (LEqual (Local0, Local1))
            {
                Notify (\_SB.PCI0.EPC0, 0x02)
            }
        }
    }

    Scope (\_SB)
    {
        Name (MC2S, 0x0A)
        OperationRegion (\_SB.PCI0.SBRG.IROR, PCI_Config, 0x00, 0xFF)
        Field (\_SB.PCI0.SBRG.IROR, ByteAcc, NoLock, Preserve)
        {
                    Offset (0x60),=20
            PIRA,   8,=20
            PIRB,   8,=20
            PIRC,   8,=20
            PIRD,   8,=20
                    Offset (0x68),=20
            PIRE,   8,=20
            PIRF,   8,=20
            PIRG,   8,=20
            PIRH,   8
        }

        Name (BUFA, ResourceTemplate ()
        {
            IRQ (Level, ActiveLow, Shared, _Y1D)
                {15}
        })
        CreateWordField (BUFA, \_SB._Y1D._INT, ICRS)
        Method (LSTA, 1, NotSerialized)
        {
            And (Arg0, 0x80, Local0)
            If (Local0)
            {
                Return (0x09)
            }
            Else
            {
                Return (0x0B)
            }
        }

        Method (LCRS, 1, NotSerialized)
        {
            And (Arg0, 0x0F, Local0)
            ShiftLeft (0x01, Local0, ICRS)
            Return (BUFA)
        }

        Method (LSRS, 1, NotSerialized)
        {
            CreateWordField (Arg0, 0x01, ISRS)
            FindSetRightBit (ISRS, Local0)
            Return (Decrement (Local0))
        }

        Method (LDIS, 1, NotSerialized)
        {
            Return (Or (Arg0, 0x80))
        }

        Device (LNKA)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x01)
            Method (_STA, 0, NotSerialized)
            {
                Return (LSTA (PIRA))
            }

            Method (_PRS, 0, NotSerialized)
            {
                If (MIQW)
                {
                    If (LLessEqual (MCHR, MC2S))
                    {
                        Return (PSA1)
                    }
                    Else
                    {
                        Return (PRSA)
                    }
                }

                Return (PRSA)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (LDIS (PIRA), PIRA)
            }

            Method (_CRS, 0, NotSerialized)
            {
                Return (LCRS (PIRA))
            }

            Method (_SRS, 1, NotSerialized)
            {
                Store (LSRS (Arg0), PIRA)
            }
        }

        Device (LNKB)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x02)
            Method (_STA, 0, NotSerialized)
            {
                Return (LSTA (PIRB))
            }

            Method (_PRS, 0, NotSerialized)
            {
                If (MIQW)
                {
                    If (LLessEqual (MCHR, MC2S))
                    {
                        Return (PSB1)
                    }
                    Else
                    {
                        Return (PRSB)
                    }
                }

                Return (PRSB)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (LDIS (PIRB), PIRB)
            }

            Method (_CRS, 0, NotSerialized)
            {
                Return (LCRS (PIRB))
            }

            Method (_SRS, 1, NotSerialized)
            {
                Store (LSRS (Arg0), PIRB)
            }
        }

        Device (LNKC)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x03)
            Method (_STA, 0, NotSerialized)
            {
                Return (LSTA (PIRC))
            }

            Method (_PRS, 0, NotSerialized)
            {
                If (MIQW)
                {
                    If (LLessEqual (MCHR, MC2S))
                    {
                        Return (PSC1)
                    }
                    Else
                    {
                        Return (PRSC)
                    }
                }

                Return (PRSC)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (LDIS (PIRC), PIRC)
            }

            Method (_CRS, 0, NotSerialized)
            {
                Return (LCRS (PIRC))
            }

            Method (_SRS, 1, NotSerialized)
            {
                Store (LSRS (Arg0), PIRC)
            }
        }

        Device (LNKD)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x04)
            Method (_STA, 0, NotSerialized)
            {
                Return (LSTA (PIRD))
            }

            Method (_PRS, 0, NotSerialized)
            {
                If (MIQW)
                {
                    If (LLessEqual (MCHR, MC2S))
                    {
                        Return (PSD1)
                    }
                    Else
                    {
                        Return (PRSD)
                    }
                }

                Return (PRSD)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (LDIS (PIRD), PIRD)
            }

            Method (_CRS, 0, NotSerialized)
            {
                Return (LCRS (PIRD))
            }

            Method (_SRS, 1, NotSerialized)
            {
                Store (LSRS (Arg0), PIRD)
            }
        }

        Device (LNKE)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x05)
            Method (_STA, 0, NotSerialized)
            {
                Return (LSTA (PIRE))
            }

            Method (_PRS, 0, NotSerialized)
            {
                If (MIQW)
                {
                    If (LLessEqual (MCHR, MC2S))
                    {
                        Return (PSE1)
                    }
                    Else
                    {
                        Return (PRSE)
                    }
                }

                Return (PRSE)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (LDIS (PIRE), PIRE)
            }

            Method (_CRS, 0, NotSerialized)
            {
                Return (LCRS (PIRE))
            }

            Method (_SRS, 1, NotSerialized)
            {
                Store (LSRS (Arg0), PIRE)
            }
        }

        Device (LNKF)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x06)
            Method (_STA, 0, NotSerialized)
            {
                Return (LSTA (PIRF))
            }

            Method (_PRS, 0, NotSerialized)
            {
                If (MIQW)
                {
                    If (LLessEqual (MCHR, MC2S))
                    {
                        Return (PSF1)
                    }
                    Else
                    {
                        Return (PRSF)
                    }
                }

                Return (PRSF)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (LDIS (PIRF), PIRF)
            }

            Method (_CRS, 0, NotSerialized)
            {
                Return (LCRS (PIRF))
            }

            Method (_SRS, 1, NotSerialized)
            {
                Store (LSRS (Arg0), PIRF)
            }
        }

        Device (LNKG)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x07)
            Method (_STA, 0, NotSerialized)
            {
                Return (LSTA (PIRG))
            }

            Method (_PRS, 0, NotSerialized)
            {
                If (MIQW)
                {
                    If (LLessEqual (MCHR, MC2S))
                    {
                        Return (PSG1)
                    }
                    Else
                    {
                        Return (PRSG)
                    }
                }

                Return (PRSG)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (LDIS (PIRG), PIRG)
            }

            Method (_CRS, 0, NotSerialized)
            {
                Return (LCRS (PIRG))
            }

            Method (_SRS, 1, NotSerialized)
            {
                Store (LSRS (Arg0), PIRG)
            }
        }

        Device (LNKH)
        {
            Name (_HID, EisaId ("PNP0C0F"))
            Name (_UID, 0x08)
            Method (_STA, 0, NotSerialized)
            {
                Return (LSTA (PIRH))
            }

            Method (_PRS, 0, NotSerialized)
            {
                If (MIQW)
                {
                    If (LLessEqual (MCHR, MC2S))
                    {
                        Return (PSH1)
                    }
                    Else
                    {
                        Return (PRSH)
                    }
                }

                Return (PRSH)
            }

            Method (_DIS, 0, NotSerialized)
            {
                Store (LDIS (PIRH), PIRH)
            }

            Method (_CRS, 0, NotSerialized)
            {
                Return (LCRS (PIRH))
            }

            Method (_SRS, 1, NotSerialized)
            {
                Store (LSRS (Arg0), PIRH)
            }
        }
    }

    Scope (\_SB)
    {
        Scope (PCI0)
        {
            Name (CRS, ResourceTemplate ()
            {
                WordBusNumber (ResourceProducer, MinFixed, MaxFixed, =
PosDecode,
                    0x0000,             // Granularity
                    0x0000,             // Range Minimum
                    0x00FF,             // Range Maximum
                    0x0000,             // Translation Offset
                    0x0100,             // Length
                    ,, )
                IO (Decode16,
                    0x0CF8,             // Range Minimum
                    0x0CF8,             // Range Maximum
                    0x01,               // Alignment
                    0x08,               // Length
                    )
                WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, =
EntireRange,
                    0x0000,             // Granularity
                    0x0000,             // Range Minimum
                    0x0CF7,             // Range Maximum
                    0x0000,             // Translation Offset
                    0x0CF8,             // Length
                    ,, , TypeStatic)
                WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, =
EntireRange,
                    0x0000,             // Granularity
                    0x0D00,             // Range Minimum
                    0xFFFF,             // Range Maximum
                    0x0000,             // Translation Offset
                    0xF300,             // Length
                    ,, , TypeStatic)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, =
MaxFixed, Cacheable, ReadWrite,
                    0x00000000,         // Granularity
                    0x000A0000,         // Range Minimum
                    0x000BFFFF,         // Range Maximum
                    0x00000000,         // Translation Offset
                    0x00020000,         // Length
                    ,, , AddressRangeMemory, TypeStatic)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, =
MaxFixed, Cacheable, ReadWrite,
                    0x00000000,         // Granularity
                    0x00000000,         // Range Minimum
                    0x00000000,         // Range Maximum
                    0x00000000,         // Translation Offset
                    0x00000000,         // Length
                    ,, _Y1E, AddressRangeMemory, TypeStatic)
                DWordMemory (ResourceProducer, PosDecode, MinFixed, =
MaxFixed, Cacheable, ReadWrite,
                    0x00000000,         // Granularity
                    0x00000000,         // Range Minimum
                    0x00000000,         // Range Maximum
                    0x00000000,         // Translation Offset
                    0x00000000,         // Length
                    ,, _Y1F, AddressRangeMemory, TypeStatic)
            })
            CreateDWordField (CRS, \_SB.PCI0._Y1E._MIN, MIN5)
            CreateDWordField (CRS, \_SB.PCI0._Y1E._MAX, MAX5)
            CreateDWordField (CRS, \_SB.PCI0._Y1E._LEN, LEN5)
            CreateDWordField (CRS, \_SB.PCI0._Y1F._MIN, MIN6)
            CreateDWordField (CRS, \_SB.PCI0._Y1F._MAX, MAX6)
            CreateDWordField (CRS, \_SB.PCI0._Y1F._LEN, LEN6)
            Method (_CRS, 0, NotSerialized)
            {
                Store (MG1B, MIN5)
                Store (MG1L, LEN5)
                Store (MG1L, Local0)
                If (Local0)
                {
                    Add (MIN5, Decrement (Local0), MAX5)
                }

                Store (MG2B, MIN6)
                Store (MG2L, LEN6)
                Store (MG2L, Local0)
                Add (MIN6, Decrement (Local0), MAX6)
                Return (CRS)
            }

            Name (NATA, Package (0x01)
            {
                0x001F0001
            })
        }

        Name (SLPS, 0x00)
    }

    Name (WR00, 0x00)
    Name (WR01, 0x00)
    Name (WR02, 0x00)
    Method (_PTS, 1, NotSerialized)
    {
        Store (Arg0, DBG8)
        PTS (Arg0)
        If (LEqual (GS28, 0x00)) {}
        Store (0x00, Index (WAKP, 0x00))
        Store (0x00, Index (WAKP, 0x01))
        If (LAnd (LEqual (Arg0, 0x04), LEqual (OSFL (), 0x02)))
        {
            Sleep (0x0BB8)
        }

        If (LEqual (Arg0, 0x01))
        {
            \_SB.PCI0.SBRG.SIOS (Arg0)
        }

        Store (APWR, WR00)
        Store (SPLV, WR01)
        Store (OSFG, WR02)
        Store (Arg0, SPLV)
        Store (OSFL (), OSFG)
        Store (One, PS1S)
        Store (One, PS1E)
        Store (One, \_SB.SLPS)
    }

    Method (_WAK, 1, NotSerialized)
    {
        ShiftLeft (Arg0, 0x04, DBG8)
        Store (Zero, PS1E)
        If (LEqual (Arg0, 0x01))
        {
            Store (MSKS, Local4)
            And (MSKE, Local4, Local4)
            And (Local4, 0x3C, Local4)
            Mutex (MUT1, 0x00)
            Acquire (MUT1, 0xFFFF)
            Store (SMIS, Local0)
            Store (0x01, SMIS)
            Store (0xEF, SMIC)
            \_SB.PCI0.SBRG.SIOW (Arg0)
            Store (Local0, SMIS)
            Release (MUT1)
            If (Local4)
            {
                Notify (\_SB.PWRB, 0x02)
            }

            Store (0x00, DBGA)
            Store (0x00, DBGB)
        }

        If (RTCS) {}
        Else
        {
            Notify (\_SB.PWRB, 0x02)
        }

        If (And (APWR, 0x02))
        {
            Notify (\_SB.PWRB, 0x02)
        }

        Store (One, PWBT)
        Store (WR00, APWR)
        Store (WR01, SPLV)
        Store (WR02, OSFG)
        Store (0xF9, SMIC)
        Store (Zero, \_SB.SLPS)
        WAK (Arg0)
        If (LEqual (GS28, 0x00)) {}
        If (DerefOf (Index (WAKP, 0x00)))
        {
            Store (0x00, Index (WAKP, 0x01))
        }
        Else
        {
            Store (Arg0, Index (WAKP, 0x01))
        }

        Return (WAKP)
    }

    OperationRegion (IOB2, SystemIO, 0xB2, 0x02)
    Field (IOB2, ByteAcc, NoLock, Preserve)
    {
        SMIC,   8,=20
        SMIS,   8
    }

    OperationRegion (SBGP, SystemIO, GPBS, 0x40)
    Field (SBGP, WordAcc, NoLock, Preserve)
    {
                Offset (0x0E),=20
        GS16,   1,=20
        GS17,   1,=20
        GS18,   1,=20
        GS19,   1,=20
        GS20,   1,=20
        GS21,   1,=20
        GS22,   1,=20
        GS23,   1,=20
        GS24,   1,=20
        GS25,   1,=20
        GS26,   1,=20
        GS27,   1,=20
        GS28,   1,=20
        GS29,   1,=20
        GS30,   1,=20
        GS31,   1
    }

    OperationRegion (SIGP, SystemIO, IO1B, 0x20)
    Field (SIGP, ByteAcc, NoLock, Preserve)
    {
                Offset (0x01),=20
        GP00,   1,=20
        GP01,   1,=20
        GP02,   1,=20
        GP03,   1,=20
        GP04,   1,=20
        GP05,   1,=20
        GP06,   1,=20
        GP07,   1,=20
                Offset (0x0B),=20
        GP40,   1,=20
        GP41,   1,=20
        GP42,   1,=20
        GP43,   1,=20
        GP44,   1,=20
        GP45,   1,=20
        GP46,   1,=20
        GP47,   1
    }

    OperationRegion (PMS0, SystemIO, PMBS, 0x04)
    Field (PMS0, ByteAcc, NoLock, Preserve)
    {
            ,   10,=20
        RTCS,   1,=20
            ,   4,=20
        WAKS,   1,=20
                Offset (0x03),=20
        PWBT,   1,=20
                Offset (0x04)
    }

    OperationRegion (SMIE, SystemIO, PM30, 0x08)
    Field (SMIE, ByteAcc, NoLock, Preserve)
    {
            ,   4,=20
        PS1E,   1,=20
            ,   31,=20
        PS1S,   1,=20
                Offset (0x08)
    }

    OperationRegion (\_SB.PCI0.SKPD, PCI_Config, ACPH, 0x02)
    Field (\_SB.PCI0.SKPD, ByteAcc, NoLock, Preserve)
    {
        APWR,   8,=20
        SPLV,   3,=20
        OSFG,   2,=20
                Offset (0x02)
    }

    OperationRegion (SGE1, SystemIO, IOPB, IOPL)
    Field (SGE1, ByteAcc, NoLock, Preserve)
    {
                Offset (0x0A),=20
        MSKS,   8,=20
                Offset (0x0E),=20
        MSKE,   8
    }

    OperationRegion (\_SB.PCI0.MCH0, PCI_Config, 0x00, 0xFF)
    Field (\_SB.PCI0.MCH0, ByteAcc, NoLock, Preserve)
    {
                Offset (0x08),=20
        MCHR,   8
    }

    Name (\_S0, Package (0x04)
    {
        0x00,=20
        0x00,=20
        0x00,=20
        0x00
    })
    If (SS1)
    {
        Name (\_S1, Package (0x04)
        {
            0x01,=20
            0x00,=20
            0x00,=20
            0x00
        })
    }

    If (SS4)
    {
        Name (\_S4, Package (0x04)
        {
            0x06,=20
            0x00,=20
            0x00,=20
            0x00
        })
    }

    Name (\_S5, Package (0x04)
    {
        0x07,=20
        0x00,=20
        0x00,=20
        0x00
    })
    Method (PTS, 1, NotSerialized)
    {
        If (Arg0) {}
    }

    Method (WAK, 1, NotSerialized)
    {
    }
}


------=_NextPart_000_0043_01CC7842.391083A0--




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?004201cc786c$21e68ba0$65b3a2e0$>