Angel Pons | ae59387 | 2020-04-04 18:50:57 +0200 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
Marc Jones | 2448484 | 2017-05-04 21:17:45 -0600 | [diff] [blame] | 2 | |
Marc Jones | 2e8476c | 2017-10-05 21:56:15 -0600 | [diff] [blame] | 3 | /* 0:12.0 - EHCI */ |
| 4 | Device(EHC0) { |
Marc Jones | 2448484 | 2017-05-04 21:17:45 -0600 | [diff] [blame] | 5 | Name(_ADR, 0x00120000) |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 6 | Name(_PRW, Package() { 0xb, 3 }) |
Duncan Laurie | 32bdffa | 2018-05-07 15:37:28 -0700 | [diff] [blame] | 7 | Device (RHUB) { |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 8 | Name (_ADR, 0) |
Duncan Laurie | 32bdffa | 2018-05-07 15:37:28 -0700 | [diff] [blame] | 9 | Device (HS01) { Name (_ADR, 1) } |
| 10 | Device (HS02) { Name (_ADR, 2) } |
| 11 | Device (HS03) { Name (_ADR, 3) } |
| 12 | Device (HS04) { Name (_ADR, 4) } |
| 13 | Device (HS05) { Name (_ADR, 5) } |
| 14 | Device (HS06) { Name (_ADR, 6) } |
| 15 | Device (HS07) { Name (_ADR, 7) } |
| 16 | Device (HS08) { Name (_ADR, 8) } |
| 17 | } |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 18 | |
| 19 | Name(_PR0, Package() { P0U2 }) /* Indicate support for D0 */ |
| 20 | Name(_PR3, Package() { P3U2 }) /* Indicate support for D3cold */ |
| 21 | |
| 22 | Method(_S0W,0) { |
| 23 | Return(0) |
| 24 | } |
| 25 | |
| 26 | Method(_S3W,0) { |
| 27 | Return(4) |
| 28 | } |
| 29 | |
| 30 | Method(_S4W,0) { |
| 31 | Return(4) |
| 32 | } |
Marc Jones | 2e8476c | 2017-10-05 21:56:15 -0600 | [diff] [blame] | 33 | } /* end EHC0 */ |
Marc Jones | 2448484 | 2017-05-04 21:17:45 -0600 | [diff] [blame] | 34 | |
Marc Jones | 2448484 | 2017-05-04 21:17:45 -0600 | [diff] [blame] | 35 | |
| 36 | /* 0:10.0 - XHCI 0*/ |
| 37 | Device(XHC0) { |
| 38 | Name(_ADR, 0x00100000) |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 39 | Name(_PRW, Package() { 0xb, 3 }) |
Duncan Laurie | 32bdffa | 2018-05-07 15:37:28 -0700 | [diff] [blame] | 40 | Device (SS01) { Name (_ADR, 1) } |
| 41 | Device (SS02) { Name (_ADR, 2) } |
| 42 | Device (SS03) { Name (_ADR, 3) } |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 43 | |
| 44 | Name(_PR0, Package() { P0U3 }) /* Indicate support for D0 */ |
| 45 | Name(_PR3, Package() { P3U3 }) /* Indicate support for D3cold */ |
| 46 | |
| 47 | Method(_S0W,0) { |
| 48 | Return(0) |
| 49 | } |
| 50 | |
| 51 | Method(_S3W,0) { |
| 52 | Return(4) |
| 53 | } |
| 54 | |
| 55 | Method(_S4W,0) { |
| 56 | Return(4) |
| 57 | } |
| 58 | |
Marc Jones | 2448484 | 2017-05-04 21:17:45 -0600 | [diff] [blame] | 59 | } /* end XHC0 */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 60 | |
| 61 | Scope(\_SB) |
| 62 | { |
| 63 | Name(XHD0, 0) |
| 64 | Name(XHD3, 0) |
| 65 | PowerResource(P0U3, 0, 0) { |
| 66 | Method(_STA) { |
| 67 | Return(XHD0) |
| 68 | } |
| 69 | Method(_ON) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 70 | XHD0 = 0x01 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 71 | } |
| 72 | Method(_OFF) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 73 | XHD0 = 0x00 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 74 | } |
| 75 | } |
| 76 | PowerResource(P3U3, 0, 0) { |
| 77 | Method(_STA) { |
| 78 | Return(XHD3) |
| 79 | } |
| 80 | Method(_ON) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 81 | XHD3 = 0x01 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 82 | } |
| 83 | Method(_OFF) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 84 | XHD3 = 0x00 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 85 | } |
| 86 | } |
| 87 | |
| 88 | Name(EHD0, 0) |
| 89 | Name(EHD3, 0) |
| 90 | PowerResource(P0U2, 0, 0) { |
| 91 | Method(_STA) { |
| 92 | Return(EHD0) |
| 93 | } |
| 94 | Method(_ON) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 95 | EHD0 = 0x01 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 96 | } |
| 97 | Method(_OFF) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 98 | EHD0 = 0x00 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 99 | } |
| 100 | } |
| 101 | PowerResource(P3U2, 0, 0) { |
| 102 | Method(_STA) { |
| 103 | Return(EHD3) |
| 104 | } |
| 105 | Method(_ON) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 106 | EHD3 = 0x01 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 107 | } |
| 108 | Method(_OFF) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 109 | EHD3 = 0x00 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 110 | } |
| 111 | } |
| 112 | } |
| 113 | |
| 114 | OperationRegion(EHMC, SystemMemory, EH10, 0x100) |
| 115 | Field(EHMC, DwordAcc, NoLock, Preserve) |
| 116 | { |
| 117 | Offset(0xb0), |
| 118 | , 5, |
| 119 | ESIM, 1, |
| 120 | } |
| 121 | |
| 122 | Method(U2D3,0, Serialized) |
| 123 | { |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 124 | if (EH10 != 0) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 125 | EHBA = EH10 |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 126 | EHME = 1 |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 127 | SSIM = ESIM |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 128 | } |
| 129 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 130 | if (E_PS == 3) { |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 131 | RQTY = 0 |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 132 | RQ18 = 1 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 133 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 134 | Local0 = U2SR |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 135 | while (Local0) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 136 | Local0 = U2SR |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 137 | } |
| 138 | |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 139 | U2PD = 0 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 140 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 141 | Local0 = U2DS |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 142 | while (Local0 != 0) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 143 | Local0 = U2DS |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 144 | } |
| 145 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 146 | U2TD = 0x03 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 147 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 148 | if (U3TD == 0x03) { /* Shutdown USB2 PLL */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 149 | PWGC (0x40, 0) |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 150 | U2RP = 1 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 151 | } |
| 152 | } |
| 153 | } |
| 154 | |
| 155 | Method(U2D0,0, Serialized) |
| 156 | { |
| 157 | PWGC (0x40, 1) |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 158 | U2RP = 0 |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 159 | U2TD = 0x00 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 160 | |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 161 | U2TD = 0 |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 162 | U2PD = 1 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 163 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 164 | Local0 = U2DS |
| 165 | while (Local0 != 0x7) { |
| 166 | Local0 = U2DS |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 167 | } |
| 168 | |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 169 | RQTY = 1 |
| 170 | RQ18 = 1 |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 171 | Local0 = U2SR |
| 172 | while (!Local0) { |
| 173 | Local0 = U2SR |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 174 | } |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 175 | EH2C = EHID |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 176 | |
| 177 | |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 178 | if (EH10 != 0) { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 179 | EHBA = EH10 |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 180 | EHME = 1 |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 181 | ESIM = SSIM |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 182 | } |
| 183 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 184 | EH54 = ES54 |
| 185 | EH64 = ES64 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 186 | } |
| 187 | |
| 188 | Method(LXFW,3, Serialized) //Load Xhci FirmWare |
| 189 | { |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 190 | FWLM = 1 /* Firmware Load Mode */ |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 191 | ROAM = Arg0 /* ROM/RAM */ |
| 192 | UA04 = Arg1 |
| 193 | UA08 = Arg2 |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 194 | FPLS = 1 /* Firmware Preload Start */ |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 195 | Local0 = FPLC /* Firmware Preload Complete */ |
| 196 | while (!Local0) { |
| 197 | Local0 = FPLC |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 198 | } |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 199 | FPLS = 0 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 200 | } |
| 201 | |
| 202 | Method(U3D3,0, Serialized) |
| 203 | { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 204 | if (U_PS == 3) { |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 205 | X0_S () |
| 206 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 207 | PGA3 |= 0x20 /* SwUsb3SlpShutdown */ |
| 208 | Local0 = PGA3 & 0x20 |
| 209 | while (!Local0) { /* wait for it to complete */ |
| 210 | Local0 = PGA3 & 0x20 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 211 | } |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 212 | UD3P = 1 /* U3P_D3Cold_PWRDN */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 213 | |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 214 | U3PD = 0 /* PwrOnDev */ |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 215 | Local0 = U3DS |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 216 | while (Local0) { /* RstBState, RefClkOkState, PwrRstBState */ |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 217 | Local0 = U3DS |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 218 | } |
| 219 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 220 | U3TD = 0x3 /* TargetedDeviceState */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 221 | |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 222 | U3RP = 1 /* USB3_RefClk_Pwdn */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 223 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 224 | if (U2TD == 0x3) { /* If EHCI targeted in D3cold */ |
| 225 | PGA3 &= 0x9f /* SwUsb2S5RstB */ |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 226 | U2RP = 1 /* USB2_RefClk_Pwdn */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 227 | } |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 228 | U3PG = 0 /* XhcPwrGood */ |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 229 | U3PS = 1 /* Usb3PowerSel */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 230 | } |
| 231 | } |
| 232 | |
| 233 | Method(U3D0,0, Serialized) |
| 234 | { |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 235 | U3PS = 0 /* Usb3PowerSel */ |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 236 | U3PG = 1 /* XhcPwrGood */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 237 | |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 238 | U2RP = 0 |
| 239 | U3RP = 0 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 240 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 241 | Local0 = PGA3 & 0xdf |
| 242 | Local0 |= 0x40 |
| 243 | PGA3 = Local0 /* SwUsb2S5RstB */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 244 | |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 245 | U3TD = 0 /* TargetedDeviceState */ |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 246 | U3PD = 1 /* PwrOnDev */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 247 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 248 | Local0 = U3DS /* wait for RstBState, RefClkOkState, PwrRstBState */ |
| 249 | while (Local0 != 0x7) { |
| 250 | Local0 = U3DS |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 251 | } |
| 252 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 253 | Local0 = U3PY /* USB3 PHY Lock */ |
| 254 | while (!Local0) { |
| 255 | Local0 = U3PY |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 256 | } |
| 257 | |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 258 | U3PR = 0 /* U3P_RESTORE_RESET */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 259 | |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 260 | Local0 = AUSS /* AutoSizeStart */ |
| 261 | if (Local0 != 1) { |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 262 | AUSS = 1 |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 263 | } |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 264 | Local0 = AUSS |
| 265 | while (Local0 != 1) { |
| 266 | Local0 = AUSS |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 267 | } |
| 268 | |
| 269 | LXFW (1, FW00, FW01) |
| 270 | LXFW (0, FW02, FW03) |
| 271 | |
| 272 | X0_R () |
| 273 | |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 274 | U3PR = 1 /* U3P_RESTORE_RESET */ |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 275 | UD3P = 0 /* U3P_D3Cold_PWRDN */ |
Felix Singer | 7b8ac00 | 2022-12-26 08:45:56 +0100 | [diff] [blame] | 276 | U3TD = 1 /* TargetedDeviceState */ |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 277 | } |
| 278 | |
| 279 | Name (SVBF, Buffer (0x1000) {0}) /* length from FchCarrizo.asl, new fields */ |
| 280 | CreateDWordField(SVBF, 0x000, S000) /* will be easier to add from there */ |
| 281 | CreateDWordField(SVBF, 0x004, S004) |
| 282 | CreateDWordField(SVBF, 0x008, S008) |
| 283 | CreateDWordField(SVBF, 0x00C, S00C) |
| 284 | CreateDWordField(SVBF, 0x018, S018) |
| 285 | CreateDWordField(SVBF, 0x01C, S01C) |
| 286 | CreateDWordField(SVBF, 0x020, S020) |
| 287 | CreateDWordField(SVBF, 0x030, S030) |
| 288 | CreateDWordField(SVBF, 0x118, S118) |
| 289 | CreateDWordField(SVBF, 0x158, S158) |
| 290 | CreateDWordField(SVBF, 0x198, S198) |
| 291 | CreateDWordField(SVBF, 0x1D8, S1D8) |
| 292 | CreateDWordField(SVBF, 0x300, S300) |
| 293 | CreateDWordField(SVBF, 0x304, S304) |
| 294 | CreateDWordField(SVBF, 0x308, S308) |
| 295 | CreateDWordField(SVBF, 0x30C, S30C) |
| 296 | CreateDWordField(SVBF, 0x310, S310) |
| 297 | CreateDWordField(SVBF, 0x428, S428) |
| 298 | CreateDWordField(SVBF, 0x438, S438) |
| 299 | CreateDWordField(SVBF, 0x43C, S43C) |
| 300 | CreateDWordField(SVBF, 0x458, S458) |
| 301 | CreateDWordField(SVBF, 0x468, S468) |
| 302 | CreateDWordField(SVBF, 0x46C, S46C) |
| 303 | CreateDWordField(SVBF, 0x470, S470) |
| 304 | CreateDWordField(SVBF, 0x480, S480) |
| 305 | CreateDWordField(SVBF, 0x484, S484) |
| 306 | CreateDWordField(SVBF, 0x488, S488) |
| 307 | CreateDWordField(SVBF, 0x48C, S48C) |
| 308 | CreateDWordField(SVBF, 0x730, EHID) /* EHCI SSID */ |
| 309 | CreateDWordField(SVBF, 0x734, XHID) /* XHCI SSID */ |
| 310 | CreateByteField(SVBF, 0x740, ES54) /* EHCI PCIx54 */ |
| 311 | CreateByteField(SVBF, 0x741, ES64) /* EHCI PCIx64 */ |
| 312 | CreateDWordField(SVBF, 0x7B0, SSIM) /* EHCI SIM BIT */ |
| 313 | |
| 314 | Method(X0_S,0) |
| 315 | { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 316 | XHID = XH2C |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 317 | IDEX = 0 |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 318 | S000 = DATA |
| 319 | IDEX = 0x00000004 |
| 320 | S004 = DATA |
| 321 | IDEX = 0x00000008 |
| 322 | S008 = DATA |
| 323 | IDEX = 0x0000000C |
| 324 | S00C = DATA |
| 325 | IDEX = 0x00000018 |
| 326 | S018 = DATA |
| 327 | IDEX = 0x0000001C |
| 328 | S01C = DATA |
| 329 | IDEX = 0x00000020 |
| 330 | S020 = DATA |
| 331 | IDEX = 0x00000030 |
| 332 | S030 = DATA |
| 333 | IDEX = 0x00000118 |
| 334 | S118 = DATA |
| 335 | IDEX = 0x00000158 |
| 336 | S158 = DATA |
| 337 | IDEX = 0x00000198 |
| 338 | S198 = DATA |
| 339 | IDEX = 0x000001D8 |
| 340 | S1D8 = DATA |
| 341 | IDEX = 0x00000300 |
| 342 | S300 = DATA |
| 343 | IDEX = 0x00000304 |
| 344 | S304 = DATA |
| 345 | IDEX = 0x00000308 |
| 346 | S308 = DATA |
| 347 | IDEX = 0x0000030C |
| 348 | S30C = DATA |
| 349 | IDEX = 0x00000310 |
| 350 | S310 = DATA |
| 351 | IDEX = 0x40000028 |
| 352 | S428 = DATA |
| 353 | IDEX = 0x40000038 |
| 354 | S438 = DATA |
| 355 | IDEX = 0x4000003C |
| 356 | S43C = DATA |
| 357 | IDEX = 0x40000058 |
| 358 | S458 = DATA |
| 359 | IDEX = 0x40000068 |
| 360 | S468 = DATA |
| 361 | IDEX = 0x4000006C |
| 362 | S46C = DATA |
| 363 | IDEX = 0x40000070 |
| 364 | S470 = DATA |
| 365 | IDEX = 0x40000080 |
| 366 | S480 = DATA |
| 367 | IDEX = 0x40000084 |
| 368 | S484 = DATA |
| 369 | IDEX = 0x40000088 |
| 370 | S488 = DATA |
| 371 | IDEX = 0x4000008C |
| 372 | S48C = DATA |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 373 | } |
| 374 | |
| 375 | Method(X0_R,0) |
| 376 | { |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 377 | XH2C = XHID |
Felix Singer | 9df60d3 | 2022-12-26 09:43:07 +0100 | [diff] [blame^] | 378 | IDEX = 0 |
Elyes HAOUAS | 8684643 | 2020-09-24 15:47:34 +0200 | [diff] [blame] | 379 | DATA = S000 |
| 380 | IDEX = 0x000000004 |
| 381 | DATA = S004 |
| 382 | IDEX = 0x000000008 |
| 383 | DATA = S008 |
| 384 | IDEX = 0x00000000C |
| 385 | DATA = S00C |
| 386 | IDEX = 0x000000018 |
| 387 | DATA = S018 |
| 388 | IDEX = 0x00000001C |
| 389 | DATA = S01C |
| 390 | IDEX = 0x000000020 |
| 391 | DATA = S020 |
| 392 | IDEX = 0x00000030 |
| 393 | DATA = S030 |
| 394 | IDEX = 0x00000118 |
| 395 | DATA = S118 |
| 396 | IDEX = 0x00000158 |
| 397 | DATA = S158 |
| 398 | IDEX = 0x00000198 |
| 399 | DATA = S198 |
| 400 | IDEX = 0x000001D8 |
| 401 | DATA = S1D8 |
| 402 | IDEX = 0x00000300 |
| 403 | DATA = S300 |
| 404 | IDEX = 0x00000304 |
| 405 | DATA = S304 |
| 406 | IDEX = 0x00000308 |
| 407 | DATA = S308 |
| 408 | IDEX = 0x0000030C |
| 409 | DATA = S30C |
| 410 | IDEX = 0x00000310 |
| 411 | DATA = S310 |
| 412 | IDEX = 0x40000028 |
| 413 | DATA = S428 |
| 414 | IDEX = 0x40000038 |
| 415 | DATA = S438 |
| 416 | IDEX = 0x4000003C |
| 417 | DATA = S43C |
| 418 | IDEX = 0x40000058 |
| 419 | DATA = S458 |
| 420 | IDEX = 0x40000068 |
| 421 | DATA = S468 |
| 422 | IDEX = 0x4000006C |
| 423 | DATA = S46C |
| 424 | IDEX = 0x40000070 |
| 425 | DATA = S470 |
| 426 | IDEX = 0x40000080 |
| 427 | DATA = S480 |
| 428 | IDEX = 0x40000084 |
| 429 | DATA = S484 |
| 430 | IDEX = 0x40000088 |
| 431 | DATA = S488 |
| 432 | IDEX = 0x4000008C |
| 433 | DATA = S48C |
Marshall Dawson | fdb846d | 2018-09-26 15:43:21 -0600 | [diff] [blame] | 434 | } |