├── .gitignore ├── DSDT-GA-Z87M-D3H-F11b.dsl ├── DSDT-GA-Z87MX-D3H-F6.dsl ├── SSDT-GA-Z87MX-D3H-F6.dsl └── SSDT-GA-Z87MX-D3H-F7.dsl /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .git 3 | -------------------------------------------------------------------------------- /DSDT-GA-Z87M-D3H-F11b.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * Disassembly of DSDT-GA-Z87M-D3H-stripped.aml 3 | */ 4 | 5 | DefinitionBlock ("DSDT.aml", "DSDT", 2, "Apple", "iMac", 0x00070001) 6 | { 7 | Name (PMBS, 0x1800) 8 | Name (SMCR, 0x1830) 9 | 10 | OperationRegion (GNVS, SystemMemory, 0xDB742C18, 0x7D) 11 | Field (GNVS, AnyAcc, Lock, Preserve) 12 | { 13 | Offset (0x7B), 14 | ECON, 8, // Embedded Controller Availability Flag. 15 | GPIC, 8 // Global IOAPIC/8259 Interrupt Mode Flag. 16 | } 17 | 18 | OperationRegion (PMIO, SystemIO, 0x1800, 0x80) 19 | Field (PMIO, ByteAcc, NoLock, Preserve) 20 | { 21 | Offset (0x42), 22 | , 1, 23 | GPEC, 1 24 | } 25 | 26 | Scope (_PR) 27 | { 28 | // You may have/need 8 for your processor! 29 | Processor (CPU0, 0x01, 0x00000410, 0x06) {} 30 | Processor (CPU1, 0x02, 0x00000410, 0x06) {} 31 | Processor (CPU2, 0x03, 0x00000410, 0x06) {} 32 | Processor (CPU3, 0x04, 0x00000410, 0x06) {} 33 | /* You may need 4 more for your processor! 34 | Processor (CPU4, 0x05, 0x00001810, 0x06) {} 35 | Processor (CPU5, 0x06, 0x00001810, 0x06) {} 36 | Processor (CPU6, 0x07, 0x00001810, 0x06) {} 37 | Processor (CPU7, 0x08, 0x00001810, 0x06) {} */ 38 | } 39 | 40 | Scope (_SB) 41 | { 42 | Device (MEM2) // Optionally, required when the IGPU is enabled in the BIOS 43 | { 44 | Name (_HID, EisaId ("PNP0C01")) 45 | Name (_UID, 0x02) 46 | Name (_STA, 0x0F) 47 | Name (_CRS, ResourceTemplate () 48 | { 49 | Memory32Fixed (ReadWrite, 0x20000000, 0x00200000, ) 50 | Memory32Fixed (ReadWrite, 0x40000000, 0x00200000, ) 51 | }) 52 | } 53 | 54 | Device (PCI0) 55 | { 56 | Name (_ADR, Zero) // _ADR: Address 57 | Name (_UID, Zero) // _UID: Unique ID 58 | Name (_BBN, Zero) 59 | Name (_CID, EisaId ("PNP0A03")) // _CID: Compatible ID 60 | Name (_HID, EisaId ("PNP0A08")) // _HID: Hardware ID 61 | Name (_PRT, Package (0x1A) // _PRT: PCI Routing Table (AR00) 62 | { 63 | Package (0x04) { 0x001FFFFF, Zero, Zero, 0x15 }, 64 | Package (0x04) { 0x001FFFFF, One, Zero, 0x13 }, 65 | Package (0x04) { 0x001FFFFF, 0x02, Zero, 0x12 }, 66 | Package (0x04) { 0x001FFFFF, 0x03, Zero, 0x10 }, 67 | Package (0x04) { 0x0014FFFF, Zero, Zero, 0x10 }, // XHC1 68 | Package (0x04) { 0x001DFFFF, Zero, Zero, 0x17 }, // EHC1 69 | Package (0x04) { 0x001AFFFF, Zero, Zero, 0x10 }, // EHC2 70 | Package (0x04) { 0x001BFFFF, Zero, Zero, 0x16 }, // HDEF 71 | Package (0x04) { 0x0016FFFF, Zero, Zero, 0x10 }, 72 | Package (0x04) { 0x0016FFFF, One, Zero, 0x13 }, 73 | Package (0x04) { 0x0016FFFF, 0x02, Zero, 0x12 }, 74 | Package (0x04) { 0x0016FFFF, 0x03, Zero, 0x11 }, 75 | Package (0x04) { 0x001CFFFF, Zero, Zero, 0x10 }, // RP0n 76 | Package (0x04) { 0x001CFFFF, One, Zero, 0x11 }, // RP0n 77 | Package (0x04) { 0x001CFFFF, 0x02, Zero, 0x12 }, // RP0n 78 | Package (0x04) { 0x001CFFFF, 0x03, Zero, 0x13 }, // RP0n 79 | Package (0x04) { 0x0001FFFF, Zero, Zero, 0x10 }, // PEG0 80 | Package (0x04) { 0x0001FFFF, One, Zero, 0x11 }, // PEG0 81 | Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x12 }, // PEG0 82 | Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x13 }, // PEG0 83 | Package (0x04) { 0x0002FFFF, Zero, Zero, 0x10 }, // IGPU 84 | Package (0x04) { 0x0003FFFF, Zero, Zero, 0x10 }, // HDAU 85 | Package (0x04) { 0x0004FFFF, Zero, Zero, 0x10 }, 86 | Package (0x04) { 0x0004FFFF, One, Zero, 0x11 }, 87 | Package (0x04) { 0x0004FFFF, 0x02, Zero, 0x12 }, 88 | Package (0x04) { 0x0004FFFF, 0x03, Zero, 0x13 } 89 | }) 90 | Name (_CRS, ResourceTemplate () 91 | { 92 | IO (Decode16, 0x0CF8, 0x0CF8, 0x01, 0x08, ) 93 | WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 0x0000, 0x0000, 0x003E, 0x0000, 0x003F,,, ) 94 | DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x00000000, 0x00000000, 0x00000CF7, 0x00000000, 0x00000CF8,,,, TypeStatic) 95 | DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 0x00000000, 0x00000D00, 0x0000FFFF, 0x00000000, 0x0000F300,,,, TypeStatic) 96 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000A0000, 0x000BFFFF, 0x00000000, 0x00020000,,,, AddressRangeMemory, TypeStatic) 97 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadOnly, 0x00000000, 0x000C0000, 0x000C3FFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 98 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadOnly, 0x00000000, 0x000C4000, 0x000C7FFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 99 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadOnly, 0x00000000, 0x000C8000, 0x000CBFFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 100 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadOnly, 0x00000000, 0x000CC000, 0x000CFFFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 101 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000D0000, 0x000D3FFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 102 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000D4000, 0x000D7FFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 103 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000D8000, 0x000DBFFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 104 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000DC000, 0x000DFFFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 105 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000E0000, 0x000E3FFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 106 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0x000E4000, 0x000E7FFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 107 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadOnly, 0x00000000, 0x000E8000, 0x000EBFFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 108 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadOnly, 0x00000000, 0x000EC000, 0x000EFFFF, 0x00000000, 0x00004000,,,, AddressRangeMemory, TypeStatic) 109 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadOnly, 0x00000000, 0x000F0000, 0x000FFFFF, 0x00000000, 0x00010000,,,, AddressRangeMemory, TypeStatic) 110 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, 0xBFA00000, 0xFEAFFFFF, 0x00000000, 0x3F100000,,,, AddressRangeMemory, TypeStatic) 111 | }) 112 | 113 | Device (PDRC) 114 | { 115 | Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID 116 | Name (_UID, One) // _UID: Unique ID 117 | Name (_CRS, ResourceTemplate () 118 | { 119 | Memory32Fixed (ReadWrite, 0xFED1C000, 0x00004000, ) 120 | Memory32Fixed (ReadWrite, 0xFED10000, 0x00008000, ) 121 | Memory32Fixed (ReadWrite, 0xFED18000, 0x00001000, ) 122 | Memory32Fixed (ReadWrite, 0xFED19000, 0x00001000, ) 123 | Memory32Fixed (ReadWrite, 0xF8000000, 0x40000000, ) 124 | Memory32Fixed (ReadWrite, 0xFED20000, 0x00020000, ) 125 | Memory32Fixed (ReadOnly, 0xFED90000, 0x00004000, ) 126 | Memory32Fixed (ReadWrite, 0xFED45000, 0x0004B000, ) 127 | Memory32Fixed (ReadOnly, 0xFF000000, 0x01000000, ) 128 | Memory32Fixed (ReadOnly, 0xFEE00000, 0x00100000, ) 129 | Memory32Fixed (ReadWrite, 0xF7FDF000, 0x00001000, ) 130 | Memory32Fixed (ReadWrite, 0xF7FE0000, 0x00010000, ) 131 | }) 132 | } 133 | 134 | Device (MCHC) 135 | { 136 | Name (_ADR, Zero) 137 | } 138 | 139 | Device (IGPU) 140 | { 141 | Name (_ADR, 0x00020000) 142 | } 143 | 144 | 145 | Device (PEG0) // Can be removed/renamed to P0P2 if SSDT tables are dropped 146 | { 147 | Name (_ADR, 0x00010000) // _ADR: Address 148 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 149 | { 150 | 0x0D, 151 | 0x04 152 | }) 153 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table 154 | { 155 | Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, 156 | Package (0x04) { 0xFFFF, One, Zero, 0x11 }, 157 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, 158 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } 159 | }) 160 | 161 | /* Device (GFX0) // Optional, for GPU card. 162 | { 163 | Name (_ADR, Zero) // _ADR: Address 164 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 165 | { 166 | 0x09, 167 | 0x04 168 | }) 169 | } 170 | 171 | Device (HDAU) // Optional, Audio for GPU card. 172 | { 173 | Name (_ADR, One) // _ADR: Address 174 | } */ 175 | } 176 | 177 | Device (HDAU) 178 | { 179 | Name (_ADR, 0x00030000) // _ADR: Address 180 | Name (_STA, 0x0F) // _STA: Status 181 | 182 | OperationRegion (HDAH, PCI_Config, 0x54, One) 183 | Field (HDAH, ByteAcc, NoLock, Preserve) 184 | { 185 | , 5, 186 | AUDE, 1 187 | } 188 | 189 | Method (_INI, 0, NotSerialized) // _INI: Initialize 190 | { 191 | Store (One, AUDE) 192 | Notify (PCI0, Zero) 193 | } 194 | 195 | Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method 196 | { 197 | If (LEqual (Arg2, Zero)) 198 | { 199 | Return (Buffer (One) 200 | { 201 | 0x03 202 | }) 203 | } 204 | 205 | Return (Package (0x02) 206 | { 207 | "hda-gfx", 208 | Buffer (0x0A) 209 | { 210 | "onboard-1" 211 | } 212 | }) 213 | } 214 | } 215 | 216 | Device (XHC1) 217 | { 218 | Name (_ADR, 0x00140000) // _ADR: Address 219 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 220 | { 221 | 0x0D, 222 | 0x04 223 | }) 224 | 225 | Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method 226 | { 227 | If (LEqual (Arg2, Zero)) 228 | { 229 | Return (Buffer (One) 230 | { 231 | 0x03 232 | }) 233 | } 234 | 235 | Return (Package (0x09) 236 | { 237 | "AAPL,current-available", 238 | 0x0834, 239 | "AAPL,current-extra", 240 | 0x0A8C, 241 | "AAPL,current-extra-in-sleep", 242 | 0x0A8C, 243 | "AAPL,max-port-current-in-sleep", 244 | 0x0834, 245 | Buffer (One) 246 | { 247 | 0x00 248 | } 249 | }) 250 | } 251 | 252 | Device (RHUB) 253 | { 254 | Name (_ADR, Zero) // _ADR: Address 255 | } 256 | } 257 | 258 | Device (HECI) 259 | { 260 | Name (_ADR, 0x00160000) // _ADR: Address 261 | } 262 | 263 | Device (HDEF) 264 | { 265 | Name (_ADR, 0x001B0000) // _ADR: Address 266 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 267 | { 268 | 0x0D, 269 | 0x04 270 | }) 271 | } 272 | 273 | Device (LPCB) 274 | { 275 | Name (_ADR, 0x001F0000) // _ADR: Address 276 | 277 | OperationRegion (SMIE, SystemIO, PMBS, 0x04) 278 | Field (SMIE, ByteAcc, NoLock, Preserve) 279 | { 280 | , 10, 281 | RTCS, 1 282 | } 283 | 284 | OperationRegion (SLPR, SystemIO, SMCR, 0x08) 285 | Field (SLPR, ByteAcc, NoLock, Preserve) 286 | { 287 | , 4, 288 | SLPE, 1, 289 | , 31, 290 | SLPX, 1 291 | } 292 | 293 | Method (SPTS, 1, NotSerialized) 294 | { 295 | Store (One, SLPX) 296 | Store (One, SLPE) 297 | } 298 | 299 | Method (SWAK, 1, NotSerialized) 300 | { 301 | Store (Zero, SLPE) 302 | If (RTCS) {} 303 | Else 304 | { 305 | Notify (PWRB, 0x02) 306 | } 307 | } 308 | 309 | Device (DMAC) 310 | { 311 | Name (_HID, EisaId ("PNP0200")) // _HID: Hardware ID 312 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 313 | { 314 | IO (Decode16, 0x0000, 0x0000, 0x01, 0x20, ) 315 | IO (Decode16, 0x0081, 0x0081, 0x01, 0x11, ) 316 | IO (Decode16, 0x0093, 0x0093, 0x01, 0x0D, ) 317 | IO (Decode16, 0x00C0, 0x00C0, 0x01, 0x20, ) 318 | DMA (Compatibility, NotBusMaster, Transfer8_16, ) 319 | {4} 320 | }) 321 | } 322 | 323 | Device (EC) 324 | { 325 | Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID 326 | Name (_UID, One) // _UID: Unique ID 327 | Method (_STA, 0, NotSerialized) // _STA: Status 328 | { 329 | Return (Zero) 330 | } 331 | 332 | Name (CMDR, Zero) 333 | 334 | Method (ECRD, 1, Serialized) 335 | { 336 | Return (DerefOf (Arg0)) 337 | } 338 | 339 | Method (ECWT, 2, Serialized) 340 | { 341 | Store (Arg0, Arg1) 342 | } 343 | 344 | Method (ECMD, 1, Serialized) 345 | { 346 | If (ECON) 347 | { 348 | While (CMDR) 349 | { 350 | Stall (0x14) 351 | } 352 | 353 | Store (Arg0, CMDR) 354 | } 355 | } 356 | } 357 | 358 | Device (HPET) 359 | { 360 | Name (_HID, EisaId ("PNP0103")) // _HID: Hardware ID 361 | Name (_UID, Zero) // _UID: Unique ID 362 | Name (_STA, 0x0F) 363 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 364 | { 365 | Memory32Fixed (ReadWrite, 0xFED00000, 0x00000400 ) 366 | IRQNoFlags () 367 | {0} 368 | IRQNoFlags () 369 | {8} 370 | }) 371 | } 372 | 373 | Device (IPIC) 374 | { 375 | Name (_HID, EisaId ("PNP0000")) // _HID: Hardware ID 376 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 377 | { 378 | IO (Decode16, 0x0020, 0x0020, 0x01, 0x02, ) 379 | IO (Decode16, 0x0024, 0x0024, 0x01, 0x02, ) 380 | IO (Decode16, 0x0028, 0x0028, 0x01, 0x02, ) 381 | IO (Decode16, 0x002C, 0x002C, 0x01, 0x02, ) 382 | IO (Decode16, 0x0030, 0x0030, 0x01, 0x02, ) 383 | IO (Decode16, 0x0034, 0x0034, 0x01, 0x02, ) 384 | IO (Decode16, 0x0038, 0x0038, 0x01, 0x02, ) 385 | IO (Decode16, 0x003C, 0x003C, 0x01, 0x02, ) 386 | IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02, ) 387 | IO (Decode16, 0x00A4, 0x00A4, 0x01, 0x02, ) 388 | IO (Decode16, 0x00A8, 0x00A8, 0x01, 0x02, ) 389 | IO (Decode16, 0x00AC, 0x00AC, 0x01, 0x02, ) 390 | IO (Decode16, 0x00B0, 0x00B0, 0x01, 0x02, ) 391 | IO (Decode16, 0x00B4, 0x00B4, 0x01, 0x02, ) 392 | IO (Decode16, 0x00B8, 0x00B8, 0x01, 0x02, ) 393 | IO (Decode16, 0x00BC, 0x00BC, 0x01, 0x02, ) 394 | IO (Decode16, 0x04D0, 0x04D0, 0x01, 0x02, ) 395 | IRQNoFlags () 396 | {2} 397 | }) 398 | } 399 | 400 | Device (MATH) 401 | { 402 | Name (_HID, EisaId ("PNP0C04")) // _HID: Hardware ID 403 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 404 | { 405 | IO (Decode16, 0x00F0, 0x00F0, 0x01, 0x01, ) 406 | IRQNoFlags () 407 | {13} 408 | }) 409 | } 410 | 411 | Device (LDRC) 412 | { 413 | Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID 414 | Name (_UID, 0x02) // _UID: Unique ID 415 | Name (_CRS, ResourceTemplate () 416 | { 417 | IO (Decode16, 0x002E, 0x002E, 0x01, 0x02, ) 418 | IO (Decode16, 0x004E, 0x004E, 0x01, 0x02, ) 419 | IO (Decode16, 0x0061, 0x0061, 0x01, 0x01, ) 420 | IO (Decode16, 0x0063, 0x0063, 0x01, 0x01, ) 421 | IO (Decode16, 0x0065, 0x0065, 0x01, 0x01, ) 422 | IO (Decode16, 0x0067, 0x0067, 0x01, 0x01, ) 423 | IO (Decode16, 0x0070, 0x0070, 0x01, 0x01, ) 424 | IO (Decode16, 0x0080, 0x0080, 0x01, 0x01, ) 425 | IO (Decode16, 0x0092, 0x0092, 0x01, 0x01, ) 426 | IO (Decode16, 0x00B2, 0x00B2, 0x01, 0x02, ) 427 | IO (Decode16, 0x0680, 0x0680, 0x01, 0x20, ) 428 | IO (Decode16, 0xFFFF, 0xFFFF, 0x01, 0x01, ) 429 | IO (Decode16, 0xFFFF, 0xFFFF, 0x01, 0x01, ) 430 | IO (Decode16, 0xFFFF, 0xFFFF, 0x01, 0x01, ) 431 | IO (Decode16, 0x1C00, 0x1C00, 0x01, 0xFF, ) // Name (GPBS, 0x1C00) 432 | IO (Decode16, 0x1D00, 0x1D00, 0x01, 0xFF, ) // GPBS + 0x100 = 0x1D00 433 | IO (Decode16, 0x1E00, 0x1E00, 0x01, 0xFF, ) // GPBS + 0x200 = 0x1E00 434 | IO (Decode16, 0x1F00, 0x1F00, 0x01, 0xFF, ) // GPBS + 0x300 = 0x1F00 435 | IO (Decode16, 0x1800, 0x1800, 0x01, 0xFF, ) 436 | IO (Decode16, 0x164E, 0x164E, 0x01, 0x02, ) 437 | }) 438 | } 439 | 440 | Device (RTC) 441 | { 442 | Name (_HID, EisaId ("PNP0B00")) // _HID: Hardware ID 443 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 444 | { 445 | IO (Decode16, 0x0070, 0x0070, 0x01, 0x08, ) 446 | IRQNoFlags () 447 | {8} 448 | }) 449 | } 450 | 451 | Device (TIMR) 452 | { 453 | Name (_HID, EisaId ("PNP0100")) // _HID: Hardware ID 454 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 455 | { 456 | IO (Decode16, 0x0040, 0x0040, 0x01, 0x04, ) 457 | IO (Decode16, 0x0050, 0x0050, 0x10, 0x04, ) 458 | IRQNoFlags () 459 | {0} 460 | }) 461 | } 462 | 463 | Device (RMSC) 464 | { 465 | Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID 466 | Name (_UID, 0x10) // _UID: Unique ID 467 | Name (_CRS, ResourceTemplate () 468 | { 469 | IO (Decode16, 0x0010, 0x0010, 0x00, 0x10, ) 470 | IO (Decode16, 0x0022, 0x0022, 0x00, 0x1E, ) 471 | IO (Decode16, 0x0044, 0x0044, 0x00, 0x1C, ) 472 | IO (Decode16, 0x0062, 0x0062, 0x00, 0x02, ) 473 | IO (Decode16, 0x0065, 0x0065, 0x00, 0x0B, ) 474 | IO (Decode16, 0x0072, 0x0072, 0x00, 0x0E, ) 475 | IO (Decode16, 0x0080, 0x0080, 0x00, 0x01, ) 476 | IO (Decode16, 0x0084, 0x0084, 0x00, 0x03, ) 477 | IO (Decode16, 0x0088, 0x0088, 0x00, 0x01, ) 478 | IO (Decode16, 0x008C, 0x008C, 0x00, 0x03, ) 479 | IO (Decode16, 0x0090, 0x0090, 0x00, 0x10, ) 480 | IO (Decode16, 0x00A2, 0x00A2, 0x00, 0x1E, ) 481 | IO (Decode16, 0x00E0, 0x00E0, 0x00, 0x10, ) 482 | IO (Decode16, 0x04D0, 0x04D0, 0x00, 0x02, ) 483 | }) 484 | } 485 | } 486 | 487 | Device (SATA) 488 | { 489 | Name (_ADR, 0x001F0002) // _ADR: Address 490 | } 491 | 492 | Device (SBUS) 493 | { 494 | Name (_ADR, 0x001F0003) // _ADR: Address 495 | Device (BUS0) 496 | { 497 | Name (_CID, "smbus") // _CID: Compatible ID 498 | Name (_ADR, Zero) // _ADR: Address 499 | } 500 | Device (BUS1) 501 | { 502 | Name (_CID, "smbus") // _CID: Compatible ID 503 | Name (_ADR, One) // _ADR: Address 504 | } 505 | } 506 | 507 | Device (RP01) // May not be enabled on other motherboards 508 | { 509 | Name (_ADR, 0x001C0000) // _ADR: Address 510 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR04) 511 | { 512 | Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, 513 | Package (0x04) { 0xFFFF, One, Zero, 0x11 }, 514 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, 515 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } 516 | }) 517 | } 518 | 519 | Device (RP02) // May not be enabled on other motherboards 520 | { 521 | Name (_ADR, 0x001C0001) // _ADR: Address 522 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR05) 523 | { 524 | Package (0x04) { 0xFFFF, Zero, Zero, 0x11 }, 525 | Package (0x04) { 0xFFFF, One, Zero, 0x12 }, 526 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x13 }, 527 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 } 528 | }) 529 | } 530 | 531 | Device (RP03) // May not be enabled on other motherboards 532 | { 533 | Name (_ADR, 0x001C0002) // _ADR: Address 534 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR06) 535 | { 536 | Package (0x04) { 0xFFFF, Zero, Zero, 0x12 }, 537 | Package (0x04) { 0xFFFF, One, Zero, 0x13 }, 538 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x10 }, 539 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x11 } 540 | }) 541 | 542 | Device (GIGE) // Can be in another spot on other motherboards 543 | { 544 | Name (_ADR, Zero) // _ADR: Address 545 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 546 | { 547 | 0x09, 548 | 0x04 549 | }) 550 | } 551 | } 552 | 553 | Device (RP04) // May not be enabled on other motherboards 554 | { 555 | Name (_ADR, 0x001C0003) // _ADR: Address 556 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR07) 557 | { 558 | Package (0x04) { 0xFFFF, Zero, Zero, 0x13 }, 559 | Package (0x04) { 0xFFFF, One, Zero, 0x10 }, 560 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x11 }, 561 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x12 } 562 | }) 563 | } 564 | 565 | Device (RP05) // May not be enabled on other motherboards 566 | { 567 | Name (_ADR, 0x001C0004) // _ADR: Address 568 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR08) 569 | { 570 | Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, 571 | Package (0x04) { 0xFFFF, One, Zero, 0x11 }, 572 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, 573 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } 574 | }) 575 | 576 | Device (ARPT) // Optional PCIe card with BCM4360 WiFi/Bluetooth module 577 | { 578 | Name (_ADR, Zero) // _ADR: Address 579 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 580 | { 581 | 0x09, 582 | 0x04 583 | }) 584 | } 585 | } 586 | } 587 | 588 | Device (PWRB) 589 | { 590 | Name (_HID, EisaId ("PNP0C0C")) // _HID: Hardware ID 591 | Name (_UID, 0xAA) // _UID: Unique ID 592 | Name (_STA, 0x0B) // _STA: Status 593 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 594 | { 595 | 0x1D, 596 | 0x03 597 | }) 598 | } 599 | 600 | Device (SLPB) 601 | { 602 | Name (_HID, EisaId ("PNP0C0E")) // _HID: Hardware ID 603 | Name (_STA, 0x0B) // _STA: Status 604 | } 605 | } 606 | 607 | Scope (\_GPE) 608 | { 609 | Method (_L1D, 0, NotSerialized) // _Lxx: Level-Triggered GPE 610 | { 611 | Notify (\_SB.PWRB, 0x02) 612 | } 613 | 614 | Method (_L09, 0, NotSerialized) // _Lxx: Level-Triggered GPE 615 | { 616 | Notify (\_SB.PCI0.RP01, 0x02) 617 | Notify (\_SB.PCI0.RP02, 0x02) 618 | Notify (\_SB.PCI0.RP03, 0x02) 619 | Notify (\_SB.PCI0.RP04, 0x02) 620 | Notify (\_SB.PCI0.RP05, 0x02) 621 | /* Optional PEG0/P0P2 notification 622 | Notify (\_SB.PCI0.PEG0, 0x02) 623 | Notify (\_SB.PCI0.P0P2, 0x02) */ 624 | Notify (\_SB.PCI0.RP03.GIGE, 0x02) 625 | Notify (\_SB.PCI0.RP05.ARPT, 0x02) 626 | } 627 | 628 | Method (_L0D, 0, NotSerialized) // _Lxx: Level-Triggered GPE 629 | { 630 | /* Notify (\_SB.PCI0.EHC1, 0x02) 631 | Notify (\_SB.PCI0.EHC2, 0x02) */ 632 | Notify (\_SB.PCI0.XHC1, 0x02) 633 | Notify (\_SB.PCI0.HDEF, 0x02) 634 | } 635 | 636 | /* Method (_L01, 0, NotSerialized) // _Lxx: Level-Triggered GPE 637 | { 638 | Add (L01C, One, L01C) 639 | P8XH (Zero, One) 640 | P8XH (One, L01C) 641 | } */ 642 | 643 | Method (_L02, 0, NotSerialized) // _Lxx: Level-Triggered GPE 644 | { 645 | Store (Zero, GPEC) 646 | } 647 | 648 | /* Method (_L06, 0, NotSerialized) // _Lxx: Level-Triggered GPE 649 | { 650 | } 651 | 652 | Method (_L07, 0, NotSerialized) // _Lxx: Level-Triggered GPE 653 | { 654 | } */ 655 | } 656 | 657 | Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model 658 | { 659 | Store (Arg0, GPIC) 660 | } 661 | 662 | Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep 663 | { 664 | If (Arg0) 665 | { 666 | \_SB.PCI0.LPCB.SPTS (Arg0) 667 | } 668 | } 669 | 670 | Method (_WAK, 1, Serialized) // _WAK: Wake 671 | { 672 | \_SB.PCI0.LPCB.SWAK (Arg0) 673 | 674 | Return (Package (0x02) 675 | { 676 | Zero, 677 | Zero 678 | }) 679 | } 680 | 681 | Name (_S0, Package (0x04) { Zero, Zero, Zero, Zero }) 682 | Name (_S3, Package (0x04) { 0x05, Zero, Zero, Zero }) 683 | Name (_S4, Package (0x04) { 0x06, Zero, Zero, Zero }) 684 | Name (_S5, Package (0x04) { 0x07, Zero, Zero, Zero }) 685 | } 686 | 687 | -------------------------------------------------------------------------------- /DSDT-GA-Z87MX-D3H-F6.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * Disassembly of DSDT-GA-Z87MX-D3H-F6-factory.aml 3 | */ 4 | 5 | DefinitionBlock ("DSDT-GA-Z87MX-D3H-F6.aml", "DSDT", 2, "APPLE", "Macmini", 0x00070001) 6 | { 7 | Name (SP1O, 0x2E) 8 | Name (GPIB, 0x0A00) 9 | Name (GPIL, 0x10) 10 | Name (PMEB, 0x0A20) 11 | Name (PMEL, 0x10) 12 | Name (HWMB, 0x0A30) 13 | Name (HWML, 0x10) 14 | Name (IOES, Zero) 15 | Name (SMBS, 0x0580) 16 | Name (SMBL, 0x20) 17 | Name (PMBS, 0x1800) 18 | Name (GPBS, 0x1C00) 19 | Name (SMIP, 0xB2) 20 | Name (DSSP, Zero) 21 | Name (FHPP, Zero) 22 | Name (APCB, 0xFEC00000) 23 | Name (APCL, 0x1000) 24 | Name (SMCR, 0x1830) 25 | Name (HPTB, 0xFED00000) 26 | Name (HPTC, 0xFED1F404) 27 | Name (FLSZ, 0x00E00000) 28 | Name (SRCB, 0xFED1C000) 29 | Name (RCLN, 0x4000) 30 | Name (PEBS, 0xF8000000) 31 | Name (PELN, 0x04000000) 32 | Name (LAPB, 0xFEE00000) 33 | Name (EGPB, 0xFED19000) 34 | Name (MCHB, 0xFED10000) 35 | Name (VTBS, 0xFED90000) 36 | Name (VTLN, 0x4000) 37 | Name (ACPH, 0xDE) 38 | Name (ASSB, Zero) 39 | Name (AOTB, Zero) 40 | Name (AAXB, Zero) 41 | Name (HIDK, 0x0303D041) 42 | Name (HIDM, 0x030FD041) 43 | Name (CIDK, 0x0B03D041) 44 | Name (CIDM, 0x130FD041) 45 | Name (PEHP, One) 46 | Name (SHPC, Zero) 47 | Name (PEPM, One) 48 | Name (PEER, One) 49 | Name (PECS, One) 50 | Name (ITKE, Zero) 51 | Name (MBEC, 0xFFFF) 52 | Name (FMBL, One) 53 | Name (FDTP, 0x02) 54 | Name (FUPS, 0x03) 55 | Name (FUWS, 0x04) 56 | Name (BGR, One) 57 | Name (BFR, 0x02) 58 | Name (BBR, 0x03) 59 | Name (BWC, 0x04) 60 | Name (BWT1, 0x20) 61 | Name (BFHC, 0x0100) 62 | Name (TRTP, One) 63 | Name (WDTE, One) 64 | Name (TRTD, 0x02) 65 | Name (TRTI, 0x03) 66 | Name (PFTI, 0x04) 67 | Name (GCDD, One) 68 | Name (DSTA, 0x0A) 69 | Name (DSLO, 0x0C) 70 | Name (DSLC, 0x0E) 71 | Name (PITS, 0x10) 72 | Name (SBCS, 0x12) 73 | Name (SALS, 0x13) 74 | Name (LSSS, 0x2A) 75 | Name (SOOT, 0x35) 76 | Name (PDBR, 0x4D) 77 | Name (BW1P, 0x21) 78 | Name (BW2C, 0x22) 79 | Name (BW2P, 0x23) 80 | Name (BSPC, 0x24) 81 | Name (BSPP, 0x25) 82 | Name (BHB, 0x30) 83 | Name (BFS2, 0x31) 84 | Name (BFS3, 0x32) 85 | Name (BFS4, 0x33) 86 | Name (BRH, 0x35) 87 | Name (SMIA, 0xB2) 88 | Name (SMIB, 0xB3) 89 | Name (OFST, 0x35) 90 | Name (TPMF, Zero) 91 | Name (TCMF, Zero) 92 | Name (TMF1, Zero) 93 | Name (TMF2, Zero) 94 | Name (TMF3, Zero) 95 | Name (TRST, 0x02) 96 | Name (PMLN, 0x0100) 97 | Name (GPLN, 0x0400) 98 | Name (IOST, 0x8400) 99 | Name (TOPM, Zero) 100 | Name (ROMS, 0xFFE00000) 101 | Name (VGAF, One) 102 | OperationRegion (GNVS, SystemMemory, 0xDC226C18, 0x7D) 103 | Field (GNVS, AnyAcc, Lock, Preserve) 104 | { 105 | Offset (0x7B), 106 | ECON, 8, // Embedded Controller Availability Flag. 107 | GPIC, 8 // Global IOAPIC/8259 Interrupt Mode Flag. 108 | } 109 | 110 | OperationRegion (PMIO, SystemIO, 0x1800, 0x80) 111 | Field (PMIO, ByteAcc, NoLock, Preserve) 112 | { 113 | Offset (0x42), 114 | , 1, 115 | GPEC, 1 116 | } 117 | 118 | Scope (_PR) 119 | { 120 | Processor (CPU0, 0x01, 0x00001810, 0x06) {} 121 | Processor (CPU1, 0x02, 0x00001810, 0x06) {} 122 | Processor (CPU2, 0x03, 0x00001810, 0x06) {} 123 | Processor (CPU3, 0x04, 0x00001810, 0x06) {} 124 | /* You may need 4 more for your processor! 125 | Processor (CPU4, 0x05, 0x00001810, 0x06) {} 126 | Processor (CPU5, 0x06, 0x00001810, 0x06) {} 127 | Processor (CPU6, 0x07, 0x00001810, 0x06) {} 128 | Processor (CPU7, 0x08, 0x00001810, 0x06) {} */ 129 | } 130 | 131 | Scope (_SB) 132 | { 133 | Device (MEM2) // Optionally, required when the IGPU is enabled in the BIOS 134 | { 135 | Name (_HID, EisaId ("PNP0C01")) // _HID: Hardware ID 136 | Name (_UID, 0x02) // _UID: Unique ID 137 | Name (_STA, 0x0F) // _STA: Status 138 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 139 | { 140 | Memory32Fixed (ReadWrite, 0x20000000, 0x00200000, ) 141 | Memory32Fixed (ReadWrite, 0x40000000, 0x00200000, ) 142 | }) 143 | } 144 | 145 | Device (PCI0) 146 | { 147 | Name (_ADR, Zero) // _ADR: Address 148 | Name (_UID, Zero) // _UID: Unique ID 149 | Name (_BBN, Zero) 150 | Name (_CID, EisaId ("PNP0A03")) // _CID: Compatible ID 151 | Name (_HID, EisaId ("PNP0A08")) // _HID: Hardware ID 152 | Name (_PRT, Package (0x1B) // _PRT: PCI Routing Table (AR00) 153 | { 154 | Package (0x04) { 0x001FFFFF, Zero, Zero, 0x15}, 155 | Package (0x04) { 0x001FFFFF, One, Zero, 0x13}, 156 | Package (0x04) { 0x001FFFFF, 0x02, Zero, 0x12}, 157 | Package (0x04) { 0x001FFFFF, 0x03, Zero, 0x10}, 158 | Package (0x04) { 0x0014FFFF, Zero, Zero, 0x10}, // XHC1 159 | Package (0x04) { 0x001DFFFF, Zero, Zero, 0x17}, // EHC1 160 | Package (0x04) { 0x001AFFFF, Zero, Zero, 0x10}, // EHC2 161 | Package (0x04) { 0x001BFFFF, Zero, Zero, 0x16}, // HDEF 162 | Package (0x04) { 0x0016FFFF, Zero, Zero, 0x10}, 163 | Package (0x04) { 0x0016FFFF, One, Zero, 0x13}, 164 | Package (0x04) { 0x0016FFFF, 0x02, Zero, 0x12}, 165 | Package (0x04) { 0x0016FFFF, 0x03, Zero, 0x11}, 166 | Package (0x04) { 0x001CFFFF, Zero, Zero, 0x10}, // RP0n 167 | Package (0x04) { 0x001CFFFF, One, Zero, 0x11}, // RP0n 168 | Package (0x04) { 0x001CFFFF, 0x02, Zero, 0x12}, // RP0n 169 | Package (0x04) { 0x001CFFFF, 0x03, Zero, 0x13}, // RP0n 170 | Package (0x04) { 0x0001FFFF, Zero, Zero, 0x10}, // PEGn 171 | Package (0x04) { 0x0001FFFF, One, Zero, 0x11}, // PEGn 172 | Package (0x04) { 0x0001FFFF, 0x02, Zero, 0x12}, // PEGn 173 | Package (0x04) { 0x0001FFFF, 0x03, Zero, 0x13}, // PEGn 174 | Package (0x04) { 0x0002FFFF, Zero, Zero, 0x10}, // IGPU 175 | Package (0x04) { 0x0003FFFF, Zero, Zero, 0x10}, // HDAU 176 | Package (0x04) { 0x0004FFFF, Zero, Zero, 0x10}, 177 | Package (0x04) { 0x0004FFFF, One, Zero, 0x11}, 178 | Package (0x04) { 0x0004FFFF, 0x02, Zero, 0x12}, 179 | Package (0x04) { 0x0004FFFF, 0x03, Zero, 0x13}, 180 | Package (0x04) { 0x0019FFFF, Zero, Zero, 0x14} 181 | }) 182 | OperationRegion (HBUS, PCI_Config, Zero, 0x0100) 183 | Field (HBUS, DWordAcc, NoLock, Preserve) 184 | { 185 | Offset (0x40), 186 | EPEN, 1, 187 | , 11, 188 | EPBR, 20, 189 | Offset (0x48), 190 | MHEN, 1, 191 | , 14, 192 | MHBR, 17, 193 | Offset (0x50), 194 | GCLK, 1, 195 | Offset (0x54), 196 | D0EN, 1, 197 | D1F2, 1, 198 | D1F1, 1, 199 | D1F0, 1, 200 | Offset (0x60), 201 | PXEN, 1, 202 | PXSZ, 2, 203 | , 23, 204 | PXBR, 6, 205 | Offset (0x68), 206 | DIEN, 1, 207 | , 11, 208 | DIBR, 20, 209 | Offset (0x70), 210 | , 20, 211 | MEBR, 12, 212 | Offset (0x80), 213 | , 4, 214 | PM0H, 2, 215 | Offset (0x81), 216 | PM1L, 2, 217 | , 2, 218 | PM1H, 2, 219 | Offset (0x82), 220 | PM2L, 2, 221 | , 2, 222 | PM2H, 2, 223 | Offset (0x83), 224 | PM3L, 2, 225 | , 2, 226 | PM3H, 2, 227 | Offset (0x84), 228 | PM4L, 2, 229 | , 2, 230 | PM4H, 2, 231 | Offset (0x85), 232 | PM5L, 2, 233 | , 2, 234 | PM5H, 2, 235 | Offset (0x86), 236 | PM6L, 2, 237 | , 2, 238 | PM6H, 2, 239 | Offset (0x87), 240 | Offset (0xA8), 241 | , 20, 242 | TUUD, 19, 243 | Offset (0xBC), 244 | , 20, 245 | TLUD, 12, 246 | Offset (0xC8), 247 | , 7, 248 | HTSE, 1 249 | } 250 | 251 | OperationRegion (MCHT, SystemMemory, 0xFED10000, 0x1100) 252 | Name (BUF0, ResourceTemplate () 253 | { 254 | WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode, 255 | 0x0000, // Granularity 256 | 0x0000, // Range Minimum 257 | 0x00FF, // Range Maximum 258 | 0x0000, // Translation Offset 259 | 0x0100, // Length 260 | ,, _Y00) 261 | DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 262 | 0x00000000, // Granularity 263 | 0x00000000, // Range Minimum 264 | 0x00000CF7, // Range Maximum 265 | 0x00000000, // Translation Offset 266 | 0x00000CF8, // Length 267 | ,, , TypeStatic) 268 | IO (Decode16, 269 | 0x0CF8, // Range Minimum 270 | 0x0CF8, // Range Maximum 271 | 0x01, // Alignment 272 | 0x08, // Length 273 | ) 274 | DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange, 275 | 0x00000000, // Granularity 276 | 0x00000D00, // Range Minimum 277 | 0x0000FFFF, // Range Maximum 278 | 0x00000000, // Translation Offset 279 | 0x0000F300, // Length 280 | ,, , TypeStatic) 281 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 282 | 0x00000000, // Granularity 283 | 0x000A0000, // Range Minimum 284 | 0x000BFFFF, // Range Maximum 285 | 0x00000000, // Translation Offset 286 | 0x00020000, // Length 287 | ,, , AddressRangeMemory, TypeStatic) 288 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 289 | 0x00000000, // Granularity 290 | 0x000C0000, // Range Minimum 291 | 0x000C3FFF, // Range Maximum 292 | 0x00000000, // Translation Offset 293 | 0x00004000, // Length 294 | ,, _Y01, AddressRangeMemory, TypeStatic) 295 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 296 | 0x00000000, // Granularity 297 | 0x000C4000, // Range Minimum 298 | 0x000C7FFF, // Range Maximum 299 | 0x00000000, // Translation Offset 300 | 0x00004000, // Length 301 | ,, _Y02, AddressRangeMemory, TypeStatic) 302 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 303 | 0x00000000, // Granularity 304 | 0x000C8000, // Range Minimum 305 | 0x000CBFFF, // Range Maximum 306 | 0x00000000, // Translation Offset 307 | 0x00004000, // Length 308 | ,, _Y03, AddressRangeMemory, TypeStatic) 309 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 310 | 0x00000000, // Granularity 311 | 0x000CC000, // Range Minimum 312 | 0x000CFFFF, // Range Maximum 313 | 0x00000000, // Translation Offset 314 | 0x00004000, // Length 315 | ,, _Y04, AddressRangeMemory, TypeStatic) 316 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 317 | 0x00000000, // Granularity 318 | 0x000D0000, // Range Minimum 319 | 0x000D3FFF, // Range Maximum 320 | 0x00000000, // Translation Offset 321 | 0x00004000, // Length 322 | ,, _Y05, AddressRangeMemory, TypeStatic) 323 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 324 | 0x00000000, // Granularity 325 | 0x000D4000, // Range Minimum 326 | 0x000D7FFF, // Range Maximum 327 | 0x00000000, // Translation Offset 328 | 0x00004000, // Length 329 | ,, _Y06, AddressRangeMemory, TypeStatic) 330 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 331 | 0x00000000, // Granularity 332 | 0x000D8000, // Range Minimum 333 | 0x000DBFFF, // Range Maximum 334 | 0x00000000, // Translation Offset 335 | 0x00004000, // Length 336 | ,, _Y07, AddressRangeMemory, TypeStatic) 337 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 338 | 0x00000000, // Granularity 339 | 0x000DC000, // Range Minimum 340 | 0x000DFFFF, // Range Maximum 341 | 0x00000000, // Translation Offset 342 | 0x00004000, // Length 343 | ,, _Y08, AddressRangeMemory, TypeStatic) 344 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 345 | 0x00000000, // Granularity 346 | 0x000E0000, // Range Minimum 347 | 0x000E3FFF, // Range Maximum 348 | 0x00000000, // Translation Offset 349 | 0x00004000, // Length 350 | ,, _Y09, AddressRangeMemory, TypeStatic) 351 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 352 | 0x00000000, // Granularity 353 | 0x000E4000, // Range Minimum 354 | 0x000E7FFF, // Range Maximum 355 | 0x00000000, // Translation Offset 356 | 0x00004000, // Length 357 | ,, _Y0A, AddressRangeMemory, TypeStatic) 358 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 359 | 0x00000000, // Granularity 360 | 0x000E8000, // Range Minimum 361 | 0x000EBFFF, // Range Maximum 362 | 0x00000000, // Translation Offset 363 | 0x00004000, // Length 364 | ,, _Y0B, AddressRangeMemory, TypeStatic) 365 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 366 | 0x00000000, // Granularity 367 | 0x000EC000, // Range Minimum 368 | 0x000EFFFF, // Range Maximum 369 | 0x00000000, // Translation Offset 370 | 0x00004000, // Length 371 | ,, _Y0C, AddressRangeMemory, TypeStatic) 372 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 373 | 0x00000000, // Granularity 374 | 0x000F0000, // Range Minimum 375 | 0x000FFFFF, // Range Maximum 376 | 0x00000000, // Translation Offset 377 | 0x00010000, // Length 378 | ,, _Y0D, AddressRangeMemory, TypeStatic) 379 | DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 380 | 0x00000000, // Granularity 381 | 0x00000000, // Range Minimum 382 | 0xFEAFFFFF, // Range Maximum 383 | 0x00000000, // Translation Offset 384 | 0xFEB00000, // Length 385 | ,, _Y0E, AddressRangeMemory, TypeStatic) 386 | }) 387 | Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings 388 | { 389 | CreateWordField (BUF0, ^_Y00._MAX, PBMX) 390 | Store (Subtract (ShiftRight (PELN, 0x14), 0x02), PBMX) 391 | CreateWordField (BUF0, ^_Y00._LEN, PBLN) 392 | Store (Subtract (ShiftRight (PELN, 0x14), One), PBLN) 393 | If (PM1L) 394 | { 395 | CreateDWordField (BUF0, ^_Y01._LEN, C0LN) 396 | Store (Zero, C0LN) 397 | } 398 | 399 | If (LEqual (PM1L, One)) 400 | { 401 | CreateBitField (BUF0, ^_Y01._RW, C0RW) 402 | Store (Zero, C0RW) 403 | } 404 | 405 | If (PM1H) 406 | { 407 | CreateDWordField (BUF0, ^_Y02._LEN, C4LN) 408 | Store (Zero, C4LN) 409 | } 410 | 411 | If (LEqual (PM1H, One)) 412 | { 413 | CreateBitField (BUF0, ^_Y02._RW, C4RW) 414 | Store (Zero, C4RW) 415 | } 416 | 417 | If (PM2L) 418 | { 419 | CreateDWordField (BUF0, ^_Y03._LEN, C8LN) 420 | Store (Zero, C8LN) 421 | } 422 | 423 | If (LEqual (PM2L, One)) 424 | { 425 | CreateBitField (BUF0, ^_Y03._RW, C8RW) 426 | Store (Zero, C8RW) 427 | } 428 | 429 | If (PM2H) 430 | { 431 | CreateDWordField (BUF0, ^_Y04._LEN, CCLN) 432 | Store (Zero, CCLN) 433 | } 434 | 435 | If (LEqual (PM2H, One)) 436 | { 437 | CreateBitField (BUF0, ^_Y04._RW, CCRW) 438 | Store (Zero, CCRW) 439 | } 440 | 441 | If (PM3L) 442 | { 443 | CreateDWordField (BUF0, ^_Y05._LEN, D0LN) 444 | Store (Zero, D0LN) 445 | } 446 | 447 | If (LEqual (PM3L, One)) 448 | { 449 | CreateBitField (BUF0, ^_Y05._RW, D0RW) 450 | Store (Zero, D0RW) 451 | } 452 | 453 | If (PM3H) 454 | { 455 | CreateDWordField (BUF0, ^_Y06._LEN, D4LN) 456 | Store (Zero, D4LN) 457 | } 458 | 459 | If (LEqual (PM3H, One)) 460 | { 461 | CreateBitField (BUF0, ^_Y06._RW, D4RW) 462 | Store (Zero, D4RW) 463 | } 464 | 465 | If (PM4L) 466 | { 467 | CreateDWordField (BUF0, ^_Y07._LEN, D8LN) 468 | Store (Zero, D8LN) 469 | } 470 | 471 | If (LEqual (PM4L, One)) 472 | { 473 | CreateBitField (BUF0, ^_Y07._RW, D8RW) 474 | Store (Zero, D8RW) 475 | } 476 | 477 | If (PM4H) 478 | { 479 | CreateDWordField (BUF0, ^_Y08._LEN, DCLN) 480 | Store (Zero, DCLN) 481 | } 482 | 483 | If (LEqual (PM4H, One)) 484 | { 485 | CreateBitField (BUF0, ^_Y08._RW, DCRW) 486 | Store (Zero, DCRW) 487 | } 488 | 489 | If (PM5L) 490 | { 491 | CreateDWordField (BUF0, ^_Y09._LEN, E0LN) 492 | Store (Zero, E0LN) 493 | } 494 | 495 | If (LEqual (PM5L, One)) 496 | { 497 | CreateBitField (BUF0, ^_Y09._RW, E0RW) 498 | Store (Zero, E0RW) 499 | } 500 | 501 | If (PM5H) 502 | { 503 | CreateDWordField (BUF0, ^_Y0A._LEN, E4LN) 504 | Store (Zero, E4LN) 505 | } 506 | 507 | If (LEqual (PM5H, One)) 508 | { 509 | CreateBitField (BUF0, ^_Y0A._RW, E4RW) 510 | Store (Zero, E4RW) 511 | } 512 | 513 | If (PM6L) 514 | { 515 | CreateDWordField (BUF0, ^_Y0B._LEN, E8LN) 516 | Store (Zero, E8LN) 517 | } 518 | 519 | If (LEqual (PM6L, One)) 520 | { 521 | CreateBitField (BUF0, ^_Y0B._RW, E8RW) 522 | Store (Zero, E8RW) 523 | } 524 | 525 | If (PM6H) 526 | { 527 | CreateDWordField (BUF0, ^_Y0C._LEN, ECLN) 528 | Store (Zero, ECLN) 529 | } 530 | 531 | If (LEqual (PM6H, One)) 532 | { 533 | CreateBitField (BUF0, ^_Y0C._RW, ECRW) 534 | Store (Zero, ECRW) 535 | } 536 | 537 | If (PM0H) 538 | { 539 | CreateDWordField (BUF0, ^_Y0D._LEN, F0LN) 540 | Store (Zero, F0LN) 541 | } 542 | 543 | If (LEqual (PM0H, One)) 544 | { 545 | CreateBitField (BUF0, ^_Y0D._RW, F0RW) 546 | Store (Zero, F0RW) 547 | } 548 | 549 | CreateDWordField (BUF0, ^_Y0E._MIN, M1MN) 550 | CreateDWordField (BUF0, ^_Y0E._MAX, M1MX) 551 | CreateDWordField (BUF0, ^_Y0E._LEN, M1LN) 552 | ShiftLeft (TLUD, 0x14, M1MN) 553 | Add (Subtract (M1MX, M1MN), One, M1LN) 554 | Return (BUF0) 555 | } 556 | 557 | Device (PDRC) 558 | { 559 | Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID 560 | Name (_UID, One) // _UID: Unique ID 561 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 562 | { 563 | Memory32Fixed (ReadWrite, 0xFED1C000, 0x00004000, ) 564 | Memory32Fixed (ReadWrite, 0xFED10000, 0x00008000, ) 565 | Memory32Fixed (ReadWrite, 0xFED18000, 0x00001000, ) 566 | Memory32Fixed (ReadWrite, 0xFED19000, 0x00001000, ) 567 | Memory32Fixed (ReadWrite, 0xF8000000, 0x40000000, ) 568 | Memory32Fixed (ReadWrite, 0xFED20000, 0x00020000, ) 569 | Memory32Fixed (ReadOnly, 0xFED90000, 0x00004000, ) 570 | Memory32Fixed (ReadWrite, 0xFED45000, 0x0004B000, ) 571 | Memory32Fixed (ReadOnly, 0xFF000000, 0x01000000, ) 572 | Memory32Fixed (ReadOnly, 0xFEE00000, 0x00100000, ) 573 | Memory32Fixed (ReadWrite, 0xF7FEF000, 0x00001000, ) 574 | Memory32Fixed (ReadWrite, 0xF7FF0000, 0x00001000, ) 575 | }) 576 | } 577 | 578 | Device (MCHC) 579 | { 580 | Name (_ADR, Zero) // _ADR: Address 581 | } 582 | 583 | Device (IGPU) 584 | { 585 | Name (_ADR, 0x00020000) // _ADR: Address 586 | 587 | Method (_DSM, 4, NotSerialized) 588 | { 589 | If (LEqual (Arg2, Zero)) 590 | { 591 | Return (Buffer (One) 592 | { 593 | 0x03 594 | }) 595 | } 596 | 597 | Return (Package (0x02) 598 | { 599 | "hda-gfx", 600 | Buffer (0x0A) 601 | { 602 | "onboard-1" 603 | } 604 | }) 605 | } 606 | } 607 | 608 | Device (P0P2) 609 | { 610 | Name (_ADR, 0x00010000) // _ADR: Address 611 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 612 | { 613 | 0x09, 614 | 0x04 615 | }) 616 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR02) 617 | { 618 | Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, 619 | Package (0x04) { 0xFFFF, One, Zero, 0x11 }, 620 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, 621 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } 622 | }) 623 | 624 | /* Device (GFX0) // Optional, for GPU card. 625 | { 626 | Name (_ADR, Zero) // _ADR: Address 627 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 628 | { 629 | 0x09, 630 | 0x04 631 | }) 632 | } 633 | 634 | Device (HDAU) // Optional, Audio for GPU card. 635 | { 636 | Name (_ADR, One) // _ADR: Address 637 | } */ 638 | 639 | } 640 | 641 | Device (HDAU) 642 | { 643 | Name (_ADR, 0x00030000) 644 | Name (_STA, 0x0F) // _STA: Status 645 | 646 | OperationRegion (HDAH, PCI_Config, 0x54, One) 647 | Field (HDAH, ByteAcc, NoLock, Preserve) 648 | { 649 | , 5, 650 | AUDE, 1 651 | } 652 | 653 | Method (_INI, 0, NotSerialized) 654 | { 655 | Store (One, AUDE) 656 | Notify (PCI0, Zero) 657 | } 658 | 659 | Method (_DSM, 4, NotSerialized) 660 | { 661 | If (LEqual (Arg2, Zero)) 662 | { 663 | Return (Buffer (One) 664 | { 665 | 0x03 666 | }) 667 | } 668 | 669 | Return (Package (0x02) 670 | { 671 | "hda-gfx", 672 | Buffer (0x0A) 673 | { 674 | "onboard-1" 675 | } 676 | }) 677 | } 678 | } 679 | 680 | Device (XHC1) 681 | { 682 | Name (_ADR, 0x00140000) // _ADR: Address 683 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 684 | { 685 | 0x0D, 686 | 0x04 687 | }) 688 | Method (_DSM, 4, NotSerialized) 689 | { 690 | If (LEqual (Arg2, Zero)) 691 | { 692 | Return (Buffer (One) 693 | { 694 | 0x03 695 | }) 696 | } 697 | 698 | Return (Package (0x09) 699 | { 700 | "AAPL,current-available", 701 | 0x0834, 702 | "AAPL,current-extra", 703 | 0x0A8C, 704 | "AAPL,current-extra-in-sleep", 705 | 0x0A8C, 706 | "AAPL,max-port-current-in-sleep", 707 | 0x0834, 708 | Buffer (One) 709 | { 710 | 0x00 711 | } 712 | }) 713 | } 714 | 715 | Device (RHUB) 716 | { 717 | Name (_ADR, Zero) // _ADR: Address 718 | } 719 | } 720 | 721 | Device (HECI) 722 | { 723 | Name (_ADR, 0x00160000) // _ADR: Address 724 | } 725 | 726 | 727 | Device (HDEF) 728 | { 729 | Name (_ADR, 0x001B0000) // _ADR: Address 730 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 731 | { 732 | 0x0D, 733 | 0x04 734 | }) 735 | } 736 | 737 | Device (GIGE) 738 | { 739 | Name (_ADR, 0x00190000) // _ADR: Address 740 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 741 | { 742 | 0x0D, 743 | 0x04 744 | }) 745 | } 746 | 747 | Device (LPCB) 748 | { 749 | Name (_ADR, 0x001F0000) // _ADR: Address 750 | OperationRegion (SMIE, SystemIO, PMBS, 0x04) 751 | Field (SMIE, ByteAcc, NoLock, Preserve) 752 | { 753 | , 10, 754 | RTCS, 1 755 | } 756 | 757 | OperationRegion (SLPR, SystemIO, SMCR, 0x08) 758 | Field (SLPR, ByteAcc, NoLock, Preserve) 759 | { 760 | , 4, 761 | SLPE, 1, 762 | , 31, 763 | SLPX, 1 764 | } 765 | 766 | Method (SPTS, 1, NotSerialized) 767 | { 768 | Store (One, SLPX) 769 | Store (One, SLPE) 770 | } 771 | 772 | Method (SWAK, 1, NotSerialized) 773 | { 774 | Store (Zero, SLPE) 775 | } 776 | 777 | Device (DMAC) 778 | { 779 | Name (_HID, EisaId ("PNP0200")) // _HID: Hardware ID 780 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 781 | { 782 | IO (Decode16, 0x0000, 0x0000, 0x01, 0x20,) 783 | IO (Decode16, 0x0081, 0x0081, 0x01, 0x11,) 784 | IO (Decode16, 0x0093, 0x0093, 0x01, 0x0D,) 785 | IO (Decode16, 0x00C0, 0x00C0, 0x01, 0x20,) 786 | DMA (Compatibility, NotBusMaster, Transfer8_16, ) 787 | {4} 788 | }) 789 | } 790 | 791 | Device (EC) 792 | { 793 | Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID 794 | Name (_UID, One) // _UID: Unique ID 795 | Name (_STA, Zero) // _STA: Status 796 | } 797 | 798 | Device (FWHD) 799 | { 800 | Name (_HID, EisaId ("INT0800")) // _HID: Hardware ID 801 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 802 | { 803 | Memory32Fixed (ReadOnly, 804 | 0xFF000000, // Address Base 805 | 0x01000000, // Address Length 806 | ) 807 | }) 808 | } 809 | 810 | Device (HPET) 811 | { 812 | Name (_HID, EisaId ("PNP0103")) // _HID: Hardware ID 813 | Name (_UID, Zero) // _UID: Unique ID 814 | Name (_STA, 0x0F) // _STA: Status 815 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 816 | { 817 | Memory32Fixed (ReadWrite, 0xFED00000, 0x00000400, ) 818 | IRQNoFlags () 819 | {0} 820 | IRQNoFlags () 821 | {8} 822 | }) 823 | } 824 | 825 | Device (IPIC) 826 | { 827 | Name (_HID, EisaId ("PNP0000")) // _HID: Hardware ID 828 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 829 | { 830 | IO (Decode16, 0x0020, 0x0020, 0x01, 0x02, ) 831 | IO (Decode16, 0x0024, 0x0024, 0x01, 0x02, ) 832 | IO (Decode16, 0x0028, 0x0028, 0x01, 0x02, ) 833 | IO (Decode16, 0x002C, 0x002C, 0x01, 0x02, ) 834 | IO (Decode16, 0x0030, 0x0030, 0x01, 0x02, ) 835 | IO (Decode16, 0x0034, 0x0034, 0x01, 0x02, ) 836 | IO (Decode16, 0x0038, 0x0038, 0x01, 0x02, ) 837 | IO (Decode16, 0x003C, 0x003C, 0x01, 0x02, ) 838 | IO (Decode16, 0x00A0, 0x00A0, 0x01, 0x02, ) 839 | IO (Decode16, 0x00A4, 0x00A4, 0x01, 0x02, ) 840 | IO (Decode16, 0x00A8, 0x00A8, 0x01, 0x02, ) 841 | IO (Decode16, 0x00AC, 0x00AC, 0x01, 0x02, ) 842 | IO (Decode16, 0x00B0, 0x00B0, 0x01, 0x02, ) 843 | IO (Decode16, 0x00B4, 0x00B4, 0x01, 0x02, ) 844 | IO (Decode16, 0x00B8, 0x00B8, 0x01, 0x02, ) 845 | IO (Decode16, 0x00BC, 0x00BC, 0x01, 0x02, ) 846 | IO (Decode16, 0x04D0, 0x04D0, 0x01, 0x02, ) 847 | IRQNoFlags () 848 | {2} 849 | }) 850 | } 851 | 852 | Device (MATH) 853 | { 854 | Name (_HID, EisaId ("PNP0C04")) // _HID: Hardware ID 855 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 856 | { 857 | IO (Decode16, 0x00F0, 0x00F0, 0x01, 0x01, ) 858 | IRQNoFlags () 859 | {13} 860 | }) 861 | } 862 | 863 | Device (LDRC) 864 | { 865 | Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID 866 | Name (_UID, 0x02) // _UID: Unique ID 867 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 868 | { 869 | IO (Decode16, 0x002E, 0x002E, 0x01, 0x02, ) 870 | IO (Decode16, 0x004E, 0x004E, 0x01, 0x02, ) 871 | IO (Decode16, 0x0061, 0x0061, 0x01, 0x01, ) 872 | IO (Decode16, 0x0063, 0x0063, 0x01, 0x01, ) 873 | IO (Decode16, 0x0065, 0x0065, 0x01, 0x01, ) 874 | IO (Decode16, 0x0067, 0x0067, 0x01, 0x01, ) 875 | IO (Decode16, 0x0070, 0x0070, 0x01, 0x01, ) 876 | IO (Decode16, 0x0080, 0x0080, 0x01, 0x01, ) 877 | IO (Decode16, 0x0092, 0x0092, 0x01, 0x01, ) 878 | IO (Decode16, 0x00B2, 0x00B2, 0x01, 0x02, ) 879 | IO (Decode16, 0x0680, 0x0680, 0x01, 0x20, ) 880 | IO (Decode16, 0xFFFF, 0xFFFF, 0x01, 0x01, ) 881 | IO (Decode16, 0xFFFF, 0xFFFF, 0x01, 0x01, ) 882 | IO (Decode16, 0xFFFF, 0xFFFF, 0x01, 0x01, ) 883 | IO (Decode16, 0x1C00, 0x1C00, 0x01, 0xFF, ) // Name (GPBS, 0x1C00) 884 | IO (Decode16, 0x1D00, 0x1D00, 0x01, 0xFF, ) // GPBS + 0x100 = 0x1D00 885 | IO (Decode16, 0x1E00, 0x1E00, 0x01, 0xFF, ) // GPBS + 0x200 = 0x1E00 886 | IO (Decode16, 0x1F00, 0x1F00, 0x01, 0xFF, ) // GPBS + 0x300 = 0x1F00 887 | IO (Decode16, 0x1800, 0x1800, 0x01, 0xFF, ) 888 | IO (Decode16, 0x164E, 0x164E, 0x01, 0x02, ) 889 | }) 890 | } 891 | 892 | Device (RTC) 893 | { 894 | Name (_HID, EisaId ("PNP0B00")) // _HID: Hardware ID 895 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 896 | { 897 | IO (Decode16, 0x0070, 0x0070, 0x01, 0x08, ) 898 | IRQNoFlags () 899 | {8} 900 | }) 901 | } 902 | 903 | Device (TIMR) 904 | { 905 | Name (_HID, EisaId ("PNP0100")) // _HID: Hardware ID 906 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 907 | { 908 | IO (Decode16, 0x0040, 0x0040, 0x01, 0x04, ) 909 | IO (Decode16, 0x0050, 0x0050, 0x10, 0x04, ) 910 | IRQNoFlags () 911 | {0} 912 | }) 913 | } 914 | 915 | Device (RMSC) 916 | { 917 | Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID 918 | Name (_UID, 0x10) // _UID: Unique ID 919 | Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings 920 | { 921 | IO (Decode16, 0x0010, 0x0010, 0x00, 0x10, ) 922 | IO (Decode16, 0x0022, 0x0022, 0x00, 0x1E, ) 923 | IO (Decode16, 0x0044, 0x0044, 0x00, 0x1C, ) 924 | IO (Decode16, 0x0062, 0x0062, 0x00, 0x02, ) 925 | IO (Decode16, 0x0065, 0x0065, 0x00, 0x0B, ) 926 | IO (Decode16, 0x0072, 0x0072, 0x00, 0x0E, ) 927 | IO (Decode16, 0x0080, 0x0080, 0x00, 0x01, ) 928 | IO (Decode16, 0x0084, 0x0084, 0x00, 0x03, ) 929 | IO (Decode16, 0x0088, 0x0088, 0x00, 0x01, ) 930 | IO (Decode16, 0x008C, 0x008C, 0x00, 0x03, ) 931 | IO (Decode16, 0x0090, 0x0090, 0x00, 0x10, ) 932 | IO (Decode16, 0x00A2, 0x00A2, 0x00, 0x1E, ) 933 | IO (Decode16, 0x00E0, 0x00E0, 0x00, 0x10, ) 934 | IO (Decode16, 0x04D0, 0x04D0, 0x00, 0x02, ) 935 | }) 936 | } 937 | } 938 | 939 | Device (SATA) 940 | { 941 | Name (_ADR, 0x001F0002) // _ADR: Address 942 | } 943 | 944 | Device (SBUS) 945 | { 946 | Name (_ADR, 0x001F0003) // _ADR: Address 947 | Device (BUS0) 948 | { 949 | Name (_CID, "smbus") 950 | Name (_ADR, Zero) 951 | } 952 | 953 | Device (BUS1) 954 | { 955 | Name (_CID, "smbus") 956 | Name (_ADR, One) 957 | } 958 | } 959 | 960 | Device (RP01) // May not be enabled on (other) motherboards 961 | { 962 | Name (_ADR, 0x001C0000) // _ADR: Address 963 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR04) 964 | { 965 | Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, 966 | Package (0x04) { 0xFFFF, One, Zero, 0x11 }, 967 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, 968 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } 969 | }) 970 | 971 | Device (PXSX) 972 | { 973 | Name (_ADR, Zero) // _ADR: Address 974 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 975 | { 976 | 0x09, 977 | 0x04 978 | }) 979 | } 980 | } 981 | 982 | Device (RP02) // May not be enabled on (other) motherboards 983 | { 984 | Name (_ADR, 0x001C0001) // _ADR: Address 985 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR05) 986 | { 987 | Package (0x04) { 0xFFFF, Zero, Zero, 0x11 }, 988 | Package (0x04) { 0xFFFF, One, Zero, 0x12 }, 989 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x13 }, 990 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 } 991 | }) 992 | } 993 | 994 | Device (RP03) // May not be enabled on (other) motherboards 995 | { 996 | Name (_ADR, 0x001C0002) // _ADR: Address 997 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR06) 998 | { 999 | Package (0x04) { 0xFFFF, Zero, Zero, 0x12 }, 1000 | Package (0x04) { 0xFFFF, One, Zero, 0x13 }, 1001 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x10 }, 1002 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x11 } 1003 | }) 1004 | } 1005 | 1006 | Device (RP04) // May not be enabled on (other) motherboards 1007 | { 1008 | Name (_ADR, 0x001C0003) // _ADR: Address 1009 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR07) 1010 | { 1011 | Package (0x04) { 0xFFFF, Zero, Zero, 0x13 }, 1012 | Package (0x04) { 0xFFFF, One, Zero, 0x10 }, 1013 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x11 }, 1014 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x12 } 1015 | }) 1016 | } 1017 | 1018 | Device (RP05) // May not be enabled on (other) motherboards 1019 | { 1020 | Name (_ADR, 0x001C0004) // _ADR: Address 1021 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR08) 1022 | { 1023 | Package (0x04) { 0xFFFF, Zero, Zero, 0x10 }, 1024 | Package (0x04) { 0xFFFF, One, Zero, 0x11 }, 1025 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x12 }, 1026 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x13 } 1027 | }) 1028 | 1029 | Device (ARPT) 1030 | { 1031 | Name (_ADR, Zero) // _ADR: Address 1032 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 1033 | { 1034 | 0x09, 1035 | 0x04 1036 | }) 1037 | } 1038 | } 1039 | 1040 | Device (RP06) // May not be enabled on (other) motherboards 1041 | { 1042 | Name (_ADR, 0x001C0005) // _ADR: Address 1043 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR09) 1044 | { 1045 | Package (0x04) { 0xFFFF, Zero, Zero, 0x11 }, 1046 | Package (0x04) { 0xFFFF, One, Zero, 0x12 }, 1047 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x13 }, 1048 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 } 1049 | }) 1050 | } 1051 | 1052 | Device (RP07) // May not be enabled on (other) motherboards 1053 | { 1054 | Name (_ADR, 0x001C0006) // _ADR: Address 1055 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR0E) 1056 | { 1057 | Package (0x04) { 0xFFFF, Zero, Zero, 0x12 }, 1058 | Package (0x04) { 0xFFFF, One, Zero, 0x13 }, 1059 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x10 }, 1060 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x11 } 1061 | }) 1062 | } 1063 | 1064 | Device (RP08) // May not be enabled on (other) motherboards 1065 | { 1066 | Name (_ADR, 0x001C0007) // _ADR: Address 1067 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR0F) 1068 | { 1069 | Package (0x04) { 0xFFFF, Zero, Zero, 0x13 }, 1070 | Package (0x04) { 0xFFFF, One, Zero, 0x10 }, 1071 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x11 }, 1072 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x12 } 1073 | }) 1074 | } 1075 | 1076 | Device (P0PA) // May not be enabled on (other) motherboards 1077 | { 1078 | Name (_ADR, 0x00010001) // _ADR: Address 1079 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR0A) 1080 | { 1081 | Package (0x04) { 0xFFFF, Zero, Zero, 0x11 }, 1082 | Package (0x04) { 0xFFFF, One, Zero, 0x12 }, 1083 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x13 }, 1084 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x10 } 1085 | }) 1086 | } 1087 | 1088 | Device (P0PB) // May not be enabled on (other) motherboards 1089 | { 1090 | Name (_ADR, 0x00010002) // _ADR: Address 1091 | Name (_PRT, Package (0x04) // _PRT: PCI Routing Table (AR0B) 1092 | { 1093 | Package (0x04) { 0xFFFF, Zero, Zero, 0x12 }, 1094 | Package (0x04) { 0xFFFF, One, Zero, 0x13 }, 1095 | Package (0x04) { 0xFFFF, 0x02, Zero, 0x10 }, 1096 | Package (0x04) { 0xFFFF, 0x03, Zero, 0x11 } 1097 | }) 1098 | } 1099 | } 1100 | 1101 | Device (PWRB) 1102 | { 1103 | Name (_HID, EisaId ("PNP0C0C")) // _HID: Hardware ID 1104 | Name (_UID, 0xAA) // _UID: Unique ID 1105 | Name (_STA, 0x0B) // _STA: Status 1106 | Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake 1107 | { 1108 | 0x1D, 1109 | 0x03 1110 | }) 1111 | } 1112 | 1113 | Device (SLPB) 1114 | { 1115 | Name (_HID, EisaId ("PNP0C0E")) // _HID: Hardware ID 1116 | Name (_STA, 0x0B) // _STA: Status 1117 | } 1118 | } 1119 | 1120 | Name (PCHS, One) 1121 | Name (SRMB, 0xF7FF0000) 1122 | 1123 | OperationRegion (MBAR, SystemMemory, Add (ShiftLeft (\_SB.PCI0.MHBR, 0x0F), 0x5000), 0x1000) 1124 | Field (MBAR, ByteAcc, NoLock, Preserve) 1125 | { 1126 | Offset (0x938), 1127 | PWRU, 4, 1128 | Offset (0x9A0), 1129 | PPL1, 15, 1130 | PL1E, 1, 1131 | CLP1, 1 1132 | } 1133 | 1134 | Scope (\_GPE) 1135 | { 1136 | Method (_L1D, 0, NotSerialized) // _Lxx: Level-Triggered GPE 1137 | { 1138 | Notify (\_SB.PWRB, 0x02) 1139 | } 1140 | 1141 | Method (_L09, 0, NotSerialized) // _Lxx: Level-Triggered GPE 1142 | { 1143 | Notify (\_SB.PCI0.RP01, 0x02) 1144 | Notify (\_SB.PCI0.RP02, 0x02) 1145 | Notify (\_SB.PCI0.RP03, 0x02) 1146 | Notify (\_SB.PCI0.RP04, 0x02) 1147 | Notify (\_SB.PCI0.RP05, 0x02) 1148 | Notify (\_SB.PCI0.RP06, 0x02) 1149 | Notify (\_SB.PCI0.RP07, 0x02) 1150 | Notify (\_SB.PCI0.RP08, 0x02) 1151 | } 1152 | 1153 | Method (_L0D, 0, NotSerialized) // _Lxx: Level-Triggered GPE 1154 | { 1155 | Notify (\_SB.PWRB, 0x02) 1156 | Notify (\_SB.PCI0.XHC1, 0x02) 1157 | Notify (\_SB.PCI0.HDEF, 0x02) 1158 | Notify (\_SB.PCI0.GIGE, 0x02) 1159 | } 1160 | 1161 | Method (_L01, 0, NotSerialized) // _Lxx: Level-Triggered GPE 1162 | { 1163 | } 1164 | 1165 | Method (_L02, 0, NotSerialized) // _Lxx: Level-Triggered GPE 1166 | { 1167 | Store (Zero, GPEC) 1168 | } 1169 | 1170 | Method (_L06, 0, NotSerialized) // _Lxx: Level-Triggered GPE 1171 | { 1172 | } 1173 | 1174 | Method (_L07, 0, NotSerialized) // _Lxx: Level-Triggered GPE 1175 | { 1176 | } 1177 | } 1178 | 1179 | Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model 1180 | { 1181 | Store (Arg0, GPIC) 1182 | } 1183 | 1184 | Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep 1185 | { 1186 | If (Arg0) 1187 | { 1188 | \_SB.PCI0.LPCB.SPTS (Arg0) 1189 | } 1190 | } 1191 | 1192 | Method (_WAK, 1, Serialized) // _WAK: Wake 1193 | { 1194 | \_SB.PCI0.LPCB.SWAK (Arg0) 1195 | 1196 | Return (Package (0x02) 1197 | { 1198 | Zero, 1199 | Zero 1200 | }) 1201 | } 1202 | 1203 | Name (_S0, Package (0x04) { Zero, Zero, Zero, Zero }) 1204 | Name (_S3, Package (0x04) { 0x05, Zero, Zero, Zero }) 1205 | Name (_S4, Package (0x04) { 0x06, Zero, Zero, Zero }) 1206 | Name (_S5, Package (0x04) { 0x07, Zero, Zero, Zero }) 1207 | } 1208 | 1209 | -------------------------------------------------------------------------------- /SSDT-GA-Z87MX-D3H-F6.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * Credits: Master Chief (dad) for his stripped down copy of Method (_DSM) and teaching us 3 | * to code, and of course his inspiring talent to help other people for free. 4 | * 5 | * RevoGirl (my late sister Samantha) for the first ever tiny SSDT, and her 6 | * discovery of property 'hda-gfx' in her MacBook Pro (at a time that the hardware 7 | * wasn't even released). 8 | * 9 | * Pike for stripping method _DSM even further and finding a way to disable/hide 10 | * devices in the DSDT, including ThermalZones. Something that was impossible until now. 11 | */ 12 | 13 | DefinitionBlock ("SSDT-GA-Z87MX-D3G-F6.aml", "SSDT", 1, "APPLE", "tinySSDT", 0x00000006) 14 | { 15 | External (\IOST, IntObj) 16 | 17 | External (\_SB_.PCI0, DeviceObj) 18 | External (\_SB_.WCAM, DeviceObj) 19 | 20 | External (\_SB_.LNKA._STA, IntObj) 21 | External (\_SB_.LNKB._STA, IntObj) 22 | External (\_SB_.LNKC._STA, IntObj) 23 | External (\_SB_.LNKD._STA, IntObj) 24 | External (\_SB_.LNKE._STA, IntObj) 25 | External (\_SB_.LNKF._STA, IntObj) 26 | External (\_SB_.LNKG._STA, IntObj) 27 | External (\_SB_.LNKH._STA, IntObj) 28 | 29 | External (\_SB_.PCI0.B0D3._STA, IntObj) 30 | External (\_SB_.PCI0.B0D4, DeviceObj) 31 | External (\_SB_.PCI0.GFX0, DeviceObj) 32 | External (\_SB_.PCI0.HDEF, DeviceObj) 33 | External (\_SB_.PCI0.LPCB, DeviceObj) 34 | External (\_SB_.PCI0.LPCB.SIO1, DeviceObj) 35 | External (\_SB_.PCI0.RP05, DeviceObj) 36 | External (\_SB_.PCI0.RP05.PXSX, DeviceObj) 37 | External (\_SB_.PCI0.SAT0, DeviceObj) 38 | External (\_SB_.PCI0.SAT1, DeviceObj) 39 | External (\_SB_.PCI0.TPMX._STA, DeviceObj) 40 | External (\_SB_.PCI0.WMI1, DeviceObj) 41 | 42 | External (\_TZ_.FAN0, DeviceObj) 43 | External (\_TZ_.FAN1, DeviceObj) 44 | External (\_TZ_.FAN2, DeviceObj) 45 | External (\_TZ_.FAN3, DeviceObj) 46 | External (\_TZ_.FAN4, DeviceObj) 47 | 48 | External (\_TZ_.TZ00, PkgObj) 49 | External (\_TZ_.TZ01, PkgObj) 50 | 51 | Scope (\_SB_) 52 | { 53 | Method (_INI, 0, NotSerialized) 54 | { 55 | /* Here we disable/hide Devices (LNKx) */ 56 | 57 | Store (Zero, \_SB_.LNKA._STA) 58 | Store (Zero, \_SB_.LNKB._STA) 59 | Store (Zero, \_SB_.LNKC._STA) 60 | Store (Zero, \_SB_.LNKD._STA) 61 | Store (Zero, \_SB_.LNKE._STA) 62 | Store (Zero, \_SB_.LNKF._STA) 63 | Store (Zero, \_SB_.LNKG._STA) 64 | Store (Zero, \_SB_.LNKH._STA) 65 | 66 | /* Here we disable/hide Devices (B0D3) */ 67 | 68 | Store (Zero, \_SB_.PCI0.B0D3._STA) 69 | 70 | /* Here we disable/hide Devices (TMPX) */ 71 | 72 | Store (Zero, \_SB_.PCI0.TPMX._STA) 73 | 74 | /* Here we disable/hide Devices (PS2x) */ 75 | 76 | Store (Zero, \IOST) 77 | 78 | /* Here we disable/hide ThermalZone (TZ0n) */ 79 | 80 | Store (Zero, \_TZ_.TZ00) 81 | Store (Zero, \_TZ_.TZ01) 82 | } 83 | 84 | /* Here we disable/hide Device (WCAM) */ 85 | 86 | Scope (WCAM) 87 | { 88 | Name (_STA, Zero) 89 | } 90 | } 91 | 92 | Scope (\_SB_.PCI0) 93 | { 94 | /* Here we inject a new Device (MCHC) */ 95 | 96 | Device (MCHC) 97 | { 98 | Name (_ADR, Zero) 99 | } 100 | 101 | /* Here we inject a new Device (HECI) */ 102 | 103 | Device (HECI) 104 | { 105 | Name (_ADR, 0x00160000) 106 | } 107 | 108 | /* Here we disable/hide Device (GFX0) */ 109 | 110 | Scope (GFX0) 111 | { 112 | Name (_STA, Zero) 113 | } 114 | 115 | /* Here we inject a new Device (IGPU) */ 116 | 117 | Device (IGPU) 118 | { 119 | Name (_ADR, 0x00020000) // _ADR: Address 120 | 121 | Method (_DSM, 4, NotSerialized) 122 | { 123 | If (LEqual (Arg2, Zero)) 124 | { 125 | Return (Buffer (One) 126 | { 127 | 0x03 128 | }) 129 | } 130 | 131 | Return (Package (0x02) 132 | { 133 | "hda-gfx", 134 | Buffer (0x0A) 135 | { 136 | "onboard-1" 137 | } 138 | }) 139 | } 140 | } 141 | 142 | /* Here we inject a new Device (HDAU) */ 143 | 144 | Device (HDAU) 145 | { 146 | Name (_ADR, 0x00030000) 147 | Name (_STA, 0x0F) // _STA: Status 148 | 149 | OperationRegion (HDAH, PCI_Config, 0x54, One) 150 | Field (HDAH, ByteAcc, NoLock, Preserve) 151 | { 152 | , 5, 153 | AUDE, 1 154 | } 155 | 156 | Method (_INI, 0, NotSerialized) 157 | { 158 | Store (One, AUDE) 159 | Notify (PCI0, Zero) 160 | } 161 | 162 | /* Here we inject a new Method (_DSM) */ 163 | 164 | Method (_DSM, 4, NotSerialized) 165 | { 166 | If (LEqual (Arg2, Zero)) 167 | { 168 | Return (Buffer (One) 169 | { 170 | 0x03 171 | }) 172 | } 173 | 174 | Return (Package (0x02) 175 | { 176 | "hda-gfx", 177 | Buffer (0x0A) 178 | { 179 | "onboard-1" 180 | } 181 | }) 182 | } 183 | } 184 | 185 | /* Here we disable/hide Device (B0D4) */ 186 | 187 | Scope (B0D4) 188 | { 189 | Name (_STA, Zero) 190 | } 191 | 192 | /* Here we add (audio related) properties to Device (HDEF) */ 193 | 194 | Scope (HDEF) 195 | { 196 | /* Here we inject a new Method (_DSM) */ 197 | 198 | Method (_DSM, 4, NotSerialized) 199 | { 200 | If (LEqual (Arg2, Zero)) 201 | { 202 | Return (Buffer (One) 203 | { 204 | 0x03 205 | }) 206 | } 207 | 208 | Return (Package (0x04) 209 | { 210 | "layout-id", 211 | Buffer (0x04) 212 | { 213 | 0x01, 0x00, 0x00, 0x00 214 | }, 215 | 216 | "PinConfigurations", 217 | Buffer (Zero) {} 218 | }) 219 | } 220 | } 221 | 222 | Scope (LPCB) 223 | { 224 | /* Here we disable/hide Device (SIO1) */ 225 | 226 | Scope (SIO1) 227 | { 228 | Name (_STA, Zero) 229 | } 230 | } 231 | 232 | /* RP05 is used for my Wifi/Bluetooth 4.0 card, installed in slot 'PCIEX4' */ 233 | 234 | Scope (RP05) 235 | { 236 | /* Here we disable/hide Device (PSXS) */ 237 | 238 | Scope (PXSX) 239 | { 240 | Name (_STA, Zero) 241 | } 242 | 243 | /* Here we inject a new device (ARPT) */ 244 | 245 | Device (ARPT) 246 | { 247 | Name (_ADR, Zero) 248 | Name (_PRW, Package (0x02) 249 | { 250 | 0x09, 251 | 0x04 252 | }) 253 | } 254 | } 255 | 256 | /* Here we disable/hide Device (SAT0) */ 257 | 258 | Scope (SAT0) 259 | { 260 | Name (_STA, Zero) 261 | } 262 | 263 | /* Here we disable/hide Device (SAT1) */ 264 | 265 | Scope (SAT1) 266 | { 267 | Name (_STA, Zero) 268 | } 269 | 270 | /* Here we inject a new Device (SATA) */ 271 | 272 | Device (SATA) 273 | { 274 | Name (_ADR, 0x001F0002) 275 | } 276 | 277 | /* Here we disable/hide Device (WMI1) */ 278 | 279 | Scope (WMI1) 280 | { 281 | Name (_STA, Zero) 282 | } 283 | } 284 | 285 | Scope (\_TZ_) 286 | { 287 | /* Here we disable/hide Device (FAN0) */ 288 | 289 | Scope (FAN0) 290 | { 291 | Name (_STA, Zero) 292 | } 293 | 294 | /* Here we disable/hide Device (FAN1) */ 295 | 296 | Scope (FAN1) 297 | { 298 | Name (_STA, Zero) 299 | } 300 | 301 | /* Here we disable/hide Device (FAN2) */ 302 | 303 | Scope (FAN2) 304 | { 305 | Name (_STA, Zero) 306 | } 307 | 308 | /* Here we disable/hide Device (FAN3) */ 309 | 310 | Scope (FAN3) 311 | { 312 | Name (_STA, Zero) 313 | } 314 | 315 | /* Here we disable/hide Device (FAN4) */ 316 | 317 | Scope (FAN4) 318 | { 319 | Name (_STA, Zero) 320 | } 321 | } 322 | } 323 | -------------------------------------------------------------------------------- /SSDT-GA-Z87MX-D3H-F7.dsl: -------------------------------------------------------------------------------- 1 | /* 2 | * Credits: Master Chief (dad) for his stripped down copy of Method (_DSM) and teaching us 3 | * to code, and of course his inspiring talent to help other people for free. 4 | * 5 | * RevoGirl (my late sister Samantha) for the first ever tiny SSDT, and her 6 | * discovery of property 'hda-gfx' in her MacBook Pro (at a time that the hardware 7 | * wasn't even released). 8 | * 9 | * Pike for stripping method _DSM even further and finding a way to disable/hide 10 | * devices in the DSDT, including ThermalZones. Something that was impossible until now. 11 | */ 12 | 13 | DefinitionBlock ("SSDT-GA-Z87MX-D3H-F7.aml", "SSDT", 1, "APPLE", "tinySSDT", 0x00000006) 14 | { 15 | External (\IOST, IntObj) 16 | 17 | External (\_SB_.PCI0, DeviceObj) 18 | External (\_SB_.WCAM, DeviceObj) 19 | 20 | External (\_SB_.LNKA._STA, IntObj) 21 | External (\_SB_.LNKB._STA, IntObj) 22 | External (\_SB_.LNKC._STA, IntObj) 23 | External (\_SB_.LNKD._STA, IntObj) 24 | External (\_SB_.LNKE._STA, IntObj) 25 | External (\_SB_.LNKF._STA, IntObj) 26 | External (\_SB_.LNKG._STA, IntObj) 27 | External (\_SB_.LNKH._STA, IntObj) 28 | 29 | External (\_SB_.PCI0.B0D3._STA, IntObj) 30 | External (\_SB_.PCI0.B0D4, DeviceObj) 31 | External (\_SB_.PCI0.GFX0, DeviceObj) 32 | External (\_SB_.PCI0.HDEF, DeviceObj) 33 | External (\_SB_.PCI0.LPCB, DeviceObj) 34 | External (\_SB_.PCI0.LPCB.SIO1, DeviceObj) 35 | External (\_SB_.PCI0.RP05, DeviceObj) 36 | External (\_SB_.PCI0.RP05.PXSX, DeviceObj) 37 | External (\_SB_.PCI0.PEG1, DeviceObj) 38 | External (\_SB_.PCI0.SAT0, DeviceObj) 39 | External (\_SB_.PCI0.SAT1, DeviceObj) 40 | External (\_SB_.PCI0.TPMX._STA, DeviceObj) 41 | External (\_SB_.PCI0.WMI1, DeviceObj) 42 | 43 | External (\_TZ_.FAN0, DeviceObj) 44 | External (\_TZ_.FAN1, DeviceObj) 45 | External (\_TZ_.FAN2, DeviceObj) 46 | External (\_TZ_.FAN3, DeviceObj) 47 | External (\_TZ_.FAN4, DeviceObj) 48 | 49 | External (\_TZ_.TZ00, PkgObj) 50 | External (\_TZ_.TZ01, PkgObj) 51 | 52 | Scope (\_SB_) 53 | { 54 | Method (_INI, 0, NotSerialized) 55 | { 56 | /* Here we disable/hide Devices (LNKx) */ 57 | 58 | Store (Zero, \_SB_.LNKA._STA) 59 | Store (Zero, \_SB_.LNKB._STA) 60 | Store (Zero, \_SB_.LNKC._STA) 61 | Store (Zero, \_SB_.LNKD._STA) 62 | Store (Zero, \_SB_.LNKE._STA) 63 | Store (Zero, \_SB_.LNKF._STA) 64 | Store (Zero, \_SB_.LNKG._STA) 65 | Store (Zero, \_SB_.LNKH._STA) 66 | 67 | /* Here we disable/hide Devices (B0D3) */ 68 | 69 | Store (Zero, \_SB_.PCI0.B0D3._STA) 70 | 71 | /* Here we disable/hide Devices (TMPX) */ 72 | 73 | Store (Zero, \_SB_.PCI0.TPMX._STA) 74 | 75 | /* Here we disable/hide Devices (PS2x) */ 76 | 77 | Store (Zero, \IOST) 78 | 79 | /* Here we disable/hide ThermalZone (TZ0n) */ 80 | 81 | Store (Zero, \_TZ_.TZ00) 82 | Store (Zero, \_TZ_.TZ01) 83 | } 84 | 85 | /* Here we disable/hide Device (WCAM) */ 86 | 87 | Scope (WCAM) 88 | { 89 | Name (_STA, Zero) 90 | } 91 | } 92 | 93 | Scope (\_SB_.PCI0) 94 | { 95 | /* Here we inject a new Device (MCHC) */ 96 | 97 | Device (MCHC) 98 | { 99 | Name (_ADR, Zero) 100 | } 101 | 102 | /* Here we inject a new Device (HECI) */ 103 | 104 | Device (HECI) 105 | { 106 | Name (_ADR, 0x00160000) 107 | } 108 | 109 | /* Here we disable/hide Device (GFX0) */ 110 | 111 | Scope (GFX0) 112 | { 113 | Name (_STA, Zero) 114 | } 115 | 116 | /* Here we inject a new Device (IGPU) */ 117 | 118 | Device (IGPU) 119 | { 120 | Name (_ADR, 0x00020000) // _ADR: Address 121 | 122 | Method (_DSM, 4, NotSerialized) 123 | { 124 | If (LEqual (Arg2, Zero)) 125 | { 126 | Return (Buffer (One) 127 | { 128 | 0x03 129 | }) 130 | } 131 | 132 | Return (Package (0x02) 133 | { 134 | "hda-gfx", 135 | Buffer (0x0A) 136 | { 137 | "onboard-1" 138 | } 139 | }) 140 | } 141 | } 142 | 143 | /* Here we inject a new Device (HDAU) */ 144 | 145 | Device (HDAU) 146 | { 147 | Name (_ADR, 0x00030000) 148 | Name (_STA, 0x0F) // _STA: Status 149 | 150 | OperationRegion (HDAH, PCI_Config, 0x54, One) 151 | Field (HDAH, ByteAcc, NoLock, Preserve) 152 | { 153 | , 5, 154 | AUDE, 1 155 | } 156 | 157 | Method (_INI, 0, NotSerialized) 158 | { 159 | Store (One, AUDE) 160 | Notify (PCI0, Zero) 161 | } 162 | 163 | /* Here we inject a new Method (_DSM) */ 164 | 165 | Method (_DSM, 4, NotSerialized) 166 | { 167 | If (LEqual (Arg2, Zero)) 168 | { 169 | Return (Buffer (One) 170 | { 171 | 0x03 172 | }) 173 | } 174 | 175 | Return (Package (0x02) 176 | { 177 | "hda-gfx", 178 | Buffer (0x0A) 179 | { 180 | "onboard-1" 181 | } 182 | }) 183 | } 184 | } 185 | 186 | /* Here we disable/hide Device (B0D4) */ 187 | 188 | Scope (B0D4) 189 | { 190 | Name (_STA, Zero) 191 | } 192 | 193 | /* Here we add (audio related) properties to Device (HDEF) */ 194 | 195 | Scope (HDEF) 196 | { 197 | /* Here we inject a new Method (_DSM) */ 198 | 199 | Method (_DSM, 4, NotSerialized) 200 | { 201 | If (LEqual (Arg2, Zero)) 202 | { 203 | Return (Buffer (One) 204 | { 205 | 0x03 206 | }) 207 | } 208 | 209 | Return (Package (0x04) 210 | { 211 | "layout-id", 212 | Buffer (0x04) 213 | { 214 | 0x03, 0x00, 0x00, 0x00 215 | }, 216 | 217 | "PinConfigurations", 218 | Buffer (Zero) {} 219 | }) 220 | } 221 | } 222 | 223 | Scope (LPCB) 224 | { 225 | /* Here we disable/hide Device (SIO1) */ 226 | 227 | Scope (SIO1) 228 | { 229 | Name (_STA, Zero) 230 | } 231 | } 232 | 233 | /* RP05 is used for my Wifi/Bluetooth 4.0 card, installed in slot 'PCIEX4' */ 234 | 235 | Scope (RP05) 236 | { 237 | /* Here we disable/hide Device (PSXS) */ 238 | 239 | Scope (PXSX) 240 | { 241 | Name (_STA, Zero) 242 | } 243 | 244 | /* Here we inject a new device (ARPT) */ 245 | 246 | Device (ARPT) 247 | { 248 | Name (_ADR, Zero) 249 | Name (_PRW, Package (0x02) 250 | { 251 | 0x09, 252 | 0x04 253 | }) 254 | } 255 | } 256 | 257 | /* PEG1 is used for my PCIe card with M.2, installed in slot 'PCIEX8' */ 258 | 259 | Scope (\_SB.PCI0.PEG1) 260 | { 261 | /* Here we inject a new device (SSD0) for the PCIe card with M.2 */ 262 | 263 | Device (SSD0) 264 | { 265 | Name (_ADR, Zero) // _ADR: Address 266 | Name (NVME, One) 267 | Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method 268 | { 269 | If (LEqual (Arg2, Zero)) 270 | { 271 | Return (Buffer (One) 272 | { 273 | 0x03 274 | }) 275 | } 276 | 277 | If (LEqual (NVME, One)) 278 | { 279 | Return (Package (0x04) 280 | { 281 | "use-msi", 282 | One, 283 | "nvme-LPSR-during-S3-S4", 284 | One 285 | }) 286 | } 287 | Else 288 | { 289 | Return (Package (0x06) 290 | { 291 | "use-msi", 292 | One, 293 | "sata-express-power-off", 294 | One, 295 | "ssd-off-in-S4", 296 | One 297 | }) 298 | } 299 | } 300 | 301 | Device (PRT0) 302 | { 303 | Name (_ADR, 0xFFFF) // _ADR: Address 304 | Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method 305 | { 306 | If (LEqual (Arg2, Zero)) 307 | { 308 | Return (Buffer (One) 309 | { 310 | 0x03 311 | }) 312 | } 313 | 314 | Return (Package (0x02) 315 | { 316 | "io-device-location", 317 | Buffer (0x04) 318 | { 319 | "SSD" 320 | } 321 | }) 322 | } 323 | } 324 | } 325 | } 326 | 327 | /* Here we disable/hide Device (SAT0) */ 328 | 329 | Scope (SAT0) 330 | { 331 | Name (_STA, Zero) 332 | } 333 | 334 | /* Here we disable/hide Device (SAT1) */ 335 | 336 | Scope (SAT1) 337 | { 338 | Name (_STA, Zero) 339 | } 340 | 341 | /* Here we inject a new Device (SATA) */ 342 | 343 | Device (SATA) 344 | { 345 | Name (_ADR, 0x001F0002) 346 | } 347 | 348 | /* Here we disable/hide Device (WMI1) */ 349 | 350 | Scope (WMI1) 351 | { 352 | Name (_STA, Zero) 353 | } 354 | } 355 | 356 | Scope (\_TZ_) 357 | { 358 | /* Here we disable/hide Device (FAN0) */ 359 | 360 | Scope (FAN0) 361 | { 362 | Name (_STA, Zero) 363 | } 364 | 365 | /* Here we disable/hide Device (FAN1) */ 366 | 367 | Scope (FAN1) 368 | { 369 | Name (_STA, Zero) 370 | } 371 | 372 | /* Here we disable/hide Device (FAN2) */ 373 | 374 | Scope (FAN2) 375 | { 376 | Name (_STA, Zero) 377 | } 378 | 379 | /* Here we disable/hide Device (FAN3) */ 380 | 381 | Scope (FAN3) 382 | { 383 | Name (_STA, Zero) 384 | } 385 | 386 | /* Here we disable/hide Device (FAN4) */ 387 | 388 | Scope (FAN4) 389 | { 390 | Name (_STA, Zero) 391 | } 392 | } 393 | } 394 | --------------------------------------------------------------------------------