/* RSD PTR: OEM=HP, ACPI_Rev=2.0x (2) XSDT=0xbfff83e0, length=36, cksum=187 */ /* XSDT: Length=68, Revision=1, Checksum=94, OEMID=HP, OEM Table ID=A05, OEM Revision=0x2, Creator ID=Ò, Creator Revision=0x162e Entries={ 0xbfff8460, 0xbfff8100, 0xbfff81e0, 0xbfff8260 } */ /* FACP: Length=244, Revision=3, Checksum=7, OEMID=HP, OEM Table ID=A05, OEM Revision=0x2, Creator ID=Ò, Creator Revision=0x162e FACS=0xbfff80c0, DSDT=0xbfff8560 INT_MODEL=APIC Preferred_PM_Profile=Unspecified (0) SCI_INT=9 SMI_CMD=0x92f, ACPI_ENABLE=0x1, ACPI_DISABLE=0x0, S4BIOS_REQ=0x0 PSTATE_CNT=0x0 PM1a_EVT_BLK=0x900-0x903 PM1a_CNT_BLK=0x904-0x907 PM_TMR_BLK=0x908-0x90b GPE0_BLK=0x920-0x923 P_LVL2_LAT=65535 us, P_LVL3_LAT=65535 us FLUSH_SIZE=0, FLUSH_STRIDE=0 DUTY_OFFSET=0, DUTY_WIDTH=0 DAY_ALRM=125, MON_ALRM=126, CENTURY=127 IAPC_BOOT_ARCH={LEGACY_DEV,8042} Flags={WBINVD,PROC_C1,SLP_BUTTON,RTC_S4,TMR_VAL_EXT} X_FACS=0xbfff80c0, X_DSDT=0xbfff8560 X_PM1a_EVT_BLK=0x900:0[32] (IO) X_PM1b_EVT_BLK=0x220:0[32] (IO) X_PM1a_CNT_BLK=0x904:0[32] (IO) X_PM1b_CNT_BLK=0x230:0[32] (IO) X_PM2_CNT_BLK=0x00000000:0[0] (Memory) X_PM_TMR_BLK=0x908:0[32] (IO) X_GPE0_BLK=0x920:0[32] (IO) */ /* FACS: Length=64, HwSig=0x0000abcd, Firm_Wake_Vec=0x00000000 Global_Lock= Flags= Version=1 */ /* DSDT: Length=16941, Revision=1, Checksum=252, OEMID=HP, OEM Table ID=DSDT, OEM Revision=0x1, Creator ID=MSFT, Creator Revision=0x2000001 */ /* APIC: Length=184, Revision=1, Checksum=121, OEMID=HP, OEM Table ID=00000083, OEM Revision=0x2, Creator ID=, Creator Revision=0x0 Local APIC ADDR=0xfee00000 Flags={PC-AT} Type=Local APIC ACPI CPU=0 Flags={ENABLED} APIC ID=0 Type=Local APIC ACPI CPU=2 Flags={ENABLED} APIC ID=2 Type=Local APIC ACPI CPU=4 Flags={DISABLED} APIC ID=4 Type=Local APIC ACPI CPU=6 Flags={DISABLED} APIC ID=6 Type=Local APIC ACPI CPU=1 Flags={ENABLED} APIC ID=1 Type=Local APIC ACPI CPU=3 Flags={ENABLED} APIC ID=3 Type=Local APIC ACPI CPU=5 Flags={DISABLED} APIC ID=5 Type=Local APIC ACPI CPU=7 Flags={DISABLED} APIC ID=7 Type=IO APIC APIC ID=4 INT BASE=0 ADDR=0x00000000fec00000 Type=IO APIC APIC ID=5 INT BASE=24 ADDR=0x00000000fec10000 Type=IO APIC APIC ID=6 INT BASE=28 ADDR=0x00000000fec20000 Type=IO APIC APIC ID=7 INT BASE=32 ADDR=0x00000000fdc00000 Type=IO APIC APIC ID=8 INT BASE=36 ADDR=0x00000000fdc10000 Type=INT Override BUS=0 IRQ=0 INTR=2 Flags={Polarity=active-hi, Trigger=edge} Type=Local NMI ACPI CPU=ALL LINT Pin=1 Flags={Polarity=active-hi, Trigger=edge} */ /* SPCR: Length=80, Revision=1, Checksum=200, OEMID=HP, OEM Table ID=SPCRRBSU, OEM Revision=0x1, Creator ID=Ò, Creator Revision=0x162e */ /* SRAT: Length=336, Revision=1, Checksum=176, OEMID=HP, OEM Table ID=A05, OEM Revision=0x1, Creator ID=, Creator Revision=0x0 Table Revision=1 Type=CPU Flags={ENABLED} APIC ID=0 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=2 Proximity Domain=2 Type=CPU Flags={DISABLED} APIC ID=4 Proximity Domain=3 Type=CPU Flags={DISABLED} APIC ID=6 Proximity Domain=4 Type=CPU Flags={ENABLED} APIC ID=1 Proximity Domain=1 Type=CPU Flags={ENABLED} APIC ID=3 Proximity Domain=2 Type=CPU Flags={DISABLED} APIC ID=5 Proximity Domain=3 Type=CPU Flags={DISABLED} APIC ID=7 Proximity Domain=4 Type=Memory Flags={ENABLED} Base Address=0x0000000000000000 Length=0x0000000040000000 Proximity Domain=1 Type=Memory Flags={ENABLED} Base Address=0x0000000040000000 Length=0x0000000080000000 Proximity Domain=2 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=3 Type=Memory Flags={DISABLED} Base Address=0x0000000000000000 Length=0x0000000000000000 Proximity Domain=4 */ /* * Intel ACPI Component Architecture * AML Disassembler version 20070320 * * Disassembly of /tmp/acpidump.PzK8tx, Wed Sep 23 13:31:09 2009 * * * Original Table Header: * Signature "DSDT" * Length 0x0000422D (16941) * Revision 0x01 * OEM ID "HP " * OEM Table ID "DSDT" * OEM Revision 0x00000001 (1) * Creator ID "MSFT" * Creator Revision 0x02000001 (33554433) */ DefinitionBlock ("/tmp/acpidump.aml", "DSDT", 1, "HP ", "DSDT", 0x00000001) { Name (\_S0, Package (0x04) { 0x00, 0x00, 0x00, 0x00 }) Name (\_S4, Package (0x04) { 0x07, 0x00, 0x00, 0x00 }) Name (\_S5, Package (0x04) { 0x07, 0x00, 0x00, 0x00 }) Scope (\_PR) { Processor (CPU0, 0x00, 0x00000000, 0x00) {} Processor (CPU1, 0x01, 0x00000000, 0x00) {} Processor (CPU2, 0x02, 0x00000000, 0x00) {} Processor (CPU3, 0x03, 0x00000000, 0x00) {} Processor (CPU4, 0x04, 0x00000000, 0x00) {} Processor (CPU5, 0x05, 0x00000000, 0x00) {} Processor (CPU6, 0x06, 0x00000000, 0x00) {} Processor (CPU7, 0x07, 0x00000000, 0x00) {} } Scope (\_SB) { } Scope (\_SB) { Name (TBL0, 0x00) Name (TBL1, 0x00) Name (TBL2, 0x00) Name (TBL3, 0x00) Method (_INI, 0, NotSerialized) { Name (HAN0, 0x00) Name (HAN1, 0x00) Name (HAN2, 0x00) Name (HAN3, 0x00) OperationRegion (IST0, SystemMemory, SSD0, SSL0) OperationRegion (IST1, SystemMemory, SSD1, SSL1) OperationRegion (IST2, SystemMemory, SSD2, SSL2) OperationRegion (IST3, SystemMemory, SSD3, SSL3) If (LEqual (PNEN, 0x00)) { If (LEqual (TBL0, 0x00)) { If (P0IN) { Load (IST0, HAN0) Store (0x01, TBL0) } } If (LEqual (TBL1, 0x00)) { If (P1IN) { Load (IST1, HAN1) Store (0x01, TBL1) } } If (LEqual (TBL2, 0x00)) { If (P2IN) { Load (IST2, HAN2) Store (0x01, TBL2) } } If (LEqual (TBL3, 0x00)) { If (P3IN) { Load (IST3, HAN3) Store (0x01, TBL3) } } } } Device (CFG0) { Name (_HID, EisaId ("PNP0A03")) Name (_UID, 0x07) Name (_ADR, 0x00) Name (_BBN, 0x00) } Device (CFG1) { Name (_HID, EisaId ("PNP0A03")) Name (_UID, 0x08) Name (_ADR, 0x00) Method (_BBN, 0, NotSerialized) { Return (\_SB.CFG0.NDE0.BSN0) } } Scope (\_SB.CFG0) { Device (NDE0) { Name (_ADR, 0x00180000) OperationRegion (NDE0, PCI_Config, 0x00, 0xFF) Field (NDE0, AnyAcc, NoLock, Preserve) { Offset (0x94), PBN0, 8, BSN0, 8, SBN0, 8, Offset (0xB4), PBN1, 8, BSN1, 8, SBN1, 8, Offset (0xD4), PBN2, 8, BSN2, 8, SBN2, 8 } } Device (MEMC) { Name (_ADR, 0x00180001) OperationRegion (MEMC, PCI_Config, 0x00, 0xFF) Field (MEMC, AnyAcc, NoLock, Preserve) { Offset (0x80), MMB1, 32, MML1, 32, MMB2, 32, MML2, 32, MMB3, 32, MML3, 32, MMB4, 32, MML4, 32, MMB5, 32, MML5, 32, MMB6, 32, MML6, 32, MMB7, 32, MML7, 32, MMB8, 32, MML8, 32, IOB1, 32, IOL1, 32, IOB2, 32, IOL2, 32, IOB3, 32, IOL3, 32, IOB4, 32, IOL4, 32, Offset (0xE6), NO2B, 8 } } Device (NDE1) { Name (_ADR, 0x00190000) OperationRegion (NDE1, PCI_Config, 0x00, 0xFF) Field (NDE1, AnyAcc, NoLock, Preserve) { Offset (0x94), PBN0, 8, BSN0, 8, SBN0, 8, Offset (0xB4), PBN1, 8, BSN1, 8, SBN1, 8, Offset (0xD4), PBN2, 8, BSN2, 8, SBN2, 8 } } Device (PCI0) { Name (_ADR, 0x00030000) OperationRegion (PCI0, PCI_Config, 0x00, 0xFF) Field (PCI0, AnyAcc, NoLock, Preserve) { Offset (0x18), PBNO, 8, BSNO, 8, SBNO, 8, Offset (0x1C), IOB, 8, IOL, 8, Offset (0x20), MEMB, 16, MEML, 16, PMMB, 16, PMML, 16, Offset (0x3C), , 19, VGAE, 1 } } Device (PCI1) { Name (_ADR, 0x00070000) OperationRegion (PCI1, PCI_Config, 0x00, 0xFF) Field (PCI1, AnyAcc, NoLock, Preserve) { Offset (0x18), PBNO, 8, BSNO, 8, SBNO, 8, Offset (0x1C), IOB, 8, IOL, 8, Offset (0x20), MEMB, 16, MEML, 16, PMMB, 16, PMML, 16, Offset (0x3C), , 19, VGAE, 1 } } Device (PCI2) { Name (_ADR, 0x00080000) OperationRegion (PCI2, PCI_Config, 0x00, 0xFF) Field (PCI2, AnyAcc, NoLock, Preserve) { Offset (0x18), PBNO, 8, BSNO, 8, SBNO, 8, Offset (0x1C), IOB, 8, IOL, 8, Offset (0x20), MEMB, 16, MEML, 16, PMMB, 16, PMML, 16, Offset (0x3C), , 19, VGAE, 1 } } } Scope (\_SB.CFG1) { Device (PCI3) { Name (_ADR, 0x00090000) OperationRegion (PCI3, PCI_Config, 0x00, 0xFF) Field (PCI3, AnyAcc, NoLock, Preserve) { Offset (0x18), PBNO, 8, BSNO, 8, SBNO, 8, Offset (0x1C), IOB, 8, IOL, 8, Offset (0x20), MEMB, 16, MEML, 16, PMMB, 16, PMML, 16, Offset (0x3C), , 19, VGAE, 1 } } Device (PCI4) { Name (_ADR, 0x000A0000) OperationRegion (PCI4, PCI_Config, 0x00, 0xFF) Field (PCI4, AnyAcc, NoLock, Preserve) { Offset (0x18), PBNO, 8, BSNO, 8, SBNO, 8, Offset (0x1C), IOB, 8, IOL, 8, Offset (0x20), MEMB, 16, MEML, 16, PMMB, 16, PMML, 16, Offset (0x3C), , 19, VGAE, 1 } } } Method (MMEN, 1, NotSerialized) { Store (Arg0, Local0) And (Local0, 0x03, Local0) If (LEqual (Local0, 0x03)) { Return (0x01) } Else { Return (0x00) } } Scope (\_SB.CFG0) { Name (REST, ResourceTemplate () { WordBusNumber (ResourceConsumer, MinFixed, MaxNotFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0001, // Length ,, _Y00) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x03AF, // Range Maximum 0x0000, // Translation Offset 0x03B0, // Length ,, , TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y0D, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y0E, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x03E0, // Range Minimum 0x0FFF, // Range Maximum 0x0000, // Translation Offset 0x0C20, // Length ,, , TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x3FFF, // Range Maximum 0x0000, // Translation Offset 0x4000, // Length ,, _Y01, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y02, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y03, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y04, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y05, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y06, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y07, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y08, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, WriteCombining, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y09, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y0A, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y0B, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y0C, AddressRangeMemory, TypeStatic) }) CreateWordField (REST, \_SB.CFG0._Y00._MIN, BMIN) CreateWordField (REST, \_SB.CFG0._Y00._MAX, BMAX) CreateWordField (REST, \_SB.CFG0._Y00._LEN, BLEN) CreateWordField (REST, \_SB.CFG0._Y01._MIN, IMN1) CreateWordField (REST, \_SB.CFG0._Y01._MAX, IMX1) CreateWordField (REST, \_SB.CFG0._Y01._LEN, ILN1) CreateWordField (REST, \_SB.CFG0._Y02._MIN, IMN2) CreateWordField (REST, \_SB.CFG0._Y02._MAX, IMX2) CreateWordField (REST, \_SB.CFG0._Y02._LEN, ILN2) CreateWordField (REST, \_SB.CFG0._Y03._MIN, IMN3) CreateWordField (REST, \_SB.CFG0._Y03._MAX, IMX3) CreateWordField (REST, \_SB.CFG0._Y03._LEN, ILN3) CreateWordField (REST, \_SB.CFG0._Y04._MIN, IMN4) CreateWordField (REST, \_SB.CFG0._Y04._MAX, IMX4) CreateWordField (REST, \_SB.CFG0._Y04._LEN, ILN4) CreateDWordField (REST, \_SB.CFG0._Y05._MIN, MMN1) CreateDWordField (REST, \_SB.CFG0._Y05._MAX, MMX1) CreateDWordField (REST, \_SB.CFG0._Y05._LEN, MLN1) CreateDWordField (REST, \_SB.CFG0._Y06._MIN, MMN2) CreateDWordField (REST, \_SB.CFG0._Y06._MAX, MMX2) CreateDWordField (REST, \_SB.CFG0._Y06._LEN, MLN2) CreateDWordField (REST, \_SB.CFG0._Y07._MIN, MMN3) CreateDWordField (REST, \_SB.CFG0._Y07._MAX, MMX3) CreateDWordField (REST, \_SB.CFG0._Y07._LEN, MLN3) CreateDWordField (REST, \_SB.CFG0._Y08._MIN, MMN4) CreateDWordField (REST, \_SB.CFG0._Y08._MAX, MMX4) CreateDWordField (REST, \_SB.CFG0._Y08._LEN, MLN4) CreateDWordField (REST, \_SB.CFG0._Y09._MIN, MMN5) CreateDWordField (REST, \_SB.CFG0._Y09._MAX, MMX5) CreateDWordField (REST, \_SB.CFG0._Y09._LEN, MLN5) CreateDWordField (REST, \_SB.CFG0._Y0A._MIN, MMN6) CreateDWordField (REST, \_SB.CFG0._Y0A._MAX, MMX6) CreateDWordField (REST, \_SB.CFG0._Y0A._LEN, MLN6) CreateDWordField (REST, \_SB.CFG0._Y0B._MIN, MMN7) CreateDWordField (REST, \_SB.CFG0._Y0B._MAX, MMX7) CreateDWordField (REST, \_SB.CFG0._Y0B._LEN, MLN7) CreateDWordField (REST, \_SB.CFG0._Y0C._MIN, MMN8) CreateDWordField (REST, \_SB.CFG0._Y0C._MAX, MMX8) CreateDWordField (REST, \_SB.CFG0._Y0C._LEN, MLN8) CreateWordField (REST, \_SB.CFG0._Y0D._MIN, VIN1) CreateWordField (REST, \_SB.CFG0._Y0D._MAX, VIX1) CreateWordField (REST, \_SB.CFG0._Y0D._LEN, VIL1) CreateWordField (REST, \_SB.CFG0._Y0E._MIN, VIN2) CreateWordField (REST, \_SB.CFG0._Y0E._MAX, VIX2) CreateWordField (REST, \_SB.CFG0._Y0E._LEN, VIL2) Method (_CRS, 0, NotSerialized) { Store (\_SB.CFG0.NDE0.BSN2, Local0) Store (\_SB.CFG0.NDE0.SBN2, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, BMIN) Store (Local1, BMAX) Store (Local2, BLEN) Store (\_SB.CFG0.MEMC.IOB1, Local0) Store (\_SB.CFG0.MEMC.IOL1, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xF000, Local0) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMN1) Store (Local1, IMX1) Store (Local2, ILN1) } } Store (\_SB.CFG0.MEMC.IOB2, Local0) Store (\_SB.CFG0.MEMC.IOL2, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xF000, Local0) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMN2) Store (Local1, IMX2) Store (Local2, ILN2) } } Store (\_SB.CFG0.MEMC.IOB3, Local0) Store (\_SB.CFG0.MEMC.IOL3, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xF000, Local0) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMN3) Store (Local1, IMX3) Store (Local2, ILN3) } } Store (\_SB.CFG0.MEMC.IOB4, Local0) Store (\_SB.CFG0.MEMC.IOL4, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xF000, Local0) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMN4) Store (Local1, IMX4) Store (Local2, ILN4) } } Store (\_SB.CFG0.MEMC.MMB1, Local0) Store (\_SB.CFG0.MEMC.MML1, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN1) Store (Local1, MMX1) Store (Local2, MLN1) } } Store (\_SB.CFG0.MEMC.MMB2, Local0) Store (\_SB.CFG0.MEMC.MML2, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN2) Store (Local1, MMX2) Store (Local2, MLN2) } } Store (\_SB.CFG0.MEMC.MMB3, Local0) Store (\_SB.CFG0.MEMC.MML3, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN3) Store (Local1, MMX3) Store (Local2, MLN3) } } Store (\_SB.CFG0.MEMC.MMB4, Local0) Store (\_SB.CFG0.MEMC.MML4, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN4) Store (Local1, MMX4) Store (Local2, MLN4) } } Store (\_SB.CFG0.MEMC.MMB5, Local0) Store (\_SB.CFG0.MEMC.MML5, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN5) Store (Local1, MMX5) Store (Local2, MLN5) } } Store (\_SB.CFG0.MEMC.MMB6, Local0) Store (\_SB.CFG0.MEMC.MML6, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) } } Store (\_SB.CFG0.MEMC.MMB7, Local0) Store (\_SB.CFG0.MEMC.MML7, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) } } Store (\_SB.CFG0.MEMC.MMB8, Local0) Store (\_SB.CFG0.MEMC.MML8, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, 0x20)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) } } Store (\_SB.CFG0.MEMC.IOB1, Local0) And (Local0, 0x10, Local0) If (Local0) { Store (0x03B0, VIN1) Store (0x03BB, VIX1) Store (0x0C, VIL1) Store (0x03C0, VIN2) Store (0x03DF, VIX2) Store (0x20, VIL2) } Else { Store (Zero, VIN1) Store (Zero, VIX1) Store (Zero, VIL1) Store (Zero, VIN2) Store (Zero, VIX2) Store (Zero, VIL2) } Return (REST) } } Scope (\_SB.CFG1) { Name (REST, ResourceTemplate () { WordBusNumber (ResourceConsumer, MinFixed, MaxNotFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y0F) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y1C, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y1D, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y10, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y11, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y12, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y13, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y14, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y15, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y16, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y17, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y18, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y19, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y1A, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y1B, AddressRangeMemory, TypeStatic) }) CreateWordField (REST, \_SB.CFG1._Y0F._MIN, BMIN) CreateWordField (REST, \_SB.CFG1._Y0F._MAX, BMAX) CreateWordField (REST, \_SB.CFG1._Y0F._LEN, BLEN) CreateWordField (REST, \_SB.CFG1._Y10._MIN, IMN1) CreateWordField (REST, \_SB.CFG1._Y10._MAX, IMX1) CreateWordField (REST, \_SB.CFG1._Y10._LEN, ILN1) CreateWordField (REST, \_SB.CFG1._Y11._MIN, IMN2) CreateWordField (REST, \_SB.CFG1._Y11._MAX, IMX2) CreateWordField (REST, \_SB.CFG1._Y11._LEN, ILN2) CreateWordField (REST, \_SB.CFG1._Y12._MIN, IMN3) CreateWordField (REST, \_SB.CFG1._Y12._MAX, IMX3) CreateWordField (REST, \_SB.CFG1._Y12._LEN, ILN3) CreateWordField (REST, \_SB.CFG1._Y13._MIN, IMN4) CreateWordField (REST, \_SB.CFG1._Y13._MAX, IMX4) CreateWordField (REST, \_SB.CFG1._Y13._LEN, ILN4) CreateDWordField (REST, \_SB.CFG1._Y14._MIN, MMN1) CreateDWordField (REST, \_SB.CFG1._Y14._MAX, MMX1) CreateDWordField (REST, \_SB.CFG1._Y14._LEN, MLN1) CreateDWordField (REST, \_SB.CFG1._Y15._MIN, MMN2) CreateDWordField (REST, \_SB.CFG1._Y15._MAX, MMX2) CreateDWordField (REST, \_SB.CFG1._Y15._LEN, MLN2) CreateDWordField (REST, \_SB.CFG1._Y16._MIN, MMN3) CreateDWordField (REST, \_SB.CFG1._Y16._MAX, MMX3) CreateDWordField (REST, \_SB.CFG1._Y16._LEN, MLN3) CreateDWordField (REST, \_SB.CFG1._Y17._MIN, MMN4) CreateDWordField (REST, \_SB.CFG1._Y17._MAX, MMX4) CreateDWordField (REST, \_SB.CFG1._Y17._LEN, MLN4) CreateDWordField (REST, \_SB.CFG1._Y18._MIN, MMN5) CreateDWordField (REST, \_SB.CFG1._Y18._MAX, MMX5) CreateDWordField (REST, \_SB.CFG1._Y18._LEN, MLN5) CreateDWordField (REST, \_SB.CFG1._Y19._MIN, MMN6) CreateDWordField (REST, \_SB.CFG1._Y19._MAX, MMX6) CreateDWordField (REST, \_SB.CFG1._Y19._LEN, MLN6) CreateDWordField (REST, \_SB.CFG1._Y1A._MIN, MMN7) CreateDWordField (REST, \_SB.CFG1._Y1A._MAX, MMX7) CreateDWordField (REST, \_SB.CFG1._Y1A._LEN, MLN7) CreateDWordField (REST, \_SB.CFG1._Y1B._MIN, MMN8) CreateDWordField (REST, \_SB.CFG1._Y1B._MAX, MMX8) CreateDWordField (REST, \_SB.CFG1._Y1B._LEN, MLN8) CreateWordField (REST, \_SB.CFG1._Y1C._MIN, VIN1) CreateWordField (REST, \_SB.CFG1._Y1C._MAX, VIX1) CreateWordField (REST, \_SB.CFG1._Y1C._LEN, VIL1) CreateWordField (REST, \_SB.CFG1._Y1D._MIN, VIN2) CreateWordField (REST, \_SB.CFG1._Y1D._MAX, VIX2) CreateWordField (REST, \_SB.CFG1._Y1D._LEN, VIL2) Method (_CRS, 0, NotSerialized) { Store (\_SB.CFG0.NDE0.BSN0, Local0) Store (\_SB.CFG0.NDE0.SBN0, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, BMIN) Store (Local1, BMAX) Store (Local2, BLEN) Store (\_SB.CFG0.MEMC.IOB1, Local0) Store (\_SB.CFG0.MEMC.IOL1, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xF000, Local0) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMN1) Store (Local1, IMX1) Store (Local2, ILN1) } } Store (\_SB.CFG0.MEMC.IOB2, Local0) Store (\_SB.CFG0.MEMC.IOL2, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xF000, Local0) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMN2) Store (Local1, IMX2) Store (Local2, ILN2) } } Store (\_SB.CFG0.MEMC.IOB3, Local0) Store (\_SB.CFG0.MEMC.IOL3, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xF000, Local0) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMN3) Store (Local1, IMX3) Store (Local2, ILN3) } } Store (\_SB.CFG0.MEMC.IOB4, Local0) Store (\_SB.CFG0.MEMC.IOL4, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xF000, Local0) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMN4) Store (Local1, IMX4) Store (Local2, ILN4) } } Store (\_SB.CFG0.MEMC.MMB1, Local0) Store (\_SB.CFG0.MEMC.MML1, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN1) Store (Local1, MMX1) Store (Local2, MLN1) } } Store (\_SB.CFG0.MEMC.MMB2, Local0) Store (\_SB.CFG0.MEMC.MML2, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN2) Store (Local1, MMX2) Store (Local2, MLN2) } } Store (\_SB.CFG0.MEMC.MMB3, Local0) Store (\_SB.CFG0.MEMC.MML3, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN3) Store (Local1, MMX3) Store (Local2, MLN3) } } Store (\_SB.CFG0.MEMC.MMB4, Local0) Store (\_SB.CFG0.MEMC.MML4, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN4) Store (Local1, MMX4) Store (Local2, MLN4) } } Store (\_SB.CFG0.MEMC.MMB5, Local0) Store (\_SB.CFG0.MEMC.MML5, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMN5) Store (Local1, MMX5) Store (Local2, MLN5) } } Store (\_SB.CFG0.MEMC.MMB6, Local0) Store (\_SB.CFG0.MEMC.MML6, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) } } Store (\_SB.CFG0.MEMC.MMB7, Local0) Store (\_SB.CFG0.MEMC.MML7, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) } } Store (\_SB.CFG0.MEMC.MMB8, Local0) Store (\_SB.CFG0.MEMC.MML8, Local1) Store (Local1, Local2) And (Local2, 0x07, Local2) If (LEqual (MMEN (Local0), One)) { Store (Local1, Local2) And (Local2, 0x37, Local2) If (LEqual (Local2, Zero)) { And (Local0, 0xFFFFFF00, Local0) And (Local1, 0xFFFFFF00, Local1) ShiftLeft (Local0, 0x08, Local0) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0xFFFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) } } Store (\_SB.CFG0.MEMC.IOB2, Local0) And (Local0, 0x10, Local0) If (Local0) { Store (0x03B0, VIN1) Store (0x03BB, VIX1) Store (0x0C, VIL1) Store (0x03C0, VIN2) Store (0x03DF, VIX2) Store (0x20, VIL2) } Else { Store (Zero, VIN1) Store (Zero, VIX1) Store (Zero, VIL1) Store (Zero, VIN2) Store (Zero, VIX2) Store (Zero, VIL2) } Return (REST) } } Scope (\_SB.CFG0.PCI0) { Device (USB1) { Name (_ADR, 0x00) Method (_STA, 0, NotSerialized) { Return (0x0B) } } Device (USB2) { Name (_ADR, 0x01) Method (_STA, 0, NotSerialized) { Return (0x0B) } } Device (VIDE) { Name (_ADR, 0x00030000) } Name (REST, ResourceTemplate () { WordBusNumber (ResourceConsumer, MinFixed, MaxNotFixed, PosDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y1E) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y1F, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y20, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y21, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, WriteCombining, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y22, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y23, AddressRangeMemory, TypeStatic) }) CreateWordField (REST, \_SB.CFG0.PCI0._Y1E._MIN, BMIN) CreateWordField (REST, \_SB.CFG0.PCI0._Y1E._MAX, BMAX) CreateWordField (REST, \_SB.CFG0.PCI0._Y1E._LEN, BLEN) CreateWordField (REST, \_SB.CFG0.PCI0._Y1F._MIN, IMIN) CreateWordField (REST, \_SB.CFG0.PCI0._Y1F._MAX, IMAX) CreateWordField (REST, \_SB.CFG0.PCI0._Y1F._LEN, ILEN) CreateWordField (REST, \_SB.CFG0.PCI0._Y20._MIN, VIN1) CreateWordField (REST, \_SB.CFG0.PCI0._Y20._MAX, VIX1) CreateWordField (REST, \_SB.CFG0.PCI0._Y20._LEN, VIL1) CreateWordField (REST, \_SB.CFG0.PCI0._Y21._MIN, VIN2) CreateWordField (REST, \_SB.CFG0.PCI0._Y21._MAX, VIX2) CreateWordField (REST, \_SB.CFG0.PCI0._Y21._LEN, VIL2) CreateDWordField (REST, \_SB.CFG0.PCI0._Y22._MIN, VMIN) CreateDWordField (REST, \_SB.CFG0.PCI0._Y22._MAX, VMAX) CreateDWordField (REST, \_SB.CFG0.PCI0._Y22._LEN, VLEN) CreateDWordField (REST, \_SB.CFG0.PCI0._Y23._MIN, MMIN) CreateDWordField (REST, \_SB.CFG0.PCI0._Y23._MAX, MMAX) CreateDWordField (REST, \_SB.CFG0.PCI0._Y23._LEN, MLEN) Method (_CRS, 0, NotSerialized) { Store (\_SB.CFG0.PCI0.BSNO, Local0) Store (\_SB.CFG0.PCI0.SBNO, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, BMIN) Store (Local1, BMAX) Store (Local2, BLEN) Store (\_SB.CFG0.PCI0.IOB, Local0) Store (\_SB.CFG0.PCI0.IOL, Local1) If (LGreaterEqual (Local1, Local0)) { And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x08, Local0) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMIN) Store (Local1, IMAX) Store (Local2, ILEN) } Store (\_SB.CFG0.PCI0.MEMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG0.PCI0.MEML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMIN) Store (Local1, MMAX) Store (Local2, MLEN) } If (LOr (LAnd (\_SB.CFG0.PCI0.VGAE, LNot (\_SB.CFG0.IBRG.SUBP)), LAnd (LNot (\_SB.CFG0.PCI0.VGAE), \_SB.CFG0.IBRG.SUBP))) { Store (0x000A0000, VMIN) Store (0x000BFFFF, VMAX) Store (0x00020000, VLEN) Store (0x03B0, VIN1) Store (0x03BB, VIX1) Store (0x0C, VIL1) Store (0x03C0, VIN2) Store (0x03DF, VIX2) Store (0x20, VIL2) } Else { Store (Zero, VMIN) Store (Zero, VMAX) Store (Zero, VLEN) Store (Zero, VIN1) Store (Zero, VIX1) Store (Zero, VIL1) Store (Zero, VIN2) Store (Zero, VIX2) Store (Zero, VIL2) } Return (REST) } } Scope (\_SB.CFG0.PCI1) { Device (BORG) { Name (_ADR, 0x00040000) } Name (REST, ResourceTemplate () { WordBusNumber (ResourceConsumer, MinFixed, MaxFixed, SubDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y24) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y25, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y26, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y27, AddressRangeMemory, TypeStatic) }) CreateWordField (REST, \_SB.CFG0.PCI1._Y24._MIN, BMIN) CreateWordField (REST, \_SB.CFG0.PCI1._Y24._MAX, BMAX) CreateWordField (REST, \_SB.CFG0.PCI1._Y24._LEN, BLEN) CreateWordField (REST, \_SB.CFG0.PCI1._Y25._MIN, IMIN) CreateWordField (REST, \_SB.CFG0.PCI1._Y25._MAX, IMAX) CreateWordField (REST, \_SB.CFG0.PCI1._Y25._LEN, ILEN) CreateDWordField (REST, \_SB.CFG0.PCI1._Y26._MIN, MMIN) CreateDWordField (REST, \_SB.CFG0.PCI1._Y26._MAX, MMAX) CreateDWordField (REST, \_SB.CFG0.PCI1._Y26._LEN, MLEN) CreateDWordField (REST, \_SB.CFG0.PCI1._Y27._MIN, PMMN) CreateDWordField (REST, \_SB.CFG0.PCI1._Y27._MAX, PMMX) CreateDWordField (REST, \_SB.CFG0.PCI1._Y27._LEN, PMLN) Method (_CRS, 0, NotSerialized) { Store (\_SB.CFG0.PCI1.BSNO, Local0) Store (\_SB.CFG0.PCI1.SBNO, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, BMIN) Store (Local1, BMAX) Store (Local2, BLEN) Store (\_SB.CFG0.PCI1.IOB, Local0) Store (\_SB.CFG0.PCI1.IOL, Local1) If (LGreaterEqual (Local1, Local0)) { And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x08, Local0) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMIN) Store (Local1, IMAX) Store (Local2, ILEN) } Store (\_SB.CFG0.PCI1.MEMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG0.PCI1.MEML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMIN) Store (Local1, MMAX) Store (Local2, MLEN) } Store (\_SB.CFG0.PCI1.PMMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG0.PCI1.PMML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, PMMN) Store (Local1, PMMX) Store (Local2, PMLN) } Return (REST) } } Scope (\_SB.CFG0.PCI2) { Device (NICA) { Name (_ADR, 0x00060000) } Name (REST, ResourceTemplate () { WordBusNumber (ResourceConsumer, MinFixed, MaxNotFixed, SubDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y28) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y29, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y2A, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y2B, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, WriteCombining, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y2C, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y2D, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y2E, AddressRangeMemory, TypeStatic) }) CreateWordField (REST, \_SB.CFG0.PCI2._Y28._MIN, BMIN) CreateWordField (REST, \_SB.CFG0.PCI2._Y28._MAX, BMAX) CreateWordField (REST, \_SB.CFG0.PCI2._Y28._LEN, BLEN) CreateWordField (REST, \_SB.CFG0.PCI2._Y29._MIN, IMIN) CreateWordField (REST, \_SB.CFG0.PCI2._Y29._MAX, IMAX) CreateWordField (REST, \_SB.CFG0.PCI2._Y29._LEN, ILEN) CreateWordField (REST, \_SB.CFG0.PCI2._Y2A._MIN, VIN1) CreateWordField (REST, \_SB.CFG0.PCI2._Y2A._MAX, VIX1) CreateWordField (REST, \_SB.CFG0.PCI2._Y2A._LEN, VIL1) CreateWordField (REST, \_SB.CFG0.PCI2._Y2B._MIN, VIN2) CreateWordField (REST, \_SB.CFG0.PCI2._Y2B._MAX, VIX2) CreateWordField (REST, \_SB.CFG0.PCI2._Y2B._LEN, VIL2) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2C._MIN, VMIN) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2C._MAX, VMAX) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2C._LEN, VLEN) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2D._MIN, MMIN) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2D._MAX, MMAX) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2D._LEN, MLEN) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2E._MIN, PMMN) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2E._MAX, PMMX) CreateDWordField (REST, \_SB.CFG0.PCI2._Y2E._LEN, PMLN) Method (_CRS, 0, NotSerialized) { Store (\_SB.CFG0.PCI2.BSNO, Local0) Store (\_SB.CFG0.PCI2.SBNO, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, BMIN) Store (Local1, BMAX) Store (Local2, BLEN) Store (\_SB.CFG0.PCI2.IOB, Local0) Store (\_SB.CFG0.PCI2.IOL, Local1) If (LGreaterEqual (Local1, Local0)) { And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x08, Local0) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMIN) Store (Local1, IMAX) Store (Local2, ILEN) } Store (\_SB.CFG0.PCI2.MEMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG0.PCI2.MEML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMIN) Store (Local1, MMAX) Store (Local2, MLEN) } Store (\_SB.CFG0.PCI2.PMMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG0.PCI2.PMML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, PMMN) Store (Local1, PMMX) Store (Local2, PMLN) } If (\_SB.CFG0.PCI2.VGAE) { Store (0x000A0000, VMIN) Store (0x000BFFFF, VMAX) Store (0x00020000, VLEN) Store (0x03B0, VIN1) Store (0x03BB, VIX1) Store (0x0C, VIL1) Store (0x03C0, VIN2) Store (0x03DF, VIX2) Store (0x20, VIL2) } Else { Store (Zero, VMIN) Store (Zero, VMAX) Store (Zero, VLEN) Store (Zero, VIN1) Store (Zero, VIX1) Store (Zero, VIL1) Store (Zero, VIN2) Store (Zero, VIX2) Store (Zero, VIL2) } Return (REST) } } Scope (\_SB.CFG1.PCI3) { Device (S1F0) { Name (_ADR, 0x00070000) Name (_SUN, 0x01) } Device (S1F1) { Name (_ADR, 0x00070001) Name (_SUN, 0x01) } Device (S1F2) { Name (_ADR, 0x00070002) Name (_SUN, 0x01) } Device (S1F3) { Name (_ADR, 0x00070003) Name (_SUN, 0x01) } Device (S1F4) { Name (_ADR, 0x00070004) Name (_SUN, 0x01) } Device (S1F5) { Name (_ADR, 0x00070005) Name (_SUN, 0x01) } Device (S1F6) { Name (_ADR, 0x00070006) Name (_SUN, 0x01) } Device (S1F7) { Name (_ADR, 0x00070007) Name (_SUN, 0x01) } Device (S2F0) { Name (_ADR, 0x00080000) Name (_SUN, 0x02) } Device (S2F1) { Name (_ADR, 0x00080001) Name (_SUN, 0x02) } Device (S2F2) { Name (_ADR, 0x00080002) Name (_SUN, 0x02) } Device (S2F3) { Name (_ADR, 0x00080003) Name (_SUN, 0x02) } Device (S2F4) { Name (_ADR, 0x00080004) Name (_SUN, 0x02) } Device (S2F5) { Name (_ADR, 0x00080005) Name (_SUN, 0x02) } Device (S2F6) { Name (_ADR, 0x00080006) Name (_SUN, 0x02) } Device (S2F7) { Name (_ADR, 0x00080007) Name (_SUN, 0x02) } Name (REST, ResourceTemplate () { WordBusNumber (ResourceConsumer, MinFixed, MaxNotFixed, SubDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y2F) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y30, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y31, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y32, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, WriteCombining, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y33, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y34, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y35, AddressRangeMemory, TypeStatic) }) CreateWordField (REST, \_SB.CFG1.PCI3._Y2F._MIN, BMIN) CreateWordField (REST, \_SB.CFG1.PCI3._Y2F._MAX, BMAX) CreateWordField (REST, \_SB.CFG1.PCI3._Y2F._LEN, BLEN) CreateWordField (REST, \_SB.CFG1.PCI3._Y30._MIN, IMIN) CreateWordField (REST, \_SB.CFG1.PCI3._Y30._MAX, IMAX) CreateWordField (REST, \_SB.CFG1.PCI3._Y30._LEN, ILEN) CreateWordField (REST, \_SB.CFG1.PCI3._Y31._MIN, VIN1) CreateWordField (REST, \_SB.CFG1.PCI3._Y31._MAX, VIX1) CreateWordField (REST, \_SB.CFG1.PCI3._Y31._LEN, VIL1) CreateWordField (REST, \_SB.CFG1.PCI3._Y32._MIN, VIN2) CreateWordField (REST, \_SB.CFG1.PCI3._Y32._MAX, VIX2) CreateWordField (REST, \_SB.CFG1.PCI3._Y32._LEN, VIL2) CreateDWordField (REST, \_SB.CFG1.PCI3._Y33._MIN, VMIN) CreateDWordField (REST, \_SB.CFG1.PCI3._Y33._MAX, VMAX) CreateDWordField (REST, \_SB.CFG1.PCI3._Y33._LEN, VLEN) CreateDWordField (REST, \_SB.CFG1.PCI3._Y34._MIN, MMIN) CreateDWordField (REST, \_SB.CFG1.PCI3._Y34._MAX, MMAX) CreateDWordField (REST, \_SB.CFG1.PCI3._Y34._LEN, MLEN) CreateDWordField (REST, \_SB.CFG1.PCI3._Y35._MIN, PMMN) CreateDWordField (REST, \_SB.CFG1.PCI3._Y35._MAX, PMMX) CreateDWordField (REST, \_SB.CFG1.PCI3._Y35._LEN, PMLN) Method (_CRS, 0, NotSerialized) { Store (\_SB.CFG1.PCI3.BSNO, Local0) Store (\_SB.CFG1.PCI3.SBNO, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, BMIN) Store (Local1, BMAX) Store (Local2, BLEN) Store (\_SB.CFG1.PCI3.IOB, Local0) Store (\_SB.CFG1.PCI3.IOL, Local1) If (LGreaterEqual (Local1, Local0)) { And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x08, Local0) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMIN) Store (Local1, IMAX) Store (Local2, ILEN) } Store (\_SB.CFG1.PCI3.MEMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG1.PCI3.MEML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMIN) Store (Local1, MMAX) Store (Local2, MLEN) } Store (\_SB.CFG1.PCI3.PMMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG1.PCI3.PMML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, PMMN) Store (Local1, PMMX) Store (Local2, PMLN) } If (\_SB.CFG1.PCI3.VGAE) { Store (0x000A0000, VMIN) Store (0x000BFFFF, VMAX) Store (0x00020000, VLEN) Store (0x03B0, VIN1) Store (0x03BB, VIX1) Store (0x0C, VIL1) Store (0x03C0, VIN2) Store (0x03DF, VIX2) Store (0x20, VIL2) } Else { Store (Zero, VMIN) Store (Zero, VMAX) Store (Zero, VLEN) Store (Zero, VIN1) Store (Zero, VIX1) Store (Zero, VIL1) Store (Zero, VIN2) Store (Zero, VIX2) Store (Zero, VIL2) } Return (REST) } } Scope (\_SB.CFG1.PCI4) { Device (S3F0) { Name (_ADR, 0x00090000) Name (_SUN, 0x03) } Device (S3F1) { Name (_ADR, 0x00090001) Name (_SUN, 0x03) } Device (S3F2) { Name (_ADR, 0x00090002) Name (_SUN, 0x03) } Device (S3F3) { Name (_ADR, 0x00090003) Name (_SUN, 0x03) } Device (S3F4) { Name (_ADR, 0x00090004) Name (_SUN, 0x03) } Device (S3F5) { Name (_ADR, 0x00090005) Name (_SUN, 0x03) } Device (S3F6) { Name (_ADR, 0x00090006) Name (_SUN, 0x03) } Device (S3F7) { Name (_ADR, 0x00090007) Name (_SUN, 0x03) } Name (REST, ResourceTemplate () { WordBusNumber (ResourceConsumer, MinFixed, MaxNotFixed, SubDecode, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y36) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0000, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y37, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y38, TypeStatic) WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x0001, // Granularity 0x0000, // Range Minimum 0x0000, // Range Maximum 0x0000, // Translation Offset 0x0000, // Length ,, _Y39, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, WriteCombining, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y3A, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y3B, AddressRangeMemory, TypeStatic) DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite, 0x00000000, // Granularity 0x00000000, // Range Minimum 0x00000000, // Range Maximum 0x00000000, // Translation Offset 0x00000000, // Length ,, _Y3C, AddressRangeMemory, TypeStatic) }) CreateWordField (REST, \_SB.CFG1.PCI4._Y36._MIN, BMIN) CreateWordField (REST, \_SB.CFG1.PCI4._Y36._MAX, BMAX) CreateWordField (REST, \_SB.CFG1.PCI4._Y36._LEN, BLEN) CreateWordField (REST, \_SB.CFG1.PCI4._Y37._MIN, IMIN) CreateWordField (REST, \_SB.CFG1.PCI4._Y37._MAX, IMAX) CreateWordField (REST, \_SB.CFG1.PCI4._Y37._LEN, ILEN) CreateWordField (REST, \_SB.CFG1.PCI4._Y38._MIN, VIN1) CreateWordField (REST, \_SB.CFG1.PCI4._Y38._MAX, VIX1) CreateWordField (REST, \_SB.CFG1.PCI4._Y38._LEN, VIL1) CreateWordField (REST, \_SB.CFG1.PCI4._Y39._MIN, VIN2) CreateWordField (REST, \_SB.CFG1.PCI4._Y39._MAX, VIX2) CreateWordField (REST, \_SB.CFG1.PCI4._Y39._LEN, VIL2) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3A._MIN, VMIN) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3A._MAX, VMAX) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3A._LEN, VLEN) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3B._MIN, MMIN) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3B._MAX, MMAX) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3B._LEN, MLEN) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3C._MIN, PMMN) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3C._MAX, PMMX) CreateDWordField (REST, \_SB.CFG1.PCI4._Y3C._LEN, PMLN) Method (_CRS, 0, NotSerialized) { Store (\_SB.CFG1.PCI4.BSNO, Local0) Store (\_SB.CFG1.PCI4.SBNO, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, BMIN) Store (Local1, BMAX) Store (Local2, BLEN) Store (\_SB.CFG1.PCI4.IOB, Local0) Store (\_SB.CFG1.PCI4.IOL, Local1) If (LGreaterEqual (Local1, Local0)) { And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x08, Local0) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x08, Local1) Or (Local1, 0x0FFF, Local1) Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, IMIN) Store (Local1, IMAX) Store (Local2, ILEN) } Store (\_SB.CFG1.PCI4.MEMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG1.PCI4.MEML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, MMIN) Store (Local1, MMAX) Store (Local2, MLEN) } Store (\_SB.CFG1.PCI4.PMMB, Local0) And (Local0, 0xFFF0, Local0) ShiftLeft (Local0, 0x10, Local0) Store (\_SB.CFG1.PCI4.PMML, Local1) And (Local1, 0xFFF0, Local1) ShiftLeft (Local1, 0x10, Local1) Or (Local1, 0x000FFFFF, Local1) If (LGreaterEqual (Local1, Local0)) { Subtract (Local1, Local0, Local2) Increment (Local2) Store (Local0, PMMN) Store (Local1, PMMX) Store (Local2, PMLN) } If (\_SB.CFG1.PCI4.VGAE) { Store (0x000A0000, VMIN) Store (0x000BFFFF, VMAX) Store (0x00020000, VLEN) Store (0x03B0, VIN1) Store (0x03BB, VIX1) Store (0x0C, VIL1) Store (0x03C0, VIN2) Store (0x03DF, VIX2) Store (0x20, VIL2) } Else { Store (Zero, VMIN) Store (Zero, VMAX) Store (Zero, VLEN) Store (Zero, VIN1) Store (Zero, VIX1) Store (Zero, VIL1) Store (Zero, VIN2) Store (Zero, VIX2) Store (Zero, VIL2) } Return (REST) } } Device (\_SB.CFG0.IBRG) { Name (_ADR, 0x00040000) OperationRegion (IBRG, PCI_Config, 0x00, 0xFF) Field (IBRG, AnyAcc, NoLock, Preserve) { Offset (0x40), , 5, SUBP, 1 } Mutex (LCK2, 0x00) } Device (\_SB.CFG0.TSMB) { Name (_ADR, 0x00040002) Method (_STA, 0, NotSerialized) { Return (0x0F) } } Device (\_SB.CFG0.TSMM) { Name (_ADR, 0x00040003) Method (_STA, 0, NotSerialized) { Return (0x0B) } OperationRegion (TSMM, PCI_Config, 0x00, 0xFF) Field (TSMM, AnyAcc, NoLock, Preserve) { Offset (0x43), G3S5, 8, Offset (0x56), PIRA, 4, PIRB, 4, PIRC, 4, PIRD, 4 } } Device (\_SB.CFG0.IBRG.MOMB) { Name (_HID, EisaId ("PNP0C02")) Name (_UID, 0x00) Name (CRS1, ResourceTemplate () { IO (Decode16, 0x0020, // Range Minimum 0x0020, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x0050, // Range Minimum 0x0050, // Range Maximum 0x00, // Alignment 0x02, // Length ) IO (Decode16, 0x0092, // Range Minimum 0x0092, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x00A0, // Range Minimum 0x00A0, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x00F0, // Range Minimum 0x00F0, // Range Maximum 0x00, // Alignment 0x02, // Length ) IO (Decode16, 0x0230, // Range Minimum 0x0230, // Range Maximum 0x00, // Alignment 0x04, // Length ) IO (Decode16, 0x0260, // Range Minimum 0x0260, // Range Maximum 0x00, // Alignment 0x08, // Length ) IO (Decode16, 0x04D0, // Range Minimum 0x04D0, // Range Maximum 0x00, // Alignment 0x02, // Length ) IO (Decode16, 0x0800, // Range Minimum 0x0800, // Range Maximum 0x00, // Alignment 0x20, // Length ) IO (Decode16, 0x0840, // Range Minimum 0x0840, // Range Maximum 0x00, // Alignment 0x20, // Length ) IO (Decode16, 0x0900, // Range Minimum 0x0900, // Range Maximum 0x00, // Alignment 0x04, // Length ) IO (Decode16, 0x0904, // Range Minimum 0x0904, // Range Maximum 0x00, // Alignment 0x04, // Length ) IO (Decode16, 0x0908, // Range Minimum 0x0908, // Range Maximum 0x00, // Alignment 0x04, // Length ) IO (Decode16, 0x090C, // Range Minimum 0x090C, // Range Maximum 0x00, // Alignment 0x23, // Length ) IO (Decode16, 0x092F, // Range Minimum 0x092F, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x0930, // Range Minimum 0x0930, // Range Maximum 0x00, // Alignment 0xD0, // Length ) IO (Decode16, 0x0C80, // Range Minimum 0x0C80, // Range Maximum 0x00, // Alignment 0x08, // Length ) IO (Decode16, 0x0CF9, // Range Minimum 0x0CF9, // Range Maximum 0x00, // Alignment 0x01, // Length ) IO (Decode16, 0x02F8, // Range Minimum 0x02F8, // Range Maximum 0x00, // Alignment 0x08, // Length _Y3D) }) CreateWordField (CRS1, \_SB.CFG0.IBRG.MOMB._Y3D._MIN, VMIN) CreateWordField (CRS1, \_SB.CFG0.IBRG.MOMB._Y3D._MAX, VMAX) CreateByteField (CRS1, \_SB.CFG0.IBRG.MOMB._Y3D._LEN, VLEN) Method (_CRS, 0, NotSerialized) { Store (VPRT, Local0) And (Local0, 0x07, Local0) Store (0x00, VMIN) Store (0x00, VMAX) Store (0x00, VLEN) If (LEqual (Local0, 0x01)) { Store (0x03F8, VMIN) Store (0x03F8, VMAX) Store (0x08, VLEN) } If (LEqual (Local0, 0x02)) { Store (0x02F8, VMIN) Store (0x02F8, VMAX) Store (0x08, VLEN) } If (LEqual (Local0, 0x03)) { Store (0x03E8, VMIN) Store (0x03E8, VMAX) Store (0x08, VLEN) } If (LEqual (Local0, 0x04)) { Store (0x02E8, VMIN) Store (0x02E8, VMAX) Store (0x08, VLEN) } Return (CRS1) } } Device (\_SB.CFG0.IBRG.PIC) { Name (_HID, EisaId ("PNP0000")) Mutex (LCK, 0x00) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0020, // Range Minimum 0x0020, // Range Maximum 0x01, // Alignment 0x02, // Length ) IO (Decode16, 0x00A0, // Range Minimum 0x00A0, // Range Maximum 0x01, // Alignment 0x02, // Length ) }) Method (IGET, 1, Serialized) { Acquire (LCK, 0xFFFF) Release (LCK) Return (Arg0) } Method (ISET, 2, Serialized) { Acquire (LCK, 0xFFFF) Store (Arg0, Local0) Release (LCK) } } Device (\_SB.CFG0.IBRG.TIME) { Name (_HID, EisaId ("PNP0100")) Name (_CRS, ResourceTemplate () { IRQ (Edge, ActiveHigh, Exclusive, ) {0} IO (Decode16, 0x0040, // Range Minimum 0x0040, // Range Maximum 0x01, // Alignment 0x04, // Length ) }) } Device (\_SB.CFG0.IBRG.DMA0) { Name (_HID, EisaId ("PNP0200")) Name (_CRS, ResourceTemplate () { DMA (Compatibility, NotBusMaster, Transfer16, ) {7} IO (Decode16, 0x0000, // Range Minimum 0x0000, // Range Maximum 0x01, // Alignment 0x10, // Length ) IO (Decode16, 0x0080, // Range Minimum 0x0080, // Range Maximum 0x01, // Alignment 0x10, // Length ) IO (Decode16, 0x00C0, // Range Minimum 0x00C0, // Range Maximum 0x01, // Alignment 0x20, // Length ) }) } Device (\_SB.CFG0.IBRG.BEEP) { Name (_HID, EisaId ("PNP0800")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0061, // Range Minimum 0x0061, // Range Maximum 0x01, // Alignment 0x01, // Length ) }) } Name (\PICM, Zero) Method (\_PIC, 1, NotSerialized) { Store (Arg0, \PICM) } Scope (\_SB) { Name (BUFA, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, _Y3E) {11} }) Name (BUFB, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, _Y3F) {11} }) Name (BUFC, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, _Y40) {11} }) Name (BUFD, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, _Y41) {11} }) CreateWordField (BUFA, \_SB._Y3E._INT, IRA0) CreateWordField (BUFB, \_SB._Y3F._INT, IRB0) CreateWordField (BUFC, \_SB._Y40._INT, IRC0) CreateWordField (BUFD, \_SB._Y41._INT, IRD0) Device (LNKA) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x00) Method (_STA, 0, NotSerialized) { And (\_SB.CFG0.TSMM.PIRA, 0x0F, Local0) If (LNot (Local0)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Store (0x00, \_SB.CFG0.TSMM.PIRA) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,5,7,10,11} }) Method (_CRS, 0, NotSerialized) { And (\_SB.CFG0.TSMM.PIRA, 0x0F, Local0) ShiftLeft (0x01, Local0, IRA0) Return (BUFA) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, 0x01, IRA) FindSetRightBit (IRA, Local0) Subtract (Local0, 0x01, \_SB.CFG0.TSMM.PIRA) } } Device (LNKB) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x01) Method (_STA, 0, NotSerialized) { And (\_SB.CFG0.TSMM.PIRB, 0x0F, Local0) If (LNot (Local0)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Store (0x00, \_SB.CFG0.TSMM.PIRB) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,5,7,10,11} }) Method (_CRS, 0, NotSerialized) { And (\_SB.CFG0.TSMM.PIRB, 0x0F, Local0) ShiftLeft (0x01, Local0, IRB0) Return (BUFB) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, 0x01, IRB) FindSetRightBit (IRB, Local0) Subtract (Local0, 0x01, \_SB.CFG0.TSMM.PIRB) } } Device (LNKC) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x02) Method (_STA, 0, NotSerialized) { And (\_SB.CFG0.TSMM.PIRC, 0x0F, Local0) If (LNot (Local0)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Store (0x00, \_SB.CFG0.TSMM.PIRC) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,5,7,10,11} }) Method (_CRS, 0, NotSerialized) { And (\_SB.CFG0.TSMM.PIRC, 0x0F, Local0) ShiftLeft (0x01, Local0, IRC0) Return (BUFC) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, 0x01, IRC) FindSetRightBit (IRC, Local0) Subtract (Local0, 0x01, \_SB.CFG0.TSMM.PIRC) } } Device (LNKD) { Name (_HID, EisaId ("PNP0C0F")) Name (_UID, 0x03) Method (_STA, 0, NotSerialized) { And (\_SB.CFG0.TSMM.PIRD, 0x0F, Local0) If (LNot (Local0)) { Return (0x09) } Else { Return (0x0B) } } Method (_DIS, 0, NotSerialized) { Store (0x00, \_SB.CFG0.TSMM.PIRD) } Name (_PRS, ResourceTemplate () { IRQ (Level, ActiveLow, Shared, ) {3,5,7,10,11} }) Method (_CRS, 0, NotSerialized) { And (\_SB.CFG0.TSMM.PIRD, 0x0F, Local0) ShiftLeft (0x01, Local0, IRD0) Return (BUFD) } Method (_SRS, 1, NotSerialized) { CreateWordField (Arg0, 0x01, IRD) FindSetRightBit (IRD, Local0) Subtract (Local0, 0x01, \_SB.CFG0.TSMM.PIRD) } } } Method (\_SB.CFG0._PRT, 0, NotSerialized) { If (LEqual (\PICM, One)) { Return (Package (0x01) { Package (0x04) { 0x0004FFFF, 0x03, 0x00, 0x13 } }) } Else { Return (Package (0x01) { Package (0x04) { 0x0004FFFF, 0x03, LNKD, 0x00 } }) } } Method (\_SB.CFG0.PCI0._PRT, 0, NotSerialized) { If (LEqual (\PICM, One)) { Return (Package (0x03) { Package (0x04) { 0x0002FFFF, 0x00, 0x00, 0x10 }, Package (0x04) { 0x0002FFFF, 0x01, 0x00, 0x11 }, Package (0x04) { 0xFFFF, 0x03, 0x00, 0x13 } }) } Else { Return (Package (0x03) { Package (0x04) { 0x0002FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0002FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0xFFFF, 0x03, LNKD, 0x00 } }) } } Method (\_SB.CFG0.PCI1._PRT, 0, NotSerialized) { If (LEqual (\PICM, One)) { Return (Package (0x01) { Package (0x04) { 0x0004FFFF, 0x00, 0x00, 0x18 } }) } Else { Return (Package (0x01) { Package (0x04) { 0x0004FFFF, 0x00, LNKA, 0x00 } }) } } Method (\_SB.CFG0.PCI2._PRT, 0, NotSerialized) { If (LEqual (\PICM, One)) { Return (Package (0x02) { Package (0x04) { 0x0006FFFF, 0x00, 0x00, 0x1C }, Package (0x04) { 0x0006FFFF, 0x01, 0x00, 0x1D } }) } Else { Return (Package (0x02) { Package (0x04) { 0x0006FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0006FFFF, 0x01, LNKB, 0x00 } }) } } Method (\_SB.CFG1.PCI3._PRT, 0, NotSerialized) { If (LEqual (\PICM, One)) { Return (Package (0x08) { Package (0x04) { 0x0007FFFF, 0x00, 0x00, 0x22 }, Package (0x04) { 0x0007FFFF, 0x01, 0x00, 0x23 }, Package (0x04) { 0x0007FFFF, 0x02, 0x00, 0x20 }, Package (0x04) { 0x0007FFFF, 0x03, 0x00, 0x21 }, Package (0x04) { 0x0008FFFF, 0x00, 0x00, 0x20 }, Package (0x04) { 0x0008FFFF, 0x01, 0x00, 0x21 }, Package (0x04) { 0x0008FFFF, 0x02, 0x00, 0x22 }, Package (0x04) { 0x0008FFFF, 0x03, 0x00, 0x23 } }) } Else { Return (Package (0x08) { Package (0x04) { 0x0007FFFF, 0x00, LNKC, 0x00 }, Package (0x04) { 0x0007FFFF, 0x01, LNKD, 0x00 }, Package (0x04) { 0x0007FFFF, 0x02, LNKA, 0x00 }, Package (0x04) { 0x0007FFFF, 0x03, LNKB, 0x00 }, Package (0x04) { 0x0008FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0008FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0008FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0008FFFF, 0x03, LNKD, 0x00 } }) } } Method (\_SB.CFG1.PCI4._PRT, 0, NotSerialized) { If (LEqual (\PICM, One)) { Return (Package (0x04) { Package (0x04) { 0x0009FFFF, 0x00, 0x00, 0x24 }, Package (0x04) { 0x0009FFFF, 0x01, 0x00, 0x25 }, Package (0x04) { 0x0009FFFF, 0x02, 0x00, 0x26 }, Package (0x04) { 0x0009FFFF, 0x03, 0x00, 0x27 } }) } Else { Return (Package (0x04) { Package (0x04) { 0x0009FFFF, 0x00, LNKA, 0x00 }, Package (0x04) { 0x0009FFFF, 0x01, LNKB, 0x00 }, Package (0x04) { 0x0009FFFF, 0x02, LNKC, 0x00 }, Package (0x04) { 0x0009FFFF, 0x03, LNKD, 0x00 } }) } } Scope (\_SB.CFG0.PCI0) { Device (GROM) { Name (_ADR, 0x00020000) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x4800, // Range Minimum 0x4800, // Range Maximum 0x00, // Alignment 0xFF, // Length ) IO (Decode16, 0x4900, // Range Minimum 0x4900, // Range Maximum 0x00, // Alignment 0x08, // Length ) }) Method (_STA, 0, NotSerialized) { Return (0x0B) } OperationRegion (REDR, SystemIO, 0x48C0, 0x02) Field (REDR, ByteAcc, NoLock, Preserve) { RIDX, 8, DIRQ, 8 } Mutex (LCK1, 0x00) } } Scope (\_SB.CFG0.PCI0) { OperationRegion (INTP, SystemIO, 0x4844, 0x04) Field (INTP, ByteAcc, NoLock, Preserve) { INT1, 16, INT3, 8, Offset (0x04) } OperationRegion (INTL, SystemIO, 0x48C8, 0x02) Field (INTL, ByteAcc, NoLock, Preserve) { IRQL, 16 } OperationRegion (NVRM, SystemIO, 0x4800, 0xB0) Field (NVRM, AnyAcc, NoLock, Preserve) { Offset (0x8A), AUTO, 1, Offset (0x9B), NVDT, 1, Offset (0xA6), NVPG, 16 } Mutex (LCK1, 0x00) } Scope (\_SB.CFG0.IBRG) { Device (KBD) { Name (_HID, EisaId ("PNP0303")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x0060, // Range Minimum 0x0060, // Range Maximum 0x01, // Alignment 0x01, // Length ) IO (Decode16, 0x0064, // Range Minimum 0x0064, // Range Maximum 0x01, // Alignment 0x01, // Length ) IRQ (Edge, ActiveHigh, Exclusive, ) {1} }) } } Scope (\_SB.CFG0.IBRG) { Device (PS2M) { Name (_HID, EisaId ("PNP0F13")) Name (_CID, 0x0E0FD041) Name (_CRS, ResourceTemplate () { IRQNoFlags () {12} }) } } Scope (\_SB.CFG0.IBRG) { Device (S417) { Name (_HID, EisaId ("PNP0A06")) Name (_CRS, ResourceTemplate () { IO (Decode16, 0x002E, // Range Minimum 0x002E, // Range Maximum 0x00, // Alignment 0x02, // Length ) IO (Decode16, 0x0220, // Range Minimum 0x0220, // Range Maximum 0x00, // Alignment 0x04, // Length ) IO (Decode16, 0x0240, // Range Minimum 0x0240, // Range Maximum 0x00, // Alignment 0x20, // Length ) IO (Decode16, 0x0070, // Range Minimum 0x0070, // Range Maximum 0x00, // Alignment 0x04, // Length ) }) OperationRegion (N417, SystemIO, 0x2E, 0x02) Field (N417, ByteAcc, NoLock, Preserve) { INDX, 8, DATA, 8 } IndexField (INDX, DATA, ByteAcc, NoLock, Preserve) { Offset (0x02), CFG, 8, Offset (0x07), LDN, 8, Offset (0x30), ACTR, 8, Offset (0x60), IOAH, 8, IOAL, 8, Offset (0x70), INTR, 8, Offset (0x74), DMCH, 8, Offset (0xF0), CFG1, 8, CFG2, 8 } Mutex (LCK2, 0x00) } } Scope (\_SB.CFG0.IBRG.S417) { Device (COMA) { Name (_HID, EisaId ("PNP0501")) Name (_CID, 0x0005D041) Name (_DDN, "COM1") Name (_UID, 0x00) Name (CRS0, ResourceTemplate () { IRQNoFlags (_Y42) {4} IO (Decode16, 0x03F8, // Range Minimum 0x03F8, // Range Maximum 0x00, // Alignment 0x08, // Length _Y43) }) CreateWordField (CRS0, \_SB.CFG0.IBRG.S417.COMA._Y42._INT, IRQ1) CreateByteField (CRS0, \_SB.CFG0.IBRG.S417.COMA._Y43._MIN, IOLP) CreateByteField (CRS0, 0x06, IOHP) CreateByteField (CRS0, \_SB.CFG0.IBRG.S417.COMA._Y43._MAX, IOLR) CreateByteField (CRS0, 0x08, IOHR) CreateByteField (CRS0, \_SB.CFG0.IBRG.S417.COMA._Y43._LEN, IOLN) Method (_STA, 0, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x03, LDN) If (ACTR) { Release (LCK2) Return (0x0F) } Else { Release (LCK2) Return (0x0D) } } Method (_CRS, 0, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x03, LDN) If (LEqual (INTR, Zero)) { Store (0x00, IRQ1) Store (0x00, IOLP) Store (0x00, IOHP) Store (0x00, IOLR) Store (0x00, IOHR) Store (0x00, IOLN) } Else { Store (One, Local0) ShiftLeft (Local0, IRQ1) Store (IOAL, IOLP) Store (IOAH, IOHP) Store (IOAL, IOLR) Store (IOAH, IOHR) Store (0x08, IOLN) } Release (LCK2) Return (CRS0) } Method (_DIS, 0, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x03, LDN) Store (Zero, ACTR) Release (LCK2) } Method (_PRS, 0, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x03, LDN) If (LEqual (INTR, Zero)) { Store (Zero, IRQ1) Store (0x00, IRQ1) Store (0x00, IOLP) Store (0x00, IOHP) Store (0x00, IOLR) Store (0x00, IOHR) Store (0x00, IOLN) } Else { Store (One, Local0) ShiftLeft (Local0, INTR, IRQ1) Store (IOAL, IOLP) Store (IOAH, IOHP) Store (IOAL, IOLR) Store (IOAH, IOHR) Store (0x08, IOLN) } Release (LCK2) Return (CRS0) } Method (_SRS, 1, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x03, LDN) CreateWordField (Arg0, 0x01, IRQW) CreateByteField (Arg0, 0x05, IOLO) CreateByteField (Arg0, 0x06, IOHI) Store (IOLO, IOAL) Store (IOHI, IOAH) If (LEqual (IRQW, Zero)) { Store (Zero, INTR) } Else { FindSetLeftBit (IRQW, Local0) Decrement (Local0) Store (Local0, INTR) } Store (One, ACTR) Release (LCK2) } } } Scope (\_SB.CFG0.IBRG.S417) { Device (FDC0) { Name (_HID, EisaId ("PNP0700")) Name (CRES, ResourceTemplate () { IRQNoFlags (_Y44) {6} DMA (Compatibility, NotBusMaster, Transfer8, _Y45) {2} IO (Decode16, 0x03F2, // Range Minimum 0x03F2, // Range Maximum 0x02, // Alignment 0x04, // Length _Y46) }) Name (REST, ResourceTemplate () { IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8, ) {2} IO (Decode16, 0x03F0, // Range Minimum 0x03F0, // Range Maximum 0x00, // Alignment 0x06, // Length ) IO (Decode16, 0x03F7, // Range Minimum 0x03F7, // Range Maximum 0x01, // Alignment 0x01, // Length ) }) Device (DRV0) { Name (_ADR, 0x00) Name (_FDI, Package (0x10) { 0x00, 0x04, 0x4F, 0x12, 0x01, 0xDF, 0x02, 0x25, 0x02, 0x12, 0x1B, 0xFF, 0x65, 0xF6, 0x0F, 0x08 }) Method (_STA, 0, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x02, \_SB.CFG0.PCI0.NVPG) If (\_SB.CFG0.PCI0.NVDT) { Return (0x0F) } Else { Return (0x00) } Release (LCK2) } } Method (_FDE, 0, NotSerialized) { Name (FBUF, Buffer (0x14) { /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0010 */ 0x02, 0x00, 0x00, 0x00 }) CreateByteField (FBUF, 0x00, DRV0) Store (^DRV0._STA (), Local0) If (LEqual (Local0, 0x0F)) { Store (0x01, DRV0) } Return (FBUF) } Method (_STA, 0, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x00, LDN) If (ACTR) { Release (LCK2) Return (0x0F) } Else { Release (LCK2) Return (0x0D) } } Method (_CRS, 0, NotSerialized) { CreateWordField (CRES, \_SB.CFG0.IBRG.S417.FDC0._Y44._INT, IRQW) CreateByteField (CRES, \_SB.CFG0.IBRG.S417.FDC0._Y45._DMA, DMAC) CreateByteField (CRES, \_SB.CFG0.IBRG.S417.FDC0._Y46._MIN, IOLO) CreateByteField (CRES, 0x09, IOHI) CreateByteField (CRES, \_SB.CFG0.IBRG.S417.FDC0._Y46._MAX, IORL) CreateByteField (CRES, 0x0B, IORH) Store (0x00, LDN) Store (IOAL, IOLO) Store (IOAH, IOHI) Store (IOAL, IORL) Store (IOAH, IORH) If (LEqual (INTR, Zero)) { Store (Zero, IRQW) } Else { Store (One, Local0) ShiftLeft (Local0, INTR, IRQW) } If (LEqual (DMCH, 0x04)) { Store (Zero, DMAC) } Else { Store (One, Local0) ShiftLeft (Local0, DMCH, DMAC) } Return (CRES) } Method (_DIS, 0, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x00, LDN) Store (Zero, INTR) Store (Zero, ACTR) Release (LCK2) } Name (_PRS, ResourceTemplate () { IRQNoFlags () {6} DMA (Compatibility, NotBusMaster, Transfer8, ) {2} IO (Decode16, 0x03F0, // Range Minimum 0x03F0, // Range Maximum 0x00, // Alignment 0x06, // Length ) IO (Decode16, 0x03F7, // Range Minimum 0x03F7, // Range Maximum 0x01, // Alignment 0x01, // Length ) }) Method (_SRS, 1, NotSerialized) { Acquire (LCK2, 0xFFFF) Store (0x00, LDN) CreateWordField (Arg0, 0x01, IRQW) CreateByteField (Arg0, 0x04, DMAC) CreateByteField (Arg0, 0x08, IOLO) CreateByteField (Arg0, 0x09, IOHI) Store (IOLO, IOAL) Store (IOHI, IOAH) If (LEqual (IRQW, Zero)) { Store (Zero, INTR) } Else { FindSetLeftBit (IRQW, Local0) Decrement (Local0) Store (Local0, INTR) } If (LEqual (DMAC, Zero)) { Store (0x04, DMCH) } Else { FindSetLeftBit (DMAC, Local0) Decrement (Local0) Store (Local0, DMCH) } Store (One, ACTR) Release (LCK2) } } } } Scope (\_SI) { Method (_SST, 1, NotSerialized) { } } OperationRegion (AMEM, SystemMemory, 0x000E8000, 0x01) Field (AMEM, AnyAcc, NoLock, Preserve) { VPRT, 8 } OperationRegion (BMEM, SystemMemory, 0x000E8001, 0x01) Field (BMEM, AnyAcc, NoLock, Preserve) { PNEN, 8 } OperationRegion (GMEM, SystemMemory, 0x000E8010, 0x0302) Field (GMEM, AnyAcc, NoLock, Preserve) { P030, 32, C030, 32, S030, 32, P028, 32, C028, 32, S028, 32, P026, 32, C026, 32, S026, 32, P024, 32, C024, 32, S024, 32, P022, 32, C022, 32, S022, 32, P020, 32, C020, 32, S020, 32, P018, 32, C018, 32, S018, 32, P010, 32, C010, 32, S010, 32, P130, 32, C130, 32, S130, 32, P128, 32, C128, 32, S128, 32, P126, 32, C126, 32, S126, 32, P124, 32, C124, 32, S124, 32, P122, 32, C122, 32, S122, 32, P120, 32, C120, 32, S120, 32, P118, 32, C118, 32, S118, 32, P110, 32, C110, 32, S110, 32, P230, 32, C230, 32, S230, 32, P228, 32, C228, 32, S228, 32, P226, 32, C226, 32, S226, 32, P224, 32, C224, 32, S224, 32, P222, 32, C222, 32, S222, 32, P220, 32, C220, 32, S220, 32, P218, 32, C218, 32, S218, 32, P210, 32, C210, 32, S210, 32, P330, 32, C330, 32, S330, 32, P328, 32, C328, 32, S328, 32, P326, 32, C326, 32, S326, 32, P324, 32, C324, 32, S324, 32, P322, 32, C322, 32, S322, 32, P320, 32, C320, 32, S320, 32, P318, 32, C318, 32, S318, 32, P310, 32, C310, 32, S310, 32, Offset (0x300), NPPC, 8, P0IN, 1, P1IN, 1, P2IN, 1, P3IN, 1, P4IN, 1, P5IN, 1, P6IN, 1, P7IN, 1 } OperationRegion (SMEM, SystemMemory, 0x000E8320, 0x40) Field (SMEM, AnyAcc, NoLock, Preserve) { SSD0, 32, SSD1, 32, SSD2, 32, SSD3, 32, SSD4, 32, SSD5, 32, SSD6, 32, SSD7, 32, SSL0, 32, SSL1, 32, SSL2, 32, SSL3, 32, SSL4, 32, SSL5, 32, SSL6, 32, SSL7, 32 } OperationRegion (NSPM, SystemIO, 0x0220, 0x04) Field (NSPM, ByteAcc, NoLock, Preserve) { NPSL, 8, NPSH, 8, NPEL, 8, NPEH, 8 } OperationRegion (NSGP, SystemIO, 0x0260, 0x04) Field (NSGP, ByteAcc, NoLock, Preserve) { GPE0, 8, GPE1, 8, GPE2, 8, GPE3, 8 } Method (\_PTS, 1, NotSerialized) { Store (0xFF, NPSH) Store (0xFF, NPSL) Store (0xFF, GPE0) Store (0xFF, GPE1) Store (0xFF, GPE2) Store (0xFF, GPE3) Store (0x03, \_SB.CFG0.PCI0.NVPG) If (\_SB.CFG0.PCI0.AUTO) { Store (\_SB.CFG0.TSMM.G3S5, Local0) Or (Local0, 0x40, Local0) Store (Local0, \_SB.CFG0.TSMM.G3S5) } Else { Store (\_SB.CFG0.TSMM.G3S5, Local0) And (Local0, 0xBF, Local0) Store (Local0, \_SB.CFG0.TSMM.G3S5) } } }