Stuff
public text v1 · immutable/*
* Intel ACPI Component Architecture
* AML Disassembler version 20060912
*
* Disassembly of dsdt.dat, Mon May 14 23:47:38 2007
*
*
* Original Table Header:
* Signature "DSDT"
* Length 0x000038D5 (14549)
* Revision 0x01
* OEM ID "MTC "
* OEM Table ID "7521"
* OEM Revision 0x06040000 (100925440)
* Creator ID "MSFT"
* Creator Revision 0x0100000B (16777227)
*/
DefinitionBlock ("dsdt.aml", "DSDT", 1, "MTC ", "7521", 0x06040000)
{
OperationRegion (CMOS, SystemIO, 0x70, 0x02)
Field (CMOS, ByteAcc, NoLock, Preserve)
{
IN70, 8,
DA71, 8
}
IndexField (IN70, DA71, ByteAcc, NoLock, Preserve)
{
SEC, 8,
SECA, 8,
MIN, 8,
MINA, 8,
HOU, 8,
HOUA, 8,
Offset (0x0B),
, 5,
REGB, 1,
Offset (0x0C),
Offset (0x7E),
DAYA, 8,
MONA, 8
}
OperationRegion (BTT0, SystemMemory, 0x0400, 0x0100)
Field (BTT0, ByteAcc, NoLock, Preserve)
{
Offset (0xDF),
GADP, 1,
GBAT, 1,
GLID, 1,
GBTC, 1,
GBST, 2,
RIIN, 1,
PS2M, 1,
GBAR, 16,
GCBA, 16,
GAVE, 16,
GTEM, 16,
GCCB, 16,
GCCC, 16,
GAVC, 16,
GLTS, 16,
GTTE, 16,
GTDC, 16,
GFCC, 16,
GTDV, 16,
GTSN, 16,
GCQS, 16,
GPST, 16,
GRST, 16
}
Scope (\_PR)
{
Processor (CPU0, 0x00, 0x00008010, 0x06) {}
}
Name (\_S0, Package (0x02)
{
0x00,
0x00
})
Name (\_S3, Package (0x02)
{
0x03,
0x03
})
Name (\_S4, Package (0x02)
{
0x04,
0x04
})
Name (\_S5, Package (0x02)
{
0x05,
0x05
})
Scope (_SI)
{
Method (_SST, 1, NotSerialized)
{
If (And (LGreaterEqual (Arg0, 0x01), LLessEqual (Arg0, 0x02)
))
{
Store ("==================================== SI_Working", Debug)
}
If (LEqual (Arg0, 0x03))
{
Store ("==================================== SI_S1 or S2 or S3", Debug)
}
If (LEqual (Arg0, 0x04))
{
Store ("==================================== SI_S4", Debug)
}
}
}
Method (\_PTS, 1, NotSerialized)
{
If (LEqual (Arg0, 0x01))
{
Store ("------------- System S0 to S1 mode -------------", Debug)
\_SB.PHS (0x80)
}
If (And (LGreaterEqual (Arg0, 0x02), LLessEqual (Arg0, 0x03)
))
{
Store ("------------- System S0 to (S2 or S3) mode -------------", Debug)
\_SB.PHS (0x85)
}
If (LEqual (Arg0, 0x04))
{
Store ("------------- System S0 to S4 mode -------------", Debug)
\_SB.PHS (0x82)
}
If (LEqual (Arg0, 0x05))
{
Store ("------------- System S0 to S5 mode -------------", Debug)
\_SB.PHS (0x84)
}
}
Method (\_WAK, 1, NotSerialized)
{
\_SB.PHS (0x94)
If (LEqual (RIIN, 0x01))
{
Notify (\_SB.PWRB, 0x02)
Store (0x00, RIIN)
}
If (LEqual (Arg0, 0x01))
{
Store ("------------- System S1 to\tS0 mode\t-------------", Debug)
\_SB.PHS (0x81)
}
If (And (LGreaterEqual (Arg0, 0x02), LLessEqual (Arg0, 0x03)
))
{
Store ("------------- System (S3 or S2) to\tS0 mode\t-------------", Debug)
\_SB.PHS (0x86)
}
If (LEqual (Arg0, 0x04))
{
Store ("------------- System S4 to\tS0 mode\t-------------", Debug)
Notify (\_SB.PWRB, 0x02)
\_SB.PHS (0x83)
}
}
Scope (\_GPE)
{
Method (_L0F, 0, NotSerialized)
{
Store ("=========================================== GPE_L0F", Debug)
}
}
Scope (_SB)
{
Device (PWRB)
{
Name (_HID, EisaId ("PNP0C0C"))
}
Device (SLPB)
{
Name (_HID, EisaId ("PNP0C0E"))
Name (_PRW, Package (0x02)
{
0x0F,
0x04
})
Method (_PSW, 1, NotSerialized)
{
}
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
}
Device (LID)
{
Name (_HID, EisaId ("PNP0C0D"))
Name (LIDS, One)
Method (_LID, 0, NotSerialized)
{
Store ("-------------- SIS LID Switch --------------", Debug)
Store (LIDS, Debug)
Return (LIDS)
}
}
Device (ACAD)
{
Name (_HID, "ACPI0003")
Name (_PCL, Package (0x01)
{
\_SB
})
Name (ACP, 0x00)
Method (_PSR, 0, NotSerialized)
{
Store (GADP, Local0)
Return (Local0)
}
Method (_STA, 0, NotSerialized)
{
Store ("--------------------------------------- AC_STA", Debug)
Return (0x0F)
}
Method (CHAC, 0, NotSerialized)
{
Store ("---------------------------- AC _CHAC", Debug)
\_SB.PHS (0x90)
Store (GADP, Local0)
If (LNotEqual (Local0, ACP))
{
FLPA ()
}
}
Method (FLPA, 0, NotSerialized)
{
Store (GADP, ACP)
Notify (\_SB.ACAD, 0x00)
}
}
Device (BAT0)
{
Name (_HID, EisaId ("PNP0C0A"))
Name (_UID, 0x01)
Name (_PCL, Package (0x01)
{
\_SB
})
Name (PBIF, Package (0x0D)
{
0x01,
0xFFFFFFFF,
0xFFFFFFFF,
0x01,
0xFFFFFFFF,
0x01F4,
0x00,
0x40,
0x40,
"Internal Battery",
"\t",
"\t",
"MTC Corporation"
})
Name (BSTB, Package (0x04)
{
0x00,
0xFFFFFFFF,
0xFFFFFFFF,
0x2710
})
Name (CHAR, Package (0x10)
{
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9",
"A",
"B",
"C",
"D",
"E",
"F"
})
Method (ITOS, 1, NotSerialized)
{
Store ("", Local0)
Store (0x05, Local1)
While (Local1)
{
Decrement (Local1)
And (ShiftRight (Arg0, ShiftLeft (Local1, 0x02)), 0x0F, Local4)
Store (DerefOf (Index (CHAR, Local4)), Local2)
Concatenate (Local0, Local2, Local5)
Store (Local5, Local0)
}
Return (Local0)
}
Method (_STA, 0, NotSerialized)
{
\_SB.PHS (0x90)
Store (GBAT, Local0)
If (Or (Local0, Local0))
{
Return (0x1F)
}
Else
{
Return (0x0F)
}
}
Method (_BIF, 0, NotSerialized)
{
\_SB.PHS (0x90)
Store (GBAT, Local0)
If (Or (Local0, Local0))
{
DBIF ()
Store ("------------------------- BATTERY _BIF from EC", Debug)
Store (0x01, Index (PBIF, 0x00))
Store (GTDC, Index (PBIF, 0x01))
Store (GFCC, Index (PBIF, 0x02))
Store (0x01, Index (PBIF, 0x03))
Store (GTDV, Index (PBIF, 0x04))
Store (0x01F4, Index (PBIF, 0x05))
Store (0x00, Index (PBIF, 0x06))
Store (0x40, Index (PBIF, 0x07))
Store (0x40, Index (PBIF, 0x08))
Store ("Internal battery", Index (PBIF, 0x09))
Store (GTSN, Local0)
Store (ITOS (ToBCD (Local0)), Local1)
Store ("", Index (PBIF, 0x0A))
If (GBTC)
{
Store ("LION", Index (PBIF, 0x0B))
}
Else
{
Store ("NiMH", Index (PBIF, 0x0B))
}
Store ("MTC Corporation ", Index (PBIF, 0x0C))
}
Else
{
DBIF ()
}
Return (PBIF)
}
Method (DBIF, 0, NotSerialized)
{
Store ("------------------------- BATTERY _BIF from default", Debug)
Store (0x01, Index (PBIF, 0x00))
Store (0xFFFFFFFF, Index (PBIF, 0x01))
Store (0xFFFFFFFF, Index (PBIF, 0x02))
Store (0x01, Index (PBIF, 0x03))
Store (0xFFFFFFFF, Index (PBIF, 0x04))
Store (0x01F4, Index (PBIF, 0x05))
Store (0x00, Index (PBIF, 0x06))
Store (0x40, Index (PBIF, 0x07))
Store (0x40, Index (PBIF, 0x08))
Store ("7521 ", Index (PBIF, 0x09))
Store ("7521 ", Index (PBIF, 0x0A))
Store ("\t ", Index (PBIF, 0x0B))
Store ("MTC Corporation", Index (PBIF, 0x0C))
}
Method (_BST, 0, NotSerialized)
{
\_SB.PHS (0x90)
Store (GBAT, Local0)
If (Or (Local0, Local0))
{
Store ("------------------------- BATTERY _BST from EC", Debug)
Store (GBST, Local0)
Store (0x01, Index (BSTB, 0x00))
If (LEqual (Local0, 0x03))
{
Store (0x02, Index (BSTB, 0x00))
}
If (LEqual (Local0, 0x02))
{
Store (GADP, Local4)
If (LEqual (Local4, 0x00))
{
Store (0x05, Index (BSTB, 0x00))
}
Else
{
Store (0x06, Index (BSTB, 0x00))
}
}
Store (GCCC, Local1)
Not (Local1, Local1)
And (Local1, 0xFFFF, Local1)
Store (Local1, Index (BSTB, 0x01))
Store (GBAR, Local2)
Store (Local2, Index (BSTB, 0x02))
Store (GCCB, Local3)
Store (Local3, Index (BSTB, 0x03))
}
Else
{
DBST ()
}
Return (BSTB)
}
Method (DBST, 0, NotSerialized)
{
Store ("------------------------- BATTERY _BST from default", Debug)
Store (0x00, Index (BSTB, 0x00))
Store (0xFFFFFFFF, Index (BSTB, 0x01))
Store (0xFFFFFFFF, Index (BSTB, 0x02))
Store (0x2710, Index (BSTB, 0x03))
}
Method (IN, 0, NotSerialized)
{
_BST ()
_BIF ()
Notify (\_SB.ACAD, 0x00)
Notify (\_SB.BAT0, 0x00)
Notify (\_SB.BAT0, 0x80)
Notify (\_SB.BAT0, 0x81)
\_SB.ACAD.FLPA ()
}
Method (OUT, 0, NotSerialized)
{
DBST ()
DBIF ()
Notify (\_SB.ACAD, 0x00)
Notify (\_SB.BAT0, 0x01)
Notify (\_SB.BAT0, 0x80)
Notify (\_SB.BAT0, 0x81)
\_SB.ACAD.FLPA ()
}
}
Device (LNKA)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x01)
Name (_PRS, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{9}
})
Method (_DIS, 0, NotSerialized)
{
Or (\_SB.PCI0.EIO.PIRA, 0x80, \_SB.PCI0.EIO.PIRA)
}
Method (_CRS, 0, NotSerialized)
{
Name (RSRC, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, _Y00)
{}
})
CreateWordField (RSRC, \_SB.LNKA._CRS._Y00._INT, IRQ0)
If (LEqual (And (\_SB.PCI0.EIO.PIRA, 0x80), Zero))
{
And (\_SB.PCI0.EIO.PIRA, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQ0)
}
Return (RSRC)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Or (Local0, And (\_SB.PCI0.EIO.PIRA, 0x70), \_SB.PCI0.EIO.PIRA)
}
Method (_STA, 0, NotSerialized)
{
If (And (\_SB.PCI0.EIO.PIRA, 0x80))
{
Return (0x09)
}
Return (0x0B)
}
}
Device (LNKB)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x02)
Name (_PRS, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{3,4,5,7,9,11}
})
Name (RSRC, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, _Y01)
{}
})
Method (_DIS, 0, NotSerialized)
{
Or (\_SB.PCI0.EIO.PIRB, 0x80, \_SB.PCI0.EIO.PIRB)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (RSRC, \_SB.LNKB._Y01._INT, IRQ0)
And (\_SB.PCI0.EIO.PIRB, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQ0)
Return (RSRC)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Or (Local0, And (\_SB.PCI0.EIO.PIRB, 0x70), \_SB.PCI0.EIO.PIRB)
}
Method (_STA, 0, NotSerialized)
{
If (And (\_SB.PCI0.EIO.PIRB, 0x80))
{
Return (0x09)
}
Return (0x0B)
}
}
Device (LNKC)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x03)
Name (_PRS, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{3,4,5,7,9,11}
})
Name (RSRC, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, _Y02)
{}
})
Method (_DIS, 0, NotSerialized)
{
Or (\_SB.PCI0.EIO.PIRC, 0x80, \_SB.PCI0.EIO.PIRC)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (RSRC, \_SB.LNKC._Y02._INT, IRQ0)
And (\_SB.PCI0.EIO.PIRC, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQ0)
Return (RSRC)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Or (Local0, And (\_SB.PCI0.EIO.PIRC, 0x70), \_SB.PCI0.EIO.PIRC)
}
Method (_STA, 0, NotSerialized)
{
If (And (\_SB.PCI0.EIO.PIRC, 0x80))
{
Return (0x09)
}
Return (0x0B)
}
}
Device (LNKD)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x04)
Name (_PRS, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, )
{3,4,5,7,9}
})
Name (RSRC, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared, _Y03)
{}
})
Method (_DIS, 0, NotSerialized)
{
Or (\_SB.PCI0.EIO.PIRD, 0x80, \_SB.PCI0.EIO.PIRD)
}
Method (_CRS, 0, NotSerialized)
{
CreateWordField (RSRC, \_SB.LNKD._Y03._INT, IRQ0)
And (\_SB.PCI0.EIO.PIRD, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQ0)
Return (RSRC)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ0)
FindSetRightBit (IRQ0, Local0)
Decrement (Local0)
Or (Local0, And (\_SB.PCI0.EIO.PIRD, 0x70), \_SB.PCI0.EIO.PIRD)
}
Method (_STA, 0, NotSerialized)
{
If (And (\_SB.PCI0.EIO.PIRD, 0x80))
{
Return (0x09)
}
Return (0x0B)
}
}
OperationRegion (SMI0, SystemIO, 0x0000FE00, 0x00000002)
Field (SMI0, AnyAcc, NoLock, Preserve)
{
SMIC, 8
}
OperationRegion (SMI1, SystemMemory, 0x15FFFEBC, 0x00000100)
Field (SMI1, AnyAcc, NoLock, Preserve)
{
BCMD, 8,
DID, 32,
INFO, 2000
}
Field (SMI1, AnyAcc, NoLock, Preserve)
{
AccessAs (ByteAcc, 0x00),
Offset (0x05),
INF, 8
}
Mutex (PSMX, 0x01)
Method (PHS, 1, Serialized)
{
Acquire (PSMX, 0xFFFF)
Store (Arg0, BCMD)
Store (Zero, SMIC)
Store (Zero, BCMD)
Release (PSMX)
Return (INF)
}
Device (PCI0)
{
Name (_HID, EisaId ("PNP0A03"))
Name (_ADR, 0x00)
Name (_BBN, 0x00)
Name (CRES, 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, NonCacheable, ReadWrite,
0x00000000, // Granularity
0x000C8000, // Range Minimum
0x000DBFFF, // Range Maximum
0x00000000, // Translation Offset
0x00018000, // Length
,, , AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x04000000, // Range Minimum
0xFFFDFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00000000, // Length
,, _Y04, AddressRangeMemory, TypeStatic)
})
Method (_CRS, 0, NotSerialized)
{
CreateDWordField (CRES, \_SB.PCI0._Y04._MIN, RAMT)
CreateDWordField (CRES, \_SB.PCI0._Y04._LEN, RAMR)
ShiftLeft (\_SB.PCI0.MAH, 0x1C, Local0)
ShiftLeft (\_SB.PCI0.MAL, 0x14, Local1)
Add (Local1, Local0, Local2)
Store (Local2, RAMT)
Subtract (0xFFE00000, RAMT, RAMR)
Return (CRES)
}
OperationRegion (MA, PCI_Config, 0xAE, 0x02)
Field (MA, ByteAcc, NoLock, Preserve)
{
MAL, 8,
MAH, 8
}
Name (_PRT, Package (0x07)
{
Package (0x04)
{
0x0001FFFF,
0x00,
\_SB.LNKA,
0x00
},
Package (0x04)
{
0x0001FFFF,
0x01,
\_SB.LNKB,
0x00
},
Package (0x04)
{
0x0001FFFF,
0x02,
\_SB.LNKC,
0x00
},
Package (0x04)
{
0x0001FFFF,
0x03,
\_SB.LNKD,
0x00
},
Package (0x04)
{
0x0002FFFF,
0x00,
\_SB.LNKA,
0x00
},
Package (0x04)
{
0x0008FFFF,
0x00,
\_SB.LNKA,
0x00
},
Package (0x04)
{
0x0008FFFF,
0x01,
\_SB.LNKA,
0x00
}
})
Device (IDEC)
{
Name (_ADR, 0x01)
Name (RTT, Package (0x10)
{
0x0C,
0x01,
0x02,
0x03,
0x04,
0x05,
0x06,
0x07,
0x08,
0x09,
0x0A,
0x0B,
0x0D,
0x0E,
0x0F,
0x0F
})
Name (DATT, Package (0x08)
{
0x08,
0x01,
0x02,
0x03,
0x04,
0x05,
0x06,
0x0C
})
Name (UDTT, Package (0x08)
{
0x00,
0x02,
0x03,
0x04,
0x05,
0x06,
0x07,
0x08
})
Name (IDET, Package (0x03)
{
Package (0x07)
{
0x78,
0xB4,
0xF0,
0x0186,
0x0258,
0x96,
0x01E0
},
Package (0x07)
{
0x03,
0x03,
0x04,
0x06,
0x08,
0x03,
0x08
},
Package (0x07)
{
0x01,
0x03,
0x04,
0x07,
0x0C,
0x02,
0x08
}
})
Name (UDT, Package (0x01)
{
Package (0x08)
{
0x00,
0x04,
0x03,
0x02,
0x02,
0x01,
0x01,
0x00
}
})
Name (UDMT, Package (0x06)
{
0x07,
0x05,
0x03,
0x02,
0x01,
0x00
})
Name (PIOT, Package (0x05)
{
0x00,
0x07,
0x04,
0x03,
0x01
})
Name (DMAT, Package (0x05)
{
0x00,
0x01,
0x01,
0x01,
0x02
})
OperationRegion (CF41, PCI_Config, 0x40, 0x0C)
Field (CF41, WordAcc, NoLock, Preserve)
{
RCT0, 4,
Offset (0x01),
DAT0, 3,
, 1,
UDT0, 3,
UDC0, 1,
RCT1, 4,
Offset (0x03),
DAT1, 3,
, 1,
UDT1, 3,
UDC1, 1,
RCT2, 4,
Offset (0x05),
DAT2, 3,
, 1,
UDT2, 3,
UDC2, 1,
RCT3, 4,
Offset (0x07),
DAT3, 3,
, 1,
UDT3, 3,
UDC3, 1,
Offset (0x0A),
, 1,
C0EN, 1,
C1EN, 1
}
Name (IDEP, Buffer (0x14) {})
CreateDWordField (IDEP, 0x00, GTM0)
CreateDWordField (IDEP, 0x04, GTM1)
CreateDWordField (IDEP, 0x08, GTM2)
CreateDWordField (IDEP, 0x0C, GTM3)
CreateDWordField (IDEP, 0x10, GTM4)
Device (IDE0)
{
Name (_ADR, 0x00)
Method (_GTM, 0, NotSerialized)
{
Store (0xFFFFFFFF, Local0)
Store (0xFFFFFFFF, Local1)
Store (0xFFFFFFFF, Local2)
Store (0xFFFFFFFF, Local3)
Store (0x10, Local4)
If (^^C0EN)
{
If (NAnd (LEqual (^^DAT0, 0x00), LEqual (^^RCT0, 0x0E)))
{
If (LEqual (\_SB.PCI0.IDEC.UDC0, 0x01))
{
Store (DerefOf (Index (\_SB.PCI0.IDEC.UDTT, \_SB.PCI0.IDEC.UDT0)), Local1)
Multiply (Local1, 0x0A, Local1)
Or (Local4, 0x01, Local4)
}
Store (DerefOf (Index (\_SB.PCI0.IDEC.RTT, \_SB.PCI0.IDEC.RCT0)), Local5)
Store (DerefOf (Index (\_SB.PCI0.IDEC.DATT, \_SB.PCI0.IDEC.DAT0)), Local6)
Add (Local5, Local6, Local5)
Multiply (Local5, 0x1E, Local0)
If (LEqual (Local6, 0x03))
{
Or (Local4, 0x02, Local4)
}
If (LEqual (\_SB.PCI0.IDEC.UDC0, 0x00))
{
Store (Local0, Local1)
}
}
If (NAnd (LEqual (^^DAT1, 0x00), LEqual (^^RCT1, 0x0E)))
{
If (LEqual (\_SB.PCI0.IDEC.UDC1, 0x01))
{
Store (DerefOf (Index (\_SB.PCI0.IDEC.UDTT, \_SB.PCI0.IDEC.UDT1)), Local3)
Multiply (Local3, 0x0A, Local3)
Or (Local4, 0x04, Local4)
}
Store (DerefOf (Index (\_SB.PCI0.IDEC.RTT, \_SB.PCI0.IDEC.RCT1)), Local5)
Store (DerefOf (Index (\_SB.PCI0.IDEC.DATT, \_SB.PCI0.IDEC.DAT1)), Local6)
Add (Local5, Local6, Local5)
Multiply (Local5, 0x1E, Local2)
If (LEqual (Local6, 0x03))
{
Or (Local4, 0x08, Local4)
}
If (LEqual (\_SB.PCI0.IDEC.UDC1, 0x00))
{
Store (Local2, Local3)
}
}
}
Store (Local0, ^^GTM0)
Store (Local1, ^^GTM1)
Store (Local2, ^^GTM2)
Store (Local3, ^^GTM3)
Store (Local4, ^^GTM4)
Return (^^IDEP)
}
Method (_STM, 3, NotSerialized)
{
Store (Arg0, ^^IDEP)
Store (^^GTM0, Local0)
Store (^^GTM1, Local1)
Store (^^GTM2, Local2)
Store (^^GTM3, Local3)
Store (^^GTM4, Local4)
If (LNotEqual (Local1, 0xFFFFFFFF))
{
If (And (Local4, 0x01))
{
Store (0x01, ^^UDC0)
Divide (Local1, 0x0A, Local5, Local1)
Store (Match (\_SB.PCI0.IDEC.UDTT, MEQ, Local1, MTR, 0x00, 0x00), Local5)
Store (Local5, ^^UDT0)
}
}
If (LNotEqual (Local0, 0xFFFFFFFF))
{
Store (Match (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x00)), MEQ, Local0, MTR,
0x00, 0x00), Local6)
Store (DerefOf (Index (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x01)), Local6)),
Local7)
Store (Match (\_SB.PCI0.IDEC.DATT, MEQ, Local7, MTR, 0x00, 0x00), ^^DAT0)
Store (DerefOf (Index (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x02)), Local6)),
Local7)
Store (Match (\_SB.PCI0.IDEC.RTT, MEQ, Local7, MTR, 0x00, 0x00), ^^RCT0)
}
If (LNotEqual (Local3, 0xFFFFFFFF))
{
If (And (Local4, 0x04))
{
Store (0x01, ^^UDC1)
Divide (Local3, 0x0A, Local5, Local3)
Store (Match (\_SB.PCI0.IDEC.UDTT, MEQ, Local3, MTR, 0x00, 0x00), Local5)
Store (Local5, ^^UDT1)
}
}
If (LNotEqual (Local2, 0xFFFFFFFF))
{
Store (Match (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x00)), MEQ, Local2, MTR,
0x00, 0x00), Local6)
Store (DerefOf (Index (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x01)), Local6)),
Local7)
Store (Match (\_SB.PCI0.IDEC.DATT, MEQ, Local7, MTR, 0x00, 0x00), ^^DAT1)
Store (DerefOf (Index (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x02)), Local6)),
Local7)
Store (Match (\_SB.PCI0.IDEC.RTT, MEQ, Local7, MTR, 0x00, 0x00), ^^RCT1)
}
}
Device (DRV0)
{
Name (_ADR, 0x00)
Method (_GTF, 0, NotSerialized)
{
Store (Buffer (0x07)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
}, Local6)
Store (Buffer (0x07)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
}, Local7)
CreateByteField (Local6, 0x01, MODE)
CreateByteField (Local7, 0x01, UMOD)
If (NAnd (LEqual (^^^DAT0, 0x00), LEqual (^^^RCT0, 0x0E)))
{
If (^^^UDC0)
{
Store (Match (\_SB.PCI0.IDEC.UDMT, MEQ, ^^^UDT0, MTR, 0x00, 0x00), UMOD)
Or (UMOD, 0x40, UMOD)
}
Else
{
Store (Match (\_SB.PCI0.IDEC.PIOT, MEQ, ^^^RCT0, MTR, 0x00, 0x00), MODE)
Store (DerefOf (Index (\_SB.PCI0.IDEC.DMAT, MODE)), UMOD)
Or (UMOD, 0x20, UMOD)
}
Store (Match (\_SB.PCI0.IDEC.PIOT, MEQ, ^^^RCT0, MTR, 0x00, 0x00), MODE)
Or (MODE, 0x08, MODE)
}
Concatenate (Local6, Local7, Local5)
Return (Local5)
}
}
Device (DRV1)
{
Name (_ADR, 0x01)
Method (_GTF, 0, NotSerialized)
{
Store (Buffer (0x07)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
}, Local6)
Store (Buffer (0x07)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
}, Local7)
CreateByteField (Local6, 0x01, MODE)
CreateByteField (Local7, 0x01, UMOD)
If (NAnd (LEqual (^^^DAT1, 0x00), LEqual (^^^RCT1, 0x0E)))
{
If (^^^UDC1)
{
Store (Match (\_SB.PCI0.IDEC.UDMT, MEQ, ^^^UDT1, MTR, 0x00, 0x00), UMOD)
Or (UMOD, 0x40, UMOD)
}
Else
{
Store (Match (\_SB.PCI0.IDEC.PIOT, MEQ, ^^^RCT1, MTR, 0x00, 0x00), MODE)
Store (DerefOf (Index (\_SB.PCI0.IDEC.DMAT, MODE)), UMOD)
Or (UMOD, 0x20, UMOD)
}
Store (Match (\_SB.PCI0.IDEC.PIOT, MEQ, ^^^RCT1, MTR, 0x00, 0x00), MODE)
Or (MODE, 0x08, MODE)
}
Concatenate (Local6, Local7, Local5)
Return (Local5)
}
}
}
Device (IDE1)
{
Name (_ADR, 0x01)
Method (_GTM, 0, NotSerialized)
{
Store (0xFFFFFFFF, Local0)
Store (0xFFFFFFFF, Local1)
Store (0xFFFFFFFF, Local2)
Store (0xFFFFFFFF, Local3)
Store (0x10, Local4)
If (^^C1EN)
{
If (NAnd (LEqual (^^DAT2, 0x00), LEqual (^^RCT2, 0x0E)))
{
If (LEqual (\_SB.PCI0.IDEC.UDC2, 0x01))
{
Store (DerefOf (Index (\_SB.PCI0.IDEC.UDTT, \_SB.PCI0.IDEC.UDT2)), Local1)
Multiply (Local1, 0x0A, Local1)
Or (Local4, 0x01, Local4)
}
Store (DerefOf (Index (\_SB.PCI0.IDEC.RTT, \_SB.PCI0.IDEC.RCT2)), Local5)
Store (DerefOf (Index (\_SB.PCI0.IDEC.DATT, \_SB.PCI0.IDEC.DAT2)), Local6)
Add (Local5, Local6, Local5)
Multiply (Local5, 0x1E, Local0)
If (LEqual (Local6, 0x03))
{
Or (Local4, 0x02, Local4)
}
If (LEqual (\_SB.PCI0.IDEC.UDC2, 0x00))
{
Store (Local0, Local1)
}
}
If (NAnd (LEqual (^^DAT3, 0x00), LEqual (^^RCT3, 0x0E)))
{
If (LEqual (\_SB.PCI0.IDEC.UDC3, 0x01))
{
Store (DerefOf (Index (\_SB.PCI0.IDEC.UDTT, \_SB.PCI0.IDEC.UDT3)), Local3)
Multiply (Local3, 0x0A, Local3)
Or (Local4, 0x04, Local4)
}
Store (DerefOf (Index (\_SB.PCI0.IDEC.RTT, \_SB.PCI0.IDEC.RCT3)), Local5)
Store (DerefOf (Index (\_SB.PCI0.IDEC.DATT, \_SB.PCI0.IDEC.DAT3)), Local6)
Add (Local5, Local6, Local5)
Multiply (Local5, 0x1E, Local2)
If (LEqual (Local6, 0x03))
{
Or (Local4, 0x08, Local4)
}
If (LEqual (\_SB.PCI0.IDEC.UDC3, 0x00))
{
Store (Local2, Local3)
}
}
}
Store (Local0, ^^GTM0)
Store (Local1, ^^GTM1)
Store (Local2, ^^GTM2)
Store (Local3, ^^GTM3)
Store (Local4, ^^GTM4)
Return (^^IDEP)
}
Method (_STM, 3, NotSerialized)
{
Store (Arg0, ^^IDEP)
Store (^^GTM0, Local0)
Store (^^GTM1, Local1)
Store (^^GTM2, Local2)
Store (^^GTM3, Local3)
Store (^^GTM4, Local4)
If (LNotEqual (Local1, 0xFFFFFFFF))
{
If (And (Local4, 0x01))
{
Store (0x01, ^^UDC2)
Divide (Local1, 0x0A, Local5, Local1)
Store (Match (\_SB.PCI0.IDEC.UDTT, MEQ, Local1, MTR, 0x00, 0x00), Local5)
Store (Local5, ^^UDT2)
}
}
If (LNotEqual (Local0, 0xFFFFFFFF))
{
Store (Match (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x00)), MEQ, Local0, MTR,
0x00, 0x00), Local6)
Store (DerefOf (Index (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x01)), Local6)),
Local7)
Store (Match (\_SB.PCI0.IDEC.DATT, MEQ, Local7, MTR, 0x00, 0x00), ^^DAT2)
Store (DerefOf (Index (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x02)), Local6)),
Local7)
Store (Match (\_SB.PCI0.IDEC.RTT, MEQ, Local7, MTR, 0x00, 0x00), ^^RCT2)
}
If (LNotEqual (Local3, 0xFFFFFFFF))
{
If (And (Local4, 0x04))
{
Store (0x01, ^^UDC3)
Divide (Local3, 0x0A, Local5, Local3)
Store (Match (\_SB.PCI0.IDEC.UDTT, MEQ, Local3, MTR, 0x00, 0x00), Local5)
Store (Local5, ^^UDT3)
}
}
If (LNotEqual (Local2, 0xFFFFFFFF))
{
Store (Match (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x00)), MEQ, Local2, MTR,
0x00, 0x00), Local6)
Store (DerefOf (Index (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x01)), Local6)),
Local7)
Store (Match (\_SB.PCI0.IDEC.DATT, MEQ, Local7, MTR, 0x00, 0x00), ^^DAT3)
Store (DerefOf (Index (DerefOf (Index (\_SB.PCI0.IDEC.IDET, 0x02)), Local6)),
Local7)
Store (Match (\_SB.PCI0.IDEC.RTT, MEQ, Local7, MTR, 0x00, 0x00), ^^RCT3)
}
}
Device (DRV0)
{
Name (_ADR, 0x00)
Method (_GTF, 0, NotSerialized)
{
Store (Buffer (0x07)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
}, Local6)
Store (Buffer (0x07)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
}, Local7)
CreateByteField (Local6, 0x01, MODE)
CreateByteField (Local7, 0x01, UMOD)
If (NAnd (LEqual (^^^DAT2, 0x00), LEqual (^^^RCT2, 0x0E)))
{
If (^^^UDC2)
{
Store (Match (\_SB.PCI0.IDEC.UDMT, MEQ, ^^^UDT2, MTR, 0x00, 0x00), UMOD)
Or (UMOD, 0x40, UMOD)
}
Else
{
Store (Match (\_SB.PCI0.IDEC.PIOT, MEQ, ^^^RCT2, MTR, 0x00, 0x00), MODE)
Store (DerefOf (Index (\_SB.PCI0.IDEC.DMAT, MODE)), UMOD)
Or (UMOD, 0x20, UMOD)
}
Store (Match (\_SB.PCI0.IDEC.PIOT, MEQ, ^^^RCT2, MTR, 0x00, 0x00), MODE)
Or (MODE, 0x08, MODE)
}
Concatenate (Local6, Local7, Local5)
Return (Local5)
}
}
Device (DRV1)
{
Name (_ADR, 0x01)
Method (_GTF, 0, NotSerialized)
{
Store (Buffer (0x07)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
}, Local6)
Store (Buffer (0x07)
{
/* 0000 */ 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
}, Local7)
CreateByteField (Local6, 0x01, MODE)
CreateByteField (Local7, 0x01, UMOD)
If (NAnd (LEqual (^^^DAT3, 0x00), LEqual (^^^RCT3, 0x0E)))
{
If (^^^UDC3)
{
Store (Match (\_SB.PCI0.IDEC.UDMT, MEQ, ^^^UDT3, MTR, 0x00, 0x00), UMOD)
Or (UMOD, 0x40, UMOD)
}
Else
{
Store (Match (\_SB.PCI0.IDEC.PIOT, MEQ, ^^^RCT3, MTR, 0x00, 0x00), MODE)
Store (DerefOf (Index (\_SB.PCI0.IDEC.DMAT, MODE)), UMOD)
Or (UMOD, 0x20, UMOD)
}
Store (Match (\_SB.PCI0.IDEC.PIOT, MEQ, ^^^RCT3, MTR, 0x00, 0x00), MODE)
Or (MODE, 0x08, MODE)
}
Concatenate (Local6, Local7, Local5)
Return (Local5)
}
}
}
}
Device (AGP)
{
Name (_ADR, 0x00020000)
}
Device (LAN)
{
Name (_ADR, 0x00010001)
Name (_PRW, Package (0x02)
{
0x0C,
0x04
})
Method (_PSW, 1, NotSerialized)
{
If (LEqual (Arg0, Zero))
{
Noop
}
Else
{
Noop
}
}
}
Device (USB1)
{
Name (_ADR, 0x00010002)
}
Device (AUD)
{
Name (_ADR, 0x00010004)
}
Device (MOD)
{
Name (_ADR, 0x00010006)
Name (_PRW, Package (0x02)
{
0x0A,
0x04
})
Method (_PSW, 1, NotSerialized)
{
If (LEqual (Arg0, Zero))
{
Noop
}
Else
{
Noop
}
}
}
Device (EIO)
{
Name (_ADR, 0x00010000)
OperationRegion (PIRQ, PCI_Config, 0x41, 0x04)
Field (PIRQ, ByteAcc, NoLock, Preserve)
{
PIRA, 8,
PIRB, 8,
PIRC, 8,
PIRD, 8
}
OperationRegion (INTE, PCI_Config, 0x47, 0x01)
Field (INTE, ByteAcc, NoLock, Preserve)
{
, 2,
PSEN, 1,
KYEN, 1
}
}
Device (DMA1)
{
Name (_HID, EisaId ("PNP0200"))
Name (_CRS, ResourceTemplate ()
{
DMA (Compatibility, BusMaster, Transfer8, )
{4}
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0x10, // Length
)
IO (Decode16,
0x0081, // Range Minimum
0x0081, // Range Maximum
0x01, // Alignment
0x0F, // Length
)
IO (Decode16,
0x00C0, // Range Minimum
0x00C0, // Range Maximum
0x01, // Alignment
0x20, // Length
)
})
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
}
Device (RTC)
{
Name (_HID, EisaId ("PNP0B00"))
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Name (_CRS, ResourceTemplate ()
{
IO (Decode10,
0x0070, // Range Minimum
0x0070, // Range Maximum
0x01, // Alignment
0x06, // Length
)
IRQNoFlags ()
{8}
})
}
Device (PIC)
{
Name (_HID, EisaId ("PNP0000"))
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
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
)
IRQNoFlags ()
{2}
})
}
Device (COPR)
{
Name (_HID, EisaId ("PNP0C04"))
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x00F0, // Range Minimum
0x00F0, // Range Maximum
0x01, // Alignment
0x10, // Length
)
IRQNoFlags ()
{13}
})
}
Device (TMR)
{
Name (_HID, EisaId ("PNP0100"))
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0040, // Range Minimum
0x0040, // Range Maximum
0x01, // Alignment
0x04, // Length
)
IRQNoFlags ()
{0}
})
}
Device (SPKR)
{
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Name (_HID, EisaId ("PNP0800"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0061, // Range Minimum
0x0061, // Range Maximum
0x01, // Alignment
0x01, // Length
)
})
}
Device (MEM)
{
Name (_HID, EisaId ("PNP0C01"))
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Method (_CRS, 0, NotSerialized)
{
Name (SMEM, ResourceTemplate ()
{
Memory32Fixed (ReadWrite,
0x00000000, // Address Base
0x000A0000, // Address Length
)
Memory32Fixed (ReadOnly,
0x000DC000, // Address Base
0x00004000, // Address Length
)
Memory32Fixed (ReadOnly,
0x000E0000, // Address Base
0x00020000, // Address Length
)
Memory32Fixed (ReadOnly,
0xFFFE0000, // Address Base
0x00020000, // Address Length
)
})
Return (SMEM)
}
}
Device (SYSR)
{
Name (_HID, EisaId ("PNP0C02"))
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x04D0, // Range Minimum
0x04D0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0080, // Range Minimum
0x0080, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0092, // Range Minimum
0x0092, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0398, // Range Minimum
0x0398, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0481, // Range Minimum
0x0481, // Range Maximum
0x01, // Alignment
0x03, // Length
)
IO (Decode16,
0x0487, // Range Minimum
0x0487, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0489, // Range Minimum
0x0489, // Range Maximum
0x01, // Alignment
0x03, // Length
)
IO (Decode16,
0x048F, // Range Minimum
0x048F, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x80FF, // Range Minimum
0x80FF, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x8000, // Range Minimum
0x8000, // Range Maximum
0x01, // Alignment
0xFF, // Length
)
})
}
Device (EC)
{
Name (_HID, EisaId ("PNP0C09"))
Name (_GPE, 0x02)
Name (ECOK, 0x00)
Method (_REG, 2, NotSerialized)
{
If (LEqual (Arg0, 0x03))
{
Store (Arg1, ECOK)
}
}
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0062, // Range Minimum
0x0062, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IO (Decode16,
0x0066, // Range Minimum
0x0066, // Range Maximum
0x01, // Alignment
0x01, // Length
)
})
OperationRegion (ERAM, EmbeddedControl, 0x00, 0xFF)
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x04),
CMCM, 8,
CMD1, 8,
CMD2, 8,
CMD3, 8,
Offset (0x18),
SMPR, 8,
SMST, 8,
SMAD, 8,
SMCM, 8,
SMD0, 264,
SMAA, 8
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x1C),
SMW0, 16
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0x1C),
SMB0, 8
}
Field (ERAM, ByteAcc, NoLock, Preserve)
{
Offset (0xA4),
ADP, 1,
BATP, 1,
LIDP, 1,
BTCH, 1,
BST, 2,
Offset (0xA5),
Offset (0xA9),
SLPT, 3,
, 1,
Offset (0xB8),
ENP, 16,
ENW, 16,
CQS, 16,
PST, 16,
RST, 16,
PQS, 16,
WQS, 16,
MTNR, 8,
QPSW, 1,
, 6,
QWUT, 1,
DSTR, 16,
NMC1, 8,
NMC2, 7,
LAMP, 1,
EXS, 16,
WDTR, 16,
ICT, 16,
Offset (0xE0),
BARC, 16,
BATS, 16,
AVGE, 16,
TEMP, 16,
BATV, 16,
BATC, 16,
AVGC, 16,
RLTS, 16,
RTTE, 16,
BTDC, 16,
LFCC, 16,
BTDV, 16,
BTSN, 16
}
Mutex (MTX0, 0x00)
Mutex (MTX1, 0x00)
Method (_Q32, 0, NotSerialized)
{
Store ("====== Power Button event =================", Debug)
Notify (\_SB.PWRB, 0x80)
}
Method (_Q15, 0, NotSerialized)
{
Store ("====== FN+F12 SLEEP Button event =================", Debug)
\_SB.PHS (0x87)
Notify (\_SB.SLPB, 0x80)
}
Method (_Q14, 0, NotSerialized)
{
Store ("====== FN+F11 PANNEL ON/OFF event ================", Debug)
\_SB.PHS (0x88)
}
Method (_Q13, 0, NotSerialized)
{
Store ("====== FN+F10 BATTERY LOW BEEP ON/OFF event ======", Debug)
\_SB.PHS (0x89)
}
Method (_Q0E, 0, NotSerialized)
{
Store ("====== FN+F5 Display Switch event =================", Debug)
\_SB.PHS (0x8C)
}
Method (_Q0F, 0, NotSerialized)
{
Store ("====== FN+F6 event =================", Debug)
\_SB.PHS (0x8D)
}
Method (_Q10, 0, NotSerialized)
{
Store ("====== FN+F7 event =================", Debug)
\_SB.PHS (0x8E)
}
Method (_Q11, 0, NotSerialized)
{
Store ("====== FN+F8 event =================", Debug)
\_SB.PHS (0x8F)
}
Method (_Q36, 0, NotSerialized)
{
Store ("=============== AC IN event =================", Debug)
\_SB.PHS (0x8B)
Notify (\_SB.ACAD, 0x00)
}
Method (_QB6, 0, NotSerialized)
{
Store ("=============== AC OUT event =================", Debug)
\_SB.PHS (0x8B)
Notify (\_SB.ACAD, 0x01)
}
Method (_Q41, 0, NotSerialized)
{
Store ("=============== BATTERY IN event =================", Debug)
\_SB.PHS (0x8B)
\_SB.BAT0.IN ()
}
Method (_QC1, 0, NotSerialized)
{
Store ("=============== BATTERY OUT event =================", Debug)
\_SB.PHS (0x8B)
\_SB.BAT0.OUT ()
}
Method (_Q34, 0, NotSerialized)
{
Store ("=============== BATTERY LOW event =================", Debug)
\_SB.PHS (0x8A)
Notify (\_SB.BAT0, 0x80)
}
Method (_Q31, 0, NotSerialized)
{
Store ("=============== LID OPEN event =================", Debug)
Store (One, \_SB.LID.LIDS)
Notify (\_SB.LID, 0x80)
}
Method (_QB1, 0, NotSerialized)
{
Store ("=============== LID CLOSE event =================", Debug)
Store (Zero, \_SB.LID.LIDS)
Notify (\_SB.LID, 0x80)
}
Method (_Q42, 0, NotSerialized)
{
Store ("============ QSB Pressed/Released event ==============", Debug)
Store (\_SB.PCI0.EC.PST, Local0)
And (Local0, 0x0FC0, Local0)
FindSetRightBit (Local0, Local0)
If (LNotEqual (Local0, 0x00))
{
If (LEqual (Local0, 0x07))
{
Store (0x90, Local0)
}
Else
{
Add (Local0, 0x79, Local0)
}
Notify (\_SB.PCI0.ESB, Local0)
}
Store (Zero, \_SB.PCI0.EC.PST)
}
}
Device (PS2M)
{
Name (_HID, EisaId ("PNP0F13"))
Name (_CRS, ResourceTemplate ()
{
IRQNoFlags ()
{12}
})
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
}
Device (PS2K)
{
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
)
IRQNoFlags ()
{1}
})
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
}
Device (LPT)
{
Name (MCD, 0x13)
Name (_HID, EisaId ("PNP0400"))
Name (_UID, 0x01)
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (B_SR, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (B_PR, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (B_DI, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
Name (RSRC, ResourceTemplate ()
{
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
}
Device (LPTB)
{
Name (MCD, 0x14)
Name (_HID, EisaId ("PNP0400"))
Name (_UID, 0x01)
Name (RSRC, ResourceTemplate ()
{
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (_SRS, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_PRS, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (_DIS, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (ECP)
{
Name (MCD, 0x15)
Name (_HID, EisaId ("PNP0401"))
Name (_UID, 0x01)
Name (RSRC, ResourceTemplate ()
{
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (B_SR, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (B_PR, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (B_DI, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (EPP)
{
Name (MCD, 0x17)
Name (_HID, EisaId ("PNP0400"))
Name (_UID, 0x01)
Name (RSRC, ResourceTemplate ()
{
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (B_SR, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (B_PR, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (B_DI, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (COMA)
{
Name (MCD, 0x0E)
Name (_HID, EisaId ("PNP0500"))
Name (_UID, 0x01)
Name (RSRC, ResourceTemplate ()
{
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (_SRS, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_PRS, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (_DIS, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (COMB)
{
Name (MCD, 0x0F)
Name (_HID, EisaId ("PNP0500"))
Name (_UID, 0x02)
Name (RSRC, ResourceTemplate ()
{
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (B_SR, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (B_PR, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (B_DI, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (IRDA)
{
Name (MCD, 0x11)
Name (_HID, EisaId ("PNP0510"))
Name (_UID, 0x02)
Name (RSRC, ResourceTemplate ()
{
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (B_SR, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (B_PR, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (B_DI, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (BASK)
{
Name (MCD, 0x12)
Name (_HID, EisaId ("PNP0501"))
Name (_UID, 0x02)
Name (RSRC, ResourceTemplate ()
{
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (B_SR, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (B_PR, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (B_DI, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (FIR)
{
Name (MCD, 0x10)
Name (_HID, EisaId ("NSC6001"))
Name (_CID, 0x1005D041)
Name (_UID, 0x02)
Name (RSRC, ResourceTemplate ()
{
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x08, // Length
)
IRQNoFlags ()
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (_SRS, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_PRS, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (_DIS, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (FDC)
{
Name (MCD, 0x16)
Name (_HID, EisaId ("PNP0700"))
Name (_UID, 0x01)
Name (RSRC, ResourceTemplate ()
{
IO (Decode16,
0x0100, // Range Minimum
0x0100, // Range Maximum
0x01, // Alignment
0x06, // Length
)
IO (Decode16,
0x0107, // Range Minimum
0x0107, // Range Maximum
0x01, // Alignment
0x01, // Length
)
IRQNoFlags ()
{}
DMA (Compatibility, NotBusMaster, Transfer8, )
{}
})
Method (_CRS, 0, NotSerialized)
{
If (And (_STA (), 0x02))
{
Acquire (PSMX, 0xFFFF)
Store (0x00, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Return (RSRC)
}
Method (_SRS, 1, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x01, BCMD)
Store (MCD, DID)
Store (Arg0, INFO)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_PRS, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x02, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INFO, Local0)
Release (PSMX)
Return (Local0)
}
Method (_DIS, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x03, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Release (PSMX)
}
Method (_STA, 0, NotSerialized)
{
Acquire (PSMX, 0xFFFF)
Store (0x04, BCMD)
Store (MCD, DID)
Store (Zero, SMIC)
Store (INF, Local0)
Release (PSMX)
Return (Local0)
}
}
Device (ESB)
{
Name (_HID, EisaId ("MTC0001"))
Method (SLED, 1, NotSerialized)
{
If (LLess (Arg0, 0x04))
{
Store (0x00, \_SB.PCI0.EC.ICT)
Store (0x00, \_SB.PCI0.EC.NMC2)
If (LNotEqual (Arg0, 0x00))
{
If (LEqual (Arg0, 0x01))
{
Store (0x02, \_SB.PCI0.EC.NMC2)
Store (0x5000, \_SB.PCI0.EC.ICT)
}
Else
{
If (LEqual (Arg0, 0x03))
{
Store (0x01, \_SB.PCI0.EC.NMC2)
Store (0x2000, \_SB.PCI0.EC.ICT)
}
If (LEqual (Arg0, 0x02))
{
Store (0x1000, \_SB.PCI0.EC.ICT)
}
}
}
}
}
}
Device (CRD0)
{
Name (_ADR, 0x00080000)
}
Device (CRD1)
{
Name (_ADR, 0x00080001)
}
}
}
}