Lanner FW-7550 AML file
public text v1 · immutable/*
* Intel ACPI Component Architecture
* AML Disassembler version 20041119
*
* Disassembly of /tmp/acpidump.28pcDD, Wed Nov 7 16:11:50 2007
*/
DefinitionBlock ("DSDT.aml", "DSDT", 1, "INTELR", "AWRDACPI", 4096)
{
Scope (\_PR)
{
Processor (\_PR.CPU0, 0x00, 0x00000000, 0x00) {}
Processor (\_PR.CPU1, 0x01, 0x00000000, 0x00) {}
}
Name (\_S0, Package (0x04)
{
0x00,
0x00,
0x00,
0x00
})
Name (\_S1, Package (0x04)
{
0x01,
0x00,
0x00,
0x00
})
Name (\_S4, Package (0x04)
{
0x06,
0x00,
0x00,
0x00
})
Name (\_S5, Package (0x04)
{
0x07,
0x00,
0x00,
0x00
})
Name (FLAG, 0x00)
Name (STAT, 0x00)
OperationRegion (\DEBG, SystemIO, 0x80, 0x01)
Field (\DEBG, ByteAcc, NoLock, Preserve)
{
DBG1, 8
}
OperationRegion (EXTM, SystemMemory, 0x000FF830, 0x10)
Field (EXTM, WordAcc, NoLock, Preserve)
{
ROM1, 16,
RMS1, 16,
ROM2, 16,
RMS2, 16,
ROM3, 16,
RMS3, 16,
AMEM, 32
}
OperationRegion (\SMIC, SystemIO, 0xB2, 0x01)
Field (\SMIC, ByteAcc, NoLock, Preserve)
{
SCP, 8
}
OperationRegion (\PM1S, SystemIO, 0x0600, 0x04)
Field (\PM1S, ByteAcc, NoLock, Preserve)
{
PM00, 8,
PM01, 8,
PM02, 8,
PM03, 8
}
OperationRegion (\SPEN, SystemIO, 0x0630, 0x01)
Field (\SPEN, ByteAcc, NoLock, Preserve)
{
, 4,
TRAP, 1
}
OperationRegion (\GBLE, SystemIO, 0x0621, 0x01)
Field (\GBLE, ByteAcc, NoLock, Preserve)
{
ESMI, 8
}
OperationRegion (APMP, SystemIO, 0xB2, 0x02)
Field (APMP, ByteAcc, NoLock, Preserve)
{
APMC, 8,
APMD, 8
}
OperationRegion (\GPO, SystemIO, 0x048E, 0x02)
Field (\GPO, ByteAcc, NoLock, Preserve)
{
GO10, 1,
GO11, 1,
, 1,
, 1,
, 1,
GO15, 1,
GO16, 1,
GO17, 1,
GO18, 1,
GO19, 1,
GO1A, 1,
GO1B, 1,
GO1C, 1
}
OperationRegion (\GPO2, SystemIO, 0x04B8, 0x02)
Field (\GPO2, ByteAcc, NoLock, Preserve)
{
GO20, 1,
GO21, 1,
GO22, 1,
GO23, 1,
GO24, 1,
GO25, 1,
GO26, 1,
GO27, 1,
GO28, 1,
GO29, 1,
GO2A, 1,
GO2B, 1
}
Name (OSFX, 0x01)
Name (OSFL, 0x01)
Method (STRC, 2, NotSerialized)
{
If (LNot (LEqual (SizeOf (Arg0), SizeOf (Arg1))))
{
Return (0x00)
}
Add (SizeOf (Arg0), 0x01, Local0)
Name (BUF0, Buffer (Local0) {})
Name (BUF1, Buffer (Local0) {})
Store (Arg0, BUF0)
Store (Arg1, BUF1)
While (Local0)
{
Decrement (Local0)
If (LNot (LEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (BUF1, Local0)))))
{
Return (Zero)
}
}
Return (One)
}
OperationRegion (RTCM, SystemIO, 0x70, 0x02)
Field (RTCM, ByteAcc, NoLock, Preserve)
{
CMIN, 8,
CMDA, 8
}
IndexField (CMIN, CMDA, ByteAcc, NoLock, Preserve)
{
Offset (0x0F),
SHUT, 8
}
OperationRegion (INFO, SystemMemory, 0x000FF840, 0x01)
Field (INFO, ByteAcc, NoLock, Preserve)
{
KBDI, 1,
RTCW, 1,
PS2F, 1,
IRFL, 2,
DISE, 1,
SSHU, 1
}
OperationRegion (BEEP, SystemIO, 0x61, 0x01)
Field (BEEP, ByteAcc, NoLock, Preserve)
{
S1B, 8
}
OperationRegion (CONT, SystemIO, 0x40, 0x04)
Field (CONT, ByteAcc, NoLock, Preserve)
{
CNT0, 8,
CNT1, 8,
CNT2, 8,
CTRL, 8
}
Method (SPKR, 1, NotSerialized)
{
Store (S1B, Local0)
Store (0xB6, CTRL)
Store (0x55, CNT2)
Store (0x03, CNT2)
Store (Arg0, Local2)
While (LGreater (Local2, 0x00))
{
Or (S1B, 0x03, S1B)
Store (0x5FFF, Local3)
While (LGreater (Local3, 0x00))
{
Decrement (Local3)
}
And (S1B, 0xFC, S1B)
Store (0x0EFF, Local3)
While (LGreater (Local3, 0x00))
{
Decrement (Local3)
}
Decrement (Local2)
}
Store (Local0, S1B)
}
Scope (\)
{
Name (PICF, 0x00)
Method (_PIC, 1, NotSerialized)
{
Store (Arg0, PICF)
}
}
Method (\_PTS, 1, NotSerialized)
{
Or (Arg0, 0xF0, Local0)
Store (Local0, DBG1)
OSTP ()
If (LEqual (Arg0, 0x01))
{
SFAN (Zero)
}
If (LEqual (Arg0, 0x02)) {}
If (LEqual (Arg0, 0x03)) {}
If (LEqual (Arg0, 0x05))
{
Store (ESMI, Local0)
And (Local0, 0xFB, Local0)
Store (Local0, ESMI)
}
If (LEqual (Arg0, 0x04))
{
If (LNot (PICF))
{
Sleep (0x64)
}
}
}
Method (\_WAK, 1, NotSerialized)
{
Store (0xFF, DBG1)
SFAN (0xFF)
Notify (\_SB.PCI0.PX40.UAR1, 0x00)
If (OSFL)
{
Notify (\_SB.PWRB, 0x02)
}
Else
{
If (LEqual (RTCW, 0x00))
{
Notify (\_SB.PWRB, 0x02)
}
}
Notify (\_SB.PCI0.USB0, 0x00)
Notify (\_SB.PCI0.USB1, 0x00)
}
Scope (\_SI)
{
Method (_MSG, 1, NotSerialized)
{
Store (Local0, Local0)
}
Method (_SST, 1, NotSerialized)
{
Store (Local0, Local0)
}
}
Scope (\_GPE)
{
Method (_L05, 0, NotSerialized)
{
Notify (\_SB.PCI0.MODM, 0x02)
}
Method (_L03, 0, NotSerialized)
{
Notify (\_SB.PCI0.USB0, 0x02)
}
Method (_L04, 0, NotSerialized)
{
Notify (\_SB.PCI0.USB1, 0x02)
}
Method (_L0B, 0, NotSerialized)
{
Notify (\_SB.PCI0.HUB0, 0x02)
}
Method (_L08, 0, NotSerialized)
{
Notify (\_SB.PCI0.PX40.UAR1, 0x02)
Notify (\_SB.PCI0.PX40.UAR2, 0x02)
}
Method (_L0D, 0, NotSerialized)
{
Notify (\_SB.PCI0.USBE, 0x02)
}
}
Scope (\_SB)
{
Device (PWRB)
{
Name (_HID, EisaId ("PNP0C0C"))
Method (_STA, 0, NotSerialized)
{
Return (0x0B)
}
}
Device (PCI0)
{
Name (_HID, EisaId ("PNP0A03"))
Name (_ADR, 0x00)
Name (_UID, 0x01)
Name (_BBN, 0x00)
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Method (_CRS, 0, NotSerialized)
{
Name (BUF0, ResourceTemplate ()
{
WordBusNumber (ResourceConsumer, MinNotFixed, MaxNotFixed, PosDecode,
0x0000,
0x0000,
0x00FF,
0x0000,
0x0100)
IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08)
WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
0x0000,
0x0000,
0x0CF7,
0x0000,
0x0CF8)
WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
0x0000,
0x0D00,
0xFFFF,
0x0000,
0xF300)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000,
0x000A0000,
0x000BFFFF,
0x00000000,
0x00020000)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000,
0x000C0000,
0x000DFFFF,
0x00000000,
0x00020000)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000,
0x00100000,
0xFEBFFFFF,
0x00000000,
0xFFF00000)
})
CreateDWordField (BUF0, 0x76, TCMM)
CreateDWordField (BUF0, 0x82, TOMM)
Add (AMEM, 0x00010000, TCMM)
Add (TCMM, 0x00010000, TCMM)
Subtract (0xFEC00000, TCMM, TOMM)
Return (BUF0)
}
Name (PICM, Package (0x17)
{
Package (0x04)
{
0x0002FFFF,
0x00,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x0002FFFF,
0x01,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x0002FFFF,
0x02,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x0002FFFF,
0x03,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x001EFFFF,
0x00,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x001EFFFF,
0x01,
\_SB.PCI0.LNKB,
0x00
},
Package (0x04)
{
0x001EFFFF,
0x02,
\_SB.PCI0.LNKC,
0x00
},
Package (0x04)
{
0x001EFFFF,
0x03,
\_SB.PCI0.LNKD,
0x00
},
Package (0x04)
{
0x0002FFFF,
0x00,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x0002FFFF,
0x01,
\_SB.PCI0.LNKB,
0x00
},
Package (0x04)
{
0x0002FFFF,
0x02,
\_SB.PCI0.LNKC,
0x00
},
Package (0x04)
{
0x0002FFFF,
0x03,
\_SB.PCI0.LNKD,
0x00
},
Package (0x04)
{
0x001FFFFF,
0x02,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x001FFFFF,
0x00,
\_SB.PCI0.LNKC,
0x00
},
Package (0x04)
{
0x001FFFFF,
0x01,
\_SB.PCI0.LNKB,
0x00
},
Package (0x04)
{
0x001DFFFF,
0x00,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x001DFFFF,
0x01,
\_SB.PCI0.LNKD,
0x00
},
Package (0x04)
{
0x001DFFFF,
0x02,
\_SB.PCI0.LNKC,
0x00
},
Package (0x04)
{
0x001DFFFF,
0x03,
\_SB.PCI0.LNK1,
0x00
},
Package (0x04)
{
0x0001FFFF,
0x00,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x0001FFFF,
0x01,
\_SB.PCI0.LNKB,
0x00
},
Package (0x04)
{
0x0001FFFF,
0x02,
\_SB.PCI0.LNKC,
0x00
},
Package (0x04)
{
0x0001FFFF,
0x03,
\_SB.PCI0.LNKD,
0x00
}
})
Name (APIC, Package (0x17)
{
Package (0x04)
{
0x0002FFFF,
0x00,
0x00,
0x10
},
Package (0x04)
{
0x0002FFFF,
0x01,
0x00,
0x10
},
Package (0x04)
{
0x0002FFFF,
0x02,
0x00,
0x10
},
Package (0x04)
{
0x0002FFFF,
0x03,
0x00,
0x10
},
Package (0x04)
{
0x001EFFFF,
0x00,
0x00,
0x10
},
Package (0x04)
{
0x001EFFFF,
0x01,
0x00,
0x11
},
Package (0x04)
{
0x001EFFFF,
0x02,
0x00,
0x12
},
Package (0x04)
{
0x001EFFFF,
0x03,
0x00,
0x13
},
Package (0x04)
{
0x0002FFFF,
0x00,
0x00,
0x10
},
Package (0x04)
{
0x0002FFFF,
0x01,
0x00,
0x11
},
Package (0x04)
{
0x0002FFFF,
0x02,
0x00,
0x12
},
Package (0x04)
{
0x0002FFFF,
0x03,
0x00,
0x13
},
Package (0x04)
{
0x001FFFFF,
0x02,
0x00,
0x10
},
Package (0x04)
{
0x001FFFFF,
0x00,
0x00,
0x12
},
Package (0x04)
{
0x001FFFFF,
0x01,
0x00,
0x11
},
Package (0x04)
{
0x001DFFFF,
0x00,
0x00,
0x10
},
Package (0x04)
{
0x001DFFFF,
0x01,
0x00,
0x13
},
Package (0x04)
{
0x001DFFFF,
0x02,
0x00,
0x12
},
Package (0x04)
{
0x001DFFFF,
0x03,
0x00,
0x17
},
Package (0x04)
{
0x0001FFFF,
0x00,
0x00,
0x10
},
Package (0x04)
{
0x0001FFFF,
0x01,
0x00,
0x11
},
Package (0x04)
{
0x0001FFFF,
0x02,
0x00,
0x12
},
Package (0x04)
{
0x0001FFFF,
0x03,
0x00,
0x13
}
})
Method (_PRT, 0, NotSerialized)
{
If (LNot (PICF))
{
Return (PICM)
}
Else
{
Return (APIC)
}
}
Device (HUB0)
{
Name (_ADR, 0x001E0000)
Method (_STA, 0, NotSerialized)
{
Return (0x0F)
}
Name (PICM, Package (0x18)
{
Package (0x04)
{
0x000FFFFF,
0x00,
\_SB.PCI0.LNKC,
0x00
},
Package (0x04)
{
0x000FFFFF,
0x01,
\_SB.PCI0.LNKD,
0x00
},
Package (0x04)
{
0x000FFFFF,
0x02,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x000FFFFF,
0x03,
\_SB.PCI0.LNKB,
0x00
},
Package (0x04)
{
0x000AFFFF,
0x00,
\_SB.PCI0.LNKC,
0x00
},
Package (0x04)
{
0x000AFFFF,
0x01,
\_SB.PCI0.LNKD,
0x00
},
Package (0x04)
{
0x000AFFFF,
0x02,
\_SB.PCI0.LNKA,
0x00
},
Package (0x04)
{
0x000AFFFF,
0x03,
\_SB.PCI0.LNKB,
0x00
},
Package (0x04)
{
0x0005FFFF,
0x00,
\_SB.PCI0.LNKE,
0x00
},
Package (0x04)
{
0x0005FFFF,
0x01,
\_SB.PCI0.LNKF,
0x00
},
Package (0x04)
{
0x0005FFFF,
0x02,
\_SB.PCI0.LNK0,
0x00
},
Package (0x04)
{
0x0005FFFF,
0x03,
\_SB.PCI0.LNK1,
0x00
},
Package (0x04)
{
0x0006FFFF,
0x00,
\_SB.PCI0.LNKF,
0x00
},
Package (0x04)
{
0x0006FFFF,
0x01,
\_SB.PCI0.LNK0,
0x00
},
Package (0x04)
{
0x0006FFFF,
0x02,
\_SB.PCI0.LNK1,
0x00
},
Package (0x04)
{
0x0006FFFF,
0x03,
\_SB.PCI0.LNKE,
0x00
},
Package (0x04)
{
0x0007FFFF,
0x00,
\_SB.PCI0.LNK0,
0x00
},
Package (0x04)
{
0x0007FFFF,
0x01,
\_SB.PCI0.LNK1,
0x00
},
Package (0x04)
{
0x0007FFFF,
0x02,
\_SB.PCI0.LNKE,
0x00
},
Package (0x04)
{
0x0007FFFF,
0x03,
\_SB.PCI0.LNKF,
0x00
},
Package (0x04)
{
0x0009FFFF,
0x00,
\_SB.PCI0.LNK1,
0x00
},
Package (0x04)
{
0x0009FFFF,
0x01,
\_SB.PCI0.LNKE,
0x00
},
Package (0x04)
{
0x0009FFFF,
0x02,
\_SB.PCI0.LNKF,
0x00
},
Package (0x04)
{
0x0009FFFF,
0x03,
\_SB.PCI0.LNK0,
0x00
}
})
Name (APIC, Package (0x18)
{
Package (0x04)
{
0x000FFFFF,
0x00,
0x00,
0x12
},
Package (0x04)
{
0x000FFFFF,
0x01,
0x00,
0x13
},
Package (0x04)
{
0x000FFFFF,
0x02,
0x00,
0x10
},
Package (0x04)
{
0x000FFFFF,
0x03,
0x00,
0x11
},
Package (0x04)
{
0x000AFFFF,
0x00,
0x00,
0x12
},
Package (0x04)
{
0x000AFFFF,
0x01,
0x00,
0x13
},
Package (0x04)
{
0x000AFFFF,
0x02,
0x00,
0x10
},
Package (0x04)
{
0x000AFFFF,
0x03,
0x00,
0x11
},
Package (0x04)
{
0x0005FFFF,
0x00,
0x00,
0x14
},
Package (0x04)
{
0x0005FFFF,
0x01,
0x00,
0x15
},
Package (0x04)
{
0x0005FFFF,
0x02,
0x00,
0x16
},
Package (0x04)
{
0x0005FFFF,
0x03,
0x00,
0x17
},
Package (0x04)
{
0x0006FFFF,
0x00,
0x00,
0x15
},
Package (0x04)
{
0x0006FFFF,
0x01,
0x00,
0x16
},
Package (0x04)
{
0x0006FFFF,
0x02,
0x00,
0x17
},
Package (0x04)
{
0x0006FFFF,
0x03,
0x00,
0x14
},
Package (0x04)
{
0x0007FFFF,
0x00,
0x00,
0x16
},
Package (0x04)
{
0x0007FFFF,
0x01,
0x00,
0x17
},
Package (0x04)
{
0x0007FFFF,
0x02,
0x00,
0x14
},
Package (0x04)
{
0x0007FFFF,
0x03,
0x00,
0x15
},
Package (0x04)
{
0x0009FFFF,
0x00,
0x00,
0x17
},
Package (0x04)
{
0x0009FFFF,
0x01,
0x00,
0x14
},
Package (0x04)
{
0x0009FFFF,
0x02,
0x00,
0x15
},
Package (0x04)
{
0x0009FFFF,
0x03,
0x00,
0x16
}
})
Method (_PRT, 0, NotSerialized)
{
If (LNot (PICF))
{
Return (PICM)
}
Else
{
Return (APIC)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0B,
0x05
})
}
}
Device (PX40)
{
Name (_ADR, 0x001F0000)
OperationRegion (PREV, PCI_Config, 0x08, 0x01)
Scope (\)
{
Field (\_SB.PCI0.PX40.PREV, ByteAcc, NoLock, Preserve)
{
REV0, 8
}
}
OperationRegion (PIRQ, PCI_Config, 0x60, 0x04)
Scope (\)
{
Field (\_SB.PCI0.PX40.PIRQ, ByteAcc, NoLock, Preserve)
{
PIRA, 8,
PIRB, 8,
PIRC, 8,
PIRD, 8
}
}
OperationRegion (PIR2, PCI_Config, 0x68, 0x04)
Scope (\)
{
Field (\_SB.PCI0.PX40.PIR2, ByteAcc, NoLock, Preserve)
{
PIRE, 8,
PIRF, 8,
PIRG, 8,
PIRH, 8
}
}
OperationRegion (LPIO, PCI_Config, 0xE0, 0x0E)
Scope (\)
{
Field (\_SB.PCI0.PX40.LPIO, ByteAcc, NoLock, Preserve)
{
UAIO, 8,
PRIO, 8,
SNDD, 8,
FWHD, 8,
GN1L, 8,
GN1H, 8,
LPE1, 8,
LPE2, 8,
Offset (0x0C),
GN2L, 8,
GN2H, 8
}
Method (DISD, 1, NotSerialized)
{
If (LEqual (Arg0, 0x00))
{
And (LPE1, 0xFE, LPE1)
}
If (LEqual (Arg0, 0x01))
{
And (LPE1, 0xFD, LPE1)
}
If (LEqual (Arg0, 0x02))
{
And (LPE1, 0xFB, LPE1)
}
If (LEqual (Arg0, 0x03))
{
And (LPE1, 0xF7, LPE1)
}
If (LEqual (Arg0, 0x04))
{
And (LPE2, 0xFC, LPE2)
}
If (LEqual (Arg0, 0x05))
{
And (LPE1, 0xDF, LPE1)
}
If (LEqual (Arg0, 0x06))
{
And (GN2L, 0xFE, GN2L)
}
}
Method (CKIO, 2, NotSerialized)
{
If (LEqual (Arg1, 0x00))
{
Or (LPE1, 0x01, LPE1)
And (UAIO, 0xF0, Local0)
If (LEqual (Arg0, 0x03F8))
{
Or (Local0, 0x00, UAIO)
}
If (LEqual (Arg0, 0x02F8))
{
Or (Local0, 0x01, UAIO)
}
If (LEqual (Arg0, 0x02E8))
{
Or (Local0, 0x05, UAIO)
}
If (LEqual (Arg0, 0x03E8))
{
Or (Local0, 0x07, UAIO)
}
}
If (LEqual (Arg1, 0x01))
{
Or (LPE1, 0x02, LPE1)
And (UAIO, 0x0F, Local0)
If (LEqual (Arg0, 0x03F8))
{
Or (Local0, 0x00, UAIO)
}
If (LEqual (Arg0, 0x02F8))
{
Or (Local0, 0x10, UAIO)
}
If (LEqual (Arg0, 0x02E8))
{
Or (Local0, 0x50, UAIO)
}
If (LEqual (Arg0, 0x03E8))
{
Or (Local0, 0x70, UAIO)
}
}
If (LEqual (Arg1, 0x02))
{
Or (LPE1, 0x04, LPE1)
And (PRIO, 0xFC, Local0)
If (LEqual (Arg0, 0x0378))
{
Or (Local0, 0x00, PRIO)
}
If (LEqual (Arg0, 0x0278))
{
Or (Local0, 0x01, PRIO)
}
If (LEqual (Arg0, 0x03BC))
{
Or (Local0, 0x02, PRIO)
}
}
If (LEqual (Arg1, 0x03))
{
Or (LPE1, 0x08, LPE1)
}
If (LEqual (Arg1, 0x04))
{
If (LEqual (Arg0, 0x0201))
{
Or (LPE2, 0x01, LPE2)
}
If (LEqual (Arg0, 0x0209))
{
Or (LPE2, 0x02, LPE2)
}
}
If (LEqual (Arg1, 0x05))
{
Or (LPE1, 0x20, LPE1)
If (LEqual (Arg0, 0x0300))
{
Or (SNDD, 0x08, SNDD)
}
If (LEqual (Arg0, 0x0330))
{
And (SNDD, 0xF7, SNDD)
}
}
If (LEqual (Arg1, 0x06))
{
If (LNot (LEqual (Arg0, 0xFFFF)))
{
And (Arg0, 0xFF, Local0)
Or (Local0, 0x01, GN2L)
ShiftRight (Arg0, 0x08, GN2H)
}
Else
{
Store (Zero, GN2H)
Store (Zero, GN2L)
}
}
}
}
OperationRegion (LPDM, PCI_Config, 0x90, 0x02)
Scope (\)
{
Field (\_SB.PCI0.PX40.LPDM, ByteAcc, NoLock, Preserve)
{
LDM0, 8,
LDM1, 8
}
Method (SLDM, 2, NotSerialized)
{
If (LEqual (Arg0, 0x00))
{
And (LDM0, 0xFC, Local0)
Or (Local0, 0x01, LDM0)
}
If (LEqual (Arg0, 0x01))
{
And (LDM0, 0xF3, Local0)
Or (Local0, 0x04, LDM0)
}
If (LEqual (Arg0, 0x02))
{
And (LDM0, 0xCF, Local0)
Or (Local0, 0x10, LDM0)
}
If (LEqual (Arg0, 0x03))
{
And (LDM0, 0x3F, Local0)
Or (Local0, 0x40, LDM0)
}
If (LEqual (Arg1, 0x00))
{
And (LDM0, 0xFC, Local0)
Or (Local0, 0x03, LDM0)
}
If (LEqual (Arg1, 0x01))
{
And (LDM0, 0xF3, Local0)
Or (Local0, 0x0C, LDM0)
}
If (LEqual (Arg1, 0x02))
{
And (LDM0, 0xCF, Local0)
Or (Local0, 0x30, LDM0)
}
If (LEqual (Arg1, 0x03))
{
And (LDM0, 0x3F, Local0)
Or (Local0, 0xC0, LDM0)
}
}
}
Scope (\)
{
OperationRegion (\SCPP, SystemIO, 0xB2, 0x01)
Field (\SCPP, ByteAcc, NoLock, Preserve)
{
SMIP, 8
}
}
Method (\_SB.PCI0._INI, 0, NotSerialized)
{
If (STRC (\_OS, "Microsoft Windows"))
{
Store (0x56, SMIP)
}
Else
{
If (STRC (\_OS, "Microsoft Windows NT"))
{
Store (0x58, SMIP)
Store (0x00, OSFX)
Store (0x00, OSFL)
}
Else
{
Store (0x57, SMIP)
Store (0x02, OSFX)
Store (0x02, OSFL)
}
}
}
Scope (\)
{
Method (OSTP, 0, NotSerialized)
{
If (LEqual (OSFX, 0x01))
{
Store (0x56, SMIP)
}
If (LEqual (OSFX, 0x02))
{
Store (0x57, SMIP)
}
If (LEqual (OSFX, 0x00))
{
Store (0x58, SMIP)
}
}
}
Device (SYSR)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, 0x01)
Name (_CRS, ResourceTemplate ()
{
IO (Decode16, 0x0010, 0x0010, 0x01, 0x10)
IO (Decode16, 0x0022, 0x0022, 0x01, 0x1E)
IO (Decode16, 0x0044, 0x0044, 0x01, 0x1C)
IO (Decode16, 0x0062, 0x0062, 0x01, 0x02)
IO (Decode16, 0x0065, 0x0065, 0x01, 0x0B)
IO (Decode16, 0x0074, 0x0074, 0x01, 0x0C)
IO (Decode16, 0x0091, 0x0091, 0x01, 0x03)
IO (Decode16, 0x00A2, 0x00A2, 0x01, 0x1E)
IO (Decode16, 0x00E0, 0x00E0, 0x01, 0x10)
IO (Decode16, 0x04D0, 0x04D0, 0x01, 0x02)
})
}
Device (PIC)
{
Name (_HID, EisaId ("PNP0000"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16, 0x0020, 0x0020, 0x01, 0x02)
IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02)
IRQNoFlags () {2}
})
}
Device (DMA1)
{
Name (_HID, EisaId ("PNP0200"))
Name (_CRS, ResourceTemplate ()
{
DMA (Compatibility, BusMaster, Transfer8) {4}
IO (Decode16, 0x0000, 0x0000, 0x01, 0x10)
IO (Decode16, 0x0080, 0x0080, 0x01, 0x11)
IO (Decode16, 0x0094, 0x0094, 0x01, 0x0C)
IO (Decode16, 0x00C0, 0x00C0, 0x01, 0x20)
})
}
Device (TMR)
{
Name (_HID, EisaId ("PNP0100"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16, 0x0040, 0x0040, 0x01, 0x04)
IRQNoFlags () {0}
})
}
Device (RTC)
{
Name (_HID, EisaId ("PNP0B00"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16, 0x0070, 0x0070, 0x04, 0x04)
IRQNoFlags () {8}
})
}
Device (SPKR)
{
Name (_HID, EisaId ("PNP0800"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16, 0x0061, 0x0061, 0x01, 0x01)
})
}
Device (COPR)
{
Name (_HID, EisaId ("PNP0C04"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16, 0x00F0, 0x00F0, 0x01, 0x10)
IRQNoFlags () {13}
})
}
Scope (\)
{
OperationRegion (WIN1, SystemIO, 0x2E, 0x02)
Field (WIN1, ByteAcc, NoLock, Preserve)
{
INDP, 8,
DATA, 8
}
IndexField (INDP, DATA, ByteAcc, NoLock, Preserve)
{
Offset (0x02),
CFG, 8,
Offset (0x07),
LDN, 8,
Offset (0x20),
IDHI, 8,
IDLO, 8,
POWC, 8,
Offset (0x30),
ACTR, 8,
Offset (0x60),
IOAH, 8,
IOAL, 8,
IO2H, 8,
IO2L, 8,
Offset (0x70),
INTR, 8,
Offset (0x72),
INT1, 8,
Offset (0x74),
DMCH, 8,
Offset (0xE0),
CRE0, 8,
CRE1, 8,
CRE2, 8,
CRE3, 8,
CRE4, 8,
Offset (0xF0),
OPT1, 8,
OPT2, 8,
OPT3, 8,
OPT4, 8,
OPT5, 8,
OPT6, 8,
OPT7, 8,
OPT8, 8,
OPT9, 8,
OPTA, 8
}
Method (ENFG, 0, NotSerialized)
{
Store (0x87, INDP)
Store (0x87, INDP)
}
Method (EXFG, 0, NotSerialized)
{
Store (0xAA, INDP)
}
}
OperationRegion (COM1, SystemIO, 0x03F8, 0x08)
Field (COM1, ByteAcc, NoLock, Preserve)
{
P3F8, 8,
P3F9, 8,
P3FA, 8,
P3FB, 8,
P3FC, 8,
P3FD, 8,
P3FE, 8,
P3FF, 8
}
OperationRegion (COM2, SystemIO, 0x02F8, 0x08)
Field (COM2, ByteAcc, NoLock, Preserve)
{
P2F8, 8,
P2F9, 8,
P2FA, 8,
P2FB, 8,
P2FC, 8,
P2FD, 8,
P2FE, 8,
P2FF, 8
}
OperationRegion (COM3, SystemIO, 0x03E8, 0x08)
Field (COM3, ByteAcc, NoLock, Preserve)
{
P3E8, 8,
P3E9, 8,
P3EA, 8,
P3EB, 8,
P3EC, 8,
P3ED, 8,
P3EE, 8,
P3EF, 8
}
OperationRegion (COM4, SystemIO, 0x02E8, 0x08)
Field (COM4, ByteAcc, NoLock, Preserve)
{
P2E8, 8,
P2E9, 8,
P2EA, 8,
P2EB, 8,
P2EC, 8,
P2ED, 8,
P2EE, 8,
P2EF, 8
}
Method (ICOM, 1, NotSerialized)
{
Store (Arg0, Local0)
If (LEqual (Local0, 0x03F8))
{
Store (P3FD, Local0)
Store (P3FD, Local0)
Store (0xC3, P3FA)
While (LNot (LEqual (P3FA, 0xC1)))
{
Store (P3FE, Local0)
}
}
Else
{
If (LEqual (Local0, 0x02F8))
{
Store (P2FD, Local0)
Store (P2FD, Local0)
Store (0xC3, P2FA)
While (LNot (LEqual (P2FA, 0xC1)))
{
Store (P2FE, Local0)
}
}
Else
{
If (LEqual (Local0, 0x03E8))
{
Store (P3ED, Local0)
Store (P3ED, Local0)
Store (0xC3, P3EA)
While (LNot (LEqual (P3EA, 0xC1)))
{
Store (P3EE, Local0)
}
}
Else
{
If (LEqual (Local0, 0x02E8))
{
Store (P2ED, Local0)
Store (P2ED, Local0)
Store (0xC3, P2EA)
While (LNot (LEqual (P2EA, 0xC1)))
{
Store (P2EE, Local0)
}
}
}
}
}
}
Device (UAR1)
{
Name (_HID, EisaId ("PNP0501"))
Name (_UID, 0x01)
Method (_STA, 0, NotSerialized)
{
ENFG ()
Store (0x02, LDN)
If (ACTR)
{
EXFG ()
Return (0x0F)
}
Else
{
If (LOr (IOAH, IOAL))
{
EXFG ()
Return (0x0D)
}
Else
{
EXFG ()
Return (0x00)
}
}
EXFG ()
}
Method (_DIS, 0, NotSerialized)
{
ENFG ()
Store (0x02, LDN)
Store (Zero, ACTR)
EXFG ()
DISD (0x00)
}
Method (_CRS, 0, NotSerialized)
{
Name (BUF1, ResourceTemplate ()
{
IO (Decode16, 0x0000, 0x0000, 0x01, 0x08)
IRQNoFlags () {}
})
CreateByteField (BUF1, 0x02, IOLO)
CreateByteField (BUF1, 0x03, IOHI)
CreateByteField (BUF1, 0x04, IORL)
CreateByteField (BUF1, 0x05, IORH)
CreateWordField (BUF1, 0x09, IRQW)
ENFG ()
Store (0x02, LDN)
Store (IOAL, IOLO)
Store (IOAL, IORL)
Store (IOAH, IOHI)
Store (IOAH, IORH)
Store (One, Local0)
ShiftLeft (Local0, INTR, IRQW)
EXFG ()
Return (BUF1)
}
Name (_PRS, ResourceTemplate ()
{
StartDependentFnNoPri ()
{
IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
EndDependentFn ()
})
Method (_SRS, 1, NotSerialized)
{
CreateByteField (Arg0, 0x02, IOLO)
CreateByteField (Arg0, 0x03, IOHI)
CreateWordField (Arg0, 0x02, IOAD)
CreateWordField (Arg0, 0x09, IRQW)
ENFG ()
Store (0x02, LDN)
Store (One, ACTR)
Store (IOLO, IOAL)
Store (IOHI, IOAH)
FindSetRightBit (IRQW, Local0)
Subtract (Local0, 0x01, INTR)
EXFG ()
CKIO (IOAD, 0x00)
}
}
Device (UAR2)
{
Name (_HID, EisaId ("PNP0501"))
Name (_UID, 0x02)
Method (_STA, 0, NotSerialized)
{
ENFG ()
Store (0x03, LDN)
And (OPT2, 0x30, Local0)
If (LNot (LEqual (Local0, 0x10)))
{
If (ACTR)
{
EXFG ()
Return (0x0F)
}
Else
{
If (LOr (IOAH, IOAL))
{
EXFG ()
Return (0x0D)
}
Else
{
EXFG ()
Return (0x00)
}
}
}
Else
{
EXFG ()
Return (0x00)
}
}
Method (_DIS, 0, NotSerialized)
{
ENFG ()
Store (0x03, LDN)
And (OPT2, 0x38, Local0)
If (LEqual (Local0, 0x00))
{
Store (Zero, ACTR)
}
EXFG ()
DISD (0x01)
}
Method (_CRS, 0, NotSerialized)
{
Name (BUF2, ResourceTemplate ()
{
IO (Decode16, 0x0000, 0x0000, 0x01, 0x08)
IRQNoFlags () {4}
})
CreateByteField (BUF2, 0x02, IOLO)
CreateByteField (BUF2, 0x03, IOHI)
CreateByteField (BUF2, 0x04, IORL)
CreateByteField (BUF2, 0x05, IORH)
CreateWordField (BUF2, 0x09, IRQW)
ENFG ()
Store (0x03, LDN)
Store (IOAL, IOLO)
Store (IOAL, IORL)
Store (IOAH, IOHI)
Store (IOAH, IORH)
Store (One, Local0)
ShiftLeft (Local0, INTR, IRQW)
EXFG ()
Return (BUF2)
}
Name (_PRS, ResourceTemplate ()
{
StartDependentFnNoPri ()
{
IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
EndDependentFn ()
})
Method (_SRS, 1, NotSerialized)
{
CreateByteField (Arg0, 0x02, IOLO)
CreateByteField (Arg0, 0x03, IOHI)
CreateWordField (Arg0, 0x02, IOAD)
CreateWordField (Arg0, 0x09, IRQW)
ENFG ()
Store (0x03, LDN)
Store (One, ACTR)
Store (IOLO, IOAL)
Store (IOHI, IOAH)
FindSetRightBit (IRQW, Local0)
Subtract (Local0, 0x01, INTR)
EXFG ()
CKIO (IOAD, 0x01)
}
}
Device (IRDA)
{
Name (_HID, EisaId ("PNP0510"))
Method (_STA, 0, NotSerialized)
{
ENFG ()
Store (0x03, LDN)
And (OPT2, 0x30, Local0)
If (LEqual (Local0, 0x10))
{
If (ACTR)
{
EXFG ()
Return (0x0F)
}
Else
{
If (LOr (IOAH, IOAL))
{
EXFG ()
Return (0x0D)
}
Else
{
EXFG ()
Return (0x00)
}
}
}
Else
{
EXFG ()
Return (0x00)
}
}
Method (_DIS, 0, NotSerialized)
{
If (LEqual (DISE, 0x01))
{
ENFG ()
Store (0x03, LDN)
And (OPT2, 0x38, Local0)
If (LNot (LEqual (Local0, 0x00)))
{
Store (Zero, ACTR)
}
EXFG ()
DISD (0x01)
}
Store (Local0, Local0)
}
Method (_CRS, 0, NotSerialized)
{
Name (BUF4, ResourceTemplate ()
{
IO (Decode16, 0x0000, 0x0000, 0x01, 0x08)
IRQNoFlags () {}
})
CreateByteField (BUF4, 0x02, IOLO)
CreateByteField (BUF4, 0x03, IOHI)
CreateByteField (BUF4, 0x04, IORL)
CreateByteField (BUF4, 0x05, IORH)
CreateWordField (BUF4, 0x09, IRQW)
ENFG ()
Store (0x03, LDN)
Store (IOAL, IOLO)
Store (IOAL, IORL)
Store (IOAH, IOHI)
Store (IOAH, IORH)
ShiftLeft (0x01, INTR, IRQW)
EXFG ()
Return (BUF4)
}
Name (_PRS, ResourceTemplate ()
{
StartDependentFnNoPri ()
{
IO (Decode16, 0x03F8, 0x03F8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x02F8, 0x02F8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x03E8, 0x03E8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x02E8, 0x02E8, 0x01, 0x08)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
EndDependentFn ()
})
Method (_SRS, 1, NotSerialized)
{
CreateByteField (Arg0, 0x02, IOLO)
CreateByteField (Arg0, 0x03, IOHI)
CreateWordField (Arg0, 0x02, IOAD)
CreateWordField (Arg0, 0x09, IRQW)
ENFG ()
Store (0x03, LDN)
Store (One, ACTR)
Store (IOLO, IOAL)
Store (IOHI, IOAH)
FindSetRightBit (IRQW, Local0)
Subtract (Local0, 0x01, INTR)
EXFG ()
CKIO (IOAD, 0x01)
}
}
Device (LPT1)
{
Name (_HID, EisaId ("PNP0400"))
Method (_STA, 0, NotSerialized)
{
ENFG ()
Store (0x01, LDN)
And (OPT1, 0x02, Local0)
If (LNot (LEqual (Local0, 0x02)))
{
If (ACTR)
{
EXFG ()
Return (0x0F)
}
Else
{
If (LOr (IOAH, IOAL))
{
EXFG ()
Return (0x0D)
}
Else
{
EXFG ()
Return (0x00)
}
}
}
Else
{
EXFG ()
Return (0x00)
}
}
Method (_DIS, 0, NotSerialized)
{
ENFG ()
Store (0x01, LDN)
Store (Zero, ACTR)
EXFG ()
DISD (0x02)
}
Method (_CRS, 0, NotSerialized)
{
Name (BUF5, ResourceTemplate ()
{
IO (Decode16, 0x0000, 0x0000, 0x01, 0x08)
IO (Decode16, 0x0000, 0x0000, 0x01, 0x04)
IRQNoFlags () {}
})
CreateByteField (BUF5, 0x02, IOLO)
CreateByteField (BUF5, 0x03, IOHI)
CreateByteField (BUF5, 0x04, IORL)
CreateByteField (BUF5, 0x05, IORH)
CreateByteField (BUF5, 0x07, IOLE)
CreateByteField (BUF5, 0x0A, IO21)
CreateByteField (BUF5, 0x0B, IO22)
CreateByteField (BUF5, 0x0C, IO23)
CreateByteField (BUF5, 0x0D, IO24)
CreateWordField (BUF5, 0x11, IRQW)
ENFG ()
Store (0x01, LDN)
Store (IOAL, IOLO)
Store (IOLO, IORL)
Store (IOAH, IOHI)
Store (IOHI, IORH)
Store (IOAL, IO21)
Store (IOAL, IO23)
Add (IOAH, 0x04, IO22)
Add (IOAH, 0x04, IO24)
If (LEqual (IOLO, 0xBC))
{
Store (0x04, IOLE)
}
Else
{
Store (0x08, IOLE)
}
Store (One, Local0)
Store (INTR, Local5)
ShiftLeft (Local0, Local5, IRQW)
Store (One, ACTR)
EXFG ()
Return (BUF5)
}
Name (_PRS, ResourceTemplate ()
{
StartDependentFnNoPri ()
{
IO (Decode16, 0x0378, 0x0378, 0x01, 0x08)
IO (Decode16, 0x0778, 0x0778, 0x01, 0x04)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x0278, 0x0278, 0x01, 0x08)
IO (Decode16, 0x0678, 0x0678, 0x01, 0x04)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x04)
IO (Decode16, 0x07BC, 0x07BC, 0x01, 0x04)
IRQNoFlags () {3,4,5,7,9,10,11,12}
}
EndDependentFn ()
})
Method (_SRS, 1, NotSerialized)
{
CreateByteField (Arg0, 0x02, IOLO)
CreateByteField (Arg0, 0x03, IOHI)
CreateWordField (Arg0, 0x02, IOAD)
CreateByteField (Arg0, 0x04, IORL)
CreateByteField (Arg0, 0x05, IORH)
CreateWordField (Arg0, 0x11, IRQW)
ENFG ()
Store (0x01, LDN)
Store (One, ACTR)
Store (IOLO, IOAL)
Store (IOHI, IOAH)
FindSetLeftBit (IRQW, Local0)
Subtract (Local0, 0x01, Local0)
Store (Local0, INTR)
EXFG ()
CKIO (IOAD, 0x02)
}
}
Device (ECP1)
{
Name (_HID, EisaId ("PNP0401"))
Method (_STA, 0, NotSerialized)
{
ENFG ()
Store (0x01, LDN)
And (OPT1, 0x02, Local0)
If (LEqual (Local0, 0x02))
{
If (ACTR)
{
EXFG ()
Return (0x0F)
}
Else
{
If (LOr (IOAH, IOAL))
{
EXFG ()
Return (0x0D)
}
Else
{
EXFG ()
Return (0x00)
}
}
}
Else
{
EXFG ()
Return (0x00)
}
}
Method (_DIS, 0, NotSerialized)
{
ENFG ()
Store (0x01, LDN)
Store (Zero, ACTR)
SLDM (DMCH, 0x04)
EXFG ()
DISD (0x02)
}
Method (_CRS, 0, NotSerialized)
{
Name (BUF6, ResourceTemplate ()
{
IO (Decode16, 0x0000, 0x0000, 0x01, 0x08)
IO (Decode16, 0x0000, 0x0000, 0x01, 0x04)
IRQNoFlags () {}
DMA (Compatibility, NotBusMaster, Transfer8) {}
})
CreateByteField (BUF6, 0x02, IOLO)
CreateByteField (BUF6, 0x03, IOHI)
CreateByteField (BUF6, 0x04, IORL)
CreateByteField (BUF6, 0x05, IORH)
CreateByteField (BUF6, 0x0A, IOEL)
CreateByteField (BUF6, 0x0B, IOEH)
CreateByteField (BUF6, 0x0C, IOML)
CreateByteField (BUF6, 0x0D, IOMH)
CreateByteField (BUF6, 0x07, IOLE)
CreateWordField (BUF6, 0x11, IRQW)
CreateByteField (BUF6, 0x14, DMAC)
ENFG ()
Store (0x01, LDN)
Store (One, ACTR)
Store (IOAL, Local2)
Store (Local2, IOLO)
Store (IOAH, Local3)
Store (Local3, IOHI)
Or (Local3, 0x04, Local3)
Store (Local3, IOEH)
Store (Local3, IOMH)
Store (IOLO, IORL)
Store (IOLO, IOEL)
Store (IOLO, IOML)
Store (IOHI, IORH)
If (LEqual (IOLO, 0xBC))
{
Store (0x04, IOLE)
}
Else
{
Store (0x08, IOLE)
}
Store (One, Local0)
Store (INTR, Local5)
ShiftLeft (Local0, Local5, IRQW)
Store (One, Local0)
Store (DMCH, Local5)
ShiftLeft (Local0, Local5, DMAC)
EXFG ()
Return (BUF6)
}
Name (_PRS, ResourceTemplate ()
{
StartDependentFnNoPri ()
{
IO (Decode16, 0x0378, 0x0378, 0x01, 0x08)
IO (Decode16, 0x0778, 0x0778, 0x01, 0x04)
IRQNoFlags () {3,4,5,7,9,10,11,12}
DMA (Compatibility, NotBusMaster, Transfer8) {0,1,3}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x0278, 0x0278, 0x01, 0x08)
IO (Decode16, 0x0678, 0x0678, 0x01, 0x04)
IRQNoFlags () {3,4,5,7,9,10,11,12}
DMA (Compatibility, NotBusMaster, Transfer8) {0,1,3}
}
StartDependentFnNoPri ()
{
IO (Decode16, 0x03BC, 0x03BC, 0x01, 0x04)
IO (Decode16, 0x07BC, 0x07BC, 0x01, 0x04)
IRQNoFlags () {3,4,5,7,9,10,11,12}
DMA (Compatibility, NotBusMaster, Transfer8) {0,1,3}
}
EndDependentFn ()
})
Method (_SRS, 1, NotSerialized)
{
CreateByteField (Arg0, 0x02, IOLO)
CreateByteField (Arg0, 0x03, IOHI)
CreateWordField (Arg0, 0x02, IOAD)
CreateWordField (Arg0, 0x11, IRQW)
CreateByteField (Arg0, 0x14, DMAC)
ENFG ()
Store (0x01, LDN)
Store (One, ACTR)
Store (IOLO, IOAL)
Store (IOHI, IOAH)
FindSetLeftBit (IRQW, Local0)
Subtract (Local0, 0x01, Local0)
Store (Local0, INTR)
FindSetLeftBit (DMAC, Local1)
Store (DMCH, Local0)
Subtract (Local1, 0x01, DMCH)
SLDM (Local0, DMCH)
EXFG ()
CKIO (IOAD, 0x02)
}
}
OperationRegion (KBCT, SystemIO, 0x60, 0x05)
Field (KBCT, ByteAcc, NoLock, Preserve)
{
P060, 8,
Offset (0x04),
P064, 8
}
Device (PS2M)
{
Name (_HID, EisaId ("PNP0F13"))
Method (_STA, 0, NotSerialized)
{
If (LEqual (PS2F, 0x00))
{
Return (0x0F)
}
Else
{
Return (0x00)
}
}
Method (_CRS, 0, NotSerialized)
{
Name (BUF1, ResourceTemplate ()
{
IRQNoFlags () {12}
})
Name (BUF2, ResourceTemplate ()
{
IO (Decode16, 0x0060, 0x0060, 0x01, 0x01)
IO (Decode16, 0x0064, 0x0064, 0x01, 0x01)
IRQNoFlags () {12}
})
If (LEqual (KBDI, 0x01))
{
If (LEqual (OSFL, 0x02))
{
Return (BUF1)
}
If (LEqual (OSFL, 0x01))
{
Return (BUF1)
}
Else
{
Return (BUF2)
}
}
Else
{
Return (BUF1)
}
}
}
Device (PS2K)
{
Name (_HID, EisaId ("PNP0303"))
Name (_CID, 0x0B03D041)
Method (_STA, 0, NotSerialized)
{
If (LEqual (KBDI, 0x01))
{
Return (0x00)
}
Else
{
Return (0x0F)
}
}
Name (_CRS, ResourceTemplate ()
{
IO (Decode16, 0x0060, 0x0060, 0x01, 0x01)
IO (Decode16, 0x0064, 0x0064, 0x01, 0x01)
IRQNoFlags () {1}
})
}
Device (PSMR)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, 0x03)
Method (_STA, 0, NotSerialized)
{
If (LEqual (KBDI, 0x00))
{
Return (0x00)
}
If (LEqual (PS2F, 0x00))
{
If (LEqual (OSFL, 0x02))
{
Return (0x0F)
}
If (LEqual (OSFL, 0x01))
{
Return (0x0F)
}
Return (0x00)
}
Return (0x00)
}
Name (_CRS, ResourceTemplate ()
{
IO (Decode16, 0x0060, 0x0060, 0x01, 0x01)
IO (Decode16, 0x0064, 0x0064, 0x01, 0x01)
})
}
Scope (\)
{
Method (SLED, 1, NotSerialized)
{
ENFG ()
Store (0x09, LDN)
And (OPT4, 0x3F, Local0)
Or (Local0, Arg0, OPT4)
EXFG ()
}
}
Device (PMIO)
{
Name (_HID, EisaId ("PNP0C02"))
Name (_UID, 0x02)
Method (_CRS, 0, NotSerialized)
{
Name (BUF0, ResourceTemplate ()
{
IO (Decode16, 0x0600, 0x0600, 0x01, 0xC0)
})
Return (BUF0)
}
}
}
Device (USB0)
{
Name (_ADR, 0x001D0000)
Name (_PRW, Package (0x02)
{
0x03,
0x01
})
}
Device (USB1)
{
Name (_ADR, 0x001D0001)
Name (_PRW, Package (0x02)
{
0x04,
0x01
})
}
Device (USBE)
{
Name (_ADR, 0x001D0007)
Name (_PRW, Package (0x02)
{
0x0D,
0x01
})
}
Device (ICHX)
{
Name (_ADR, 0x001F0001)
OperationRegion (PCI, PCI_Config, 0x40, 0x20)
Field (PCI, DWordAcc, NoLock, Preserve)
{
ITM0, 16,
ITM1, 16,
SIT0, 4,
SIT1, 4,
Offset (0x08),
UDC0, 2,
UDC1, 2,
Offset (0x0A),
UDT0, 8,
UDT1, 8,
Offset (0x14),
ICF0, 2,
ICF1, 2,
, 6,
WPPE, 1,
, 1,
FAS0, 2,
FAS1, 2
}
Method (GTM, 6, NotSerialized)
{
Store (Buffer (0x14) {}, Local0)
CreateDWordField (Local0, 0x00, PIO0)
CreateDWordField (Local0, 0x04, DMA0)
CreateDWordField (Local0, 0x08, PIO1)
CreateDWordField (Local0, 0x0C, DMA1)
CreateDWordField (Local0, 0x10, FLAG)
Store (0x10, FLAG)
If (LOr (And (Arg0, 0x08), LNot (And (Arg0, 0x01))))
{
Store (0x0384, PIO0)
}
Else
{
Add (ShiftRight (And (Arg0, 0x0300), 0x08), ShiftRight (And (Arg0, 0x3000), 0x0C), Local1)
Multiply (Subtract (0x09, Local1), 0x1E, PIO0)
}
If (LOr (LAnd (Arg0, 0x4000), LAnd (Arg2, 0x01)))
{
If (LOr (And (Arg0, 0x80), LNot (And (Arg0, 0x10))))
{
Store (0x0384, PIO1)
}
Else
{
Add (And (Arg1, 0x03), ShiftRight (And (Arg1, 0x0C), 0x02), Local1)
Multiply (Subtract (0x09, Local1), 0x1E, PIO1)
}
}
Else
{
Store (PIO0, PIO1)
}
If (And (Arg2, 0x01))
{
Subtract (0x04, And (Arg3, 0x03), Local1)
If (And (Arg5, 0x01))
{
Store (0x14, DMA0)
}
Else
{
If (And (Arg4, 0x01))
{
Multiply (Local1, 0x0F, DMA0)
}
Else
{
Multiply (Local1, 0x1E, DMA0)
}
}
}
Else
{
Store (PIO0, DMA0)
}
If (LOr (LAnd (Arg0, 0x4000), LAnd (Arg2, 0x01)))
{
If (And (Arg2, 0x02))
{
Subtract (0x04, ShiftRight (And (Arg3, 0x30), 0x04), Local1)
If (And (Arg5, 0x02))
{
Store (0x14, DMA1)
}
Else
{
If (And (Arg4, 0x02))
{
Multiply (Local1, 0x0F, DMA1)
}
Else
{
Multiply (Local1, 0x1E, DMA1)
}
}
}
Else
{
Store (PIO1, DMA1)
}
}
Else
{
Store (DMA0, DMA1)
}
Store (Zero, FLAG)
If (And (Arg0, 0x01))
{
Or (FLAG, 0x10, FLAG)
}
If (And (Arg2, 0x01))
{
Or (FLAG, 0x01, FLAG)
}
If (And (Arg0, 0x02))
{
Or (FLAG, 0x02, FLAG)
}
If (And (Arg2, 0x02))
{
Or (FLAG, 0x04, FLAG)
}
If (And (Arg0, 0x20))
{
Or (FLAG, 0x08, FLAG)
}
Return (Local0)
}
Method (STM, 3, NotSerialized)
{
Store (Buffer (0x18) {}, Local7)
CreateDWordField (Local7, 0x00, ITM)
CreateDWordField (Local7, 0x04, SIT)
CreateDWordField (Local7, 0x08, UDC)
CreateDWordField (Local7, 0x0C, UDT)
CreateDWordField (Local7, 0x10, ICF)
CreateDWordField (Local7, 0x14, FAS)
CreateDWordField (Arg0, 0x00, PIO0)
CreateDWordField (Arg0, 0x04, DMA0)
CreateDWordField (Arg0, 0x08, PIO1)
CreateDWordField (Arg0, 0x0C, DMA1)
CreateDWordField (Arg0, 0x10, FLAG)
Store (FLAG, Local4)
Store (0x8000, Local0)
If (And (Local4, 0x02))
{
Or (Local0, 0x07, Local0)
}
If (And (Local4, 0x08))
{
Or (Local0, 0x4000, Local0)
Or (Local0, 0x70, Local0)
}
If (LAnd (LLess (DMA0, PIO0), LNot (And (Local4, 0x01))))
{
Or (Local0, 0x08, Local0)
}
If (LAnd (LLess (DMA1, PIO1), LNot (And (Local4, 0x04))))
{
Or (Local0, 0x80, Local0)
}
If (PIO0)
{
If (LLess (PIO0, 0x0384))
{
Or (Local0, 0x01, Local0)
}
}
If (PIO1)
{
If (LLess (PIO1, 0x0384))
{
Or (Local0, 0x10, Local0)
}
}
If (And (Local4, 0x01))
{
Store (PIO0, Local1)
}
Else
{
Store (DMA0, Local1)
}
If (Local1)
{
If (LNot (LGreater (Local1, 0x78)))
{
Or (Local0, 0x2300, Local0)
}
Else
{
If (LNot (LGreater (Local1, 0xB4)))
{
Or (Local0, 0x2100, Local0)
}
Else
{
If (LNot (LGreater (Local1, 0xF0)))
{
Or (Local0, 0x1000, Local0)
}
}
}
}
Store (Local0, ITM)
Store (Zero, Local0)
If (And (Local4, 0x04))
{
Store (PIO1, Local1)
}
Else
{
Store (DMA1, Local1)
}
If (Local1)
{
If (LNot (LGreater (Local1, 0x78)))
{
Store (0x0B, Local0)
}
Else
{
If (LNot (LGreater (Local1, 0xB4)))
{
Store (0x09, Local0)
}
Else
{
If (LNot (LGreater (Local1, 0xF0)))
{
Store (0x04, Local0)
}
}
}
}
Store (Local0, SIT)
Store (0x00, Local0)
If (And (Local4, 0x01))
{
Or (Local0, 0x01, Local0)
}
If (And (Local4, 0x04))
{
Or (Local0, 0x02, Local0)
}
Store (Local0, UDC)
Store (0x00, Local0)
If (And (Local4, 0x01))
{
If (LEqual (DMA0, 0x14))
{
Store (0x01, Local0)
}
Else
{
If (LLess (DMA0, 0x3C))
{
Divide (DMA0, 0x0F, , Local1)
}
Else
{
Divide (DMA0, 0x1E, , Local1)
}
Subtract (0x04, Local1, Local0)
}
}
If (And (Local4, 0x04))
{
If (LEqual (DMA1, 0x14))
{
Store (0x01, Local1)
}
Else
{
If (LLess (DMA1, 0x3C))
{
Divide (DMA1, 0x0F, , Local1)
}
Else
{
Divide (DMA1, 0x1E, , Local1)
}
Subtract (0x04, Local1, Local1)
}
ShiftLeft (Local1, 0x04, Local1)
Or (Local0, Local1, Local0)
}
Store (Local0, UDT)
Store (0x00, Local0)
If (DMA0)
{
If (LGreater (DMA0, 0x14))
{
If (LLess (DMA0, 0x3C))
{
Or (Local0, 0x01, Local0)
}
}
}
If (DMA1)
{
If (LGreater (DMA1, 0x14))
{
If (LLess (DMA1, 0x3C))
{
Or (Local0, 0x02, Local0)
}
}
}
Store (Local0, ICF)
Store (0x00, Local0)
If (LEqual (DMA0, 0x14))
{
Or (Local0, 0x01, Local0)
}
If (LEqual (DMA1, 0x14))
{
Or (Local0, 0x02, Local0)
}
Store (Local0, FAS)
Return (Local7)
}
Method (H15P, 1, NotSerialized)
{
Name (BUFF, Buffer (0x08)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
})
Store (Arg0, Local0)
Store (BUFF, Local1)
Concatenate (Local0, Local1, Local7)
CreateWordField (Local7, 0x02, CYL)
CreateWordField (Local7, 0x06, HEAD)
CreateWordField (Local7, 0x0C, SPT)
If (LAnd (LNot (LLess (HEAD, 0x10)), LNot (LLess (CYL, 0x2000))))
{
Return (SPT)
}
Else
{
Return (Zero)
}
}
Method (GTF0, 7, NotSerialized)
{
Store (Buffer (0x07)
{
0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
}, Local7)
CreateByteField (Local7, 0x01, MODE)
If (And (Arg2, 0x01))
{
And (Arg3, 0x03, Local0)
If (And (Arg6, 0x01))
{
Add (Local0, 0x04, Local0)
}
Else
{
If (And (Arg4, 0x01))
{
Add (Local0, 0x02, Local0)
}
}
Or (Local0, 0x40, MODE)
}
Else
{
Add (ShiftRight (And (Arg0, 0x0300), 0x08), ShiftRight (And (Arg0, 0x3000), 0x0C), Local0)
If (LNot (LLess (Local0, 0x05)))
{
Store (0x22, MODE)
}
Else
{
If (LNot (LLess (Local0, 0x03)))
{
Store (0x21, MODE)
}
Else
{
Store (0x20, MODE)
}
}
}
Concatenate (Local7, Local7, Local6)
If (LOr (And (Arg0, 0x08), LNot (And (Arg0, 0x01))))
{
If (And (Arg0, 0x02))
{
Store (0x00, MODE)
}
Else
{
Store (0x01, MODE)
}
}
Else
{
Add (ShiftRight (And (Arg0, 0x0300), 0x08), ShiftRight (And (Arg0, 0x3000), 0x0C), Local0)
If (LNot (LLess (Local0, 0x05)))
{
Store (0x0C, MODE)
}
Else
{
If (LNot (LLess (Local0, 0x03)))
{
Store (0x0B, MODE)
}
Else
{
Store (0x0A, MODE)
}
}
}
Concatenate (Local6, Local7, Local5)
If (Arg5)
{
Store (Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0xAE, 0x91
}, Local4)
CreateByteField (Local4, 0x01, SPT)
Store (Arg5, SPT)
Concatenate (Local5, Local4, Local6)
Return (Local6)
}
Else
{
Return (Local5)
}
}
Method (GTF1, 7, NotSerialized)
{
Store (Buffer (0x07)
{
0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
}, Local7)
CreateByteField (Local7, 0x01, MODE)
If (And (Arg2, 0x02))
{
ShiftRight (And (Arg3, 0x30), 0x04, Local0)
If (And (Arg6, 0x02))
{
Add (Local0, 0x04, Local0)
}
Else
{
If (And (Arg4, 0x02))
{
Add (Local0, 0x02, Local0)
}
}
Or (Local0, 0x40, MODE)
}
Else
{
Add (ShiftRight (And (Arg1, 0x03), 0x02), And (Arg1, 0x0C), Local0)
If (LNot (LLess (Local0, 0x05)))
{
Store (0x22, MODE)
}
Else
{
If (LNot (LLess (Local0, 0x03)))
{
Store (0x21, MODE)
}
Else
{
Store (0x20, MODE)
}
}
}
Concatenate (Local7, Local7, Local6)
If (LOr (And (Arg0, 0x80), LNot (And (Arg0, 0x10))))
{
If (And (Arg0, 0x20))
{
Store (0x00, MODE)
}
Else
{
Store (0x01, MODE)
}
}
Else
{
Add (ShiftRight (And (Arg1, 0x03), 0x02), And (Arg1, 0x0C), Local0)
If (LNot (LLess (Local0, 0x05)))
{
Store (0x0C, MODE)
}
Else
{
If (LNot (LLess (Local0, 0x03)))
{
Store (0x0B, MODE)
}
Else
{
Store (0x0A, MODE)
}
}
}
Concatenate (Local6, Local7, Local5)
If (Arg5)
{
Store (Buffer (0x07)
{
0x00, 0x00, 0x00, 0x00, 0x00, 0xBE, 0x91
}, Local4)
CreateByteField (Local4, 0x01, SPT)
Store (Arg5, SPT)
Concatenate (Local5, Local4, Local6)
Return (Local6)
}
Else
{
Return (Local5)
}
}
Device (PRIM)
{
Name (_ADR, 0x00)
Method (_GTM, 0, NotSerialized)
{
Store (GTM (ITM0, SIT0, UDC0, UDT0, ICF0, FAS0), Local0)
Return (Local0)
}
Method (_STM, 3, NotSerialized)
{
Store (STM (Arg0, Arg1, Arg2), Local0)
CreateDWordField (Local0, 0x00, ITM)
CreateDWordField (Local0, 0x04, SIT)
CreateDWordField (Local0, 0x08, UDC)
CreateDWordField (Local0, 0x0C, UDT)
CreateDWordField (Local0, 0x10, ICF)
CreateDWordField (Local0, 0x14, FAS)
Store (UDC, UDC0)
Store (UDT, UDT0)
Store (ICF, ICF0)
Store (FAS, FAS0)
}
Device (MAST)
{
Name (_ADR, 0x00)
Name (H15F, Zero)
Method (_GTF, 0, NotSerialized)
{
Store (GTF0 (ITM0, SIT0, UDC0, UDT0, ICF0, H15F, FAS0), Local0)
Return (Local0)
}
}
Device (SLAV)
{
Name (_ADR, 0x01)
Name (H15F, Zero)
Method (_GTF, 0, NotSerialized)
{
Store (GTF1 (ITM0, SIT0, UDC0, UDT0, ICF0, H15F, FAS0), Local0)
Return (Local0)
}
}
}
Device (SECN)
{
Name (_ADR, 0x01)
Method (_GTM, 0, NotSerialized)
{
Store (GTM (ITM1, SIT1, UDC1, UDT1, ICF1, FAS1), Local0)
Return (Local0)
}
Method (_STM, 3, NotSerialized)
{
Store (STM (Arg0, Arg1, Arg2), Local0)
CreateDWordField (Local0, 0x00, ITM)
CreateDWordField (Local0, 0x04, SIT)
CreateDWordField (Local0, 0x08, UDC)
CreateDWordField (Local0, 0x0C, UDT)
CreateDWordField (Local0, 0x10, ICF)
CreateDWordField (Local0, 0x14, FAS)
Store (UDC, UDC1)
Store (UDT, UDT1)
Store (ICF, ICF1)
Store (FAS, FAS1)
}
Device (MAST)
{
Name (_ADR, 0x00)
Name (H15F, Zero)
Method (_GTF, 0, NotSerialized)
{
Store (GTF0 (ITM1, SIT1, UDC1, UDT1, ICF1, H15F, FAS1), Local0)
Return (Local0)
}
}
Device (SLAV)
{
Name (_ADR, 0x01)
Name (H15F, Zero)
Method (_GTF, 0, NotSerialized)
{
Store (GTF1 (ITM1, SIT1, UDC1, UDT1, ICF1, H15F, FAS1), Local0)
Return (Local0)
}
}
}
}
Device (PX43)
{
Name (_ADR, 0x001F0003)
OperationRegion (PBAS, PCI_Config, 0x20, 0x02)
Field (PBAS, ByteAcc, NoLock, Preserve)
{
BAS0, 16
}
Method (SMBB, 0, NotSerialized)
{
And (BAS0, 0xFFFE, Local0)
Return (Local0)
}
}
Device (MODM)
{
Name (_ADR, 0x001F0006)
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x05,
0x05
})
}
}
Name (BUFA, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared) {3,4,5,7,9,10,11,12,14,15}
})
Name (BUFB, ResourceTemplate ()
{
IRQ (Level, ActiveLow, Shared) {}
})
CreateWordField (BUFB, 0x01, IRQV)
Device (LNKA)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x01)
Method (_STA, 0, NotSerialized)
{
And (PIRA, 0x80, Local0)
If (LEqual (Local0, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (BUFA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRA, 0x80, PIRA)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRA, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQV)
Return (BUFB)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ1)
FindSetRightBit (IRQ1, Local0)
Decrement (Local0)
Store (Local0, PIRA)
}
}
Device (LNKB)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x02)
Method (_STA, 0, NotSerialized)
{
And (PIRB, 0x80, Local0)
If (LEqual (Local0, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (BUFA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRB, 0x80, PIRB)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRB, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQV)
Return (BUFB)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ1)
FindSetRightBit (IRQ1, Local0)
Decrement (Local0)
Store (Local0, PIRB)
}
}
Device (LNKC)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x03)
Method (_STA, 0, NotSerialized)
{
And (PIRC, 0x80, Local0)
If (LEqual (Local0, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (BUFA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRC, 0x80, PIRC)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRC, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQV)
Return (BUFB)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ1)
FindSetRightBit (IRQ1, Local0)
Decrement (Local0)
Store (Local0, PIRC)
}
}
Device (LNKD)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x04)
Method (_STA, 0, NotSerialized)
{
And (PIRD, 0x80, Local0)
If (LEqual (Local0, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (BUFA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRD, 0x80, PIRD)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRD, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQV)
Return (BUFB)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ1)
FindSetRightBit (IRQ1, Local0)
Decrement (Local0)
Store (Local0, PIRD)
}
}
Device (LNKE)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x05)
Method (_STA, 0, NotSerialized)
{
And (PIRE, 0x80, Local0)
If (LEqual (Local0, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (BUFA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRE, 0x80, PIRE)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRE, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQV)
Return (BUFB)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ1)
FindSetRightBit (IRQ1, Local0)
Decrement (Local0)
Store (Local0, PIRE)
}
}
Device (LNKF)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x06)
Method (_STA, 0, NotSerialized)
{
And (PIRF, 0x80, Local0)
If (LEqual (Local0, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (BUFA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRF, 0x80, PIRF)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRF, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQV)
Return (BUFB)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ1)
FindSetRightBit (IRQ1, Local0)
Decrement (Local0)
Store (Local0, PIRF)
}
}
Device (LNK0)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x07)
Method (_STA, 0, NotSerialized)
{
And (PIRG, 0x80, Local0)
If (LEqual (Local0, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (BUFA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRG, 0x80, PIRG)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRG, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQV)
Return (BUFB)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ1)
FindSetRightBit (IRQ1, Local0)
Decrement (Local0)
Store (Local0, PIRG)
}
}
Device (LNK1)
{
Name (_HID, EisaId ("PNP0C0F"))
Name (_UID, 0x08)
Method (_STA, 0, NotSerialized)
{
And (PIRH, 0x80, Local0)
If (LEqual (Local0, 0x80))
{
Return (0x09)
}
Else
{
Return (0x0B)
}
}
Method (_PRS, 0, NotSerialized)
{
Return (BUFA)
}
Method (_DIS, 0, NotSerialized)
{
Or (PIRH, 0x80, PIRH)
}
Method (_CRS, 0, NotSerialized)
{
And (PIRH, 0x0F, Local0)
ShiftLeft (0x01, Local0, IRQV)
Return (BUFB)
}
Method (_SRS, 1, NotSerialized)
{
CreateWordField (Arg0, 0x01, IRQ1)
FindSetRightBit (IRQ1, Local0)
Decrement (Local0)
Store (Local0, PIRH)
}
}
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0B,
0x05
})
}
Method (\_SB.PCI0.PX40.UAR1._PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x08,
0x05
})
}
Method (\_SB.PCI0.PX40.UAR2._PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x08,
0x05
})
}
}
Device (MEM)
{
Name (_HID, EisaId ("PNP0C01"))
Method (_CRS, 0, NotSerialized)
{
Name (BUF0, ResourceTemplate ()
{
Memory32Fixed (ReadWrite, 0x000F0000, 0x00004000)
Memory32Fixed (ReadWrite, 0x000F4000, 0x00004000)
Memory32Fixed (ReadWrite, 0x000F8000, 0x00004000)
Memory32Fixed (ReadWrite, 0x000FC000, 0x00004000)
Memory32Fixed (ReadWrite, 0x00000000, 0x00010000)
Memory32Fixed (ReadWrite, 0x00000000, 0x000A0000)
Memory32Fixed (ReadWrite, 0x00100000, 0x00000000)
Memory32Fixed (ReadWrite, 0xFEC00000, 0x00100000)
Memory32Fixed (ReadWrite, 0xFEE00000, 0x00100000)
Memory32Fixed (ReadWrite, 0xFFB00000, 0x00080000)
Memory32Fixed (ReadWrite, 0xFFF00000, 0x00100000)
Memory32Fixed (ReadWrite, 0x000E0000, 0x00010000)
})
CreateDWordField (BUF0, 0x34, ACMM)
CreateDWordField (BUF0, 0x38, ASSM)
CreateDWordField (BUF0, 0x04, RMA1)
CreateDWordField (BUF0, 0x08, RSS1)
CreateDWordField (BUF0, 0x10, RMA2)
CreateDWordField (BUF0, 0x14, RSS2)
CreateDWordField (BUF0, 0x1C, RMA3)
CreateDWordField (BUF0, 0x20, RSS3)
CreateDWordField (BUF0, 0x28, RMA4)
CreateDWordField (BUF0, 0x2C, RSS4)
CreateDWordField (BUF0, 0x50, EXTM)
Subtract (AMEM, 0x00100000, EXTM)
If (LNot (LEqual (ROM1, Zero)))
{
Store (RMA1, RMA2)
ShiftLeft (ROM1, 0x08, Local0)
Store (Local0, RMA1)
ShiftLeft (RMS1, 0x08, Local0)
Store (Local0, RSS1)
Store (0x8000, RSS2)
}
If (LNot (LEqual (ROM2, Zero)))
{
Store (RMA2, RMA3)
ShiftLeft (ROM2, 0x08, Local0)
Store (Local0, RMA2)
ShiftLeft (RMS2, 0x08, Local0)
Store (Local0, RSS2)
Store (0xC000, RSS3)
}
If (LNot (LEqual (ROM3, Zero)))
{
Store (RMA3, RMA4)
ShiftLeft (ROM3, 0x08, Local0)
Store (Local0, RMA3)
ShiftLeft (RMS3, 0x08, Local0)
Store (Local0, RSS3)
Store (0x00010000, RSS4)
}
Store (AMEM, ACMM)
And (AMEM, 0x000FFFFF, Local0)
Subtract (0x00100000, Local0, ASSM)
Return (BUF0)
}
}
Device (\_SB.PCI0.PX40.FWH)
{
Name (_HID, EisaId ("INT0800"))
Method (_CRS, 0, NotSerialized)
{
Name (FWH0, ResourceTemplate ()
{
Memory32Fixed (ReadWrite, 0xFFB80000, 0x00080000)
})
Return (FWH0)
}
}
}
OperationRegion (TEMM, SystemMemory, 0x000FF810, 0x0C)
Field (TEMM, WordAcc, NoLock, Preserve)
{
TP1H, 16,
TP1L, 16,
TP2H, 16,
TP2L, 16,
TRPC, 16,
SENF, 16
}
Name (TVAR, Buffer (0x05)
{
0x00, 0x00, 0x00, 0x00, 0x00
})
CreateByteField (TVAR, 0x00, PLCY)
CreateWordField (TVAR, 0x01, CTOS)
CreateWordField (TVAR, 0x03, CTHY)
Name (TBUF, Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
})
CreateByteField (TBUF, 0x00, DB00)
CreateByteField (TBUF, 0x01, DB01)
CreateWordField (TBUF, 0x00, DW00)
CreateWordField (TBUF, 0x02, DW01)
CreateDWordField (TBUF, 0x00, DATD)
OperationRegion (SEN1, SystemIO, 0x0295, 0x02)
Field (SEN1, ByteAcc, NoLock, Preserve)
{
SEI0, 8,
SED0, 8
}
Method (STOS, 3, NotSerialized)
{
If (LLess (Arg2, 0x0AAC))
{
Subtract (Arg2, 0x0AAC, Local0)
Divide (Local0, 0x0A, Local0)
}
Else
{
Subtract (0x0AAC, Arg2, Local0)
Divide (Local0, 0x0A, Local0)
Add (Local0, 0x80, Local0)
}
WSEN (0x4E, 0x00)
WSEN (0x39, Local0)
}
Method (STHY, 3, NotSerialized)
{
If (LLess (Arg2, 0x0AAC))
{
Subtract (Arg2, 0x0AAC, Local0)
Divide (Local0, 0x0A, Local0)
}
Else
{
Subtract (0x0AAC, Arg2, Local0)
Divide (Local0, 0x0A, Local0)
Add (Local0, 0x80, Local0)
}
WSEN (0x4E, 0x00)
WSEN (0x3A, Local0)
}
Method (RTMP, 0, NotSerialized)
{
WSEN (0x4E, 0x00)
Store (RSEN (0x27), Local0)
If (LLess (Local0, 0x80))
{
Multiply (Local0, 0x0A, Local0)
Add (Local0, 0x0AAC, Local0)
}
Else
{
Subtract (Local0, 0x80, Local0)
Multiply (Local0, 0x0A, Local0)
Subtract (0x0AAC, Local0, Local0)
}
If (LEqual (SSHU, 0x01))
{
Return (0x0C3C)
}
Else
{
Return (Local0)
}
}
Method (WSEN, 2, NotSerialized)
{
Store (Arg0, SEI0)
Store (Arg1, SED0)
}
Method (RSEN, 1, NotSerialized)
{
Store (Arg0, SEI0)
Store (SED0, Local0)
Return (Local0)
}
Method (SFAN, 1, NotSerialized)
{
If (LEqual (Arg0, Zero))
{
FOFF ()
}
Else
{
FON ()
}
}
Method (FON, 0, NotSerialized)
{
WSEN (0x4E, 0x00)
WSEN (0x01, 0xFF)
WSEN (0x03, 0xFF)
}
Method (FOFF, 0, NotSerialized)
{
WSEN (0x4E, 0x00)
WSEN (0x01, 0x00)
WSEN (0x03, 0x00)
}
Scope (\_TZ)
{
Device (FAN)
{
Name (_HID, EisaId ("PNP0C0B"))
Method (_INI, 0, NotSerialized)
{
Store (TP1H, CTOS)
Store (TP1L, CTHY)
}
}
ThermalZone (THRM)
{
Name (_AL0, Package (0x01)
{
FAN
})
Method (_AC0, 0, NotSerialized)
{
If (Or (PLCY, PLCY, Local7))
{
Return (TP2H)
}
Else
{
Return (TP1H)
}
}
Name (_PSL, Package (0x01)
{
\_PR.CPU0
})
Name (_TSP, 0x3C)
Name (_TC1, 0x04)
Name (_TC2, 0x03)
Method (_PSV, 0, NotSerialized)
{
If (Or (PLCY, PLCY, Local7))
{
Return (TP1H)
}
Else
{
Return (TP2H)
}
}
Method (_CRT, 0, NotSerialized)
{
Return (TRPC)
}
Method (_TMP, 0, NotSerialized)
{
And (SENF, 0x01, Local6)
If (LEqual (Local6, 0x01))
{
Return (RTMP ())
}
Else
{
Return (0x0B86)
}
}
Method (_SCP, 1, NotSerialized)
{
If (Arg0)
{
Store (One, PLCY)
}
Else
{
Store (Zero, PLCY)
}
Notify (\_TZ.THRM, 0x81)
}
Method (STMP, 2, NotSerialized)
{
Store (Arg1, DW00)
If (Arg0)
{
STHY (DB00, DB01, DW00)
}
Else
{
STOS (DB00, DB01, DW00)
}
}
}
}
}