2 PCI express expansion ports
4 Copyright (c) 2013-2015 Intel Corporation.
6 SPDX-License-Identifier: BSD-2-Clause-Patent
10 #ifndef PcieExpansionPrt_asi
11 #define PcieExpansionPrt_asi
13 Device (PEX0) // PCI express bus bridged from [Bus 0, Device 23, Function 0]
15 Name(_ADR,0x00170000) // Device (HI WORD)=23, Func (LO WORD)=0
16 Name(_PRW,Package(){0x11,0x03}) // GPE pin 0x11, Wake from S3 -- PCI PME#
18 OperationRegion (PES0,PCI_Config,0x40,0xA0)
19 Field (PES0, AnyAcc, NoLock, Preserve)
21 Offset(0x1A), // SLSTS - Slot Status Register
22 ABP0, 1, // Bit 0, Attention Button Pressed
24 PDC0, 1, // Bit 3, Presence Detect Changed
26 PDS0, 1, // Bit 6, Presence Detect State
28 LSC0, 1, // Bit 8, Link Active State Changed
31 PMS0, 1, // Bit 16, PME Status
34 HPE0, 1, // Bit 30, Hot Plug SCI Enable
35 PCE0, 1, // Bit 31, Power Management SCI Enable.
37 HPS0, 1, // Bit 30, Hot Plug SCI Status
38 PCS0, 1, // Bit 31, Power Management SCI Status.
41 Method(_PRT,0,NotSerialized) {
42 If (LEqual(\GPIC, Zero)) // 8259 Interrupt Routing
47 // Port 0: INTA->PIRQE,INTB->PIRQF,INTC->PIRQG,INTD->PIRQH
48 Package() {0x0000ffff, 0, \_SB_.PCI0.LPC.LNKE, 0}, // PCI Slot 1
49 Package() {0x0000ffff, 1, \_SB_.PCI0.LPC.LNKF, 0},
50 Package() {0x0000ffff, 2, \_SB_.PCI0.LPC.LNKG, 0},
51 Package() {0x0000ffff, 3, \_SB_.PCI0.LPC.LNKH, 0},
55 else // IOAPIC Routing
60 // Port 0: INTA->PIRQE,INTB->PIRQF,INTC->PIRQG,INTD->PIRQH
61 Package() {0x0000ffff, 0, 0, 20}, // PCI Slot 1
62 Package() {0x0000ffff, 1, 0, 21},
63 Package() {0x0000ffff, 2, 0, 22},
64 Package() {0x0000ffff, 3, 0, 23},
71 Device (PEX1) // PCI express bus bridged from [Bus 0, Device 23, Function 1]
73 Name(_ADR,0x00170001) // Device (HI WORD)=23, Func (LO WORD)=1
74 Name(_PRW,Package(){0x11,0x03}) // GPE pin 0x11, Wake from S3 -- PCI PME#
75 OperationRegion (PES1,PCI_Config,0x40,0xA0)
76 Field (PES1, AnyAcc, NoLock, Preserve)
78 Offset(0x1A), // SLSTS - Slot Status Register
79 ABP1, 1, // Bit 0, Attention Button Pressed
81 PDC1, 1, // Bit 3, Presence Detect Changed
83 PDS1, 1, // Bit 6, Presence Detect State
85 LSC1, 1, // Bit 8, Link Active State Changed
88 PMS1, 1, // Bit 16, PME Status
91 HPE1, 1, // Bit 30, Hot Plug SCI Enable
92 PCE1, 1, // Bit 31, Power Management SCI Enable.
94 HPS1, 1, // Bit 30, Hot Plug SCI Status
95 PCS1, 1, // Bit 31, Power Management SCI Status.
97 Method(_PRT,0,NotSerialized) {
98 If (LEqual(\GPIC, Zero)) // 8259 Interrupt Routing
103 // Port 1: INTA->PIRQF,INTB->PIRQG,INTC->PIRQH,INTD->PIRQE
104 Package() {0x0000ffff, 0, \_SB_.PCI0.LPC.LNKF, 0},
105 Package() {0x0000ffff, 1, \_SB_.PCI0.LPC.LNKG, 0},
106 Package() {0x0000ffff, 2, \_SB_.PCI0.LPC.LNKH, 0},
107 Package() {0x0000ffff, 3, \_SB_.PCI0.LPC.LNKE, 0},
111 else // IOAPIC Routing
116 // Port 1: INTA->PIRQF,INTB->PIRQG,INTC->PIRQH,INTD->PIRQE
117 Package() {0x0000ffff, 0, 0, 21},
118 Package() {0x0000ffff, 1, 0, 22},
119 Package() {0x0000ffff, 2, 0, 23},
120 Package() {0x0000ffff, 3, 0, 20},