Device (RP03) { Name (_ADR, 0x001C0002) // _ADR: Address OperationRegion (PXCS, PCI_Config, 0x40, 0xC0) Field (PXCS, AnyAcc, NoLock, WriteAsZeros) { Offset (0x12), , 13, LASX, 1, Offset (0x1A), ABPX, 1, , 2, PDCX, 1, , 2, PDSX, 1, Offset (0x1B), LSCX, 1, Offset (0x20), Offset (0x22), PSPX, 1, Offset (0x98), , 30, HPEX, 1, PMEX, 1, , 30, HPSX, 1, PMSX, 1 } Field (PXCS, AnyAcc, NoLock, Preserve) { Offset (0x02), Offset (0x03), SI, 1, Offset (0x10), , 4, LD, 1, Offset (0x18), SCTL, 16, SSTS, 16, Offset (0x98), , 30, HPCE, 1, PMCE, 1 } Method (HPLG, 0, Serialized) { If (_STA ()) { If (HPSX) { Sleep (0x64) If (PDCX) { Store (One, PDCX) Store (One, HPSX) SSMI (0x5D, Zero, Zero, Zero, Zero) Notify (^, Zero) } Else { Store (One, HPSX) } } } } Method (PME, 0, Serialized) { If (_STA ()) { If (PSPX) { While (PSPX) { Store (One, PSPX) } Store (One, PMSX) Notify (^, 0x02) } } } Method (OSC, 2, Serialized) { If (_STA ()) { Store (Arg0, HPCE) If (Arg0) { And (SCTL, 0xFFC0, Local6) If (SI) { Or (Local6, One, Local6) } Store (Local6, SCTL) Store (0x3F, SSTS) } Else { Store (One, ABPX) Store (One, PDCX) Store (One, HPSX) } Store (Arg1, PMCE) If (LEqual (Arg1, Zero)) { Store (One, PMSX) } } } Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table { If (GPIC) { Return (Package (0x04) { Package (0x04) { 0xFFFF, Zero, Zero, 0x12 }, Package (0x04) { 0xFFFF, One, Zero, 0x13 }, Package (0x04) { 0xFFFF, 0x02, Zero, 0x10 }, Package (0x04) { 0xFFFF, 0x03, Zero, 0x11 } }) } Else { Return (Package (0x04) { Package (0x04) { 0xFFFF, Zero, LNKC, Zero }, Package (0x04) { 0xFFFF, One, LNKD, Zero }, Package (0x04) { 0xFFFF, 0x02, LNKA, Zero }, Package (0x04) { 0xFFFF, 0x03, LNKB, Zero } }) } } Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake { 0x09, 0x04 }) Device (FRWR) { OperationRegion (JMDE, PCI_Config, 0xAC, 0x10) Field (JMDE, AnyAcc, NoLock, Preserve) { , 6, D3EF, 1, Offset (0x01) } Name (_ADR, Zero) // _ADR: Address Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (EPLD) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (Zero) } Name (_GPE, 0x11) // _GPE: General Purpose Events Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Store (Package (0x0E) { "AAPL,slot-name", "Built In", "name", Buffer (0x1E) { "JMicron IEEE 1394a Controller" }, "model", Buffer (0x1C) { "JMicron FireWire Controller" }, "device_type", Buffer (0x09) { "FireWire" }, "fwhub", Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }, "fws0", Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }, "built-in", Buffer (One) { 0x01 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (MSHC) { Name (_ADR, One) // _ADR: Address Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (EPLD) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (Zero) } } Device (SDXC) { Name (_ADR, 0x02) // _ADR: Address Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (EPLD) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (Zero) } OperationRegion (ARE1, PCI_Config, Zero, 0x04) Field (ARE1, ByteAcc, NoLock, Preserve) { AVND, 16 } Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake { 0x19, 0x03 }) Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { Store (Package (0x0A) { "AAPL,slot-name", "Built In", "name", Buffer (0x25) { "JMicron SD/MMC Cardreader Controller" }, "model", Buffer (0x25) { "JMicron SD/MMC Cardreader Controller" }, "device_type", Buffer (0x10) { "SDXC Controller" }, "built-in", Buffer (One) { 0x01 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Device (I1C) { Name (_ADR, 0x03) // _ADR: Address Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device { Return (EPLD) } Method (_RMV, 0, NotSerialized) // _RMV: Removal Status { Return (Zero) } } }