| /* |
| * Copyright 2005 AMD |
| * Copyright (C) 2011, 2014 Oskar Enoksson <enok@lysator.liu.se> |
| */ |
| //AMD8111 |
| // APIC version of the interrupt routing table |
| Name (APIC, Package (0x04) { |
| Package (0x04) { 0x0004FFFF, 0x00, 0x00, 0x10},// 0x0004ffff : assusme 8131 is present |
| Package (0x04) { 0x0004FFFF, 0x01, 0x00, 0x11}, |
| Package (0x04) { 0x0004FFFF, 0x02, 0x00, 0x12}, |
| Package (0x04) { 0x0004FFFF, 0x03, 0x00, 0x13} |
| }) |
| // PIC version of the interrupt routing table |
| Name (PICM, Package (0x04) { |
| Package (0x04) { 0x0004FFFF, 0x00, \_SB.PCI0.LNKA, 0x00}, |
| Package (0x04) { 0x0004FFFF, 0x01, \_SB.PCI0.LNKB, 0x00}, |
| Package (0x04) { 0x0004FFFF, 0x02, \_SB.PCI0.LNKC, 0x00}, |
| Package (0x04) { 0x0004FFFF, 0x03, \_SB.PCI0.LNKD, 0x00} |
| }) |
| Name (DNCG, Ones) |
| Method (_PRT, 0, NotSerialized) { |
| If (LEqual (^DNCG, Ones)) { |
| Store (DADD(\_SB.PCI0.SBDN, 0x0001ffff), Local0) |
| // Update the Device Number according to SBDN |
| Store(Local0, Index (DeRefOf (Index (PICM, 0)), 0)) |
| Store(Local0, Index (DeRefOf (Index (PICM, 1)), 0)) |
| Store(Local0, Index (DeRefOf (Index (PICM, 2)), 0)) |
| Store(Local0, Index (DeRefOf (Index (PICM, 3)), 0)) |
| |
| Store(Local0, Index (DeRefOf (Index (APIC, 0)), 0)) |
| Store(Local0, Index (DeRefOf (Index (APIC, 1)), 0)) |
| Store(Local0, Index (DeRefOf (Index (APIC, 2)), 0)) |
| Store(Local0, Index (DeRefOf (Index (APIC, 3)), 0)) |
| |
| Store (0x00, ^DNCG) |
| } |
| |
| If (LNot (PICF)) { |
| Return (PICM) |
| } Else { |
| Return (APIC) |
| } |
| } |
| |
| // AMD8111 System Management I/O Mapped Registers (PMxx) |
| OperationRegion (PMIO, SystemIO, PMBS, 0xDF) |
| Field (PMIO, ByteAcc, NoLock, Preserve) { |
| Offset (0x1E), |
| SWSM, 8, // Software SMI Trigger (sets GSTS) |
| Offset (0x28), |
| GSTS, 16, // Global STatuS |
| GNBL, 16, // Global SMI enable |
| Offset (0x30), |
| STMC, 5, // Miscellaneous SMI Status |
| Offset (0x32), |
| ENMC, 5, // Miscellaneous SMI Enable |
| Offset (0x44), |
| STC0, 9, // TCO Status 1 |
| Offset (0x46), |
| STC1, 4, // TCO Status 2 |
| Offset (0xA8), |
| STHW, 20 // Device monitor SMI Interrupt Enable |
| } |
| Device (HPET) { |
| Name (HPT, 0x00) |
| Name (_HID, EisaId ("PNP0103")) |
| Name (_UID, 0x00) |
| Method (_STA, 0, NotSerialized) { |
| Return (0x0F) |
| } |
| Method (_CRS, 0, Serialized) { |
| Name (BUF0, ResourceTemplate () { |
| Memory32Fixed (ReadWrite, 0xFED00000, 0x00000400) |
| }) |
| Return (BUF0) |
| } |
| } |
| #include "amd8111_pic.asl" |
| #include "amd8111_isa.asl" |
| |
| Device (TP2P) { |
| // 8111 P2P and it should 0x00030000 when 8131 present |
| Method (_ADR, 0, NotSerialized) { |
| Return (DADD(\_SB.PCI0.SBDN, 0x00000000)) |
| } |
| Method (_PRW, 0, NotSerialized) { // Power Resource for Wake |
| // result : |
| // [0] Bit index into GPEx_EN in the GPE block described by FADT. |
| // [1] The lowest power state from which the system can be awakened. |
| //If (CondRefOf (\_S3)) { |
| // Return (Package (0x02) { 0x08, 0x03 }) |
| //} Else { |
| Return (Package (0x02) { 0x08, 0x01 }) |
| //} |
| } |
| Device (ETHR) { |
| Name (_ADR, 0x00010000) |
| Method (_PRW, 0, NotSerialized) { // Power Resource for Wake |
| //If (CondRefOf (\_S3)) { |
| // Return (Package (0x02) { 0x08, 0x03 }) |
| //} Else { |
| Return (Package (0x02) { 0x08, 0x01 }) |
| //} |
| } |
| } |
| Device (USB0) { |
| Name (_ADR, 0x00000000) |
| Method (_PSW, 1, NotSerialized) { // Power State Wake |
| And (GNBL, 0x7FFF, GNBL) |
| } |
| Method (_PRW, 0, NotSerialized) { // Power Resource for Wake |
| //If (CondRefOf (\_S3)) { |
| // Return (Package (0x02) { 0x0F, 0x03 }) |
| //} Else { |
| Return (Package (0x02) { 0x0F, 0x01 }) |
| //} |
| } |
| } |
| Device (USB1) { |
| Name (_ADR, 0x00000001) |
| Method (_PSW, 1, NotSerialized) { // Power State Wake |
| And (GNBL, 0x7FFF, GNBL) |
| } |
| Method (_PRW, 0, NotSerialized) { // Power Resource for Wake |
| //If (CondRefOf (\_S3)) { |
| // Return (Package (0x02) { 0x0F, 0x03 }) |
| //} Else { |
| Return (Package (0x02) { 0x0F, 0x01 }) |
| //} |
| } |
| } |
| Name (APIC, Package (0x0C) { |
| Package (0x04) { 0x0000FFFF, 0x00, 0x00, 0x10 }, //USB |
| Package (0x04) { 0x0000FFFF, 0x01, 0x00, 0x11 }, |
| Package (0x04) { 0x0000FFFF, 0x02, 0x00, 0x12 }, |
| Package (0x04) { 0x0000FFFF, 0x03, 0x00, 0x13 }, |
| Package (0x04) { 0x0004FFFF, 0x00, 0x00, 0x10 }, //Slot 6 |
| Package (0x04) { 0x0004FFFF, 0x01, 0x00, 0x11 }, |
| Package (0x04) { 0x0004FFFF, 0x02, 0x00, 0x12 }, |
| Package (0x04) { 0x0004FFFF, 0x03, 0x00, 0x13 }, |
| Package (0x04) { 0x0005FFFF, 0x00, 0x00, 0x11 }, //Slot 5 |
| Package (0x04) { 0x0005FFFF, 0x01, 0x00, 0x12 }, |
| Package (0x04) { 0x0005FFFF, 0x02, 0x00, 0x13 }, |
| Package (0x04) { 0x0005FFFF, 0x03, 0x00, 0x10 } |
| }) |
| Name (PICM, Package (0x0C) { |
| Package (0x04) { 0x0000FFFF, 0x00, \_SB.PCI0.LNKA, 0x00 }, //USB |
| Package (0x04) { 0x0000FFFF, 0x01, \_SB.PCI0.LNKB, 0x00 }, |
| Package (0x04) { 0x0000FFFF, 0x02, \_SB.PCI0.LNKC, 0x00 }, |
| Package (0x04) { 0x0000FFFF, 0x03, \_SB.PCI0.LNKD, 0x00 }, |
| Package (0x04) { 0x0004FFFF, 0x00, \_SB.PCI0.LNKA, 0x00 }, //Slot 6 |
| Package (0x04) { 0x0004FFFF, 0x01, \_SB.PCI0.LNKB, 0x00 }, |
| Package (0x04) { 0x0004FFFF, 0x02, \_SB.PCI0.LNKC, 0x00 }, |
| Package (0x04) { 0x0004FFFF, 0x03, \_SB.PCI0.LNKD, 0x00 }, |
| Package (0x04) { 0x0005FFFF, 0x00, \_SB.PCI0.LNKB, 0x00 }, //Slot 5 |
| Package (0x04) { 0x0005FFFF, 0x01, \_SB.PCI0.LNKC, 0x00 }, |
| Package (0x04) { 0x0005FFFF, 0x02, \_SB.PCI0.LNKD, 0x00 }, |
| Package (0x04) { 0x0005FFFF, 0x03, \_SB.PCI0.LNKA, 0x00 } |
| }) |
| Method (_PRT, 0, NotSerialized) { |
| If (LNot (PICF)) { Return (PICM) } |
| Else { Return (APIC) } |
| } |
| } |
| Device (IDE0) { |
| Method (_ADR, 0, NotSerialized) { |
| Return (DADD(\_SB.PCI0.SBDN, 0x00010001)) |
| } |
| Name (REGF, 0x01) |
| Method (_REG, 2, NotSerialized) { |
| If (LEqual (Arg0, 0x02)) { |
| Store (Arg1, REGF) |
| } |
| } |
| OperationRegion (BAR0, PCI_Config, 0x00, 0x60) |
| Field (BAR0, ByteAcc, NoLock, Preserve) { |
| Offset (0x40), // EIDE Controller Configuration Register |
| SCEN, 1, // Secondary Channel Enable |
| PCEN, 1, // Primary Channel Enable |
| , 10, |
| SPWB, 1, // Secondary Port posted-write buffer for PIO modes enable |
| SRPB, 1, // RW (controls nothing) |
| PPWB, 1, // Primary Port posted-write buffer for PIO modes enable |
| PRPB, 1, // RW (controls nothing) |
| PM80, 1, // High-speed 80-pin cable enable Primary Master |
| PS80, 1, // High-speed 80-pin cable enable Primary Slave |
| SM80, 1, // High-speed 80-pin cable enable Secondary Master |
| SS80, 1, // High-speed 80-pin cable enable Secondary Slave |
| , 4, // RW (controls nothing) |
| Offset (0x48), |
| SSRT, 4, // |
| SSPW, 4, // |
| SMRT, 4, // |
| SMPW, 4, |
| PSRT, 4, |
| PSPW, 4, |
| PMRT, 4, |
| PMPW, 4, |
| SSAD, 2, |
| SMAD, 2, |
| PSAD, 2, |
| PMAD, 2, |
| Offset (0x4E), |
| SXRT, 4, |
| SXPW, 4, |
| PXRT, 4, |
| PXPW, 4, |
| SSUD, 8, |
| SMUD, 8, |
| PSUD, 8, |
| PMUD, 8, |
| PPDN, 1, |
| PPDS, 1, |
| , 2, |
| SPDN, 1, |
| SPDS, 1 |
| } |
| Name (TIM0, Package (0x06) { |
| Package (0x05) { |
| 0x78, |
| 0xB4, |
| 0xF0, |
| 0x0186, |
| 0x0258 |
| }, |
| Package (0x07) { |
| 0x78, |
| 0x5A, |
| 0x3C, |
| 0x2D, |
| 0x1E, |
| 0x14, |
| 0x0F |
| }, |
| Package (0x08) { |
| 0x04, |
| 0x03, |
| 0x02, |
| 0x01, |
| 0x00, |
| 0x00, |
| 0x00, |
| 0x00 |
| }, |
| Package (0x03) { |
| 0x02, |
| 0x01, |
| 0x00 |
| }, |
| Package (0x05) { |
| 0x20, |
| 0x22, |
| 0x42, |
| 0x65, |
| 0xA8 |
| }, |
| Package (0x07) { |
| 0xC2, |
| 0xC1, |
| 0xC0, |
| 0xC4, |
| 0xC5, |
| 0xC6, |
| 0xC7 |
| } |
| }) |
| Name (TMD0, Buffer (0x14) {}) |
| CreateDWordField (TMD0, 0x00, PIO0) |
| CreateDWordField (TMD0, 0x04, DMA0) |
| CreateDWordField (TMD0, 0x08, PIO1) |
| CreateDWordField (TMD0, 0x0C, DMA1) |
| CreateDWordField (TMD0, 0x10, CHNF) |
| Device (CHN0) { |
| Name (_ADR, 0x00) |
| Method (_STA, 0, NotSerialized) { |
| If (PCEN) { Return (0x0F) } |
| Else { Return (0x09) } |
| } |
| Method (_GTM, 0, NotSerialized) { |
| Return (GTM (PMPW, PMRT, PSPW, PSRT, PMUD, PSUD)) |
| } |
| Method (_STM, 3, NotSerialized) { |
| Store (Arg0, TMD0) |
| Store (STM (), Local0) |
| And (Local0, 0xFF, PSUD) |
| ShiftRight (Local0, 0x08, Local0) |
| And (Local0, 0xFF, PMUD) |
| ShiftRight (Local0, 0x08, Local0) |
| And (Local0, 0x0F, PSRT) |
| ShiftRight (Local0, 0x04, Local0) |
| And (Local0, 0x0F, PSPW) |
| ShiftRight (Local0, 0x04, Local0) |
| And (Local0, 0x0F, PMRT) |
| ShiftRight (Local0, 0x04, Local0) |
| And (Local0, 0x0F, PMPW) |
| Store (GTF (0x00, Arg1), ATA0) |
| Store (GTF (0x01, Arg2), ATA1) |
| } |
| Device (DRV0) { |
| Name (_ADR, 0x00) |
| Method (_GTF, 0, NotSerialized) { |
| Return (RATA (ATA0)) |
| } |
| } |
| Device (DRV1) { |
| Name (_ADR, 0x01) |
| Method (_GTF, 0, NotSerialized) { |
| Return (RATA (ATA1)) |
| } |
| } |
| } |
| Device (CHN1) { |
| Name (_ADR, 0x01) |
| Method (_STA, 0, NotSerialized) { |
| If (SCEN) { Return (0x0F) } |
| Else { Return (0x09) } |
| } |
| Method (_GTM, 0, NotSerialized) { |
| Return (GTM (SMPW, SMRT, SSPW, SSRT, SMUD, SSUD)) |
| } |
| Method (_STM, 3, NotSerialized) { |
| Store (Arg0, TMD0) |
| Store (STM (), Local0) |
| And (Local0, 0xFF, SSUD) |
| ShiftRight (Local0, 0x08, Local0) |
| And (Local0, 0xFF, SMUD) |
| ShiftRight (Local0, 0x08, Local0) |
| And (Local0, 0x0F, SSRT) |
| ShiftRight (Local0, 0x04, Local0) |
| And (Local0, 0x0F, SSPW) |
| ShiftRight (Local0, 0x04, Local0) |
| And (Local0, 0x0F, SMRT) |
| ShiftRight (Local0, 0x04, Local0) |
| And (Local0, 0x0F, SMPW) |
| Store (GTF (0x00, Arg1), ATA2) |
| Store (GTF (0x01, Arg2), ATA3) |
| } |
| Device (DRV0) { |
| Name (_ADR, 0x00) |
| Method (_GTF, 0, NotSerialized) { |
| Return (RATA (ATA2)) |
| } |
| } |
| Device (DRV1) { |
| Name (_ADR, 0x01) |
| Method (_GTF, 0, NotSerialized) { |
| Return (RATA (ATA3)) |
| } |
| } |
| } |
| Method (GTM, 6, Serialized) { |
| Store (Ones, PIO0) |
| Store (Ones, PIO1) |
| Store (Ones, DMA0) |
| Store (Ones, DMA1) |
| Store (0x1A, CHNF) |
| If (REGF) {} |
| Else { Return (TMD0) } |
| Add (Arg0, Arg1, Local0) |
| Add (Local0, 0x02, Local0) |
| Multiply (Local0, 0x1E, PIO0) |
| Add (Arg2, Arg3, Local0) |
| Add (Local0, 0x02, Local0) |
| Multiply (Local0, 0x1E, PIO1) |
| If (And (Arg4, 0x40)) { |
| Or (CHNF, 0x01, CHNF) |
| And (Arg4, 0x07, Local0) |
| If (LLess (Local0, 0x04)) { |
| Add (Local0, 0x02, Local0) |
| Multiply (Local0, 0x1E, DMA0) |
| } Else { |
| If (LEqual (Local0, 0x04)) { |
| Store (0x2D, DMA0) |
| } Else { |
| If (LEqual (Local0, 0x05)) { |
| Store (0x1E, DMA0) |
| } Else { |
| If (LEqual (Local0, 0x06)) { |
| Store (0x14, DMA0) |
| } Else { |
| If (LEqual (Local0, 0x07)) { |
| Store (0x0F, DMA0) |
| } Else { |
| Store (PIO0, DMA0) |
| } |
| } |
| } |
| } |
| } |
| } Else { |
| Store (PIO0, DMA0) |
| } |
| If (And (Arg5, 0x40)) { |
| Or (CHNF, 0x04, CHNF) |
| And (Arg5, 0x07, Local0) |
| If (LLess (Local0, 0x04)) { |
| Add (Local0, 0x02, Local0) |
| Multiply (Local0, 0x1E, DMA1) |
| } Else { |
| If (LEqual (Local0, 0x04)) { |
| Store (0x2D, DMA1) |
| } Else { |
| If (LEqual (Local0, 0x05)) { |
| Store (0x1E, DMA1) |
| } Else { |
| If (LEqual (Local0, 0x06)) { |
| Store (0x14, DMA1) |
| } Else { |
| If (LEqual (Local0, 0x07)) { |
| Store (0x0F, DMA0) |
| } Else { |
| Store (PIO1, DMA1) |
| } |
| } |
| } |
| } |
| } |
| } Else { |
| Store (PIO1, DMA1) |
| } |
| Return (TMD0) |
| } |
| Method (STM, 0, Serialized) { |
| If (REGF) {} |
| Else { Return (0xFFFFFFFF) } |
| If (LEqual (PIO0, 0xFFFFFFFF)) { |
| Store (0xA8, Local1) |
| } Else { |
| And (Match (DerefOf (Index (TIM0, 0x00)), |
| MGE, PIO0, MTR, |
| 0x00, 0x00), |
| 0x07, Local0) |
| Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), |
| Local1) |
| } |
| ShiftLeft (Local1, 0x08, Local1) |
| If (LEqual (PIO1, 0xFFFFFFFF)) { |
| Or (Local1, 0xA8, Local1) |
| } Else { |
| And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIO1, MTR, |
| 0x00, 0x00), 0x07, Local0) |
| Or (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)), |
| Local1, Local1) |
| } |
| ShiftLeft (Local1, 0x08, Local1) |
| If (LEqual (DMA0, 0xFFFFFFFF)) { |
| Or (Local1, 0x03, Local1) |
| } Else { |
| If (And (CHNF, 0x01)) { |
| And (Match (DerefOf (Index (TIM0, 0x01)), MLE, DMA0, MTR, |
| 0x00, 0x00), 0x07, Local0) |
| Or (DerefOf (Index (DerefOf (Index (TIM0, 0x05)), Local0)), |
| Local1, Local1) |
| } Else { |
| Or (Local1, 0x03, Local1) |
| } |
| } |
| ShiftLeft (Local1, 0x08, Local1) |
| If (LEqual (DMA1, 0xFFFFFFFF)) { |
| Or (Local1, 0x03, Local1) |
| } Else { |
| If (And (CHNF, 0x04)) { |
| And (Match (DerefOf (Index (TIM0, 0x01)), MLE, DMA1, MTR, |
| 0x00, 0x00), 0x07, Local0) |
| Or (DerefOf (Index (DerefOf (Index (TIM0, 0x05)), Local0)), |
| Local1, Local1) |
| } Else { |
| Or (Local1, 0x03, Local1) |
| } |
| } |
| Return (Local1) |
| } |
| Name (AT01, Buffer (0x07) { |
| 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF |
| }) |
| Name (AT02, Buffer (0x07) { |
| 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90 |
| }) |
| Name (AT03, Buffer (0x07) { |
| 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6 |
| }) |
| Name (AT04, Buffer (0x07) { |
| 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91 |
| }) |
| Name (ATA0, Buffer (0x1D) {}) |
| Name (ATA1, Buffer (0x1D) {}) |
| Name (ATA2, Buffer (0x1D) {}) |
| Name (ATA3, Buffer (0x1D) {}) |
| Name (ATAB, Buffer (0x1D) {}) |
| CreateByteField (ATAB, 0x00, CMDC) |
| Method (GTFB, 3, Serialized) { |
| Multiply (CMDC, 0x38, Local0) |
| Add (Local0, 0x08, Local1) |
| CreateField (ATAB, Local1, 0x38, CMDX) |
| Multiply (CMDC, 0x07, Local0) |
| CreateByteField (ATAB, Add (Local0, 0x02), A001) |
| CreateByteField (ATAB, Add (Local0, 0x06), A005) |
| Store (Arg0, CMDX) |
| Store (Arg1, A001) |
| Store (Arg2, A005) |
| Increment (CMDC) |
| } |
| Method (GTF, 2, Serialized) { |
| Store (Arg1, Debug) |
| Store (0x00, CMDC) |
| Name (ID49, 0x0C00) |
| Name (ID59, 0x00) |
| Name (ID53, 0x04) |
| Name (ID63, 0x0F00) |
| Name (ID88, 0x0F00) |
| Name (IRDY, 0x01) |
| Name (PIOT, 0x00) |
| Name (DMAT, 0x00) |
| If (LEqual (SizeOf (Arg1), 0x0200)) { |
| CreateWordField (Arg1, 0x62, IW49) |
| Store (IW49, ID49) |
| CreateWordField (Arg1, 0x6A, IW53) |
| Store (IW53, ID53) |
| CreateWordField (Arg1, 0x7E, IW63) |
| Store (IW63, ID63) |
| CreateWordField (Arg1, 0x76, IW59) |
| Store (IW59, ID59) |
| CreateWordField (Arg1, 0xB0, IW88) |
| Store (IW88, ID88) |
| } |
| Store (0xA0, Local7) |
| If (Arg0) { |
| Store (0xB0, Local7) |
| And (CHNF, 0x08, IRDY) |
| If (And (CHNF, 0x10)) { |
| Store (PIO1, PIOT) |
| } Else { |
| Store (PIO0, PIOT) |
| } |
| If (And (CHNF, 0x04)) { |
| If (And (CHNF, 0x10)) { |
| Store (DMA1, DMAT) |
| } Else { |
| Store (DMA0, DMAT) |
| } |
| } Else { |
| Store (PIO1, DMAT) |
| } |
| } Else { |
| And (CHNF, 0x02, IRDY) |
| Store (PIO0, PIOT) |
| If (And (CHNF, 0x01)) { |
| Store (DMA0, DMAT) |
| } |
| } |
| If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00)), DMAT)) { |
| Store (Match (DerefOf (Index (TIM0, 0x01)), MLE, DMAT, MTR, |
| 0x00, 0x00), Local1) |
| If (LGreater (Local1, 0x06)) { |
| Store (0x06, Local1) |
| } |
| GTFB (AT01, Or (0x40, Local1), Local7) |
| } Else { |
| If (LAnd (And (ID63, 0xFF00), PIOT)) { |
| And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIOT, MTR, |
| 0x00, 0x00), 0x07, Local0) |
| If (Local0) { |
| If (And (Local0, 0x04)) { |
| Store (0x02, Local0) |
| } Else { |
| Store (0x01, Local0) |
| } |
| } |
| Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local0 |
| )), Local1) |
| GTFB (AT01, Local1, Local7) |
| } |
| } |
| If (IRDY) { |
| And (Match (DerefOf (Index (TIM0, 0x00)), MGE, PIOT, MTR, |
| 0x00, 0x00), 0x07, Local0) |
| Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0 |
| )), Local1) |
| GTFB (AT01, Local1, Local7) |
| } Else { |
| If (And (ID49, 0x0400)) { |
| GTFB (AT01, 0x01, Local7) |
| } |
| } |
| If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF))) { |
| GTFB (AT03, And (ID59, 0xFF), Local7) |
| } |
| Store (ATAB, Debug) |
| Return (ATAB) |
| } |
| Method (RATA, 1, NotSerialized) { |
| CreateByteField (Arg0, 0x00, CMDN) |
| Multiply (CMDN, 0x38, Local0) |
| CreateField (Arg0, 0x08, Local0, RETB) |
| Store (RETB, Debug) |
| Return (RETB) |
| } |
| } |
| Device (PMF) { |
| // ACPI smbus it should be 0x00040003 if 8131 present |
| Method (_ADR, 0, NotSerialized) |
| { |
| Return (DADD(\_SB.PCI0.SBDN, 0x00010003)) |
| } |
| OperationRegion (BAR0, PCI_Config, 0x00, 0xff) |
| Field (BAR0, ByteAcc, NoLock, Preserve) { |
| Offset (0x56), |
| PIRA, 4, |
| PIRB, 4, |
| PIRC, 4, |
| PIRD, 4 |
| } |
| //OperationRegion (TS3_, PCI_Config, 0xC4, 0x02) |
| //Field (TS3_, DWordAcc, NoLock, Preserve) { |
| // PTS3, 16 |
| //} |
| } |