Advertisement
Guest User

Untitled

a guest
Oct 17th, 2012
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 325.86 KB | None | 0 0
  1. DefinitionBlock ("DSDT.aml", "DSDT", 1, "A0760", "A0760001", 0x00000001)
  2. {
  3. Scope (_PR)
  4. {
  5. Processor (CPU1, 0x01, 0x00000810, 0x06)
  6. {
  7. OperationRegion (STBL, SystemMemory, 0xCFF8E0D0, 0x01D2)
  8. Name (NCPU, 0x04)
  9. Name (TYPE, 0x80000000)
  10. Name (HNDL, 0x80000000)
  11. Name (CFGD, 0x01000007)
  12. Name (TBLD, 0x80)
  13. Method (_PDC, 1, NotSerialized)
  14. {
  15. CreateDWordField (Arg0, Zero, REVS)
  16. CreateDWordField (Arg0, 0x04, SIZE)
  17. Store (SizeOf (Arg0), Local0)
  18. Store (Subtract (Local0, 0x08), Local1)
  19. CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
  20. Name (STS0, Buffer (0x04)
  21. {
  22. 0x00, 0x00, 0x00, 0x00
  23. })
  24. Concatenate (STS0, TEMP, Local2)
  25. _OSC (Buffer (0x10)
  26. {
  27. /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
  28. /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
  29. }, REVS, SIZE, Local2)
  30. }
  31. Method (_OSC, 4, NotSerialized)
  32. {
  33. CreateDWordField (Arg3, Zero, STS0)
  34. CreateDWordField (Arg3, 0x04, CAP0)
  35. CreateDWordField (Arg0, Zero, IID0)
  36. CreateDWordField (Arg0, 0x04, IID1)
  37. CreateDWordField (Arg0, 0x08, IID2)
  38. CreateDWordField (Arg0, 0x0C, IID3)
  39. Name (UID0, Buffer (0x10)
  40. {
  41. /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
  42. /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
  43. })
  44. CreateDWordField (UID0, Zero, EID0)
  45. CreateDWordField (UID0, 0x04, EID1)
  46. CreateDWordField (UID0, 0x08, EID2)
  47. CreateDWordField (UID0, 0x0C, EID3)
  48. If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)),
  49. LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3)))))
  50. {
  51. Store (0x06, STS0)
  52. Return (Arg3)
  53. }
  54. If (LNotEqual (Arg1, One))
  55. {
  56. Store (0x0A, STS0)
  57. Return (Arg3)
  58. }
  59. Or (And (TYPE, 0x7FFFFFFF), CAP0, TYPE)
  60. If (And (CFGD, One))
  61. {
  62. If (LAnd (LAnd (And (CFGD, 0x01000000), LEqual (And (TYPE,
  63. 0x09), 0x09)), LNot (And (TBLD, One))))
  64. {
  65. Or (TBLD, One, TBLD)
  66. Load (STBL, HNDL)
  67. }
  68. }
  69. If (And (CFGD, 0xF0))
  70. {
  71. If (LAnd (LAnd (And (CFGD, 0x01000000), And (TYPE, 0x18
  72. )), LNot (And (TBLD, 0x02))))
  73. {
  74. Or (TBLD, 0x02, TBLD)
  75. }
  76. }
  77. Return (Arg3)
  78. }
  79. }
  80. }
  81. Scope (_PR)
  82. {
  83. Processor (CPU2, 0x02, 0x00000810, 0x06)
  84. {
  85. OperationRegion (STBL, SystemMemory, 0xCFF8E2B0, 0x0143)
  86. Name (NCPU, 0x04)
  87. Name (TYPE, 0x80000000)
  88. Name (HNDL, 0x80000000)
  89. Name (CFGD, 0x01000007)
  90. Name (TBLD, 0x80)
  91. Method (_PDC, 1, NotSerialized)
  92. {
  93. CreateDWordField (Arg0, Zero, REVS)
  94. CreateDWordField (Arg0, 0x04, SIZE)
  95. Store (SizeOf (Arg0), Local0)
  96. Store (Subtract (Local0, 0x08), Local1)
  97. CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
  98. Name (STS1, Buffer (0x04)
  99. {
  100. 0x00, 0x00, 0x00, 0x00
  101. })
  102. Concatenate (STS1, TEMP, Local2)
  103. _OSC (Buffer (0x10)
  104. {
  105. /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
  106. /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
  107. }, REVS, SIZE, Local2)
  108. }
  109. Method (_OSC, 4, NotSerialized)
  110. {
  111. CreateDWordField (Arg3, Zero, STS1)
  112. CreateDWordField (Arg3, 0x04, CAP1)
  113. CreateDWordField (Arg0, Zero, IID0)
  114. CreateDWordField (Arg0, 0x04, IID1)
  115. CreateDWordField (Arg0, 0x08, IID2)
  116. CreateDWordField (Arg0, 0x0C, IID3)
  117. Name (UID0, Buffer (0x10)
  118. {
  119. /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
  120. /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
  121. })
  122. CreateDWordField (UID0, Zero, EID0)
  123. CreateDWordField (UID0, 0x04, EID1)
  124. CreateDWordField (UID0, 0x08, EID2)
  125. CreateDWordField (UID0, 0x0C, EID3)
  126. If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)),
  127. LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3)))))
  128. {
  129. Store (0x06, STS1)
  130. Return (Arg3)
  131. }
  132. If (LNotEqual (Arg1, One))
  133. {
  134. Store (0x0A, STS1)
  135. Return (Arg3)
  136. }
  137. Or (And (TYPE, 0x7FFFFFFF), CAP1, TYPE)
  138. If (And (CFGD, One))
  139. {
  140. If (LAnd (LAnd (And (CFGD, 0x01000000), LEqual (And (TYPE,
  141. 0x09), 0x09)), LNot (And (TBLD, One))))
  142. {
  143. Or (TBLD, One, TBLD)
  144. Load (STBL, HNDL)
  145. }
  146. }
  147. If (And (CFGD, 0xF0))
  148. {
  149. If (LAnd (LAnd (And (CFGD, 0x01000000), And (TYPE, 0x18
  150. )), LNot (And (TBLD, 0x02))))
  151. {
  152. Or (TBLD, 0x02, TBLD)
  153. }
  154. }
  155. Return (Arg3)
  156. }
  157. }
  158. }
  159. Scope (_PR)
  160. {
  161. Processor (CPU3, 0x03, 0x00000810, 0x06)
  162. {
  163. OperationRegion (STBL, SystemMemory, 0xCFF8E400, 0x0143)
  164. Name (NCPU, 0x04)
  165. Name (TYPE, 0x80000000)
  166. Name (HNDL, 0x80000000)
  167. Name (CFGD, 0x01000007)
  168. Name (TBLD, 0x80)
  169. Method (_PDC, 1, NotSerialized)
  170. {
  171. CreateDWordField (Arg0, Zero, REVS)
  172. CreateDWordField (Arg0, 0x04, SIZE)
  173. Store (SizeOf (Arg0), Local0)
  174. Store (Subtract (Local0, 0x08), Local1)
  175. CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
  176. Name (STS2, Buffer (0x04)
  177. {
  178. 0x00, 0x00, 0x00, 0x00
  179. })
  180. Concatenate (STS2, TEMP, Local2)
  181. _OSC (Buffer (0x10)
  182. {
  183. /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
  184. /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
  185. }, REVS, SIZE, Local2)
  186. }
  187. Method (_OSC, 4, NotSerialized)
  188. {
  189. CreateDWordField (Arg3, Zero, STS2)
  190. CreateDWordField (Arg3, 0x04, CAP2)
  191. CreateDWordField (Arg0, Zero, IID0)
  192. CreateDWordField (Arg0, 0x04, IID1)
  193. CreateDWordField (Arg0, 0x08, IID2)
  194. CreateDWordField (Arg0, 0x0C, IID3)
  195. Name (UID0, Buffer (0x10)
  196. {
  197. /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
  198. /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
  199. })
  200. CreateDWordField (UID0, Zero, EID0)
  201. CreateDWordField (UID0, 0x04, EID1)
  202. CreateDWordField (UID0, 0x08, EID2)
  203. CreateDWordField (UID0, 0x0C, EID3)
  204. If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)),
  205. LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3)))))
  206. {
  207. Store (0x06, STS2)
  208. Return (Arg3)
  209. }
  210. If (LNotEqual (Arg1, One))
  211. {
  212. Store (0x0A, STS2)
  213. Return (Arg3)
  214. }
  215. Or (And (TYPE, 0x7FFFFFFF), CAP2, TYPE)
  216. If (And (CFGD, One))
  217. {
  218. If (LAnd (LAnd (And (CFGD, 0x01000000), LEqual (And (TYPE,
  219. 0x09), 0x09)), LNot (And (TBLD, One))))
  220. {
  221. Or (TBLD, One, TBLD)
  222. Load (STBL, HNDL)
  223. }
  224. }
  225. If (And (CFGD, 0xF0))
  226. {
  227. If (LAnd (LAnd (And (CFGD, 0x01000000), And (TYPE, 0x18
  228. )), LNot (And (TBLD, 0x02))))
  229. {
  230. Or (TBLD, 0x02, TBLD)
  231. }
  232. }
  233. Return (Arg3)
  234. }
  235. }
  236. }
  237. Scope (_PR)
  238. {
  239. Processor (CPU4, 0x04, 0x00000810, 0x06)
  240. {
  241. OperationRegion (STBL, SystemMemory, 0xCFF8E550, 0x0143)
  242. Name (NCPU, 0x04)
  243. Name (TYPE, 0x80000000)
  244. Name (HNDL, 0x80000000)
  245. Name (CFGD, 0x01000007)
  246. Name (TBLD, 0x80)
  247. Method (_PDC, 1, NotSerialized)
  248. {
  249. CreateDWordField (Arg0, Zero, REVS)
  250. CreateDWordField (Arg0, 0x04, SIZE)
  251. Store (SizeOf (Arg0), Local0)
  252. Store (Subtract (Local0, 0x08), Local1)
  253. CreateField (Arg0, 0x40, Multiply (Local1, 0x08), TEMP)
  254. Name (STS3, Buffer (0x04)
  255. {
  256. 0x00, 0x00, 0x00, 0x00
  257. })
  258. Concatenate (STS3, TEMP, Local2)
  259. _OSC (Buffer (0x10)
  260. {
  261. /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
  262. /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
  263. }, REVS, SIZE, Local2)
  264. }
  265. Method (_OSC, 4, NotSerialized)
  266. {
  267. CreateDWordField (Arg3, Zero, STS3)
  268. CreateDWordField (Arg3, 0x04, CAP3)
  269. CreateDWordField (Arg0, Zero, IID0)
  270. CreateDWordField (Arg0, 0x04, IID1)
  271. CreateDWordField (Arg0, 0x08, IID2)
  272. CreateDWordField (Arg0, 0x0C, IID3)
  273. Name (UID0, Buffer (0x10)
  274. {
  275. /* 0000 */ 0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47,
  276. /* 0008 */ 0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
  277. })
  278. CreateDWordField (UID0, Zero, EID0)
  279. CreateDWordField (UID0, 0x04, EID1)
  280. CreateDWordField (UID0, 0x08, EID2)
  281. CreateDWordField (UID0, 0x0C, EID3)
  282. If (LNot (LAnd (LAnd (LEqual (IID0, EID0), LEqual (IID1, EID1)),
  283. LAnd (LEqual (IID2, EID2), LEqual (IID3, EID3)))))
  284. {
  285. Store (0x06, STS3)
  286. Return (Arg3)
  287. }
  288. If (LNotEqual (Arg1, One))
  289. {
  290. Store (0x0A, STS3)
  291. Return (Arg3)
  292. }
  293. Or (And (TYPE, 0x7FFFFFFF), CAP3, TYPE)
  294. If (And (CFGD, One))
  295. {
  296. If (LAnd (LAnd (And (CFGD, 0x01000000), LEqual (And (TYPE,
  297. 0x09), 0x09)), LNot (And (TBLD, One))))
  298. {
  299. Or (TBLD, One, TBLD)
  300. Load (STBL, HNDL)
  301. }
  302. }
  303. If (And (CFGD, 0xF0))
  304. {
  305. If (LAnd (LAnd (And (CFGD, 0x01000000), And (TYPE, 0x18
  306. )), LNot (And (TBLD, 0x02))))
  307. {
  308. Or (TBLD, 0x02, TBLD)
  309. }
  310. }
  311. Return (Arg3)
  312. }
  313. }
  314. }
  315. Name (DP80, 0x80)
  316. Name (DP90, 0x90)
  317. Name (SPIO, 0x2E)
  318. Name (IOHW, 0x0290)
  319. Name (APIC, One)
  320. Name (SMIP, 0xB2)
  321. Name (PMBS, 0x0800)
  322. Name (PMLN, 0x80)
  323. Name (GPBS, 0x0480)
  324. Name (GPLN, 0x40)
  325. Name (SMBL, Zero)
  326. Name (PM30, 0x0830)
  327. Name (SUSW, 0xFF)
  328. Name (EAQF, One)
  329. Name (CFTE, One)
  330. Name (PCIB, 0xE0000000)
  331. Name (PCIL, 0x10000000)
  332. Name (SMBS, 0x0400)
  333. Name (CPUC, 0x04)
  334. OperationRegion (BIOS, SystemMemory, 0xCFF8E064, 0xFF)
  335. Field (BIOS, ByteAcc, NoLock, Preserve)
  336. {
  337. SS1, 1,
  338. SS2, 1,
  339. SS3, 1,
  340. SS4, 1,
  341. Offset (0x01),
  342. IOST, 16,
  343. TOPM, 32,
  344. ROMS, 32,
  345. MG1B, 32,
  346. MG1L, 32,
  347. MG2B, 32,
  348. MG2L, 32,
  349. Offset (0x1C),
  350. CPB0, 32,
  351. CPB1, 32,
  352. CPB2, 32,
  353. CPB3, 32,
  354. ASSB, 8,
  355. AOTB, 8,
  356. AAXB, 32,
  357. SMIF, 8,
  358. DTSE, 8,
  359. DTS1, 8,
  360. DTS2, 8,
  361. MPEN, 8,
  362. TPMF, 8,
  363. MSC1, 32,
  364. MSC2, 32,
  365. MSC3, 32,
  366. MSC4, 32,
  367. MSC5, 32,
  368. MSC6, 32,
  369. MSC7, 32,
  370. MSC8, 32,
  371. DMAX, 8,
  372. HPTA, 32
  373. }
  374. Method (RRIO, 4, NotSerialized)
  375. {
  376. Store ("RRIO", Debug)
  377. }
  378. Method (RDMA, 3, NotSerialized)
  379. {
  380. Store ("rDMA", Debug)
  381. }
  382. Name (PICM, Zero)
  383. Method (_PIC, 1, NotSerialized)
  384. {
  385. If (Arg0)
  386. {
  387. Store (0xAA, DBG8)
  388. }
  389. Else
  390. {
  391. Store (0xAC, DBG8)
  392. }
  393. Store (Arg0, PICM)
  394. }
  395. Name (OSVR, Ones)
  396. Method (OSFL, 0, NotSerialized)
  397. {
  398. If (LNotEqual (OSVR, Ones))
  399. {
  400. Return (OSVR)
  401. }
  402. If (LEqual (PICM, Zero))
  403. {
  404. Store (0xAC, DBG8)
  405. }
  406. Store (One, OSVR)
  407. If (CondRefOf (_OSI, Local1))
  408. {
  409. If (_OSI ("Windows 2000"))
  410. {
  411. Store (0x04, OSVR)
  412. }
  413. If (_OSI ("Windows 2001"))
  414. {
  415. Store (Zero, OSVR)
  416. }
  417. If (_OSI ("Windows 2001 SP1"))
  418. {
  419. Store (Zero, OSVR)
  420. }
  421. If (_OSI ("Windows 2001 SP2"))
  422. {
  423. Store (Zero, OSVR)
  424. }
  425. If (_OSI ("Windows 2001.1"))
  426. {
  427. Store (Zero, OSVR)
  428. }
  429. If (_OSI ("Windows 2001.1 SP1"))
  430. {
  431. Store (Zero, OSVR)
  432. }
  433. If (_OSI ("Windows 2006"))
  434. {
  435. Store (Zero, OSVR)
  436. }
  437. }
  438. Else
  439. {
  440. If (MCTH (_OS, "Microsoft Windows NT"))
  441. {
  442. Store (0x04, OSVR)
  443. }
  444. Else
  445. {
  446. If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
  447. {
  448. Store (0x02, OSVR)
  449. }
  450. If (MCTH (_OS, "Linux"))
  451. {
  452. Store (0x03, OSVR)
  453. }
  454. }
  455. }
  456. Return (OSVR)
  457. }
  458. Method (MCTH, 2, NotSerialized)
  459. {
  460. If (LLess (SizeOf (Arg0), SizeOf (Arg1)))
  461. {
  462. Return (Zero)
  463. }
  464. Add (SizeOf (Arg0), One, Local0)
  465. Name (BUF0, Buffer (Local0) {})
  466. Name (BUF1, Buffer (Local0) {})
  467. Store (Arg0, BUF0)
  468. Store (Arg1, BUF1)
  469. While (Local0)
  470. {
  471. Decrement (Local0)
  472. If (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (
  473. BUF1, Local0))))
  474. {
  475. Return (Zero)
  476. }
  477. }
  478. Return (One)
  479. }
  480. Name (PRWP, Package (0x02)
  481. {
  482. Zero,
  483. Zero
  484. })
  485. Method (GPRW, 2, NotSerialized)
  486. {
  487. Store (Arg0, Index (PRWP, Zero))
  488. Store (ShiftLeft (SS1, One), Local0)
  489. Or (Local0, ShiftLeft (SS2, 0x02), Local0)
  490. Or (Local0, ShiftLeft (SS3, 0x03), Local0)
  491. Or (Local0, ShiftLeft (SS4, 0x04), Local0)
  492. If (And (ShiftLeft (One, Arg1), Local0))
  493. {
  494. Store (Arg1, Index (PRWP, One))
  495. }
  496. Else
  497. {
  498. ShiftRight (Local0, One, Local0)
  499. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  500. {
  501. FindSetLeftBit (Local0, Index (PRWP, One))
  502. }
  503. Else
  504. {
  505. FindSetRightBit (Local0, Index (PRWP, One))
  506. }
  507. }
  508. Return (PRWP)
  509. }
  510. Name (WAKP, Package (0x02)
  511. {
  512. Zero,
  513. Zero
  514. })
  515. OperationRegion (DEB0, SystemIO, DP80, 0x02)
  516. Field (DEB0, WordAcc, NoLock, Preserve)
  517. {
  518. DBG8, 16
  519. }
  520. OperationRegion (DEB4, SystemIO, 0x84, One)
  521. Field (DEB4, ByteAcc, NoLock, Preserve)
  522. {
  523. DBG4, 8
  524. }
  525. OperationRegion (DEB1, SystemIO, DP90, 0x02)
  526. Field (DEB1, WordAcc, NoLock, Preserve)
  527. {
  528. DBG9, 16
  529. }
  530. Scope (_SB)
  531. {
  532. Name (PR00, Package (0x17)
  533. {
  534. Package (0x04)
  535. {
  536. 0x0001FFFF,
  537. Zero,
  538. LNKA,
  539. Zero
  540. },
  541. Package (0x04)
  542. {
  543. 0x0001FFFF,
  544. One,
  545. LNKB,
  546. Zero
  547. },
  548. Package (0x04)
  549. {
  550. 0x0001FFFF,
  551. 0x02,
  552. LNKC,
  553. Zero
  554. },
  555. Package (0x04)
  556. {
  557. 0x0001FFFF,
  558. 0x03,
  559. LNKD,
  560. Zero
  561. },
  562. Package (0x04)
  563. {
  564. 0x001FFFFF,
  565. Zero,
  566. LNKC,
  567. Zero
  568. },
  569. Package (0x04)
  570. {
  571. 0x001FFFFF,
  572. One,
  573. LNKG,
  574. Zero
  575. },
  576. Package (0x04)
  577. {
  578. 0x001FFFFF,
  579. 0x02,
  580. LNKC,
  581. Zero
  582. },
  583. Package (0x04)
  584. {
  585. 0x001DFFFF,
  586. Zero,
  587. LNKH,
  588. Zero
  589. },
  590. Package (0x04)
  591. {
  592. 0x001AFFFF,
  593. 0x02,
  594. LNKC,
  595. Zero
  596. },
  597. Package (0x04)
  598. {
  599. 0x001BFFFF,
  600. Zero,
  601. LNKG,
  602. Zero
  603. },
  604. Package (0x04)
  605. {
  606. 0x001CFFFF,
  607. Zero,
  608. LNKB,
  609. Zero
  610. },
  611. Package (0x04)
  612. {
  613. 0x001CFFFF,
  614. One,
  615. LNKA,
  616. Zero
  617. },
  618. Package (0x04)
  619. {
  620. 0x001CFFFF,
  621. 0x02,
  622. LNKC,
  623. Zero
  624. },
  625. Package (0x04)
  626. {
  627. 0x001CFFFF,
  628. 0x03,
  629. LNKD,
  630. Zero
  631. },
  632. Package (0x04)
  633. {
  634. 0x0019FFFF,
  635. Zero,
  636. LNKE,
  637. Zero
  638. },
  639. Package (0x04)
  640. {
  641. 0x0019FFFF,
  642. One,
  643. LNKF,
  644. Zero
  645. },
  646. Package (0x04)
  647. {
  648. 0x001DFFFF,
  649. One,
  650. LNKD,
  651. Zero
  652. },
  653. Package (0x04)
  654. {
  655. 0x001DFFFF,
  656. 0x02,
  657. LNKC,
  658. Zero
  659. },
  660. Package (0x04)
  661. {
  662. 0x001DFFFF,
  663. 0x03,
  664. LNKA,
  665. Zero
  666. },
  667. Package (0x04)
  668. {
  669. 0x001AFFFF,
  670. Zero,
  671. LNKA,
  672. Zero
  673. },
  674. Package (0x04)
  675. {
  676. 0x001AFFFF,
  677. One,
  678. LNKF,
  679. Zero
  680. },
  681. Package (0x04)
  682. {
  683. 0x0002FFFF,
  684. Zero,
  685. LNKA,
  686. Zero
  687. },
  688. Package (0x04)
  689. {
  690. 0x0002FFFF,
  691. One,
  692. LNKB,
  693. Zero
  694. }
  695. })
  696. Name (AR00, Package (0x17)
  697. {
  698. Package (0x04)
  699. {
  700. 0x0001FFFF,
  701. Zero,
  702. Zero,
  703. 0x10
  704. },
  705. Package (0x04)
  706. {
  707. 0x0001FFFF,
  708. One,
  709. Zero,
  710. 0x11
  711. },
  712. Package (0x04)
  713. {
  714. 0x0001FFFF,
  715. 0x02,
  716. Zero,
  717. 0x12
  718. },
  719. Package (0x04)
  720. {
  721. 0x0001FFFF,
  722. 0x03,
  723. Zero,
  724. 0x13
  725. },
  726. Package (0x04)
  727. {
  728. 0x001FFFFF,
  729. Zero,
  730. Zero,
  731. 0x12
  732. },
  733. Package (0x04)
  734. {
  735. 0x001FFFFF,
  736. One,
  737. Zero,
  738. 0x16
  739. },
  740. Package (0x04)
  741. {
  742. 0x001FFFFF,
  743. 0x02,
  744. Zero,
  745. 0x12
  746. },
  747. Package (0x04)
  748. {
  749. 0x001DFFFF,
  750. Zero,
  751. Zero,
  752. 0x17
  753. },
  754. Package (0x04)
  755. {
  756. 0x001AFFFF,
  757. 0x02,
  758. Zero,
  759. 0x12
  760. },
  761. Package (0x04)
  762. {
  763. 0x001BFFFF,
  764. Zero,
  765. Zero,
  766. 0x16
  767. },
  768. Package (0x04)
  769. {
  770. 0x001CFFFF,
  771. Zero,
  772. Zero,
  773. 0x11
  774. },
  775. Package (0x04)
  776. {
  777. 0x001CFFFF,
  778. One,
  779. Zero,
  780. 0x10
  781. },
  782. Package (0x04)
  783. {
  784. 0x001CFFFF,
  785. 0x02,
  786. Zero,
  787. 0x12
  788. },
  789. Package (0x04)
  790. {
  791. 0x001CFFFF,
  792. 0x03,
  793. Zero,
  794. 0x13
  795. },
  796. Package (0x04)
  797. {
  798. 0x0019FFFF,
  799. Zero,
  800. Zero,
  801. 0x14
  802. },
  803. Package (0x04)
  804. {
  805. 0x0019FFFF,
  806. One,
  807. Zero,
  808. 0x15
  809. },
  810. Package (0x04)
  811. {
  812. 0x001DFFFF,
  813. One,
  814. Zero,
  815. 0x13
  816. },
  817. Package (0x04)
  818. {
  819. 0x001DFFFF,
  820. 0x02,
  821. Zero,
  822. 0x12
  823. },
  824. Package (0x04)
  825. {
  826. 0x001DFFFF,
  827. 0x03,
  828. Zero,
  829. 0x10
  830. },
  831. Package (0x04)
  832. {
  833. 0x001AFFFF,
  834. Zero,
  835. Zero,
  836. 0x10
  837. },
  838. Package (0x04)
  839. {
  840. 0x001AFFFF,
  841. One,
  842. Zero,
  843. 0x15
  844. },
  845. Package (0x04)
  846. {
  847. 0x0002FFFF,
  848. Zero,
  849. Zero,
  850. 0x10
  851. },
  852. Package (0x04)
  853. {
  854. 0x0002FFFF,
  855. One,
  856. Zero,
  857. 0x11
  858. }
  859. })
  860. Name (PR02, Package (0x04)
  861. {
  862. Package (0x04)
  863. {
  864. 0xFFFF,
  865. Zero,
  866. LNKA,
  867. Zero
  868. },
  869. Package (0x04)
  870. {
  871. 0xFFFF,
  872. One,
  873. LNKB,
  874. Zero
  875. },
  876. Package (0x04)
  877. {
  878. 0xFFFF,
  879. 0x02,
  880. LNKC,
  881. Zero
  882. },
  883. Package (0x04)
  884. {
  885. 0xFFFF,
  886. 0x03,
  887. LNKD,
  888. Zero
  889. }
  890. })
  891. Name (AR02, Package (0x04)
  892. {
  893. Package (0x04)
  894. {
  895. 0xFFFF,
  896. Zero,
  897. Zero,
  898. 0x10
  899. },
  900. Package (0x04)
  901. {
  902. 0xFFFF,
  903. One,
  904. Zero,
  905. 0x11
  906. },
  907. Package (0x04)
  908. {
  909. 0xFFFF,
  910. 0x02,
  911. Zero,
  912. 0x12
  913. },
  914. Package (0x04)
  915. {
  916. 0xFFFF,
  917. 0x03,
  918. Zero,
  919. 0x13
  920. }
  921. })
  922. Name (PR04, Package (0x04)
  923. {
  924. Package (0x04)
  925. {
  926. 0xFFFF,
  927. Zero,
  928. LNKA,
  929. Zero
  930. },
  931. Package (0x04)
  932. {
  933. 0xFFFF,
  934. One,
  935. LNKB,
  936. Zero
  937. },
  938. Package (0x04)
  939. {
  940. 0xFFFF,
  941. 0x02,
  942. LNKC,
  943. Zero
  944. },
  945. Package (0x04)
  946. {
  947. 0xFFFF,
  948. 0x03,
  949. LNKD,
  950. Zero
  951. }
  952. })
  953. Name (AR04, Package (0x04)
  954. {
  955. Package (0x04)
  956. {
  957. 0xFFFF,
  958. Zero,
  959. Zero,
  960. 0x10
  961. },
  962. Package (0x04)
  963. {
  964. 0xFFFF,
  965. One,
  966. Zero,
  967. 0x11
  968. },
  969. Package (0x04)
  970. {
  971. 0xFFFF,
  972. 0x02,
  973. Zero,
  974. 0x12
  975. },
  976. Package (0x04)
  977. {
  978. 0xFFFF,
  979. 0x03,
  980. Zero,
  981. 0x13
  982. }
  983. })
  984. Name (PR06, Package (0x04)
  985. {
  986. Package (0x04)
  987. {
  988. 0xFFFF,
  989. Zero,
  990. LNKC,
  991. Zero
  992. },
  993. Package (0x04)
  994. {
  995. 0xFFFF,
  996. One,
  997. LNKD,
  998. Zero
  999. },
  1000. Package (0x04)
  1001. {
  1002. 0xFFFF,
  1003. 0x02,
  1004. LNKA,
  1005. Zero
  1006. },
  1007. Package (0x04)
  1008. {
  1009. 0xFFFF,
  1010. 0x03,
  1011. LNKB,
  1012. Zero
  1013. }
  1014. })
  1015. Name (AR06, Package (0x04)
  1016. {
  1017. Package (0x04)
  1018. {
  1019. 0xFFFF,
  1020. Zero,
  1021. Zero,
  1022. 0x12
  1023. },
  1024. Package (0x04)
  1025. {
  1026. 0xFFFF,
  1027. One,
  1028. Zero,
  1029. 0x13
  1030. },
  1031. Package (0x04)
  1032. {
  1033. 0xFFFF,
  1034. 0x02,
  1035. Zero,
  1036. 0x10
  1037. },
  1038. Package (0x04)
  1039. {
  1040. 0xFFFF,
  1041. 0x03,
  1042. Zero,
  1043. 0x11
  1044. }
  1045. })
  1046. Name (PR07, Package (0x04)
  1047. {
  1048. Package (0x04)
  1049. {
  1050. 0xFFFF,
  1051. Zero,
  1052. LNKD,
  1053. Zero
  1054. },
  1055. Package (0x04)
  1056. {
  1057. 0xFFFF,
  1058. One,
  1059. LNKA,
  1060. Zero
  1061. },
  1062. Package (0x04)
  1063. {
  1064. 0xFFFF,
  1065. 0x02,
  1066. LNKB,
  1067. Zero
  1068. },
  1069. Package (0x04)
  1070. {
  1071. 0xFFFF,
  1072. 0x03,
  1073. LNKC,
  1074. Zero
  1075. }
  1076. })
  1077. Name (AR07, Package (0x04)
  1078. {
  1079. Package (0x04)
  1080. {
  1081. 0xFFFF,
  1082. Zero,
  1083. Zero,
  1084. 0x13
  1085. },
  1086. Package (0x04)
  1087. {
  1088. 0xFFFF,
  1089. One,
  1090. Zero,
  1091. 0x10
  1092. },
  1093. Package (0x04)
  1094. {
  1095. 0xFFFF,
  1096. 0x02,
  1097. Zero,
  1098. 0x11
  1099. },
  1100. Package (0x04)
  1101. {
  1102. 0xFFFF,
  1103. 0x03,
  1104. Zero,
  1105. 0x12
  1106. }
  1107. })
  1108. Name (PR08, Package (0x04)
  1109. {
  1110. Package (0x04)
  1111. {
  1112. 0xFFFF,
  1113. Zero,
  1114. LNKA,
  1115. Zero
  1116. },
  1117. Package (0x04)
  1118. {
  1119. 0xFFFF,
  1120. One,
  1121. LNKB,
  1122. Zero
  1123. },
  1124. Package (0x04)
  1125. {
  1126. 0xFFFF,
  1127. 0x02,
  1128. LNKC,
  1129. Zero
  1130. },
  1131. Package (0x04)
  1132. {
  1133. 0xFFFF,
  1134. 0x03,
  1135. LNKD,
  1136. Zero
  1137. }
  1138. })
  1139. Name (AR08, Package (0x04)
  1140. {
  1141. Package (0x04)
  1142. {
  1143. 0xFFFF,
  1144. Zero,
  1145. Zero,
  1146. 0x10
  1147. },
  1148. Package (0x04)
  1149. {
  1150. 0xFFFF,
  1151. One,
  1152. Zero,
  1153. 0x11
  1154. },
  1155. Package (0x04)
  1156. {
  1157. 0xFFFF,
  1158. 0x02,
  1159. Zero,
  1160. 0x12
  1161. },
  1162. Package (0x04)
  1163. {
  1164. 0xFFFF,
  1165. 0x03,
  1166. Zero,
  1167. 0x13
  1168. }
  1169. })
  1170. Name (PR09, Package (0x04)
  1171. {
  1172. Package (0x04)
  1173. {
  1174. 0xFFFF,
  1175. Zero,
  1176. LNKB,
  1177. Zero
  1178. },
  1179. Package (0x04)
  1180. {
  1181. 0xFFFF,
  1182. One,
  1183. LNKC,
  1184. Zero
  1185. },
  1186. Package (0x04)
  1187. {
  1188. 0xFFFF,
  1189. 0x02,
  1190. LNKD,
  1191. Zero
  1192. },
  1193. Package (0x04)
  1194. {
  1195. 0xFFFF,
  1196. 0x03,
  1197. LNKA,
  1198. Zero
  1199. }
  1200. })
  1201. Name (AR09, Package (0x04)
  1202. {
  1203. Package (0x04)
  1204. {
  1205. 0xFFFF,
  1206. Zero,
  1207. Zero,
  1208. 0x11
  1209. },
  1210. Package (0x04)
  1211. {
  1212. 0xFFFF,
  1213. One,
  1214. Zero,
  1215. 0x12
  1216. },
  1217. Package (0x04)
  1218. {
  1219. 0xFFFF,
  1220. 0x02,
  1221. Zero,
  1222. 0x13
  1223. },
  1224. Package (0x04)
  1225. {
  1226. 0xFFFF,
  1227. 0x03,
  1228. Zero,
  1229. 0x10
  1230. }
  1231. })
  1232. Name (PR01, Package (0x0E)
  1233. {
  1234. Package (0x04)
  1235. {
  1236. 0xFFFF,
  1237. Zero,
  1238. LNKA,
  1239. Zero
  1240. },
  1241. Package (0x04)
  1242. {
  1243. 0xFFFF,
  1244. One,
  1245. LNKB,
  1246. Zero
  1247. },
  1248. Package (0x04)
  1249. {
  1250. 0xFFFF,
  1251. 0x02,
  1252. LNKC,
  1253. Zero
  1254. },
  1255. Package (0x04)
  1256. {
  1257. 0xFFFF,
  1258. 0x03,
  1259. LNKD,
  1260. Zero
  1261. },
  1262. Package (0x04)
  1263. {
  1264. 0x0001FFFF,
  1265. Zero,
  1266. LNKB,
  1267. Zero
  1268. },
  1269. Package (0x04)
  1270. {
  1271. 0x0001FFFF,
  1272. One,
  1273. LNKC,
  1274. Zero
  1275. },
  1276. Package (0x04)
  1277. {
  1278. 0x0001FFFF,
  1279. 0x02,
  1280. LNKD,
  1281. Zero
  1282. },
  1283. Package (0x04)
  1284. {
  1285. 0x0001FFFF,
  1286. 0x03,
  1287. LNKA,
  1288. Zero
  1289. },
  1290. Package (0x04)
  1291. {
  1292. 0x0002FFFF,
  1293. Zero,
  1294. LNKC,
  1295. Zero
  1296. },
  1297. Package (0x04)
  1298. {
  1299. 0x0002FFFF,
  1300. One,
  1301. LNKD,
  1302. Zero
  1303. },
  1304. Package (0x04)
  1305. {
  1306. 0x0002FFFF,
  1307. 0x02,
  1308. LNKA,
  1309. Zero
  1310. },
  1311. Package (0x04)
  1312. {
  1313. 0x0002FFFF,
  1314. 0x03,
  1315. LNKB,
  1316. Zero
  1317. },
  1318. Package (0x04)
  1319. {
  1320. 0x0003FFFF,
  1321. Zero,
  1322. LNKD,
  1323. Zero
  1324. },
  1325. Package (0x04)
  1326. {
  1327. 0x0004FFFF,
  1328. Zero,
  1329. LNKA,
  1330. Zero
  1331. }
  1332. })
  1333. Name (AR01, Package (0x0E)
  1334. {
  1335. Package (0x04)
  1336. {
  1337. 0xFFFF,
  1338. Zero,
  1339. Zero,
  1340. 0x10
  1341. },
  1342. Package (0x04)
  1343. {
  1344. 0xFFFF,
  1345. One,
  1346. Zero,
  1347. 0x11
  1348. },
  1349. Package (0x04)
  1350. {
  1351. 0xFFFF,
  1352. 0x02,
  1353. Zero,
  1354. 0x12
  1355. },
  1356. Package (0x04)
  1357. {
  1358. 0xFFFF,
  1359. 0x03,
  1360. Zero,
  1361. 0x13
  1362. },
  1363. Package (0x04)
  1364. {
  1365. 0x0001FFFF,
  1366. Zero,
  1367. Zero,
  1368. 0x11
  1369. },
  1370. Package (0x04)
  1371. {
  1372. 0x0001FFFF,
  1373. One,
  1374. Zero,
  1375. 0x12
  1376. },
  1377. Package (0x04)
  1378. {
  1379. 0x0001FFFF,
  1380. 0x02,
  1381. Zero,
  1382. 0x13
  1383. },
  1384. Package (0x04)
  1385. {
  1386. 0x0001FFFF,
  1387. 0x03,
  1388. Zero,
  1389. 0x10
  1390. },
  1391. Package (0x04)
  1392. {
  1393. 0x0002FFFF,
  1394. Zero,
  1395. Zero,
  1396. 0x12
  1397. },
  1398. Package (0x04)
  1399. {
  1400. 0x0002FFFF,
  1401. One,
  1402. Zero,
  1403. 0x13
  1404. },
  1405. Package (0x04)
  1406. {
  1407. 0x0002FFFF,
  1408. 0x02,
  1409. Zero,
  1410. 0x10
  1411. },
  1412. Package (0x04)
  1413. {
  1414. 0x0002FFFF,
  1415. 0x03,
  1416. Zero,
  1417. 0x11
  1418. },
  1419. Package (0x04)
  1420. {
  1421. 0x0003FFFF,
  1422. Zero,
  1423. Zero,
  1424. 0x13
  1425. },
  1426. Package (0x04)
  1427. {
  1428. 0x0004FFFF,
  1429. Zero,
  1430. Zero,
  1431. 0x10
  1432. }
  1433. })
  1434. Name (PRSA, ResourceTemplate ()
  1435. {
  1436. IRQ (Level, ActiveLow, Shared, )
  1437. {3,4,5,6,7,10,11,12,14,15}
  1438. })
  1439. Alias (PRSA, PRSB)
  1440. Alias (PRSA, PRSC)
  1441. Alias (PRSA, PRSD)
  1442. Alias (PRSA, PRSE)
  1443. Alias (PRSA, PRSF)
  1444. Alias (PRSA, PRSG)
  1445. Alias (PRSA, PRSH)
  1446. Device (PCI0)
  1447. {
  1448. Name (_HID, EisaId ("PNP0A08"))
  1449. Name (_ADR, Zero)
  1450. Method (^BN00, 0, NotSerialized)
  1451. {
  1452. Return (Zero)
  1453. }
  1454. Method (_BBN, 0, NotSerialized)
  1455. {
  1456. Return (BN00 ())
  1457. }
  1458. Name (_UID, Zero)
  1459. Method (_PRT, 0, NotSerialized)
  1460. {
  1461. If (PICM)
  1462. {
  1463. Return (AR00)
  1464. }
  1465. Return (PR00)
  1466. }
  1467. Method (_S3D, 0, NotSerialized)
  1468. {
  1469. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  1470. {
  1471. Return (0x02)
  1472. }
  1473. Else
  1474. {
  1475. Return (0x03)
  1476. }
  1477. }
  1478. Name (_CID, EisaId ("PNP0A03"))
  1479. Device (MCH)
  1480. {
  1481. Name (_HID, EisaId ("PNP0C01"))
  1482. Name (_UID, 0x0A)
  1483. Name (_CRS, ResourceTemplate ()
  1484. {
  1485. Memory32Fixed (ReadWrite,
  1486. 0xFED14000, // Address Base
  1487. 0x00006000, // Address Length
  1488. )
  1489. })
  1490. }
  1491. Method (NPTS, 1, NotSerialized)
  1492. {
  1493. }
  1494. Method (NWAK, 1, NotSerialized)
  1495. {
  1496. }
  1497. Device (P0P2)
  1498. {
  1499. Name (_ADR, 0x00010000)
  1500. Method (_PRW, 0, NotSerialized)
  1501. {
  1502. Return (GPRW (0x09, 0x04))
  1503. }
  1504. Method (_PRT, 0, NotSerialized)
  1505. {
  1506. If (PICM)
  1507. {
  1508. Return (AR02)
  1509. }
  1510. Return (PR02)
  1511. }
  1512. }
  1513. Device (P0P1)
  1514. {
  1515. Name (_ADR, 0x001E0000)
  1516. Method (_PRW, 0, NotSerialized)
  1517. {
  1518. Return (GPRW (0x0B, 0x04))
  1519. }
  1520. Method (_PRT, 0, NotSerialized)
  1521. {
  1522. If (PICM)
  1523. {
  1524. Return (AR01)
  1525. }
  1526. Return (PR01)
  1527. }
  1528. }
  1529. Device (SBRG)
  1530. {
  1531. Name (_ADR, 0x001F0000)
  1532. Device (IELK)
  1533. {
  1534. Name (_HID, "AWY0001")
  1535. OperationRegion (RXA0, PCI_Config, 0xA0, 0x20)
  1536. Field (RXA0, ByteAcc, NoLock, Preserve)
  1537. {
  1538. , 9,
  1539. PBLV, 1,
  1540. Offset (0x10),
  1541. , 1,
  1542. PBMS, 1,
  1543. , 1,
  1544. PMCS, 1,
  1545. ECNS, 1,
  1546. Offset (0x11),
  1547. ECT1, 16,
  1548. ELEN, 1,
  1549. Offset (0x14)
  1550. }
  1551. Method (\_GPE._L0A, 0, NotSerialized)
  1552. {
  1553. Notify (\_SB.PCI0.SBRG.IELK, 0x81)
  1554. Store (One, \_SB.PCI0.SBRG.IELK.PMCS)
  1555. }
  1556. Method (_STA, 0, NotSerialized)
  1557. {
  1558. If (ELEN)
  1559. {
  1560. Return (0x0F)
  1561. }
  1562. Else
  1563. {
  1564. Return (Zero)
  1565. }
  1566. }
  1567. Method (SMOD, 1, NotSerialized)
  1568. {
  1569. }
  1570. Method (GPBS, 0, NotSerialized)
  1571. {
  1572. Return (XOr (PBLV, One))
  1573. }
  1574. }
  1575. Method (SPTS, 1, NotSerialized)
  1576. {
  1577. Store (One, PS1S)
  1578. Store (One, PS1E)
  1579. Store (One, SLPS)
  1580. }
  1581. Method (SWAK, 1, NotSerialized)
  1582. {
  1583. Store (Zero, SLPS)
  1584. Store (Zero, PS1E)
  1585. If (LAnd (LEqual (Arg0, One), RTCS)) {}
  1586. Else
  1587. {
  1588. If (LAnd (LEqual (Arg0, 0x03), BRTC)) {}
  1589. Else
  1590. {
  1591. Notify (PWRB, 0x02)
  1592. }
  1593. }
  1594. }
  1595. OperationRegion (APMP, SystemIO, SMIP, 0x02)
  1596. Field (APMP, ByteAcc, NoLock, Preserve)
  1597. {
  1598. APMC, 8,
  1599. APMS, 8
  1600. }
  1601. Field (APMP, ByteAcc, NoLock, Preserve)
  1602. {
  1603. Offset (0x01),
  1604. , 1,
  1605. BRTC, 1
  1606. }
  1607. OperationRegion (PMS0, SystemIO, PMBS, 0x04)
  1608. Field (PMS0, ByteAcc, NoLock, Preserve)
  1609. {
  1610. , 10,
  1611. RTCS, 1,
  1612. , 4,
  1613. WAKS, 1,
  1614. Offset (0x03),
  1615. PWBT, 1,
  1616. Offset (0x04)
  1617. }
  1618. OperationRegion (SMIE, SystemIO, PM30, 0x08)
  1619. Field (SMIE, ByteAcc, NoLock, Preserve)
  1620. {
  1621. , 4,
  1622. PS1E, 1,
  1623. , 31,
  1624. PS1S, 1,
  1625. Offset (0x08)
  1626. }
  1627. Scope (\_SB)
  1628. {
  1629. Name (SLPS, Zero)
  1630. }
  1631. Device (PIC)
  1632. {
  1633. Name (_HID, EisaId ("PNP0000"))
  1634. Name (_CRS, ResourceTemplate ()
  1635. {
  1636. IO (Decode16,
  1637. 0x0020, // Range Minimum
  1638. 0x0020, // Range Maximum
  1639. 0x00, // Alignment
  1640. 0x02, // Length
  1641. )
  1642. IO (Decode16,
  1643. 0x00A0, // Range Minimum
  1644. 0x00A0, // Range Maximum
  1645. 0x00, // Alignment
  1646. 0x02, // Length
  1647. )
  1648. IRQNoFlags ()
  1649. {2}
  1650. })
  1651. }
  1652. Device (DMAD)
  1653. {
  1654. Name (_HID, EisaId ("PNP0200"))
  1655. Name (_CRS, ResourceTemplate ()
  1656. {
  1657. DMA (Compatibility, BusMaster, Transfer8, )
  1658. {4}
  1659. IO (Decode16,
  1660. 0x0000, // Range Minimum
  1661. 0x0000, // Range Maximum
  1662. 0x00, // Alignment
  1663. 0x10, // Length
  1664. )
  1665. IO (Decode16,
  1666. 0x0081, // Range Minimum
  1667. 0x0081, // Range Maximum
  1668. 0x00, // Alignment
  1669. 0x03, // Length
  1670. )
  1671. IO (Decode16,
  1672. 0x0087, // Range Minimum
  1673. 0x0087, // Range Maximum
  1674. 0x00, // Alignment
  1675. 0x01, // Length
  1676. )
  1677. IO (Decode16,
  1678. 0x0089, // Range Minimum
  1679. 0x0089, // Range Maximum
  1680. 0x00, // Alignment
  1681. 0x03, // Length
  1682. )
  1683. IO (Decode16,
  1684. 0x008F, // Range Minimum
  1685. 0x008F, // Range Maximum
  1686. 0x00, // Alignment
  1687. 0x01, // Length
  1688. )
  1689. IO (Decode16,
  1690. 0x00C0, // Range Minimum
  1691. 0x00C0, // Range Maximum
  1692. 0x00, // Alignment
  1693. 0x20, // Length
  1694. )
  1695. })
  1696. }
  1697. Device (TMR)
  1698. {
  1699. Name (_HID, EisaId ("PNP0100"))
  1700. Name (_CRS, ResourceTemplate ()
  1701. {
  1702. IO (Decode16,
  1703. 0x0040, // Range Minimum
  1704. 0x0040, // Range Maximum
  1705. 0x00, // Alignment
  1706. 0x04, // Length
  1707. )
  1708. IRQNoFlags ()
  1709. {0}
  1710. })
  1711. }
  1712. Device (RTC0)
  1713. {
  1714. Name (_HID, EisaId ("PNP0B00"))
  1715. Name (_CRS, ResourceTemplate ()
  1716. {
  1717. IO (Decode16,
  1718. 0x0070, // Range Minimum
  1719. 0x0070, // Range Maximum
  1720. 0x00, // Alignment
  1721. 0x02, // Length
  1722. )
  1723. IRQNoFlags ()
  1724. {8}
  1725. })
  1726. }
  1727. Device (SPKR)
  1728. {
  1729. Name (_HID, EisaId ("PNP0800"))
  1730. Name (_CRS, ResourceTemplate ()
  1731. {
  1732. IO (Decode16,
  1733. 0x0061, // Range Minimum
  1734. 0x0061, // Range Maximum
  1735. 0x00, // Alignment
  1736. 0x01, // Length
  1737. )
  1738. })
  1739. }
  1740. Device (COPR)
  1741. {
  1742. Name (_HID, EisaId ("PNP0C04"))
  1743. Name (_CRS, ResourceTemplate ()
  1744. {
  1745. IO (Decode16,
  1746. 0x00F0, // Range Minimum
  1747. 0x00F0, // Range Maximum
  1748. 0x00, // Alignment
  1749. 0x10, // Length
  1750. )
  1751. IRQNoFlags ()
  1752. {13}
  1753. })
  1754. }
  1755. Device (FDC)
  1756. {
  1757. Name (_HID, EisaId ("PNP0700"))
  1758. Method (_FDE, 0, NotSerialized)
  1759. {
  1760. Name (FDEP, Package (0x05)
  1761. {
  1762. Zero,
  1763. Zero,
  1764. 0x02,
  1765. 0x02,
  1766. 0x02
  1767. })
  1768. If (_STA ())
  1769. {
  1770. Store (One, Index (FDEP, Zero))
  1771. }
  1772. Return (FDEP)
  1773. }
  1774. Method (_STA, 0, NotSerialized)
  1775. {
  1776. Return (DSTA (0x03))
  1777. }
  1778. Method (_DIS, 0, NotSerialized)
  1779. {
  1780. DCNT (0x03, Zero)
  1781. }
  1782. Method (_CRS, 0, NotSerialized)
  1783. {
  1784. DCRS (0x03, One)
  1785. Store (IRQM, IRQE)
  1786. Store (DMAM, DMAE)
  1787. Store (IO11, IO21)
  1788. Store (IO12, IO22)
  1789. Store (0x06, LEN2)
  1790. Add (IO21, 0x07, IO31)
  1791. Store (IO31, IO32)
  1792. Store (One, LEN3)
  1793. Return (CRS2)
  1794. }
  1795. Method (_SRS, 1, NotSerialized)
  1796. {
  1797. DSRS (Arg0, 0x03)
  1798. CreateWordField (Arg0, One, IRQE)
  1799. CreateByteField (Arg0, 0x04, DMAE)
  1800. ENFG (CGLD (0x03))
  1801. If (IRQE)
  1802. {
  1803. FindSetRightBit (IRQE, Local0)
  1804. Subtract (Local0, One, INTR)
  1805. }
  1806. Else
  1807. {
  1808. Store (Zero, INTR)
  1809. }
  1810. If (DMAE)
  1811. {
  1812. FindSetRightBit (DMAE, Local0)
  1813. Subtract (Local0, One, DMCH)
  1814. }
  1815. Else
  1816. {
  1817. Store (0x04, DMCH)
  1818. }
  1819. EXFG ()
  1820. }
  1821. Name (_PRS, ResourceTemplate ()
  1822. {
  1823. StartDependentFn (0x00, 0x00)
  1824. {
  1825. IO (Decode16,
  1826. 0x03F0, // Range Minimum
  1827. 0x03F0, // Range Maximum
  1828. 0x01, // Alignment
  1829. 0x06, // Length
  1830. )
  1831. IO (Decode16,
  1832. 0x03F7, // Range Minimum
  1833. 0x03F7, // Range Maximum
  1834. 0x01, // Alignment
  1835. 0x01, // Length
  1836. )
  1837. IRQNoFlags ()
  1838. {6}
  1839. DMA (Compatibility, NotBusMaster, Transfer8, )
  1840. {2}
  1841. }
  1842. StartDependentFnNoPri ()
  1843. {
  1844. IO (Decode16,
  1845. 0x03F0, // Range Minimum
  1846. 0x03F0, // Range Maximum
  1847. 0x01, // Alignment
  1848. 0x06, // Length
  1849. )
  1850. IO (Decode16,
  1851. 0x03F7, // Range Minimum
  1852. 0x03F7, // Range Maximum
  1853. 0x01, // Alignment
  1854. 0x01, // Length
  1855. )
  1856. IRQNoFlags ()
  1857. {3,4,5,6,7,10,11,12}
  1858. DMA (Compatibility, NotBusMaster, Transfer8, )
  1859. {0,1,2,3}
  1860. }
  1861. StartDependentFnNoPri ()
  1862. {
  1863. IO (Decode16,
  1864. 0x0370, // Range Minimum
  1865. 0x0370, // Range Maximum
  1866. 0x01, // Alignment
  1867. 0x06, // Length
  1868. )
  1869. IO (Decode16,
  1870. 0x0377, // Range Minimum
  1871. 0x0377, // Range Maximum
  1872. 0x01, // Alignment
  1873. 0x01, // Length
  1874. )
  1875. IRQNoFlags ()
  1876. {3,4,5,6,7,10,11,12}
  1877. DMA (Compatibility, NotBusMaster, Transfer8, )
  1878. {0,1,2,3}
  1879. }
  1880. EndDependentFn ()
  1881. })
  1882. }
  1883. Device (SIOR)
  1884. {
  1885. Name (_HID, EisaId ("PNP0C02"))
  1886. Method (_UID, 0, NotSerialized)
  1887. {
  1888. Return (SPIO)
  1889. }
  1890. Name (CRS, ResourceTemplate ()
  1891. {
  1892. IO (Decode16,
  1893. 0x0000, // Range Minimum
  1894. 0x0000, // Range Maximum
  1895. 0x00, // Alignment
  1896. 0x00, // Length
  1897. _Y00)
  1898. IO (Decode16,
  1899. 0x0000, // Range Minimum
  1900. 0x0000, // Range Maximum
  1901. 0x00, // Alignment
  1902. 0x00, // Length
  1903. )
  1904. IO (Decode16,
  1905. 0x0290, // Range Minimum
  1906. 0x0290, // Range Maximum
  1907. 0x00, // Alignment
  1908. 0x08, // Length
  1909. )
  1910. })
  1911. Method (_CRS, 0, NotSerialized)
  1912. {
  1913. If (LAnd (LNotEqual (SPIO, 0x03F0), LGreater (SPIO, 0xF0)))
  1914. {
  1915. CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y00._MIN, GP10)
  1916. CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y00._MAX, GP11)
  1917. CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y00._LEN, GPL1)
  1918. Store (SPIO, GP10)
  1919. Store (SPIO, GP11)
  1920. Store (0x02, GPL1)
  1921. }
  1922. Return (CRS)
  1923. }
  1924. }
  1925. Name (DCAT, Package (0x15)
  1926. {
  1927. 0x02,
  1928. 0x03,
  1929. One,
  1930. Zero,
  1931. 0xFF,
  1932. 0x07,
  1933. 0xFF,
  1934. 0xFF,
  1935. 0x07,
  1936. 0xFF,
  1937. 0xFF,
  1938. 0xFF,
  1939. 0xFF,
  1940. 0xFF,
  1941. 0xFF,
  1942. 0xFF,
  1943. 0x07,
  1944. 0x08,
  1945. 0x09,
  1946. 0xFF,
  1947. 0xFF
  1948. })
  1949. Mutex (IOCF, 0x00)
  1950. Method (ENFG, 1, NotSerialized)
  1951. {
  1952. Acquire (IOCF, 0xFFFF)
  1953. Store (0x87, INDX)
  1954. Store (0x87, INDX)
  1955. Store (Arg0, LDN)
  1956. }
  1957. Method (EXFG, 0, NotSerialized)
  1958. {
  1959. Store (0xAA, INDX)
  1960. Release (IOCF)
  1961. }
  1962. Method (LPTM, 1, NotSerialized)
  1963. {
  1964. ENFG (CGLD (Arg0))
  1965. And (OPT0, 0x02, Local0)
  1966. EXFG ()
  1967. Return (Local0)
  1968. }
  1969. Method (UHID, 1, NotSerialized)
  1970. {
  1971. If (LEqual (Arg0, One))
  1972. {
  1973. ENFG (CGLD (Arg0))
  1974. And (OPT1, 0x38, Local0)
  1975. EXFG ()
  1976. If (Local0)
  1977. {
  1978. Return (0x1005D041)
  1979. }
  1980. }
  1981. Return (0x0105D041)
  1982. }
  1983. Method (SIOK, 1, NotSerialized)
  1984. {
  1985. ENFG (0x0A)
  1986. If (LGreater (Arg0, One))
  1987. {
  1988. Or (CRE4, 0x10, CRE4)
  1989. }
  1990. Store (CRE3, Local0)
  1991. EXFG ()
  1992. }
  1993. Method (SIOS, 1, NotSerialized)
  1994. {
  1995. Store ("SIOS", Debug)
  1996. SIOK (Arg0)
  1997. }
  1998. Method (SIOW, 1, NotSerialized)
  1999. {
  2000. Store ("SIOW", Debug)
  2001. SIOK (Zero)
  2002. }
  2003. Method (SIOH, 0, NotSerialized)
  2004. {
  2005. Store ("SIOH", Debug)
  2006. ENFG (0x0A)
  2007. If (And (OPT3, 0x10))
  2008. {
  2009. Notify (PS2K, 0x02)
  2010. }
  2011. EXFG ()
  2012. SIOK (Zero)
  2013. }
  2014. OperationRegion (IOID, SystemIO, SPIO, 0x02)
  2015. Field (IOID, ByteAcc, NoLock, Preserve)
  2016. {
  2017. INDX, 8,
  2018. DATA, 8
  2019. }
  2020. IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
  2021. {
  2022. Offset (0x07),
  2023. LDN, 8,
  2024. Offset (0x22),
  2025. FDCP, 1,
  2026. , 2,
  2027. LPTP, 1,
  2028. URAP, 1,
  2029. URBP, 1,
  2030. Offset (0x30),
  2031. ACTR, 8,
  2032. Offset (0x60),
  2033. IOAH, 8,
  2034. IOAL, 8,
  2035. IOH2, 8,
  2036. IOL2, 8,
  2037. Offset (0x70),
  2038. INTR, 4,
  2039. Offset (0x74),
  2040. DMCH, 3,
  2041. Offset (0xE0),
  2042. CRE0, 8,
  2043. CRE1, 8,
  2044. CRE2, 8,
  2045. CRE3, 8,
  2046. CRE4, 8,
  2047. CRE5, 8,
  2048. CRE6, 8,
  2049. Offset (0xF0),
  2050. OPT0, 8,
  2051. OPT1, 8,
  2052. OPT2, 8,
  2053. OPT3, 8,
  2054. Offset (0xF5),
  2055. OPT5, 8,
  2056. OPT6, 8,
  2057. Offset (0xF9),
  2058. OPT9, 8
  2059. }
  2060. Method (CGLD, 1, NotSerialized)
  2061. {
  2062. Return (DerefOf (Index (DCAT, Arg0)))
  2063. }
  2064. Method (DSTA, 1, NotSerialized)
  2065. {
  2066. ENFG (CGLD (Arg0))
  2067. Store (ACTR, Local0)
  2068. EXFG ()
  2069. If (LEqual (Local0, 0xFF))
  2070. {
  2071. Return (Zero)
  2072. }
  2073. If (LEqual (Arg0, 0x05))
  2074. {
  2075. ShiftRight (Local0, 0x02, Local0)
  2076. }
  2077. If (LEqual (Arg0, 0x08))
  2078. {
  2079. ShiftRight (Local0, One, Local0)
  2080. }
  2081. And (Local0, One, Local0)
  2082. Or (IOST, ShiftLeft (Local0, Arg0), IOST)
  2083. If (Local0)
  2084. {
  2085. Return (0x0F)
  2086. }
  2087. Else
  2088. {
  2089. If (And (ShiftLeft (One, Arg0), IOST))
  2090. {
  2091. Return (0x0D)
  2092. }
  2093. Else
  2094. {
  2095. Return (Zero)
  2096. }
  2097. }
  2098. }
  2099. Method (DCNT, 2, NotSerialized)
  2100. {
  2101. ENFG (CGLD (Arg0))
  2102. If (LEqual (Arg0, 0x05))
  2103. {
  2104. ShiftLeft (IOH2, 0x08, Local1)
  2105. Or (IOL2, Local1, Local1)
  2106. }
  2107. Else
  2108. {
  2109. ShiftLeft (IOAH, 0x08, Local1)
  2110. Or (IOAL, Local1, Local1)
  2111. }
  2112. RRIO (Arg0, Arg1, Local1, 0x08)
  2113. If (LAnd (LLess (DMCH, 0x04), LNotEqual (And (DMCH, 0x03,
  2114. Local1), Zero)))
  2115. {
  2116. RDMA (Arg0, Arg1, Increment (Local1))
  2117. }
  2118. Store (Arg1, Local1)
  2119. Store (One, Local2)
  2120. If (LEqual (Arg0, 0x05))
  2121. {
  2122. ShiftLeft (Arg1, 0x02, Local1)
  2123. ShiftLeft (Local2, 0x02, Local2)
  2124. }
  2125. If (LEqual (Arg0, 0x08))
  2126. {
  2127. ShiftLeft (Arg1, One, Local1)
  2128. ShiftLeft (Local2, One, Local2)
  2129. }
  2130. Store (ACTR, Local0)
  2131. Not (Local2, Local3)
  2132. And (Local0, Local3, Local0)
  2133. Or (Local0, Local1, Local0)
  2134. Store (Local0, ACTR)
  2135. EXFG ()
  2136. }
  2137. Name (CRS1, ResourceTemplate ()
  2138. {
  2139. IRQNoFlags ()
  2140. {}
  2141. DMA (Compatibility, NotBusMaster, Transfer8, _Y01)
  2142. {}
  2143. IO (Decode16,
  2144. 0x0000, // Range Minimum
  2145. 0x0000, // Range Maximum
  2146. 0x01, // Alignment
  2147. 0x00, // Length
  2148. _Y02)
  2149. })
  2150. CreateWordField (CRS1, One, IRQM)
  2151. CreateByteField (CRS1, \_SB.PCI0.SBRG._Y01._DMA, DMAM)
  2152. CreateWordField (CRS1, \_SB.PCI0.SBRG._Y02._MIN, IO11)
  2153. CreateWordField (CRS1, \_SB.PCI0.SBRG._Y02._MAX, IO12)
  2154. CreateByteField (CRS1, \_SB.PCI0.SBRG._Y02._LEN, LEN1)
  2155. Name (CRS2, ResourceTemplate ()
  2156. {
  2157. IRQNoFlags ()
  2158. {6}
  2159. DMA (Compatibility, NotBusMaster, Transfer8, _Y03)
  2160. {2}
  2161. IO (Decode16,
  2162. 0x0000, // Range Minimum
  2163. 0x0000, // Range Maximum
  2164. 0x01, // Alignment
  2165. 0x00, // Length
  2166. _Y04)
  2167. IO (Decode16,
  2168. 0x0000, // Range Minimum
  2169. 0x0000, // Range Maximum
  2170. 0x01, // Alignment
  2171. 0x00, // Length
  2172. _Y05)
  2173. })
  2174. CreateWordField (CRS2, One, IRQE)
  2175. CreateByteField (CRS2, \_SB.PCI0.SBRG._Y03._DMA, DMAE)
  2176. CreateWordField (CRS2, \_SB.PCI0.SBRG._Y04._MIN, IO21)
  2177. CreateWordField (CRS2, \_SB.PCI0.SBRG._Y04._MAX, IO22)
  2178. CreateByteField (CRS2, \_SB.PCI0.SBRG._Y04._LEN, LEN2)
  2179. CreateWordField (CRS2, \_SB.PCI0.SBRG._Y05._MIN, IO31)
  2180. CreateWordField (CRS2, \_SB.PCI0.SBRG._Y05._MAX, IO32)
  2181. CreateByteField (CRS2, \_SB.PCI0.SBRG._Y05._LEN, LEN3)
  2182. Method (DCRS, 2, NotSerialized)
  2183. {
  2184. ENFG (CGLD (Arg0))
  2185. ShiftLeft (IOAH, 0x08, IO11)
  2186. Or (IOAL, IO11, IO11)
  2187. Store (IO11, IO12)
  2188. Subtract (FindSetRightBit (IO11), One, Local0)
  2189. ShiftLeft (One, Local0, LEN1)
  2190. If (INTR)
  2191. {
  2192. ShiftLeft (One, INTR, IRQM)
  2193. }
  2194. Else
  2195. {
  2196. Store (Zero, IRQM)
  2197. }
  2198. If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero)))
  2199. {
  2200. Store (Zero, DMAM)
  2201. }
  2202. Else
  2203. {
  2204. And (DMCH, 0x03, Local1)
  2205. ShiftLeft (One, Local1, DMAM)
  2206. }
  2207. EXFG ()
  2208. Return (CRS1)
  2209. }
  2210. Method (DSRS, 2, NotSerialized)
  2211. {
  2212. CreateWordField (Arg0, One, IRQM)
  2213. CreateByteField (Arg0, 0x04, DMAM)
  2214. CreateWordField (Arg0, 0x08, IO11)
  2215. ENFG (CGLD (Arg1))
  2216. And (IO11, 0xFF, IOAL)
  2217. ShiftRight (IO11, 0x08, IOAH)
  2218. If (IRQM)
  2219. {
  2220. FindSetRightBit (IRQM, Local0)
  2221. Subtract (Local0, One, INTR)
  2222. }
  2223. Else
  2224. {
  2225. Store (Zero, INTR)
  2226. }
  2227. If (DMAM)
  2228. {
  2229. FindSetRightBit (DMAM, Local0)
  2230. Subtract (Local0, One, DMCH)
  2231. }
  2232. Else
  2233. {
  2234. Store (0x07, DMCH)
  2235. }
  2236. EXFG ()
  2237. DCNT (Arg1, One)
  2238. }
  2239. Device (RMSC)
  2240. {
  2241. Name (_HID, EisaId ("PNP0C02"))
  2242. Name (_UID, 0x10)
  2243. Name (CRS, ResourceTemplate ()
  2244. {
  2245. IO (Decode16,
  2246. 0x0010, // Range Minimum
  2247. 0x0010, // Range Maximum
  2248. 0x00, // Alignment
  2249. 0x10, // Length
  2250. )
  2251. IO (Decode16,
  2252. 0x0022, // Range Minimum
  2253. 0x0022, // Range Maximum
  2254. 0x00, // Alignment
  2255. 0x1E, // Length
  2256. )
  2257. IO (Decode16,
  2258. 0x0044, // Range Minimum
  2259. 0x0044, // Range Maximum
  2260. 0x00, // Alignment
  2261. 0x0A, // Length
  2262. )
  2263. IO (Decode16,
  2264. 0x0050, // Range Minimum
  2265. 0x0050, // Range Maximum
  2266. 0x00, // Alignment
  2267. 0x10, // Length
  2268. )
  2269. IO (Decode16,
  2270. 0x0062, // Range Minimum
  2271. 0x0062, // Range Maximum
  2272. 0x00, // Alignment
  2273. 0x02, // Length
  2274. )
  2275. IO (Decode16,
  2276. 0x0065, // Range Minimum
  2277. 0x0065, // Range Maximum
  2278. 0x00, // Alignment
  2279. 0x0B, // Length
  2280. )
  2281. IO (Decode16,
  2282. 0x0072, // Range Minimum
  2283. 0x0072, // Range Maximum
  2284. 0x00, // Alignment
  2285. 0x0E, // Length
  2286. )
  2287. IO (Decode16,
  2288. 0x0080, // Range Minimum
  2289. 0x0080, // Range Maximum
  2290. 0x00, // Alignment
  2291. 0x01, // Length
  2292. )
  2293. IO (Decode16,
  2294. 0x0084, // Range Minimum
  2295. 0x0084, // Range Maximum
  2296. 0x00, // Alignment
  2297. 0x03, // Length
  2298. )
  2299. IO (Decode16,
  2300. 0x0088, // Range Minimum
  2301. 0x0088, // Range Maximum
  2302. 0x00, // Alignment
  2303. 0x01, // Length
  2304. )
  2305. IO (Decode16,
  2306. 0x008C, // Range Minimum
  2307. 0x008C, // Range Maximum
  2308. 0x00, // Alignment
  2309. 0x03, // Length
  2310. )
  2311. IO (Decode16,
  2312. 0x0090, // Range Minimum
  2313. 0x0090, // Range Maximum
  2314. 0x00, // Alignment
  2315. 0x10, // Length
  2316. )
  2317. IO (Decode16,
  2318. 0x00A2, // Range Minimum
  2319. 0x00A2, // Range Maximum
  2320. 0x00, // Alignment
  2321. 0x1E, // Length
  2322. )
  2323. IO (Decode16,
  2324. 0x00E0, // Range Minimum
  2325. 0x00E0, // Range Maximum
  2326. 0x00, // Alignment
  2327. 0x10, // Length
  2328. )
  2329. IO (Decode16,
  2330. 0x04D0, // Range Minimum
  2331. 0x04D0, // Range Maximum
  2332. 0x00, // Alignment
  2333. 0x02, // Length
  2334. )
  2335. IO (Decode16,
  2336. 0x0000, // Range Minimum
  2337. 0x0000, // Range Maximum
  2338. 0x00, // Alignment
  2339. 0x00, // Length
  2340. _Y06)
  2341. IO (Decode16,
  2342. 0x0000, // Range Minimum
  2343. 0x0000, // Range Maximum
  2344. 0x00, // Alignment
  2345. 0x00, // Length
  2346. _Y07)
  2347. IO (Decode16,
  2348. 0x0000, // Range Minimum
  2349. 0x0000, // Range Maximum
  2350. 0x00, // Alignment
  2351. 0x00, // Length
  2352. _Y08)
  2353. Memory32Fixed (ReadWrite,
  2354. 0xFED1C000, // Address Base
  2355. 0x00004000, // Address Length
  2356. )
  2357. Memory32Fixed (ReadWrite,
  2358. 0xFED20000, // Address Base
  2359. 0x00020000, // Address Length
  2360. )
  2361. Memory32Fixed (ReadWrite,
  2362. 0xFED50000, // Address Base
  2363. 0x00040000, // Address Length
  2364. )
  2365. Memory32Fixed (ReadWrite,
  2366. 0xFFA00000, // Address Base
  2367. 0x00100000, // Address Length
  2368. )
  2369. Memory32Fixed (ReadWrite,
  2370. 0xFFB00000, // Address Base
  2371. 0x00100000, // Address Length
  2372. )
  2373. Memory32Fixed (ReadWrite,
  2374. 0xFFE00000, // Address Base
  2375. 0x00100000, // Address Length
  2376. )
  2377. Memory32Fixed (ReadWrite,
  2378. 0xFFF00000, // Address Base
  2379. 0x000FFFFF, // Address Length
  2380. )
  2381. })
  2382. Method (_CRS, 0, NotSerialized)
  2383. {
  2384. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y06._MIN, GP00)
  2385. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y06._MAX, GP01)
  2386. CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y06._LEN, GP0L)
  2387. Store (PMBS, GP00)
  2388. Store (PMBS, GP01)
  2389. Store (PMLN, GP0L)
  2390. If (SMBS)
  2391. {
  2392. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y07._MIN, GP10)
  2393. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y07._MAX, GP11)
  2394. CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y07._LEN, GP1L)
  2395. Store (SMBS, GP10)
  2396. Store (SMBS, GP11)
  2397. Store (SMBL, GP1L)
  2398. }
  2399. If (GPBS)
  2400. {
  2401. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y08._MIN, GP20)
  2402. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y08._MAX, GP21)
  2403. CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y08._LEN, GP2L)
  2404. Store (GPBS, GP20)
  2405. Store (GPBS, GP21)
  2406. Store (GPLN, GP2L)
  2407. }
  2408. Return (CRS)
  2409. }
  2410. }
  2411. Scope (\)
  2412. {
  2413. OperationRegion (RAMW, SystemMemory, 0xCFFF0000, 0x00010000)
  2414. Field (RAMW, ByteAcc, NoLock, Preserve)
  2415. {
  2416. PAR0, 32,
  2417. PAR1, 32,
  2418. PAR2, 32
  2419. }
  2420. OperationRegion (IOB2, SystemIO, 0xB2, 0x02)
  2421. Field (IOB2, ByteAcc, NoLock, Preserve)
  2422. {
  2423. SMIC, 8,
  2424. SMIS, 8
  2425. }
  2426. Method (ISMI, 1, Serialized)
  2427. {
  2428. Store (Arg0, SMIC)
  2429. }
  2430. Method (GNVS, 1, Serialized)
  2431. {
  2432. Store (Arg0, PAR0)
  2433. ISMI (0x70)
  2434. Return (PAR1)
  2435. }
  2436. Method (SNVS, 2, Serialized)
  2437. {
  2438. Store (Arg0, PAR0)
  2439. Store (Arg1, PAR1)
  2440. ISMI (0x71)
  2441. }
  2442. Method (GMAX, 1, Serialized)
  2443. {
  2444. Store (Arg0, PAR0)
  2445. ISMI (0x74)
  2446. Return (PAR1)
  2447. }
  2448. Method (GMDX, 1, Serialized)
  2449. {
  2450. Store (Arg0, PAR0)
  2451. ISMI (0x75)
  2452. Return (PAR1)
  2453. }
  2454. Method (GCAX, 1, Serialized)
  2455. {
  2456. Store (Arg0, PAR0)
  2457. ISMI (0x76)
  2458. Return (PAR1)
  2459. }
  2460. Method (GCDX, 1, Serialized)
  2461. {
  2462. Store (Arg0, PAR0)
  2463. ISMI (0x77)
  2464. Return (PAR1)
  2465. }
  2466. }
  2467. Scope (\_SB.PCI0.SBRG)
  2468. {
  2469. Device (ASOC)
  2470. {
  2471. Name (_HID, "ATK0110")
  2472. Name (_UID, 0x01010110)
  2473. Method (_STA, 0, NotSerialized)
  2474. {
  2475. Return (0x0F)
  2476. }
  2477. Method (_INI, 0, NotSerialized)
  2478. {
  2479. Name (_T_0, Zero)
  2480. Store (GNVS (0x3743), _T_0)
  2481. If (LEqual (_T_0, Zero))
  2482. {
  2483. Store (0x42, Index (G3T0, 0x03))
  2484. }
  2485. Else
  2486. {
  2487. If (LEqual (_T_0, 0x02))
  2488. {
  2489. Store (Zero, Index (G3T0, 0x03))
  2490. }
  2491. Else
  2492. {
  2493. If (LEqual (_T_0, 0x04))
  2494. {
  2495. Store (0x85, Index (G3T0, 0x03))
  2496. }
  2497. Else
  2498. {
  2499. If (LEqual (_T_0, 0x06))
  2500. {
  2501. Store (0xC8, Index (G3T0, 0x03))
  2502. }
  2503. }
  2504. }
  2505. }
  2506. If (LGreater (And (GCAX (One), 0x0FF0, Local0), 0x06F0))
  2507. {
  2508. Store (GMAX (0x2C), Local0)
  2509. And (ShiftRight (Local0, 0x08), 0xFF, Local2)
  2510. And (Local0, 0xFF, Local1)
  2511. Subtract (Local1, Local2, Local0)
  2512. Store (GMDX (0x0198), Local7)
  2513. And (ShiftRight (Local7, 0x08), 0xFF, Local7)
  2514. If (LLess (Local7, Local0))
  2515. {
  2516. Store (Local1, Local7)
  2517. }
  2518. }
  2519. Else
  2520. {
  2521. Store (GMAX (0x17), Local0)
  2522. And (ShiftRight (Local0, 0x08), 0x1F, Local1)
  2523. Store (Local1, Local7)
  2524. Store (GMAX (0x0198), Local0)
  2525. And (ShiftRight (Local0, 0x18), 0x1F, Local0)
  2526. }
  2527. Multiply (Local0, 0x0A, Local2)
  2528. Or (Local2, 0xFF000000, Index (G3T2, 0x04))
  2529. If (And (GMAX (0x0198), 0x80000000))
  2530. {
  2531. Store (0x1F, Local1)
  2532. }
  2533. If (And (GMAX (0x17), 0x00800000))
  2534. {
  2535. And (GMAX (0x17), 0x4000, Local2)
  2536. Store (0x05, Index (G3T2, 0x05))
  2537. Store (ShiftRight (And (GMAX (0x17), 0x4000), 0x0E), Local5)
  2538. Store (Subtract (Local7, Local0), Local4)
  2539. Multiply (Local4, 0x02, Local6)
  2540. Add (Local6, Local5, Index (G3T2, 0x03))
  2541. Multiply (Subtract (Local1, Local0, Local3), 0x02, Local3)
  2542. Add (Local3, One, Local3)
  2543. If (Local2)
  2544. {
  2545. Add (Local3, One, Local3)
  2546. }
  2547. Store (Local3, Index (G3T2, 0x06))
  2548. }
  2549. Else
  2550. {
  2551. Store (0x0A, Index (G3T2, 0x05))
  2552. Store (Subtract (Local7, Local0), Index (G3T2, 0x03))
  2553. Add (Subtract (Local1, Local0, Local3), One, Index (G3T2, 0x06))
  2554. }
  2555. Name (_T_1, Zero)
  2556. Store (GNVS (0x154F), _T_1)
  2557. If (LEqual (_T_1, Zero))
  2558. {
  2559. Store (0x0708, Index (G321, 0x04))
  2560. }
  2561. Else
  2562. {
  2563. If (LEqual (_T_1, One))
  2564. {
  2565. Store (0x05DC, Index (G321, 0x04))
  2566. }
  2567. }
  2568. }
  2569. Name (MBIF, Package (0x08)
  2570. {
  2571. 0x03,
  2572. "P5K3-DLX",
  2573. 0x01010101,
  2574. 0x01000101,
  2575. 0xE0010001,
  2576. Zero,
  2577. Zero,
  2578. Zero
  2579. })
  2580. Name (ASBF, Buffer (0x08)
  2581. {
  2582. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  2583. })
  2584. CreateDWordField (ASBF, Zero, ASB0)
  2585. CreateDWordField (ASBF, 0x04, ASB1)
  2586. Method (GGRP, 1, Serialized)
  2587. {
  2588. Name (_T_0, Zero)
  2589. Store (Arg0, _T_0)
  2590. If (LEqual (_T_0, Zero))
  2591. {
  2592. Return (GRP0)
  2593. }
  2594. Else
  2595. {
  2596. If (LEqual (_T_0, 0x03))
  2597. {
  2598. Return (GRP3)
  2599. }
  2600. Else
  2601. {
  2602. If (LEqual (_T_0, 0x04))
  2603. {
  2604. Return (GRP4)
  2605. }
  2606. Else
  2607. {
  2608. If (LEqual (_T_0, 0x05))
  2609. {
  2610. Return (GRP5)
  2611. }
  2612. Else
  2613. {
  2614. If (LEqual (_T_0, 0x06))
  2615. {
  2616. Return (GRP6)
  2617. }
  2618. Else
  2619. {
  2620. If (LEqual (_T_0, 0x08))
  2621. {
  2622. Return (GRP8)
  2623. }
  2624. Else
  2625. {
  2626. If (LEqual (_T_0, 0x09))
  2627. {
  2628. Return (GRP9)
  2629. }
  2630. Else
  2631. {
  2632. If (LEqual (_T_0, 0x0B))
  2633. {
  2634. Return (GRPB)
  2635. }
  2636. Else
  2637. {
  2638. If (LEqual (_T_0, 0x0D))
  2639. {
  2640. Return (GRPD)
  2641. }
  2642. Else
  2643. {
  2644. Return (Zero)
  2645. }
  2646. }
  2647. }
  2648. }
  2649. }
  2650. }
  2651. }
  2652. }
  2653. }
  2654. }
  2655. Method (GITM, 1, Serialized)
  2656. {
  2657. CreateDWordField (Arg0, Zero, PRM0)
  2658. CreateByteField (Arg0, 0x03, GPID)
  2659. Store (One, ASB0)
  2660. Name (_T_0, Zero)
  2661. Store (GPID, _T_0)
  2662. If (LEqual (_T_0, Zero))
  2663. {
  2664. GIT0 (PRM0)
  2665. }
  2666. Else
  2667. {
  2668. If (LEqual (_T_0, 0x03))
  2669. {
  2670. GIT3 (PRM0)
  2671. }
  2672. Else
  2673. {
  2674. If (LEqual (_T_0, 0x04))
  2675. {
  2676. GIT4 (PRM0)
  2677. }
  2678. Else
  2679. {
  2680. If (LEqual (_T_0, 0x05))
  2681. {
  2682. GIT5 (PRM0)
  2683. }
  2684. Else
  2685. {
  2686. If (LEqual (_T_0, 0x06))
  2687. {
  2688. GIT6 (PRM0)
  2689. }
  2690. Else
  2691. {
  2692. If (LEqual (_T_0, 0x08))
  2693. {
  2694. GIT8 (PRM0)
  2695. }
  2696. Else
  2697. {
  2698. If (LEqual (_T_0, 0x09))
  2699. {
  2700. GIT9 (PRM0)
  2701. }
  2702. Else
  2703. {
  2704. If (LEqual (_T_0, 0x0B))
  2705. {
  2706. GITB (PRM0)
  2707. }
  2708. Else
  2709. {
  2710. If (LEqual (_T_0, 0x0D))
  2711. {
  2712. GITD (PRM0)
  2713. }
  2714. Else
  2715. {
  2716. Store (Zero, ASB0)
  2717. }
  2718. }
  2719. }
  2720. }
  2721. }
  2722. }
  2723. }
  2724. }
  2725. }
  2726. Return (ASBF)
  2727. }
  2728. Method (SITM, 1, Serialized)
  2729. {
  2730. CreateDWordField (Arg0, Zero, PRM0)
  2731. CreateDWordField (Arg0, 0x04, PRM1)
  2732. CreateDWordField (Arg0, 0x08, PRM2)
  2733. CreateByteField (Arg0, 0x03, GPID)
  2734. Store (One, ASB0)
  2735. Name (_T_0, Zero)
  2736. Store (GPID, _T_0)
  2737. If (LEqual (_T_0, Zero))
  2738. {
  2739. SIT0 (PRM0, PRM1, PRM2)
  2740. }
  2741. Else
  2742. {
  2743. If (LEqual (_T_0, 0x03))
  2744. {
  2745. SIT3 (PRM0, PRM1, PRM2)
  2746. }
  2747. Else
  2748. {
  2749. If (LEqual (_T_0, 0x04))
  2750. {
  2751. SIT4 (PRM0, PRM1, PRM2)
  2752. }
  2753. Else
  2754. {
  2755. If (LEqual (_T_0, 0x05))
  2756. {
  2757. SIT5 (PRM0, PRM1, PRM2)
  2758. }
  2759. Else
  2760. {
  2761. If (LEqual (_T_0, 0x06))
  2762. {
  2763. SIT6 (PRM0, PRM1, PRM2)
  2764. }
  2765. Else
  2766. {
  2767. If (LEqual (_T_0, 0x08))
  2768. {
  2769. SIT8 (PRM0, PRM1, PRM2)
  2770. }
  2771. Else
  2772. {
  2773. If (LEqual (_T_0, 0x09))
  2774. {
  2775. SIT9 (PRM0, PRM1, PRM2)
  2776. }
  2777. Else
  2778. {
  2779. If (LEqual (_T_0, 0x0B))
  2780. {
  2781. SITB (PRM0, PRM1, PRM2)
  2782. }
  2783. Else
  2784. {
  2785. If (LEqual (_T_0, 0x0D))
  2786. {
  2787. SITD (PRM0, PRM1, PRM2)
  2788. }
  2789. Else
  2790. {
  2791. Store (Zero, ASB0)
  2792. }
  2793. }
  2794. }
  2795. }
  2796. }
  2797. }
  2798. }
  2799. }
  2800. }
  2801. Return (ASBF)
  2802. }
  2803. Method (OP2V, 2, NotSerialized)
  2804. {
  2805. Store (DerefOf (Index (Arg1, 0x04)), Local0)
  2806. Store (DerefOf (Index (Arg1, 0x05)), Local1)
  2807. Multiply (Arg0, Local1, Local1)
  2808. Add (Local0, Local1, Local0)
  2809. Return (Local0)
  2810. }
  2811. Method (V2OP, 2, NotSerialized)
  2812. {
  2813. Store (DerefOf (Index (Arg1, 0x04)), Local0)
  2814. Store (DerefOf (Index (Arg1, 0x05)), Local1)
  2815. Subtract (Arg0, Local0, Local0)
  2816. Divide (Local0, Local1, Local1, Local0)
  2817. Return (Local0)
  2818. }
  2819. }
  2820. }
  2821. Device (HPET)
  2822. {
  2823. Name (_HID, EisaId ("PNP0103"))
  2824. Name (CRS, ResourceTemplate ()
  2825. {
  2826. Memory32Fixed (ReadOnly,
  2827. 0xFED00000, // Address Base
  2828. 0x00000400, // Address Length
  2829. _Y09)
  2830. })
  2831. OperationRegion (^LPCR, SystemMemory, 0xFED1F404, 0x04)
  2832. Field (LPCR, AnyAcc, NoLock, Preserve)
  2833. {
  2834. HPTS, 2,
  2835. , 5,
  2836. HPTE, 1,
  2837. Offset (0x04)
  2838. }
  2839. Method (_STA, 0, NotSerialized)
  2840. {
  2841. If (LEqual (OSFL (), Zero))
  2842. {
  2843. If (HPTE)
  2844. {
  2845. Return (0x0F)
  2846. }
  2847. }
  2848. Else
  2849. {
  2850. If (HPTE)
  2851. {
  2852. Return (0x0B)
  2853. }
  2854. }
  2855. Return (Zero)
  2856. }
  2857. Method (_CRS, 0, NotSerialized)
  2858. {
  2859. CreateDWordField (CRS, \_SB.PCI0.SBRG.HPET._Y09._BAS, HPT)
  2860. Multiply (HPTS, 0x1000, Local0)
  2861. Add (Local0, 0xFED00000, HPT)
  2862. Return (CRS)
  2863. }
  2864. }
  2865. OperationRegion (RX80, PCI_Config, Zero, 0xFF)
  2866. Field (RX80, ByteAcc, NoLock, Preserve)
  2867. {
  2868. Offset (0x80),
  2869. LPCD, 16,
  2870. LPCE, 16
  2871. }
  2872. Name (DBPT, Package (0x04)
  2873. {
  2874. Package (0x08)
  2875. {
  2876. 0x03F8,
  2877. 0x02F8,
  2878. 0x0220,
  2879. 0x0228,
  2880. 0x0238,
  2881. 0x02E8,
  2882. 0x0338,
  2883. 0x03E8
  2884. },
  2885. Package (0x08)
  2886. {
  2887. 0x03F8,
  2888. 0x02F8,
  2889. 0x0220,
  2890. 0x0228,
  2891. 0x0238,
  2892. 0x02E8,
  2893. 0x0338,
  2894. 0x03E8
  2895. },
  2896. Package (0x03)
  2897. {
  2898. 0x0378,
  2899. 0x0278,
  2900. 0x03BC
  2901. },
  2902. Package (0x02)
  2903. {
  2904. 0x03F0,
  2905. 0x0370
  2906. }
  2907. })
  2908. Name (DDLT, Package (0x04)
  2909. {
  2910. Package (0x02)
  2911. {
  2912. Zero,
  2913. 0xFFF8
  2914. },
  2915. Package (0x02)
  2916. {
  2917. 0x04,
  2918. 0xFF8F
  2919. },
  2920. Package (0x02)
  2921. {
  2922. 0x08,
  2923. 0xFCFF
  2924. },
  2925. Package (0x02)
  2926. {
  2927. 0x0C,
  2928. 0xEFFF
  2929. }
  2930. })
  2931. Method (RRIO, 4, NotSerialized)
  2932. {
  2933. If (LAnd (LLessEqual (Arg0, 0x03), LGreaterEqual (Arg0, Zero)))
  2934. {
  2935. Store (Match (DerefOf (Index (DBPT, Arg0)), MEQ, Arg2, MTR,
  2936. Zero, Zero), Local0)
  2937. If (LNotEqual (Local0, Ones))
  2938. {
  2939. Store (DerefOf (Index (DerefOf (Index (DDLT, Arg0)), Zero)),
  2940. Local1)
  2941. Store (DerefOf (Index (DerefOf (Index (DDLT, Arg0)), One)),
  2942. Local2)
  2943. ShiftLeft (Local0, Local1, Local0)
  2944. And (LPCD, Local2, LPCD)
  2945. Or (LPCD, Local0, LPCD)
  2946. WX82 (Arg0, Arg1)
  2947. }
  2948. }
  2949. If (LEqual (Arg0, 0x08))
  2950. {
  2951. If (LEqual (Arg2, 0x0200))
  2952. {
  2953. WX82 (0x08, Arg0)
  2954. }
  2955. Else
  2956. {
  2957. If (LEqual (Arg2, 0x0208))
  2958. {
  2959. WX82 (0x09, Arg0)
  2960. }
  2961. }
  2962. }
  2963. If (LAnd (LLessEqual (Arg0, 0x0D), LGreaterEqual (Arg0, 0x0A)))
  2964. {
  2965. WX82 (Arg0, Arg1)
  2966. }
  2967. }
  2968. Method (WX82, 2, NotSerialized)
  2969. {
  2970. ShiftLeft (One, Arg0, Local0)
  2971. If (Arg1)
  2972. {
  2973. Or (LPCE, Local0, LPCE)
  2974. }
  2975. Else
  2976. {
  2977. Not (Local0, Local0)
  2978. And (LPCE, Local0, LPCE)
  2979. }
  2980. }
  2981. Method (RDMA, 3, NotSerialized)
  2982. {
  2983. }
  2984. Scope (\_SB)
  2985. {
  2986. Device (MBT4)
  2987. {
  2988. Name (_HID, EisaId ("PNP0C32"))
  2989. Name (_UID, 0x04)
  2990. Method (_STA, 0, NotSerialized)
  2991. {
  2992. Return (CKOS ())
  2993. }
  2994. Name (_PRW, Package (0x02)
  2995. {
  2996. 0x1B,
  2997. 0x04
  2998. })
  2999. Method (GHID, 0, NotSerialized)
  3000. {
  3001. If (LEqual (CHHS (), 0x04))
  3002. {
  3003. Notify (MBT4, 0x02)
  3004. CLHS ()
  3005. }
  3006. Return (Buffer (One)
  3007. {
  3008. 0x04
  3009. })
  3010. }
  3011. }
  3012. Method (CKOS, 0, NotSerialized)
  3013. {
  3014. If (_OSI ("Windows 2006"))
  3015. {
  3016. If (GNVS (0x16B7))
  3017. {
  3018. Return (0x0F)
  3019. }
  3020. Else
  3021. {
  3022. Return (Zero)
  3023. }
  3024. }
  3025. Else
  3026. {
  3027. Return (Zero)
  3028. }
  3029. }
  3030. }
  3031. Scope (\_GPE)
  3032. {
  3033. Method (_L1B, 0, NotSerialized)
  3034. {
  3035. If (GNVS (0x16B7))
  3036. {
  3037. If (LEqual (\_SB.CHHS (), 0x04))
  3038. {
  3039. Notify (\_SB.MBT4, 0x02)
  3040. \_SB.CLHS ()
  3041. }
  3042. Else
  3043. {
  3044. Notify (\_SB.MBT4, 0x80)
  3045. }
  3046. }
  3047. }
  3048. }
  3049. Scope (\_SB)
  3050. {
  3051. Method (HSWK, 1, NotSerialized)
  3052. {
  3053. If (LEqual (CHHS (), 0x04))
  3054. {
  3055. Notify (MBT4, 0x02)
  3056. CLHS ()
  3057. }
  3058. }
  3059. Method (CHHS, 0, NotSerialized)
  3060. {
  3061. Return (GNVS (0x86F8))
  3062. }
  3063. Method (CLHS, 0, NotSerialized)
  3064. {
  3065. SNVS (0x86F8, Zero)
  3066. }
  3067. }
  3068. Device (^PCIE)
  3069. {
  3070. Name (_HID, EisaId ("PNP0C02"))
  3071. Name (_UID, 0x11)
  3072. Name (CRS, ResourceTemplate ()
  3073. {
  3074. Memory32Fixed (ReadOnly,
  3075. 0xE0000000, // Address Base
  3076. 0x10000000, // Address Length
  3077. _Y0A)
  3078. })
  3079. Method (_CRS, 0, NotSerialized)
  3080. {
  3081. CreateDWordField (CRS, \_SB.PCI0.PCIE._Y0A._BAS, BAS1)
  3082. CreateDWordField (CRS, \_SB.PCI0.PCIE._Y0A._LEN, LEN1)
  3083. Store (PCIB, BAS1)
  3084. Store (PCIL, LEN1)
  3085. Return (CRS)
  3086. }
  3087. }
  3088. Scope (\_GPE)
  3089. {
  3090. Method (_L1E, 0, NotSerialized)
  3091. {
  3092. Notify (\_SB.PCI0.SBRG.ASOC, One)
  3093. Sleep (0x03E8)
  3094. }
  3095. }
  3096. Scope (ASOC)
  3097. {
  3098. Name (VESL, Zero)
  3099. Method (SPLV, 1, Serialized)
  3100. {
  3101. And (Arg0, 0xFFFF, VESL)
  3102. Store (VESL, PAR0)
  3103. ISMI (0x88)
  3104. Store (And (PAR0, 0xFFFF), Local0)
  3105. Return (Local0)
  3106. }
  3107. Method (GPLV, 0, Serialized)
  3108. {
  3109. Return (VESL)
  3110. }
  3111. }
  3112. Device (UAR1)
  3113. {
  3114. Name (_UID, One)
  3115. Name (_HID, EisaId ("PNP0501"))
  3116. Method (_STA, 0, NotSerialized)
  3117. {
  3118. Return (DSTA (Zero))
  3119. }
  3120. Method (_DIS, 0, NotSerialized)
  3121. {
  3122. DCNT (Zero, Zero)
  3123. }
  3124. Method (_CRS, 0, NotSerialized)
  3125. {
  3126. Return (DCRS (Zero, Zero))
  3127. }
  3128. Method (_SRS, 1, NotSerialized)
  3129. {
  3130. DSRS (Arg0, Zero)
  3131. }
  3132. Method (_PRS, 0, NotSerialized)
  3133. {
  3134. Return (CMPR)
  3135. }
  3136. Name (CMPR, ResourceTemplate ()
  3137. {
  3138. StartDependentFn (0x00, 0x00)
  3139. {
  3140. IO (Decode16,
  3141. 0x03F8, // Range Minimum
  3142. 0x03F8, // Range Maximum
  3143. 0x01, // Alignment
  3144. 0x08, // Length
  3145. )
  3146. IRQNoFlags ()
  3147. {4}
  3148. DMA (Compatibility, NotBusMaster, Transfer8, )
  3149. {}
  3150. }
  3151. StartDependentFnNoPri ()
  3152. {
  3153. IO (Decode16,
  3154. 0x03F8, // Range Minimum
  3155. 0x03F8, // Range Maximum
  3156. 0x01, // Alignment
  3157. 0x08, // Length
  3158. )
  3159. IRQNoFlags ()
  3160. {3,4,5,6,7,10,11,12}
  3161. DMA (Compatibility, NotBusMaster, Transfer8, )
  3162. {}
  3163. }
  3164. StartDependentFnNoPri ()
  3165. {
  3166. IO (Decode16,
  3167. 0x02F8, // Range Minimum
  3168. 0x02F8, // Range Maximum
  3169. 0x01, // Alignment
  3170. 0x08, // Length
  3171. )
  3172. IRQNoFlags ()
  3173. {3,4,5,6,7,10,11,12}
  3174. DMA (Compatibility, NotBusMaster, Transfer8, )
  3175. {}
  3176. }
  3177. StartDependentFnNoPri ()
  3178. {
  3179. IO (Decode16,
  3180. 0x03E8, // Range Minimum
  3181. 0x03E8, // Range Maximum
  3182. 0x01, // Alignment
  3183. 0x08, // Length
  3184. )
  3185. IRQNoFlags ()
  3186. {3,4,5,6,7,10,11,12}
  3187. DMA (Compatibility, NotBusMaster, Transfer8, )
  3188. {}
  3189. }
  3190. StartDependentFnNoPri ()
  3191. {
  3192. IO (Decode16,
  3193. 0x02E8, // Range Minimum
  3194. 0x02E8, // Range Maximum
  3195. 0x01, // Alignment
  3196. 0x08, // Length
  3197. )
  3198. IRQNoFlags ()
  3199. {3,4,5,6,7,10,11,12}
  3200. DMA (Compatibility, NotBusMaster, Transfer8, )
  3201. {}
  3202. }
  3203. EndDependentFn ()
  3204. })
  3205. }
  3206. Method (UAR1._PRW, 0, NotSerialized)
  3207. {
  3208. Return (GPRW (0x08, 0x04))
  3209. }
  3210. Device (OMSC)
  3211. {
  3212. Name (_HID, EisaId ("PNP0C02"))
  3213. Name (_UID, Zero)
  3214. Name (CRS, ResourceTemplate ()
  3215. {
  3216. Memory32Fixed (ReadOnly,
  3217. 0x00000000, // Address Base
  3218. 0x00000000, // Address Length
  3219. _Y0B)
  3220. Memory32Fixed (ReadOnly,
  3221. 0x00000000, // Address Base
  3222. 0x00000000, // Address Length
  3223. _Y0C)
  3224. })
  3225. Method (_CRS, 0, NotSerialized)
  3226. {
  3227. If (APIC)
  3228. {
  3229. CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0B._LEN, ML01)
  3230. CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0B._BAS, MB01)
  3231. CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0C._LEN, ML02)
  3232. CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0C._BAS, MB02)
  3233. Store (0xFEC00000, MB01)
  3234. Store (0x1000, ML01)
  3235. Store (0xFEE00000, MB02)
  3236. Store (0x1000, ML02)
  3237. }
  3238. Return (CRS)
  3239. }
  3240. }
  3241. Device (^^RMEM)
  3242. {
  3243. Name (_HID, EisaId ("PNP0C01"))
  3244. Name (_UID, One)
  3245. Name (CRS, ResourceTemplate ()
  3246. {
  3247. Memory32Fixed (ReadWrite,
  3248. 0x00000000, // Address Base
  3249. 0x000A0000, // Address Length
  3250. )
  3251. Memory32Fixed (ReadOnly,
  3252. 0x00000000, // Address Base
  3253. 0x00000000, // Address Length
  3254. _Y0D)
  3255. Memory32Fixed (ReadOnly,
  3256. 0x000E0000, // Address Base
  3257. 0x00020000, // Address Length
  3258. _Y0E)
  3259. Memory32Fixed (ReadWrite,
  3260. 0x00100000, // Address Base
  3261. 0x00000000, // Address Length
  3262. _Y0F)
  3263. Memory32Fixed (ReadOnly,
  3264. 0x00000000, // Address Base
  3265. 0x00000000, // Address Length
  3266. _Y10)
  3267. })
  3268. Method (_CRS, 0, NotSerialized)
  3269. {
  3270. CreateDWordField (CRS, \_SB.RMEM._Y0D._BAS, BAS1)
  3271. CreateDWordField (CRS, \_SB.RMEM._Y0D._LEN, LEN1)
  3272. CreateDWordField (CRS, \_SB.RMEM._Y0E._BAS, BAS2)
  3273. CreateDWordField (CRS, \_SB.RMEM._Y0E._LEN, LEN2)
  3274. CreateDWordField (CRS, \_SB.RMEM._Y0F._LEN, LEN3)
  3275. CreateDWordField (CRS, \_SB.RMEM._Y10._BAS, BAS4)
  3276. CreateDWordField (CRS, \_SB.RMEM._Y10._LEN, LEN4)
  3277. If (OSFL ()) {}
  3278. Else
  3279. {
  3280. If (MG1B)
  3281. {
  3282. If (LGreater (MG1B, 0x000C0000))
  3283. {
  3284. Store (0x000C0000, BAS1)
  3285. Subtract (MG1B, BAS1, LEN1)
  3286. }
  3287. }
  3288. Else
  3289. {
  3290. Store (0x000C0000, BAS1)
  3291. Store (0x00020000, LEN1)
  3292. }
  3293. If (Add (MG1B, MG1L, Local0))
  3294. {
  3295. Store (Local0, BAS2)
  3296. Subtract (0x00100000, BAS2, LEN2)
  3297. }
  3298. }
  3299. Subtract (MG2B, 0x00100000, LEN3)
  3300. Add (MG2B, MG2L, BAS4)
  3301. Subtract (Zero, BAS4, LEN4)
  3302. Return (CRS)
  3303. }
  3304. }
  3305. Device (PS2K)
  3306. {
  3307. Name (_HID, EisaId ("PNP0303"))
  3308. Name (_CID, EisaId ("PNP030B"))
  3309. Method (_STA, 0, NotSerialized)
  3310. {
  3311. ShiftLeft (One, 0x0A, Local0)
  3312. If (And (IOST, Local0))
  3313. {
  3314. Return (0x0F)
  3315. }
  3316. Return (Zero)
  3317. }
  3318. Name (_CRS, ResourceTemplate ()
  3319. {
  3320. IO (Decode16,
  3321. 0x0060, // Range Minimum
  3322. 0x0060, // Range Maximum
  3323. 0x00, // Alignment
  3324. 0x01, // Length
  3325. )
  3326. IO (Decode16,
  3327. 0x0064, // Range Minimum
  3328. 0x0064, // Range Maximum
  3329. 0x00, // Alignment
  3330. 0x01, // Length
  3331. )
  3332. IRQNoFlags ()
  3333. {1}
  3334. })
  3335. }
  3336. Method (PS2K._PRW, 0, NotSerialized)
  3337. {
  3338. Return (GPRW (0x1D, 0x04))
  3339. }
  3340. }
  3341. Device (SATA)
  3342. {
  3343. Name (_ADR, 0x001F0002)
  3344. Name (^NATA, Package (0x01)
  3345. {
  3346. 0x001F0002
  3347. })
  3348. Name (\FZTF, Buffer (0x07)
  3349. {
  3350. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5
  3351. })
  3352. Name (REGF, One)
  3353. Method (_REG, 2, NotSerialized)
  3354. {
  3355. If (LEqual (Arg0, 0x02))
  3356. {
  3357. Store (Arg1, REGF)
  3358. }
  3359. }
  3360. Name (TIM0, Package (0x08)
  3361. {
  3362. Package (0x04)
  3363. {
  3364. 0x78,
  3365. 0xB4,
  3366. 0xF0,
  3367. 0x0384
  3368. },
  3369. Package (0x04)
  3370. {
  3371. 0x23,
  3372. 0x21,
  3373. 0x10,
  3374. Zero
  3375. },
  3376. Package (0x04)
  3377. {
  3378. 0x0B,
  3379. 0x09,
  3380. 0x04,
  3381. Zero
  3382. },
  3383. Package (0x06)
  3384. {
  3385. 0x78,
  3386. 0x50,
  3387. 0x3C,
  3388. 0x28,
  3389. 0x1E,
  3390. 0x14
  3391. },
  3392. Package (0x06)
  3393. {
  3394. Zero,
  3395. One,
  3396. 0x02,
  3397. One,
  3398. 0x02,
  3399. One
  3400. },
  3401. Package (0x06)
  3402. {
  3403. Zero,
  3404. Zero,
  3405. Zero,
  3406. One,
  3407. One,
  3408. One
  3409. },
  3410. Package (0x04)
  3411. {
  3412. 0x04,
  3413. 0x03,
  3414. 0x02,
  3415. Zero
  3416. },
  3417. Package (0x04)
  3418. {
  3419. 0x02,
  3420. One,
  3421. Zero,
  3422. Zero
  3423. }
  3424. })
  3425. Name (TMD0, Buffer (0x14) {})
  3426. CreateDWordField (TMD0, Zero, PIO0)
  3427. CreateDWordField (TMD0, 0x04, DMA0)
  3428. CreateDWordField (TMD0, 0x08, PIO1)
  3429. CreateDWordField (TMD0, 0x0C, DMA1)
  3430. CreateDWordField (TMD0, 0x10, CHNF)
  3431. OperationRegion (CFG2, PCI_Config, 0x40, 0x20)
  3432. Field (CFG2, DWordAcc, NoLock, Preserve)
  3433. {
  3434. PMPT, 4,
  3435. PSPT, 4,
  3436. PMRI, 6,
  3437. Offset (0x02),
  3438. SMPT, 4,
  3439. SSPT, 4,
  3440. SMRI, 6,
  3441. Offset (0x04),
  3442. PSRI, 4,
  3443. SSRI, 4,
  3444. Offset (0x08),
  3445. PM3E, 1,
  3446. PS3E, 1,
  3447. SM3E, 1,
  3448. SS3E, 1,
  3449. Offset (0x0A),
  3450. PMUT, 2,
  3451. , 2,
  3452. PSUT, 2,
  3453. Offset (0x0B),
  3454. SMUT, 2,
  3455. , 2,
  3456. SSUT, 2,
  3457. Offset (0x0C),
  3458. Offset (0x14),
  3459. PM6E, 1,
  3460. PS6E, 1,
  3461. SM6E, 1,
  3462. SS6E, 1,
  3463. PMCR, 1,
  3464. PSCR, 1,
  3465. SMCR, 1,
  3466. SSCR, 1,
  3467. , 4,
  3468. PMAE, 1,
  3469. PSAE, 1,
  3470. SMAE, 1,
  3471. SSAE, 1
  3472. }
  3473. Name (GMPT, Zero)
  3474. Name (GMUE, Zero)
  3475. Name (GMUT, Zero)
  3476. Name (GMCR, Zero)
  3477. Name (GSPT, Zero)
  3478. Name (GSUE, Zero)
  3479. Name (GSUT, Zero)
  3480. Name (GSCR, Zero)
  3481. Device (CHN0)
  3482. {
  3483. Name (_ADR, Zero)
  3484. Method (_GTM, 0, NotSerialized)
  3485. {
  3486. ShiftLeft (PSCR, One, Local1)
  3487. Or (PMCR, Local1, Local0)
  3488. ShiftLeft (PMAE, 0x02, Local3)
  3489. ShiftLeft (PM6E, One, Local4)
  3490. Or (Local3, Local4, Local3)
  3491. Or (PM3E, Local3, Local1)
  3492. ShiftLeft (PMPT, 0x04, Local3)
  3493. Or (Local1, Local3, Local1)
  3494. ShiftLeft (PSAE, 0x02, Local3)
  3495. ShiftLeft (PS6E, One, Local4)
  3496. Or (Local3, Local4, Local3)
  3497. Or (PS3E, Local3, Local2)
  3498. ShiftLeft (PSPT, 0x04, Local3)
  3499. Or (Local2, Local3, Local2)
  3500. Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, PSUT, Local0))
  3501. }
  3502. Method (_STM, 3, NotSerialized)
  3503. {
  3504. Store (Arg0, Debug)
  3505. Store (Arg0, TMD0)
  3506. ShiftLeft (PMAE, 0x02, Local3)
  3507. ShiftLeft (PM6E, One, Local4)
  3508. Or (Local3, Local4, Local3)
  3509. Or (PM3E, Local3, Local0)
  3510. ShiftLeft (PMPT, 0x04, Local3)
  3511. Or (Local0, Local3, Local0)
  3512. ShiftLeft (PSAE, 0x02, Local3)
  3513. ShiftLeft (PS6E, One, Local4)
  3514. Or (Local3, Local4, Local3)
  3515. Or (PS3E, Local3, Local1)
  3516. ShiftLeft (PSPT, 0x04, Local3)
  3517. Or (Local1, Local3, Local1)
  3518. Store (PMRI, GMPT)
  3519. Store (Local0, GMUE)
  3520. Store (PMUT, GMUT)
  3521. Store (PMCR, GMCR)
  3522. Store (PSRI, GSPT)
  3523. Store (Local1, GSUE)
  3524. Store (PSUT, GSUT)
  3525. Store (PSCR, GSCR)
  3526. STM ()
  3527. Store (GMPT, PMRI)
  3528. Store (GMUE, Local0)
  3529. Store (GMUT, PMUT)
  3530. Store (GMCR, PMCR)
  3531. Store (GSUE, Local1)
  3532. Store (GSUT, PSUT)
  3533. Store (GSCR, PSCR)
  3534. If (And (Local0, One))
  3535. {
  3536. Store (One, PM3E)
  3537. }
  3538. Else
  3539. {
  3540. Store (Zero, PM3E)
  3541. }
  3542. If (And (Local0, 0x02))
  3543. {
  3544. Store (One, PM6E)
  3545. }
  3546. Else
  3547. {
  3548. Store (Zero, PM6E)
  3549. }
  3550. If (And (Local0, 0x04))
  3551. {
  3552. Store (One, PMAE)
  3553. }
  3554. Else
  3555. {
  3556. Store (Zero, PMAE)
  3557. }
  3558. If (And (Local1, One))
  3559. {
  3560. Store (One, PS3E)
  3561. }
  3562. Else
  3563. {
  3564. Store (Zero, PS3E)
  3565. }
  3566. If (And (Local1, 0x02))
  3567. {
  3568. Store (One, PS6E)
  3569. }
  3570. Else
  3571. {
  3572. Store (Zero, PS6E)
  3573. }
  3574. If (And (Local1, 0x04))
  3575. {
  3576. Store (One, PSAE)
  3577. }
  3578. Else
  3579. {
  3580. Store (Zero, PSAE)
  3581. }
  3582. Store (GTF (Zero, Arg1), ATA0)
  3583. Store (GTF (One, Arg2), ATA1)
  3584. }
  3585. Device (DRV0)
  3586. {
  3587. Name (_ADR, Zero)
  3588. Method (_GTF, 0, NotSerialized)
  3589. {
  3590. Return (RATA (ATA0))
  3591. }
  3592. }
  3593. Device (DRV1)
  3594. {
  3595. Name (_ADR, One)
  3596. Method (_GTF, 0, NotSerialized)
  3597. {
  3598. Return (RATA (ATA1))
  3599. }
  3600. }
  3601. }
  3602. Device (CHN1)
  3603. {
  3604. Name (_ADR, One)
  3605. Method (_GTM, 0, NotSerialized)
  3606. {
  3607. ShiftLeft (SSCR, One, Local1)
  3608. Or (SMCR, Local1, Local0)
  3609. ShiftLeft (SMAE, 0x02, Local3)
  3610. ShiftLeft (SM6E, One, Local4)
  3611. Or (Local3, Local4, Local3)
  3612. Or (SM3E, Local3, Local1)
  3613. ShiftLeft (SMPT, 0x04, Local3)
  3614. Or (Local1, Local3, Local1)
  3615. ShiftLeft (SSAE, 0x02, Local3)
  3616. ShiftLeft (SS6E, One, Local4)
  3617. Or (Local3, Local4, Local3)
  3618. Or (SS3E, Local3, Local2)
  3619. ShiftLeft (SSPT, 0x04, Local3)
  3620. Or (Local2, Local3, Local2)
  3621. Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0))
  3622. }
  3623. Method (_STM, 3, NotSerialized)
  3624. {
  3625. Store (Arg0, Debug)
  3626. Store (Arg0, TMD0)
  3627. ShiftLeft (SMAE, 0x02, Local3)
  3628. ShiftLeft (SM6E, One, Local4)
  3629. Or (Local3, Local4, Local3)
  3630. Or (SM3E, Local3, Local0)
  3631. ShiftLeft (SMPT, 0x04, Local3)
  3632. Or (Local0, Local3, Local0)
  3633. ShiftLeft (SSAE, 0x02, Local3)
  3634. ShiftLeft (SS6E, One, Local4)
  3635. Or (Local3, Local4, Local3)
  3636. Or (SS3E, Local3, Local1)
  3637. ShiftLeft (SSPT, 0x04, Local3)
  3638. Or (Local1, Local3, Local1)
  3639. Store (SMRI, GMPT)
  3640. Store (Local0, GMUE)
  3641. Store (SMUT, GMUT)
  3642. Store (SMCR, GMCR)
  3643. Store (SSRI, GSPT)
  3644. Store (Local1, GSUE)
  3645. Store (SSUT, GSUT)
  3646. Store (SSCR, GSCR)
  3647. STM ()
  3648. Store (GMPT, SMRI)
  3649. Store (GMUE, Local0)
  3650. Store (GMUT, SMUT)
  3651. Store (GMCR, SMCR)
  3652. Store (GSUE, Local1)
  3653. Store (GSUT, SSUT)
  3654. Store (GSCR, SSCR)
  3655. If (And (Local0, One))
  3656. {
  3657. Store (One, SM3E)
  3658. }
  3659. Else
  3660. {
  3661. Store (Zero, SM3E)
  3662. }
  3663. If (And (Local0, 0x02))
  3664. {
  3665. Store (One, SM6E)
  3666. }
  3667. Else
  3668. {
  3669. Store (Zero, SM6E)
  3670. }
  3671. If (And (Local0, 0x04))
  3672. {
  3673. Store (One, SMAE)
  3674. }
  3675. Else
  3676. {
  3677. Store (Zero, SMAE)
  3678. }
  3679. If (And (Local1, One))
  3680. {
  3681. Store (One, SS3E)
  3682. }
  3683. Else
  3684. {
  3685. Store (Zero, SS3E)
  3686. }
  3687. If (And (Local1, 0x02))
  3688. {
  3689. Store (One, SS6E)
  3690. }
  3691. Else
  3692. {
  3693. Store (Zero, SS6E)
  3694. }
  3695. If (And (Local1, 0x04))
  3696. {
  3697. Store (One, SSAE)
  3698. }
  3699. Else
  3700. {
  3701. Store (Zero, SSAE)
  3702. }
  3703. Store (GTF (Zero, Arg1), ATA2)
  3704. Store (GTF (One, Arg2), ATA3)
  3705. }
  3706. Device (DRV0)
  3707. {
  3708. Name (_ADR, Zero)
  3709. Method (_GTF, 0, NotSerialized)
  3710. {
  3711. Return (RATA (ATA2))
  3712. }
  3713. }
  3714. Device (DRV1)
  3715. {
  3716. Name (_ADR, One)
  3717. Method (_GTF, 0, NotSerialized)
  3718. {
  3719. Return (RATA (ATA3))
  3720. }
  3721. }
  3722. }
  3723. Method (GTM, 7, Serialized)
  3724. {
  3725. Store (Ones, PIO0)
  3726. Store (Ones, PIO1)
  3727. Store (Ones, DMA0)
  3728. Store (Ones, DMA1)
  3729. Store (0x10, CHNF)
  3730. If (REGF) {}
  3731. Else
  3732. {
  3733. Return (TMD0)
  3734. }
  3735. If (And (Arg1, 0x20))
  3736. {
  3737. Or (CHNF, 0x02, CHNF)
  3738. }
  3739. Store (Match (DerefOf (Index (TIM0, One)), MEQ, Arg0, MTR,
  3740. Zero, Zero), Local6)
  3741. Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)),
  3742. Local7)
  3743. Store (Local7, DMA0)
  3744. Store (Local7, PIO0)
  3745. If (And (Arg4, 0x20))
  3746. {
  3747. Or (CHNF, 0x08, CHNF)
  3748. }
  3749. Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, Arg3, MTR,
  3750. Zero, Zero), Local6)
  3751. Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)),
  3752. Local7)
  3753. Store (Local7, DMA1)
  3754. Store (Local7, PIO1)
  3755. If (And (Arg1, 0x07))
  3756. {
  3757. Store (Arg2, Local5)
  3758. If (And (Arg1, 0x02))
  3759. {
  3760. Add (Local5, 0x02, Local5)
  3761. }
  3762. If (And (Arg1, 0x04))
  3763. {
  3764. Add (Local5, 0x04, Local5)
  3765. }
  3766. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)),
  3767. DMA0)
  3768. Or (CHNF, One, CHNF)
  3769. }
  3770. If (And (Arg4, 0x07))
  3771. {
  3772. Store (Arg5, Local5)
  3773. If (And (Arg4, 0x02))
  3774. {
  3775. Add (Local5, 0x02, Local5)
  3776. }
  3777. If (And (Arg4, 0x04))
  3778. {
  3779. Add (Local5, 0x04, Local5)
  3780. }
  3781. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)),
  3782. DMA1)
  3783. Or (CHNF, 0x04, CHNF)
  3784. }
  3785. Store (TMD0, Debug)
  3786. Return (TMD0)
  3787. }
  3788. Method (STM, 0, Serialized)
  3789. {
  3790. If (REGF)
  3791. {
  3792. Store (Zero, GMUE)
  3793. Store (Zero, GMUT)
  3794. Store (Zero, GSUE)
  3795. Store (Zero, GSUT)
  3796. If (And (CHNF, One))
  3797. {
  3798. Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR,
  3799. Zero, Zero), Local0)
  3800. If (LGreater (Local0, 0x05))
  3801. {
  3802. Store (0x05, Local0)
  3803. }
  3804. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)),
  3805. GMUT)
  3806. Or (GMUE, One, GMUE)
  3807. If (LGreater (Local0, 0x02))
  3808. {
  3809. Or (GMUE, 0x02, GMUE)
  3810. }
  3811. If (LGreater (Local0, 0x04))
  3812. {
  3813. And (GMUE, 0xFD, GMUE)
  3814. Or (GMUE, 0x04, GMUE)
  3815. }
  3816. }
  3817. Else
  3818. {
  3819. If (Or (LEqual (PIO0, Ones), LEqual (PIO0, Zero)))
  3820. {
  3821. If (And (LLess (DMA0, Ones), LGreater (DMA0, Zero)))
  3822. {
  3823. Store (DMA0, PIO0)
  3824. Or (GMUE, 0x80, GMUE)
  3825. }
  3826. }
  3827. }
  3828. If (And (CHNF, 0x04))
  3829. {
  3830. Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR,
  3831. Zero, Zero), Local0)
  3832. If (LGreater (Local0, 0x05))
  3833. {
  3834. Store (0x05, Local0)
  3835. }
  3836. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)),
  3837. GSUT)
  3838. Or (GSUE, One, GSUE)
  3839. If (LGreater (Local0, 0x02))
  3840. {
  3841. Or (GSUE, 0x02, GSUE)
  3842. }
  3843. If (LGreater (Local0, 0x04))
  3844. {
  3845. And (GSUE, 0xFD, GSUE)
  3846. Or (GSUE, 0x04, GSUE)
  3847. }
  3848. }
  3849. Else
  3850. {
  3851. If (Or (LEqual (PIO1, Ones), LEqual (PIO1, Zero)))
  3852. {
  3853. If (And (LLess (DMA1, Ones), LGreater (DMA1, Zero)))
  3854. {
  3855. Store (DMA1, PIO1)
  3856. Or (GSUE, 0x80, GSUE)
  3857. }
  3858. }
  3859. }
  3860. If (And (CHNF, 0x02))
  3861. {
  3862. Or (GMUE, 0x20, GMUE)
  3863. }
  3864. If (And (CHNF, 0x08))
  3865. {
  3866. Or (GSUE, 0x20, GSUE)
  3867. }
  3868. And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO0, MTR,
  3869. Zero, Zero), 0x07, Local0)
  3870. Store (DerefOf (Index (DerefOf (Index (TIM0, One)), Local0)),
  3871. Local1)
  3872. Store (Local1, GMPT)
  3873. If (LLess (Local0, 0x03))
  3874. {
  3875. Or (GMUE, 0x50, GMUE)
  3876. }
  3877. And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO1, MTR,
  3878. Zero, Zero), 0x07, Local0)
  3879. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)),
  3880. Local1)
  3881. Store (Local1, GSPT)
  3882. If (LLess (Local0, 0x03))
  3883. {
  3884. Or (GSUE, 0x50, GSUE)
  3885. }
  3886. }
  3887. }
  3888. Name (AT01, Buffer (0x07)
  3889. {
  3890. 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF
  3891. })
  3892. Name (AT02, Buffer (0x07)
  3893. {
  3894. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90
  3895. })
  3896. Name (AT03, Buffer (0x07)
  3897. {
  3898. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6
  3899. })
  3900. Name (AT04, Buffer (0x07)
  3901. {
  3902. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91
  3903. })
  3904. Name (ATA0, Buffer (0x1D) {})
  3905. Name (ATA1, Buffer (0x1D) {})
  3906. Name (ATA2, Buffer (0x1D) {})
  3907. Name (ATA3, Buffer (0x1D) {})
  3908. Name (ATAB, Buffer (0x1D) {})
  3909. CreateByteField (ATAB, Zero, CMDC)
  3910. Method (GTFB, 3, Serialized)
  3911. {
  3912. Multiply (CMDC, 0x38, Local0)
  3913. Add (Local0, 0x08, Local1)
  3914. CreateField (ATAB, Local1, 0x38, CMDX)
  3915. Multiply (CMDC, 0x07, Local0)
  3916. CreateByteField (ATAB, Add (Local0, 0x02), A001)
  3917. CreateByteField (ATAB, Add (Local0, 0x06), A005)
  3918. Store (Arg0, CMDX)
  3919. Store (Arg1, A001)
  3920. Store (Arg2, A005)
  3921. Increment (CMDC)
  3922. }
  3923. Method (GTF, 2, Serialized)
  3924. {
  3925. Store (Arg1, Debug)
  3926. Store (Zero, CMDC)
  3927. Name (ID49, 0x0C00)
  3928. Name (ID59, Zero)
  3929. Name (ID53, 0x04)
  3930. Name (ID63, 0x0F00)
  3931. Name (ID88, 0x0F00)
  3932. Name (IRDY, One)
  3933. Name (PIOT, Zero)
  3934. Name (DMAT, Zero)
  3935. If (LEqual (SizeOf (Arg1), 0x0200))
  3936. {
  3937. CreateWordField (Arg1, 0x62, IW49)
  3938. Store (IW49, ID49)
  3939. CreateWordField (Arg1, 0x6A, IW53)
  3940. Store (IW53, ID53)
  3941. CreateWordField (Arg1, 0x7E, IW63)
  3942. Store (IW63, ID63)
  3943. CreateWordField (Arg1, 0x76, IW59)
  3944. Store (IW59, ID59)
  3945. CreateWordField (Arg1, 0xB0, IW88)
  3946. Store (IW88, ID88)
  3947. }
  3948. Store (0xA0, Local7)
  3949. If (Arg0)
  3950. {
  3951. Store (0xB0, Local7)
  3952. And (CHNF, 0x08, IRDY)
  3953. If (And (CHNF, 0x10))
  3954. {
  3955. Store (PIO1, PIOT)
  3956. }
  3957. Else
  3958. {
  3959. Store (PIO0, PIOT)
  3960. }
  3961. If (And (CHNF, 0x04))
  3962. {
  3963. If (And (CHNF, 0x10))
  3964. {
  3965. Store (DMA1, DMAT)
  3966. }
  3967. Else
  3968. {
  3969. Store (DMA0, DMAT)
  3970. }
  3971. }
  3972. }
  3973. Else
  3974. {
  3975. And (CHNF, 0x02, IRDY)
  3976. Store (PIO0, PIOT)
  3977. If (And (CHNF, One))
  3978. {
  3979. Store (DMA0, DMAT)
  3980. }
  3981. }
  3982. If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00
  3983. )), DMAT))
  3984. {
  3985. Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMAT, MTR,
  3986. Zero, Zero), Local1)
  3987. If (LGreater (Local1, 0x05))
  3988. {
  3989. Store (0x05, Local1)
  3990. }
  3991. GTFB (AT01, Or (0x40, Local1), Local7)
  3992. }
  3993. Else
  3994. {
  3995. If (LAnd (And (ID63, 0xFF00), PIOT))
  3996. {
  3997. And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR,
  3998. Zero, Zero), 0x03, Local0)
  3999. Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), Local0
  4000. )), Local1)
  4001. GTFB (AT01, Local1, Local7)
  4002. }
  4003. }
  4004. If (IRDY)
  4005. {
  4006. And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR,
  4007. Zero, Zero), 0x07, Local0)
  4008. Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0
  4009. )), Local1)
  4010. GTFB (AT01, Local1, Local7)
  4011. }
  4012. Else
  4013. {
  4014. If (And (ID49, 0x0400))
  4015. {
  4016. GTFB (AT01, One, Local7)
  4017. }
  4018. }
  4019. If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF)))
  4020. {
  4021. GTFB (AT03, And (ID59, 0xFF), Local7)
  4022. }
  4023. Store (ATAB, Debug)
  4024. Return (ATAB)
  4025. }
  4026. Method (RATA, 1, NotSerialized)
  4027. {
  4028. CreateByteField (Arg0, Zero, CMDN)
  4029. Multiply (CMDN, 0x38, Local0)
  4030. CreateField (Arg0, 0x08, Local0, RETB)
  4031. Store (RETB, Debug)
  4032. Return (Concatenate (RETB, FZTF))
  4033. }
  4034. }
  4035. Device (SAT1)
  4036. {
  4037. Name (_ADR, 0x001F0005)
  4038. Name (REGF, One)
  4039. Method (_REG, 2, NotSerialized)
  4040. {
  4041. If (LEqual (Arg0, 0x02))
  4042. {
  4043. Store (Arg1, REGF)
  4044. }
  4045. }
  4046. Name (TIM0, Package (0x08)
  4047. {
  4048. Package (0x04)
  4049. {
  4050. 0x78,
  4051. 0xB4,
  4052. 0xF0,
  4053. 0x0384
  4054. },
  4055. Package (0x04)
  4056. {
  4057. 0x23,
  4058. 0x21,
  4059. 0x10,
  4060. Zero
  4061. },
  4062. Package (0x04)
  4063. {
  4064. 0x0B,
  4065. 0x09,
  4066. 0x04,
  4067. Zero
  4068. },
  4069. Package (0x06)
  4070. {
  4071. 0x78,
  4072. 0x50,
  4073. 0x3C,
  4074. 0x28,
  4075. 0x1E,
  4076. 0x14
  4077. },
  4078. Package (0x06)
  4079. {
  4080. Zero,
  4081. One,
  4082. 0x02,
  4083. One,
  4084. 0x02,
  4085. One
  4086. },
  4087. Package (0x06)
  4088. {
  4089. Zero,
  4090. Zero,
  4091. Zero,
  4092. One,
  4093. One,
  4094. One
  4095. },
  4096. Package (0x04)
  4097. {
  4098. 0x04,
  4099. 0x03,
  4100. 0x02,
  4101. Zero
  4102. },
  4103. Package (0x04)
  4104. {
  4105. 0x02,
  4106. One,
  4107. Zero,
  4108. Zero
  4109. }
  4110. })
  4111. Name (TMD0, Buffer (0x14) {})
  4112. CreateDWordField (TMD0, Zero, PIO0)
  4113. CreateDWordField (TMD0, 0x04, DMA0)
  4114. CreateDWordField (TMD0, 0x08, PIO1)
  4115. CreateDWordField (TMD0, 0x0C, DMA1)
  4116. CreateDWordField (TMD0, 0x10, CHNF)
  4117. OperationRegion (CFG2, PCI_Config, 0x40, 0x20)
  4118. Field (CFG2, DWordAcc, NoLock, Preserve)
  4119. {
  4120. PMPT, 4,
  4121. PSPT, 4,
  4122. PMRI, 6,
  4123. Offset (0x02),
  4124. SMPT, 4,
  4125. SSPT, 4,
  4126. SMRI, 6,
  4127. Offset (0x04),
  4128. PSRI, 4,
  4129. SSRI, 4,
  4130. Offset (0x08),
  4131. PM3E, 1,
  4132. PS3E, 1,
  4133. SM3E, 1,
  4134. SS3E, 1,
  4135. Offset (0x0A),
  4136. PMUT, 2,
  4137. , 2,
  4138. PSUT, 2,
  4139. Offset (0x0B),
  4140. SMUT, 2,
  4141. , 2,
  4142. SSUT, 2,
  4143. Offset (0x0C),
  4144. Offset (0x14),
  4145. PM6E, 1,
  4146. PS6E, 1,
  4147. SM6E, 1,
  4148. SS6E, 1,
  4149. PMCR, 1,
  4150. PSCR, 1,
  4151. SMCR, 1,
  4152. SSCR, 1,
  4153. , 4,
  4154. PMAE, 1,
  4155. PSAE, 1,
  4156. SMAE, 1,
  4157. SSAE, 1
  4158. }
  4159. Name (GMPT, Zero)
  4160. Name (GMUE, Zero)
  4161. Name (GMUT, Zero)
  4162. Name (GMCR, Zero)
  4163. Name (GSPT, Zero)
  4164. Name (GSUE, Zero)
  4165. Name (GSUT, Zero)
  4166. Name (GSCR, Zero)
  4167. Device (CHN0)
  4168. {
  4169. Name (_ADR, Zero)
  4170. Method (_GTM, 0, NotSerialized)
  4171. {
  4172. ShiftLeft (PSCR, One, Local1)
  4173. Or (PMCR, Local1, Local0)
  4174. ShiftLeft (PMAE, 0x02, Local3)
  4175. ShiftLeft (PM6E, One, Local4)
  4176. Or (Local3, Local4, Local3)
  4177. Or (PM3E, Local3, Local1)
  4178. ShiftLeft (PMPT, 0x04, Local3)
  4179. Or (Local1, Local3, Local1)
  4180. ShiftLeft (PSAE, 0x02, Local3)
  4181. ShiftLeft (PS6E, One, Local4)
  4182. Or (Local3, Local4, Local3)
  4183. Or (PS3E, Local3, Local2)
  4184. ShiftLeft (PSPT, 0x04, Local3)
  4185. Or (Local2, Local3, Local2)
  4186. Return (GTM (PMRI, Local1, PMUT, PSRI, Local2, PSUT, Local0))
  4187. }
  4188. Method (_STM, 3, NotSerialized)
  4189. {
  4190. Store (Arg0, Debug)
  4191. Store (Arg0, TMD0)
  4192. ShiftLeft (PMAE, 0x02, Local3)
  4193. ShiftLeft (PM6E, One, Local4)
  4194. Or (Local3, Local4, Local3)
  4195. Or (PM3E, Local3, Local0)
  4196. ShiftLeft (PMPT, 0x04, Local3)
  4197. Or (Local0, Local3, Local0)
  4198. ShiftLeft (PSAE, 0x02, Local3)
  4199. ShiftLeft (PS6E, One, Local4)
  4200. Or (Local3, Local4, Local3)
  4201. Or (PS3E, Local3, Local1)
  4202. ShiftLeft (PSPT, 0x04, Local3)
  4203. Or (Local1, Local3, Local1)
  4204. Store (PMRI, GMPT)
  4205. Store (Local0, GMUE)
  4206. Store (PMUT, GMUT)
  4207. Store (PMCR, GMCR)
  4208. Store (PSRI, GSPT)
  4209. Store (Local1, GSUE)
  4210. Store (PSUT, GSUT)
  4211. Store (PSCR, GSCR)
  4212. STM ()
  4213. Store (GMPT, PMRI)
  4214. Store (GMUE, Local0)
  4215. Store (GMUT, PMUT)
  4216. Store (GMCR, PMCR)
  4217. Store (GSUE, Local1)
  4218. Store (GSUT, PSUT)
  4219. Store (GSCR, PSCR)
  4220. If (And (Local0, One))
  4221. {
  4222. Store (One, PM3E)
  4223. }
  4224. Else
  4225. {
  4226. Store (Zero, PM3E)
  4227. }
  4228. If (And (Local0, 0x02))
  4229. {
  4230. Store (One, PM6E)
  4231. }
  4232. Else
  4233. {
  4234. Store (Zero, PM6E)
  4235. }
  4236. If (And (Local0, 0x04))
  4237. {
  4238. Store (One, PMAE)
  4239. }
  4240. Else
  4241. {
  4242. Store (Zero, PMAE)
  4243. }
  4244. If (And (Local1, One))
  4245. {
  4246. Store (One, PS3E)
  4247. }
  4248. Else
  4249. {
  4250. Store (Zero, PS3E)
  4251. }
  4252. If (And (Local1, 0x02))
  4253. {
  4254. Store (One, PS6E)
  4255. }
  4256. Else
  4257. {
  4258. Store (Zero, PS6E)
  4259. }
  4260. If (And (Local1, 0x04))
  4261. {
  4262. Store (One, PSAE)
  4263. }
  4264. Else
  4265. {
  4266. Store (Zero, PSAE)
  4267. }
  4268. Store (GTF (Zero, Arg1), ATA0)
  4269. Store (GTF (One, Arg2), ATA1)
  4270. }
  4271. Device (DRV0)
  4272. {
  4273. Name (_ADR, Zero)
  4274. Method (_GTF, 0, NotSerialized)
  4275. {
  4276. Return (RATA (ATA0))
  4277. }
  4278. }
  4279. Device (DRV1)
  4280. {
  4281. Name (_ADR, One)
  4282. Method (_GTF, 0, NotSerialized)
  4283. {
  4284. Return (RATA (ATA1))
  4285. }
  4286. }
  4287. }
  4288. Device (CHN1)
  4289. {
  4290. Name (_ADR, One)
  4291. Method (_GTM, 0, NotSerialized)
  4292. {
  4293. ShiftLeft (SSCR, One, Local1)
  4294. Or (SMCR, Local1, Local0)
  4295. ShiftLeft (SMAE, 0x02, Local3)
  4296. ShiftLeft (SM6E, One, Local4)
  4297. Or (Local3, Local4, Local3)
  4298. Or (SM3E, Local3, Local1)
  4299. ShiftLeft (SMPT, 0x04, Local3)
  4300. Or (Local1, Local3, Local1)
  4301. ShiftLeft (SSAE, 0x02, Local3)
  4302. ShiftLeft (SS6E, One, Local4)
  4303. Or (Local3, Local4, Local3)
  4304. Or (SS3E, Local3, Local2)
  4305. ShiftLeft (SSPT, 0x04, Local3)
  4306. Or (Local2, Local3, Local2)
  4307. Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0))
  4308. }
  4309. Method (_STM, 3, NotSerialized)
  4310. {
  4311. Store (Arg0, Debug)
  4312. Store (Arg0, TMD0)
  4313. ShiftLeft (SMAE, 0x02, Local3)
  4314. ShiftLeft (SM6E, One, Local4)
  4315. Or (Local3, Local4, Local3)
  4316. Or (SM3E, Local3, Local0)
  4317. ShiftLeft (SMPT, 0x04, Local3)
  4318. Or (Local0, Local3, Local0)
  4319. ShiftLeft (SSAE, 0x02, Local3)
  4320. ShiftLeft (SS6E, One, Local4)
  4321. Or (Local3, Local4, Local3)
  4322. Or (SS3E, Local3, Local1)
  4323. ShiftLeft (SSPT, 0x04, Local3)
  4324. Or (Local1, Local3, Local1)
  4325. Store (SMRI, GMPT)
  4326. Store (Local0, GMUE)
  4327. Store (SMUT, GMUT)
  4328. Store (SMCR, GMCR)
  4329. Store (SSRI, GSPT)
  4330. Store (Local1, GSUE)
  4331. Store (SSUT, GSUT)
  4332. Store (SSCR, GSCR)
  4333. STM ()
  4334. Store (GMPT, SMRI)
  4335. Store (GMUE, Local0)
  4336. Store (GMUT, SMUT)
  4337. Store (GMCR, SMCR)
  4338. Store (GSUE, Local1)
  4339. Store (GSUT, SSUT)
  4340. Store (GSCR, SSCR)
  4341. If (And (Local0, One))
  4342. {
  4343. Store (One, SM3E)
  4344. }
  4345. Else
  4346. {
  4347. Store (Zero, SM3E)
  4348. }
  4349. If (And (Local0, 0x02))
  4350. {
  4351. Store (One, SM6E)
  4352. }
  4353. Else
  4354. {
  4355. Store (Zero, SM6E)
  4356. }
  4357. If (And (Local0, 0x04))
  4358. {
  4359. Store (One, SMAE)
  4360. }
  4361. Else
  4362. {
  4363. Store (Zero, SMAE)
  4364. }
  4365. If (And (Local1, One))
  4366. {
  4367. Store (One, SS3E)
  4368. }
  4369. Else
  4370. {
  4371. Store (Zero, SS3E)
  4372. }
  4373. If (And (Local1, 0x02))
  4374. {
  4375. Store (One, SS6E)
  4376. }
  4377. Else
  4378. {
  4379. Store (Zero, SS6E)
  4380. }
  4381. If (And (Local1, 0x04))
  4382. {
  4383. Store (One, SSAE)
  4384. }
  4385. Else
  4386. {
  4387. Store (Zero, SSAE)
  4388. }
  4389. Store (GTF (Zero, Arg1), ATA2)
  4390. Store (GTF (One, Arg2), ATA3)
  4391. }
  4392. Device (DRV0)
  4393. {
  4394. Name (_ADR, Zero)
  4395. Method (_GTF, 0, NotSerialized)
  4396. {
  4397. Return (RATA (ATA2))
  4398. }
  4399. }
  4400. Device (DRV1)
  4401. {
  4402. Name (_ADR, One)
  4403. Method (_GTF, 0, NotSerialized)
  4404. {
  4405. Return (RATA (ATA3))
  4406. }
  4407. }
  4408. }
  4409. Method (GTM, 7, Serialized)
  4410. {
  4411. Store (Ones, PIO0)
  4412. Store (Ones, PIO1)
  4413. Store (Ones, DMA0)
  4414. Store (Ones, DMA1)
  4415. Store (0x10, CHNF)
  4416. If (REGF) {}
  4417. Else
  4418. {
  4419. Return (TMD0)
  4420. }
  4421. If (And (Arg1, 0x20))
  4422. {
  4423. Or (CHNF, 0x02, CHNF)
  4424. }
  4425. Store (Match (DerefOf (Index (TIM0, One)), MEQ, Arg0, MTR,
  4426. Zero, Zero), Local6)
  4427. Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)),
  4428. Local7)
  4429. Store (Local7, DMA0)
  4430. Store (Local7, PIO0)
  4431. If (And (Arg4, 0x20))
  4432. {
  4433. Or (CHNF, 0x08, CHNF)
  4434. }
  4435. Store (Match (DerefOf (Index (TIM0, 0x02)), MEQ, Arg3, MTR,
  4436. Zero, Zero), Local6)
  4437. Store (DerefOf (Index (DerefOf (Index (TIM0, Zero)), Local6)),
  4438. Local7)
  4439. Store (Local7, DMA1)
  4440. Store (Local7, PIO1)
  4441. If (And (Arg1, 0x07))
  4442. {
  4443. Store (Arg2, Local5)
  4444. If (And (Arg1, 0x02))
  4445. {
  4446. Add (Local5, 0x02, Local5)
  4447. }
  4448. If (And (Arg1, 0x04))
  4449. {
  4450. Add (Local5, 0x04, Local5)
  4451. }
  4452. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)),
  4453. DMA0)
  4454. Or (CHNF, One, CHNF)
  4455. }
  4456. If (And (Arg4, 0x07))
  4457. {
  4458. Store (Arg5, Local5)
  4459. If (And (Arg4, 0x02))
  4460. {
  4461. Add (Local5, 0x02, Local5)
  4462. }
  4463. If (And (Arg4, 0x04))
  4464. {
  4465. Add (Local5, 0x04, Local5)
  4466. }
  4467. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x03)), Local5)),
  4468. DMA1)
  4469. Or (CHNF, 0x04, CHNF)
  4470. }
  4471. Store (TMD0, Debug)
  4472. Return (TMD0)
  4473. }
  4474. Method (STM, 0, Serialized)
  4475. {
  4476. If (REGF)
  4477. {
  4478. Store (Zero, GMUE)
  4479. Store (Zero, GMUT)
  4480. Store (Zero, GSUE)
  4481. Store (Zero, GSUT)
  4482. If (And (CHNF, One))
  4483. {
  4484. Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA0, MTR,
  4485. Zero, Zero), Local0)
  4486. If (LGreater (Local0, 0x05))
  4487. {
  4488. Store (0x05, Local0)
  4489. }
  4490. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)),
  4491. GMUT)
  4492. Or (GMUE, One, GMUE)
  4493. If (LGreater (Local0, 0x02))
  4494. {
  4495. Or (GMUE, 0x02, GMUE)
  4496. }
  4497. If (LGreater (Local0, 0x04))
  4498. {
  4499. And (GMUE, 0xFD, GMUE)
  4500. Or (GMUE, 0x04, GMUE)
  4501. }
  4502. }
  4503. Else
  4504. {
  4505. If (Or (LEqual (PIO0, Ones), LEqual (PIO0, Zero)))
  4506. {
  4507. If (And (LLess (DMA0, Ones), LGreater (DMA0, Zero)))
  4508. {
  4509. Store (DMA0, PIO0)
  4510. Or (GMUE, 0x80, GMUE)
  4511. }
  4512. }
  4513. }
  4514. If (And (CHNF, 0x04))
  4515. {
  4516. Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMA1, MTR,
  4517. Zero, Zero), Local0)
  4518. If (LGreater (Local0, 0x05))
  4519. {
  4520. Store (0x05, Local0)
  4521. }
  4522. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x04)), Local0)),
  4523. GSUT)
  4524. Or (GSUE, One, GSUE)
  4525. If (LGreater (Local0, 0x02))
  4526. {
  4527. Or (GSUE, 0x02, GSUE)
  4528. }
  4529. If (LGreater (Local0, 0x04))
  4530. {
  4531. And (GSUE, 0xFD, GSUE)
  4532. Or (GSUE, 0x04, GSUE)
  4533. }
  4534. }
  4535. Else
  4536. {
  4537. If (Or (LEqual (PIO1, Ones), LEqual (PIO1, Zero)))
  4538. {
  4539. If (And (LLess (DMA1, Ones), LGreater (DMA1, Zero)))
  4540. {
  4541. Store (DMA1, PIO1)
  4542. Or (GSUE, 0x80, GSUE)
  4543. }
  4544. }
  4545. }
  4546. If (And (CHNF, 0x02))
  4547. {
  4548. Or (GMUE, 0x20, GMUE)
  4549. }
  4550. If (And (CHNF, 0x08))
  4551. {
  4552. Or (GSUE, 0x20, GSUE)
  4553. }
  4554. And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO0, MTR,
  4555. Zero, Zero), 0x07, Local0)
  4556. Store (DerefOf (Index (DerefOf (Index (TIM0, One)), Local0)),
  4557. Local1)
  4558. Store (Local1, GMPT)
  4559. If (LLess (Local0, 0x03))
  4560. {
  4561. Or (GMUE, 0x50, GMUE)
  4562. }
  4563. And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIO1, MTR,
  4564. Zero, Zero), 0x07, Local0)
  4565. Store (DerefOf (Index (DerefOf (Index (TIM0, 0x02)), Local0)),
  4566. Local1)
  4567. Store (Local1, GSPT)
  4568. If (LLess (Local0, 0x03))
  4569. {
  4570. Or (GSUE, 0x50, GSUE)
  4571. }
  4572. }
  4573. }
  4574. Name (AT01, Buffer (0x07)
  4575. {
  4576. 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xEF
  4577. })
  4578. Name (AT02, Buffer (0x07)
  4579. {
  4580. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90
  4581. })
  4582. Name (AT03, Buffer (0x07)
  4583. {
  4584. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC6
  4585. })
  4586. Name (AT04, Buffer (0x07)
  4587. {
  4588. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91
  4589. })
  4590. Name (ATA0, Buffer (0x1D) {})
  4591. Name (ATA1, Buffer (0x1D) {})
  4592. Name (ATA2, Buffer (0x1D) {})
  4593. Name (ATA3, Buffer (0x1D) {})
  4594. Name (ATAB, Buffer (0x1D) {})
  4595. CreateByteField (ATAB, Zero, CMDC)
  4596. Method (GTFB, 3, Serialized)
  4597. {
  4598. Multiply (CMDC, 0x38, Local0)
  4599. Add (Local0, 0x08, Local1)
  4600. CreateField (ATAB, Local1, 0x38, CMDX)
  4601. Multiply (CMDC, 0x07, Local0)
  4602. CreateByteField (ATAB, Add (Local0, 0x02), A001)
  4603. CreateByteField (ATAB, Add (Local0, 0x06), A005)
  4604. Store (Arg0, CMDX)
  4605. Store (Arg1, A001)
  4606. Store (Arg2, A005)
  4607. Increment (CMDC)
  4608. }
  4609. Method (GTF, 2, Serialized)
  4610. {
  4611. Store (Arg1, Debug)
  4612. Store (Zero, CMDC)
  4613. Name (ID49, 0x0C00)
  4614. Name (ID59, Zero)
  4615. Name (ID53, 0x04)
  4616. Name (ID63, 0x0F00)
  4617. Name (ID88, 0x0F00)
  4618. Name (IRDY, One)
  4619. Name (PIOT, Zero)
  4620. Name (DMAT, Zero)
  4621. If (LEqual (SizeOf (Arg1), 0x0200))
  4622. {
  4623. CreateWordField (Arg1, 0x62, IW49)
  4624. Store (IW49, ID49)
  4625. CreateWordField (Arg1, 0x6A, IW53)
  4626. Store (IW53, ID53)
  4627. CreateWordField (Arg1, 0x7E, IW63)
  4628. Store (IW63, ID63)
  4629. CreateWordField (Arg1, 0x76, IW59)
  4630. Store (IW59, ID59)
  4631. CreateWordField (Arg1, 0xB0, IW88)
  4632. Store (IW88, ID88)
  4633. }
  4634. Store (0xA0, Local7)
  4635. If (Arg0)
  4636. {
  4637. Store (0xB0, Local7)
  4638. And (CHNF, 0x08, IRDY)
  4639. If (And (CHNF, 0x10))
  4640. {
  4641. Store (PIO1, PIOT)
  4642. }
  4643. Else
  4644. {
  4645. Store (PIO0, PIOT)
  4646. }
  4647. If (And (CHNF, 0x04))
  4648. {
  4649. If (And (CHNF, 0x10))
  4650. {
  4651. Store (DMA1, DMAT)
  4652. }
  4653. Else
  4654. {
  4655. Store (DMA0, DMAT)
  4656. }
  4657. }
  4658. }
  4659. Else
  4660. {
  4661. And (CHNF, 0x02, IRDY)
  4662. Store (PIO0, PIOT)
  4663. If (And (CHNF, One))
  4664. {
  4665. Store (DMA0, DMAT)
  4666. }
  4667. }
  4668. If (LAnd (LAnd (And (ID53, 0x04), And (ID88, 0xFF00
  4669. )), DMAT))
  4670. {
  4671. Store (Match (DerefOf (Index (TIM0, 0x03)), MLE, DMAT, MTR,
  4672. Zero, Zero), Local1)
  4673. If (LGreater (Local1, 0x05))
  4674. {
  4675. Store (0x05, Local1)
  4676. }
  4677. GTFB (AT01, Or (0x40, Local1), Local7)
  4678. }
  4679. Else
  4680. {
  4681. If (LAnd (And (ID63, 0xFF00), PIOT))
  4682. {
  4683. And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR,
  4684. Zero, Zero), 0x03, Local0)
  4685. Or (0x20, DerefOf (Index (DerefOf (Index (TIM0, 0x07)), Local0
  4686. )), Local1)
  4687. GTFB (AT01, Local1, Local7)
  4688. }
  4689. }
  4690. If (IRDY)
  4691. {
  4692. And (Match (DerefOf (Index (TIM0, Zero)), MGE, PIOT, MTR,
  4693. Zero, Zero), 0x07, Local0)
  4694. Or (0x08, DerefOf (Index (DerefOf (Index (TIM0, 0x06)), Local0
  4695. )), Local1)
  4696. GTFB (AT01, Local1, Local7)
  4697. }
  4698. Else
  4699. {
  4700. If (And (ID49, 0x0400))
  4701. {
  4702. GTFB (AT01, One, Local7)
  4703. }
  4704. }
  4705. If (LAnd (And (ID59, 0x0100), And (ID59, 0xFF)))
  4706. {
  4707. GTFB (AT03, And (ID59, 0xFF), Local7)
  4708. }
  4709. Store (ATAB, Debug)
  4710. Return (ATAB)
  4711. }
  4712. Method (RATA, 1, NotSerialized)
  4713. {
  4714. CreateByteField (Arg0, Zero, CMDN)
  4715. Multiply (CMDN, 0x38, Local0)
  4716. CreateField (Arg0, 0x08, Local0, RETB)
  4717. Store (RETB, Debug)
  4718. Return (Concatenate (RETB, FZTF))
  4719. }
  4720. }
  4721. Device (EUSB)
  4722. {
  4723. Name (_ADR, 0x001D0007)
  4724. Method (_PRW, 0, NotSerialized)
  4725. {
  4726. Return (GPRW (0x0D, 0x04))
  4727. }
  4728. }
  4729. Device (USBE)
  4730. {
  4731. Name (_ADR, 0x001A0007)
  4732. Method (_PRW, 0, NotSerialized)
  4733. {
  4734. Return (GPRW (0x0D, 0x04))
  4735. }
  4736. }
  4737. Device (P0P4)
  4738. {
  4739. Name (_ADR, 0x001C0000)
  4740. Method (_PRW, 0, NotSerialized)
  4741. {
  4742. Return (GPRW (0x09, 0x04))
  4743. }
  4744. Method (_PRT, 0, NotSerialized)
  4745. {
  4746. If (PICM)
  4747. {
  4748. Return (AR04)
  4749. }
  4750. Return (PR04)
  4751. }
  4752. }
  4753. Device (P0P5)
  4754. {
  4755. Name (_ADR, 0x001C0001)
  4756. Method (_PRW, 0, NotSerialized)
  4757. {
  4758. Return (GPRW (0x09, 0x04))
  4759. }
  4760. }
  4761. Device (P0P6)
  4762. {
  4763. Name (_ADR, 0x001C0002)
  4764. Method (_PRW, 0, NotSerialized)
  4765. {
  4766. Return (GPRW (0x09, 0x04))
  4767. }
  4768. Method (_PRT, 0, NotSerialized)
  4769. {
  4770. If (PICM)
  4771. {
  4772. Return (AR06)
  4773. }
  4774. Return (PR06)
  4775. }
  4776. }
  4777. Device (P0P7)
  4778. {
  4779. Name (_ADR, 0x001C0003)
  4780. Method (_PRW, 0, NotSerialized)
  4781. {
  4782. Return (GPRW (0x09, 0x04))
  4783. }
  4784. Method (_PRT, 0, NotSerialized)
  4785. {
  4786. If (PICM)
  4787. {
  4788. Return (AR07)
  4789. }
  4790. Return (PR07)
  4791. }
  4792. }
  4793. Device (P0P8)
  4794. {
  4795. Name (_ADR, 0x001C0004)
  4796. Method (_PRW, 0, NotSerialized)
  4797. {
  4798. Return (GPRW (0x09, 0x04))
  4799. }
  4800. Method (_PRT, 0, NotSerialized)
  4801. {
  4802. If (PICM)
  4803. {
  4804. Return (AR08)
  4805. }
  4806. Return (PR08)
  4807. }
  4808. Device (JMF0)
  4809. {
  4810. Name (_ADR, Zero)
  4811. Name (PIOT, Package (0x05)
  4812. {
  4813. 0x0258,
  4814. 0x0186,
  4815. 0x014A,
  4816. 0xB4,
  4817. 0x78
  4818. })
  4819. Name (UDMA, Package (0x07)
  4820. {
  4821. 0x78,
  4822. 0x50,
  4823. 0x3C,
  4824. 0x28,
  4825. 0x1E,
  4826. 0x14,
  4827. 0x0F
  4828. })
  4829. Name (MDMA, Package (0x03)
  4830. {
  4831. 0x01E0,
  4832. 0x96,
  4833. 0x78
  4834. })
  4835. OperationRegion (CF40, PCI_Config, 0x40, 0x04)
  4836. Field (CF40, ByteAcc, NoLock, Preserve)
  4837. {
  4838. , 3,
  4839. CAB0, 1,
  4840. , 18,
  4841. SWAP, 1,
  4842. CHN0, 1,
  4843. Offset (0x04)
  4844. }
  4845. OperationRegion (CF80, PCI_Config, 0x80, 0x04)
  4846. Field (CF80, ByteAcc, NoLock, Preserve)
  4847. {
  4848. , 19,
  4849. CAB1, 1,
  4850. Offset (0x03),
  4851. CHN1, 1,
  4852. Offset (0x04)
  4853. }
  4854. Name (IDEB, Buffer (0x14) {})
  4855. CreateDWordField (IDEB, Zero, GTM0)
  4856. CreateDWordField (IDEB, 0x04, GTM1)
  4857. CreateDWordField (IDEB, 0x08, GTM2)
  4858. CreateDWordField (IDEB, 0x0C, GTM3)
  4859. CreateDWordField (IDEB, 0x10, GTM4)
  4860. Name (PMIO, 0x04)
  4861. Name (PMDM, 0x06)
  4862. Name (PSIO, 0x04)
  4863. Name (PSDM, 0x06)
  4864. Name (SMIO, 0x04)
  4865. Name (SMDM, 0x06)
  4866. Name (SSIO, 0x04)
  4867. Name (SSDM, 0x06)
  4868. Name (MODP, 0x05)
  4869. Name (MODS, 0x05)
  4870. Device (SDE0)
  4871. {
  4872. Name (_ADR, Zero)
  4873. Method (_GTM, 0, NotSerialized)
  4874. {
  4875. Store (DerefOf (Index (PIOT, PMIO)), Local0)
  4876. Store (DerefOf (Index (PIOT, PSIO)), Local2)
  4877. Store (0x1A, Local4)
  4878. If (LAnd (MODP, One))
  4879. {
  4880. Store (DerefOf (Index (UDMA, PMDM)), Local1)
  4881. If (LGreater (PMDM, 0x02))
  4882. {
  4883. If (LAnd (LNotEqual (SWAP, One), LEqual (CHN1, One)))
  4884. {
  4885. If (CAB1)
  4886. {
  4887. Store (0x02, PMDM)
  4888. Store (DerefOf (Index (UDMA, PMDM)), Local1)
  4889. }
  4890. }
  4891. If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One)))
  4892. {
  4893. If (CAB0)
  4894. {
  4895. Store (0x02, PMDM)
  4896. Store (DerefOf (Index (UDMA, PMDM)), Local1)
  4897. }
  4898. }
  4899. }
  4900. Or (Local4, One, Local4)
  4901. }
  4902. Else
  4903. {
  4904. Store (DerefOf (Index (MDMA, PMDM)), Local1)
  4905. }
  4906. If (LAnd (MODP, 0x04))
  4907. {
  4908. Store (DerefOf (Index (UDMA, PSDM)), Local3)
  4909. If (LGreater (PSDM, 0x02))
  4910. {
  4911. If (LAnd (LNotEqual (SWAP, One), LEqual (CHN1, One)))
  4912. {
  4913. If (CAB1)
  4914. {
  4915. Store (0x02, PSDM)
  4916. Store (DerefOf (Index (UDMA, PSDM)), Local3)
  4917. }
  4918. }
  4919. If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One)))
  4920. {
  4921. If (CAB0)
  4922. {
  4923. Store (0x02, PSDM)
  4924. Store (DerefOf (Index (UDMA, PSDM)), Local3)
  4925. }
  4926. }
  4927. }
  4928. Or (Local4, 0x04, Local4)
  4929. }
  4930. Else
  4931. {
  4932. Store (DerefOf (Index (MDMA, PSDM)), Local3)
  4933. }
  4934. Store (Local0, GTM0)
  4935. Store (Local1, GTM1)
  4936. Store (Local2, GTM2)
  4937. Store (Local3, GTM3)
  4938. Store (Local4, GTM4)
  4939. Return (IDEB)
  4940. }
  4941. Method (_STM, 3, NotSerialized)
  4942. {
  4943. Store (Arg0, IDEB)
  4944. Store (GTM0, Local0)
  4945. Store (GTM1, Local1)
  4946. Store (GTM2, Local2)
  4947. Store (GTM3, Local3)
  4948. Store (GTM4, Local4)
  4949. If (LAnd (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero)))
  4950. {
  4951. Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PMIO)
  4952. }
  4953. If (LAnd (LNotEqual (Local1, Ones), LNotEqual (Local1, Zero)))
  4954. {
  4955. If (LAnd (Local4, One))
  4956. {
  4957. Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), PMDM)
  4958. }
  4959. Else
  4960. {
  4961. Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), PMDM)
  4962. }
  4963. }
  4964. If (LAnd (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero)))
  4965. {
  4966. Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PSIO)
  4967. }
  4968. If (LAnd (LNotEqual (Local3, Ones), LNotEqual (Local3, Zero)))
  4969. {
  4970. If (LAnd (Local4, 0x04))
  4971. {
  4972. Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), PSDM)
  4973. }
  4974. Else
  4975. {
  4976. Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), PSDM)
  4977. }
  4978. }
  4979. Store (Local4, MODP)
  4980. }
  4981. Device (DRV0)
  4982. {
  4983. Name (_ADR, Zero)
  4984. Method (_GTF, 0, NotSerialized)
  4985. {
  4986. Store (Buffer (0x07)
  4987. {
  4988. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  4989. }, Local0)
  4990. Store (Buffer (0x07)
  4991. {
  4992. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  4993. }, Local1)
  4994. CreateByteField (Local0, One, PIOM)
  4995. CreateByteField (Local1, One, DMAM)
  4996. Store (PMIO, PIOM)
  4997. Or (PIOM, 0x08, PIOM)
  4998. Store (PMDM, DMAM)
  4999. If (LAnd (MODP, One))
  5000. {
  5001. Or (DMAM, 0x40, DMAM)
  5002. }
  5003. Else
  5004. {
  5005. Or (DMAM, 0x20, DMAM)
  5006. }
  5007. Concatenate (Local0, Local1, Local2)
  5008. Return (Local2)
  5009. }
  5010. }
  5011. Device (DRV1)
  5012. {
  5013. Name (_ADR, One)
  5014. Method (_GTF, 0, NotSerialized)
  5015. {
  5016. Store (Buffer (0x07)
  5017. {
  5018. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5019. }, Local0)
  5020. Store (Buffer (0x07)
  5021. {
  5022. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5023. }, Local1)
  5024. CreateByteField (Local0, One, PIOM)
  5025. CreateByteField (Local1, One, DMAM)
  5026. Store (PSIO, PIOM)
  5027. Or (PIOM, 0x08, PIOM)
  5028. Store (PSDM, DMAM)
  5029. If (LAnd (MODP, 0x04))
  5030. {
  5031. Or (DMAM, 0x40, DMAM)
  5032. }
  5033. Else
  5034. {
  5035. Or (DMAM, 0x20, DMAM)
  5036. }
  5037. Concatenate (Local0, Local1, Local2)
  5038. Return (Local2)
  5039. }
  5040. }
  5041. }
  5042. Device (SDE1)
  5043. {
  5044. Name (_ADR, One)
  5045. Method (_GTM, 0, NotSerialized)
  5046. {
  5047. Store (DerefOf (Index (PIOT, SMIO)), Local0)
  5048. Store (DerefOf (Index (PIOT, SSIO)), Local2)
  5049. Store (0x1A, Local4)
  5050. If (LAnd (MODS, One))
  5051. {
  5052. Store (DerefOf (Index (UDMA, SMDM)), Local1)
  5053. If (LGreater (SMDM, 0x02))
  5054. {
  5055. If (LAnd (LNotEqual (SWAP, One), LEqual (CHN0, One)))
  5056. {
  5057. If (CAB0)
  5058. {
  5059. Store (0x02, SMDM)
  5060. Store (DerefOf (Index (UDMA, SMDM)), Local1)
  5061. }
  5062. }
  5063. If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One)))
  5064. {
  5065. If (CAB1)
  5066. {
  5067. Store (0x02, SMDM)
  5068. Store (DerefOf (Index (UDMA, SMDM)), Local1)
  5069. }
  5070. }
  5071. }
  5072. Or (Local4, One, Local4)
  5073. }
  5074. Else
  5075. {
  5076. Store (DerefOf (Index (MDMA, SMDM)), Local1)
  5077. }
  5078. If (LAnd (MODS, 0x04))
  5079. {
  5080. Store (DerefOf (Index (UDMA, SSDM)), Local3)
  5081. If (LGreater (SSDM, 0x02))
  5082. {
  5083. If (LAnd (LNotEqual (SWAP, One), LEqual (CHN0, One)))
  5084. {
  5085. If (CAB0)
  5086. {
  5087. Store (0x02, SSDM)
  5088. Store (DerefOf (Index (UDMA, SSDM)), Local3)
  5089. }
  5090. }
  5091. If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One)))
  5092. {
  5093. If (CAB1)
  5094. {
  5095. Store (0x02, SSDM)
  5096. Store (DerefOf (Index (UDMA, SSDM)), Local3)
  5097. }
  5098. }
  5099. }
  5100. Or (Local4, 0x04, Local4)
  5101. }
  5102. Else
  5103. {
  5104. Store (DerefOf (Index (MDMA, SSDM)), Local3)
  5105. }
  5106. Store (Local0, GTM0)
  5107. Store (Local1, GTM1)
  5108. Store (Local2, GTM2)
  5109. Store (Local3, GTM3)
  5110. Store (Local4, GTM4)
  5111. Return (IDEB)
  5112. }
  5113. Method (_STM, 3, NotSerialized)
  5114. {
  5115. Store (Arg0, IDEB)
  5116. Store (GTM0, Local0)
  5117. Store (GTM1, Local1)
  5118. Store (GTM2, Local2)
  5119. Store (GTM3, Local3)
  5120. Store (GTM4, Local4)
  5121. If (LAnd (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero)))
  5122. {
  5123. Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), SMIO)
  5124. }
  5125. If (LAnd (LNotEqual (Local1, Ones), LNotEqual (Local1, Zero)))
  5126. {
  5127. If (LAnd (Local4, One))
  5128. {
  5129. Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), SMDM)
  5130. }
  5131. Else
  5132. {
  5133. Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), SMDM)
  5134. }
  5135. }
  5136. If (LAnd (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero)))
  5137. {
  5138. Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), SSIO)
  5139. }
  5140. If (LAnd (LNotEqual (Local3, Ones), LNotEqual (Local3, Zero)))
  5141. {
  5142. If (LAnd (Local4, 0x04))
  5143. {
  5144. Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), SSDM)
  5145. }
  5146. Else
  5147. {
  5148. Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), SSDM)
  5149. }
  5150. }
  5151. Store (Local4, MODS)
  5152. }
  5153. Device (DRV0)
  5154. {
  5155. Name (_ADR, Zero)
  5156. Method (_GTF, 0, NotSerialized)
  5157. {
  5158. Store (Buffer (0x07)
  5159. {
  5160. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  5161. }, Local0)
  5162. Store (Buffer (0x07)
  5163. {
  5164. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  5165. }, Local1)
  5166. CreateByteField (Local0, One, PIOM)
  5167. CreateByteField (Local1, One, DMAM)
  5168. Store (SMIO, PIOM)
  5169. Or (PIOM, 0x08, PIOM)
  5170. Store (SMDM, DMAM)
  5171. If (LAnd (MODS, One))
  5172. {
  5173. Or (DMAM, 0x40, DMAM)
  5174. }
  5175. Else
  5176. {
  5177. Or (DMAM, 0x20, DMAM)
  5178. }
  5179. Concatenate (Local0, Local1, Local2)
  5180. Return (Local2)
  5181. }
  5182. }
  5183. Device (DRV1)
  5184. {
  5185. Name (_ADR, One)
  5186. Method (_GTF, 0, NotSerialized)
  5187. {
  5188. Store (Buffer (0x07)
  5189. {
  5190. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5191. }, Local0)
  5192. Store (Buffer (0x07)
  5193. {
  5194. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5195. }, Local1)
  5196. CreateByteField (Local0, One, PIOM)
  5197. CreateByteField (Local1, One, DMAM)
  5198. Store (SSIO, PIOM)
  5199. Or (PIOM, 0x08, PIOM)
  5200. Store (SSDM, DMAM)
  5201. If (LAnd (MODS, 0x04))
  5202. {
  5203. Or (DMAM, 0x40, DMAM)
  5204. }
  5205. Else
  5206. {
  5207. Or (DMAM, 0x20, DMAM)
  5208. }
  5209. Concatenate (Local0, Local1, Local2)
  5210. Return (Local2)
  5211. }
  5212. }
  5213. }
  5214. }
  5215. Device (JMF1)
  5216. {
  5217. Name (_ADR, One)
  5218. Name (PIOT, Package (0x05)
  5219. {
  5220. 0x0258,
  5221. 0x0186,
  5222. 0x014A,
  5223. 0xB4,
  5224. 0x78
  5225. })
  5226. Name (UDMA, Package (0x07)
  5227. {
  5228. 0x78,
  5229. 0x50,
  5230. 0x3C,
  5231. 0x28,
  5232. 0x1E,
  5233. 0x14,
  5234. 0x0F
  5235. })
  5236. Name (MDMA, Package (0x03)
  5237. {
  5238. 0x01E0,
  5239. 0x96,
  5240. 0x78
  5241. })
  5242. OperationRegion (CF40, PCI_Config, 0x40, 0x04)
  5243. Field (CF40, ByteAcc, NoLock, Preserve)
  5244. {
  5245. , 3,
  5246. CAB0, 1,
  5247. , 18,
  5248. SWAP, 1,
  5249. CHN0, 1,
  5250. Offset (0x04)
  5251. }
  5252. OperationRegion (CF80, PCI_Config, 0x80, 0x04)
  5253. Field (CF80, ByteAcc, NoLock, Preserve)
  5254. {
  5255. , 19,
  5256. CAB1, 1,
  5257. Offset (0x03),
  5258. CHN1, 1,
  5259. Offset (0x04)
  5260. }
  5261. Name (IDEB, Buffer (0x14) {})
  5262. CreateDWordField (IDEB, Zero, GTM0)
  5263. CreateDWordField (IDEB, 0x04, GTM1)
  5264. CreateDWordField (IDEB, 0x08, GTM2)
  5265. CreateDWordField (IDEB, 0x0C, GTM3)
  5266. CreateDWordField (IDEB, 0x10, GTM4)
  5267. Name (PMIO, 0x04)
  5268. Name (PMDM, 0x06)
  5269. Name (PSIO, 0x04)
  5270. Name (PSDM, 0x06)
  5271. Name (SMIO, 0x04)
  5272. Name (SMDM, 0x06)
  5273. Name (SSIO, 0x04)
  5274. Name (SSDM, 0x06)
  5275. Name (MODP, 0x05)
  5276. Name (MODS, 0x05)
  5277. Device (SDE0)
  5278. {
  5279. Name (_ADR, Zero)
  5280. Method (_GTM, 0, NotSerialized)
  5281. {
  5282. Store (DerefOf (Index (PIOT, PMIO)), Local0)
  5283. Store (DerefOf (Index (PIOT, PSIO)), Local2)
  5284. Store (0x1A, Local4)
  5285. If (LAnd (MODP, One))
  5286. {
  5287. Store (DerefOf (Index (UDMA, PMDM)), Local1)
  5288. If (LGreater (PMDM, 0x02))
  5289. {
  5290. If (LAnd (LNotEqual (SWAP, One), LEqual (CHN1, One)))
  5291. {
  5292. If (CAB1)
  5293. {
  5294. Store (0x02, PMDM)
  5295. Store (DerefOf (Index (UDMA, PMDM)), Local1)
  5296. }
  5297. }
  5298. If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One)))
  5299. {
  5300. If (CAB0)
  5301. {
  5302. Store (0x02, PMDM)
  5303. Store (DerefOf (Index (UDMA, PMDM)), Local1)
  5304. }
  5305. }
  5306. }
  5307. Or (Local4, One, Local4)
  5308. }
  5309. Else
  5310. {
  5311. Store (DerefOf (Index (MDMA, PMDM)), Local1)
  5312. }
  5313. If (LAnd (MODP, 0x04))
  5314. {
  5315. Store (DerefOf (Index (UDMA, PSDM)), Local3)
  5316. If (LGreater (PSDM, 0x02))
  5317. {
  5318. If (LAnd (LNotEqual (SWAP, One), LEqual (CHN1, One)))
  5319. {
  5320. If (CAB1)
  5321. {
  5322. Store (0x02, PSDM)
  5323. Store (DerefOf (Index (UDMA, PSDM)), Local3)
  5324. }
  5325. }
  5326. If (LAnd (LEqual (SWAP, One), LEqual (CHN0, One)))
  5327. {
  5328. If (CAB0)
  5329. {
  5330. Store (0x02, PSDM)
  5331. Store (DerefOf (Index (UDMA, PSDM)), Local3)
  5332. }
  5333. }
  5334. }
  5335. Or (Local4, 0x04, Local4)
  5336. }
  5337. Else
  5338. {
  5339. Store (DerefOf (Index (MDMA, PSDM)), Local3)
  5340. }
  5341. Store (Local0, GTM0)
  5342. Store (Local1, GTM1)
  5343. Store (Local2, GTM2)
  5344. Store (Local3, GTM3)
  5345. Store (Local4, GTM4)
  5346. Return (IDEB)
  5347. }
  5348. Method (_STM, 3, NotSerialized)
  5349. {
  5350. Store (Arg0, IDEB)
  5351. Store (GTM0, Local0)
  5352. Store (GTM1, Local1)
  5353. Store (GTM2, Local2)
  5354. Store (GTM3, Local3)
  5355. Store (GTM4, Local4)
  5356. If (LAnd (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero)))
  5357. {
  5358. Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), PMIO)
  5359. }
  5360. If (LAnd (LNotEqual (Local1, Ones), LNotEqual (Local1, Zero)))
  5361. {
  5362. If (LAnd (Local4, One))
  5363. {
  5364. Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), PMDM)
  5365. }
  5366. Else
  5367. {
  5368. Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), PMDM)
  5369. }
  5370. }
  5371. If (LAnd (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero)))
  5372. {
  5373. Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), PSIO)
  5374. }
  5375. If (LAnd (LNotEqual (Local3, Ones), LNotEqual (Local3, Zero)))
  5376. {
  5377. If (LAnd (Local4, 0x04))
  5378. {
  5379. Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), PSDM)
  5380. }
  5381. Else
  5382. {
  5383. Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), PSDM)
  5384. }
  5385. }
  5386. Store (Local4, MODP)
  5387. }
  5388. Device (DRV0)
  5389. {
  5390. Name (_ADR, Zero)
  5391. Method (_GTF, 0, NotSerialized)
  5392. {
  5393. Store (Buffer (0x07)
  5394. {
  5395. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  5396. }, Local0)
  5397. Store (Buffer (0x07)
  5398. {
  5399. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  5400. }, Local1)
  5401. CreateByteField (Local0, One, PIOM)
  5402. CreateByteField (Local1, One, DMAM)
  5403. Store (PMIO, PIOM)
  5404. Or (PIOM, 0x08, PIOM)
  5405. Store (PMDM, DMAM)
  5406. If (LAnd (MODP, One))
  5407. {
  5408. Or (DMAM, 0x40, DMAM)
  5409. }
  5410. Else
  5411. {
  5412. Or (DMAM, 0x20, DMAM)
  5413. }
  5414. Concatenate (Local0, Local1, Local2)
  5415. Return (Local2)
  5416. }
  5417. }
  5418. Device (DRV1)
  5419. {
  5420. Name (_ADR, One)
  5421. Method (_GTF, 0, NotSerialized)
  5422. {
  5423. Store (Buffer (0x07)
  5424. {
  5425. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5426. }, Local0)
  5427. Store (Buffer (0x07)
  5428. {
  5429. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5430. }, Local1)
  5431. CreateByteField (Local0, One, PIOM)
  5432. CreateByteField (Local1, One, DMAM)
  5433. Store (PSIO, PIOM)
  5434. Or (PIOM, 0x08, PIOM)
  5435. Store (PSDM, DMAM)
  5436. If (LAnd (MODP, 0x04))
  5437. {
  5438. Or (DMAM, 0x40, DMAM)
  5439. }
  5440. Else
  5441. {
  5442. Or (DMAM, 0x20, DMAM)
  5443. }
  5444. Concatenate (Local0, Local1, Local2)
  5445. Return (Local2)
  5446. }
  5447. }
  5448. }
  5449. Device (SDE1)
  5450. {
  5451. Name (_ADR, One)
  5452. Method (_GTM, 0, NotSerialized)
  5453. {
  5454. Store (DerefOf (Index (PIOT, SMIO)), Local0)
  5455. Store (DerefOf (Index (PIOT, SSIO)), Local2)
  5456. Store (0x1A, Local4)
  5457. If (LAnd (MODS, One))
  5458. {
  5459. Store (DerefOf (Index (UDMA, SMDM)), Local1)
  5460. If (LGreater (SMDM, 0x02))
  5461. {
  5462. If (LAnd (LNotEqual (SWAP, One), LEqual (CHN0, One)))
  5463. {
  5464. If (CAB0)
  5465. {
  5466. Store (0x02, SMDM)
  5467. Store (DerefOf (Index (UDMA, SMDM)), Local1)
  5468. }
  5469. }
  5470. If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One)))
  5471. {
  5472. If (CAB1)
  5473. {
  5474. Store (0x02, SMDM)
  5475. Store (DerefOf (Index (UDMA, SMDM)), Local1)
  5476. }
  5477. }
  5478. }
  5479. Or (Local4, One, Local4)
  5480. }
  5481. Else
  5482. {
  5483. Store (DerefOf (Index (MDMA, SMDM)), Local1)
  5484. }
  5485. If (LAnd (MODS, 0x04))
  5486. {
  5487. Store (DerefOf (Index (UDMA, SSDM)), Local3)
  5488. If (LGreater (SSDM, 0x02))
  5489. {
  5490. If (LAnd (LNotEqual (SWAP, One), LEqual (CHN0, One)))
  5491. {
  5492. If (CAB0)
  5493. {
  5494. Store (0x02, SSDM)
  5495. Store (DerefOf (Index (UDMA, SSDM)), Local3)
  5496. }
  5497. }
  5498. If (LAnd (LEqual (SWAP, One), LEqual (CHN1, One)))
  5499. {
  5500. If (CAB1)
  5501. {
  5502. Store (0x02, SSDM)
  5503. Store (DerefOf (Index (UDMA, SSDM)), Local3)
  5504. }
  5505. }
  5506. }
  5507. Or (Local4, 0x04, Local4)
  5508. }
  5509. Else
  5510. {
  5511. Store (DerefOf (Index (MDMA, SSDM)), Local3)
  5512. }
  5513. Store (Local0, GTM0)
  5514. Store (Local1, GTM1)
  5515. Store (Local2, GTM2)
  5516. Store (Local3, GTM3)
  5517. Store (Local4, GTM4)
  5518. Return (IDEB)
  5519. }
  5520. Method (_STM, 3, NotSerialized)
  5521. {
  5522. Store (Arg0, IDEB)
  5523. Store (GTM0, Local0)
  5524. Store (GTM1, Local1)
  5525. Store (GTM2, Local2)
  5526. Store (GTM3, Local3)
  5527. Store (GTM4, Local4)
  5528. If (LAnd (LNotEqual (Local0, Ones), LNotEqual (Local0, Zero)))
  5529. {
  5530. Store (Match (PIOT, MEQ, Local0, MTR, Zero, Zero), SMIO)
  5531. }
  5532. If (LAnd (LNotEqual (Local1, Ones), LNotEqual (Local1, Zero)))
  5533. {
  5534. If (LAnd (Local4, One))
  5535. {
  5536. Store (Match (UDMA, MEQ, Local1, MTR, Zero, Zero), SMDM)
  5537. }
  5538. Else
  5539. {
  5540. Store (Match (MDMA, MEQ, Local1, MTR, Zero, Zero), SMDM)
  5541. }
  5542. }
  5543. If (LAnd (LNotEqual (Local2, Ones), LNotEqual (Local2, Zero)))
  5544. {
  5545. Store (Match (PIOT, MEQ, Local2, MTR, Zero, Zero), SSIO)
  5546. }
  5547. If (LAnd (LNotEqual (Local3, Ones), LNotEqual (Local3, Zero)))
  5548. {
  5549. If (LAnd (Local4, 0x04))
  5550. {
  5551. Store (Match (UDMA, MEQ, Local3, MTR, Zero, Zero), SSDM)
  5552. }
  5553. Else
  5554. {
  5555. Store (Match (MDMA, MEQ, Local3, MTR, Zero, Zero), SSDM)
  5556. }
  5557. }
  5558. Store (Local4, MODS)
  5559. }
  5560. Device (DRV0)
  5561. {
  5562. Name (_ADR, Zero)
  5563. Method (_GTF, 0, NotSerialized)
  5564. {
  5565. Store (Buffer (0x07)
  5566. {
  5567. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  5568. }, Local0)
  5569. Store (Buffer (0x07)
  5570. {
  5571. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  5572. }, Local1)
  5573. CreateByteField (Local0, One, PIOM)
  5574. CreateByteField (Local1, One, DMAM)
  5575. Store (SMIO, PIOM)
  5576. Or (PIOM, 0x08, PIOM)
  5577. Store (SMDM, DMAM)
  5578. If (LAnd (MODS, One))
  5579. {
  5580. Or (DMAM, 0x40, DMAM)
  5581. }
  5582. Else
  5583. {
  5584. Or (DMAM, 0x20, DMAM)
  5585. }
  5586. Concatenate (Local0, Local1, Local2)
  5587. Return (Local2)
  5588. }
  5589. }
  5590. Device (DRV1)
  5591. {
  5592. Name (_ADR, One)
  5593. Method (_GTF, 0, NotSerialized)
  5594. {
  5595. Store (Buffer (0x07)
  5596. {
  5597. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5598. }, Local0)
  5599. Store (Buffer (0x07)
  5600. {
  5601. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5602. }, Local1)
  5603. CreateByteField (Local0, One, PIOM)
  5604. CreateByteField (Local1, One, DMAM)
  5605. Store (SSIO, PIOM)
  5606. Or (PIOM, 0x08, PIOM)
  5607. Store (SSDM, DMAM)
  5608. If (LAnd (MODS, 0x04))
  5609. {
  5610. Or (DMAM, 0x40, DMAM)
  5611. }
  5612. Else
  5613. {
  5614. Or (DMAM, 0x20, DMAM)
  5615. }
  5616. Concatenate (Local0, Local1, Local2)
  5617. Return (Local2)
  5618. }
  5619. }
  5620. }
  5621. }
  5622. }
  5623. Device (P0P9)
  5624. {
  5625. Name (_ADR, 0x001C0005)
  5626. Method (_PRW, 0, NotSerialized)
  5627. {
  5628. Return (GPRW (0x09, 0x04))
  5629. }
  5630. Method (_PRT, 0, NotSerialized)
  5631. {
  5632. If (PICM)
  5633. {
  5634. Return (AR09)
  5635. }
  5636. Return (PR09)
  5637. }
  5638. }
  5639. Device (GBEC)
  5640. {
  5641. Name (_ADR, 0x00190000)
  5642. Method (_PRW, 0, NotSerialized)
  5643. {
  5644. Return (GPRW (0x0D, 0x04))
  5645. }
  5646. }
  5647. Device (USB0)
  5648. {
  5649. Name (_ADR, 0x001D0000)
  5650. OperationRegion (BAR0, PCI_Config, 0xC4, One)
  5651. Field (BAR0, ByteAcc, NoLock, Preserve)
  5652. {
  5653. USBW, 2,
  5654. Offset (0x01)
  5655. }
  5656. Method (_S3D, 0, NotSerialized)
  5657. {
  5658. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  5659. {
  5660. Return (0x02)
  5661. }
  5662. Else
  5663. {
  5664. Return (0x03)
  5665. }
  5666. }
  5667. Method (_PSW, 1, NotSerialized)
  5668. {
  5669. If (Arg0)
  5670. {
  5671. Store (0x03, USBW)
  5672. }
  5673. Else
  5674. {
  5675. Store (Zero, USBW)
  5676. }
  5677. }
  5678. Method (_PRW, 0, NotSerialized)
  5679. {
  5680. Return (GPRW (0x03, 0x04))
  5681. }
  5682. }
  5683. Device (USB1)
  5684. {
  5685. Name (_ADR, 0x001D0001)
  5686. OperationRegion (BAR0, PCI_Config, 0xC4, One)
  5687. Field (BAR0, ByteAcc, NoLock, Preserve)
  5688. {
  5689. USBW, 2,
  5690. Offset (0x01)
  5691. }
  5692. Method (_S3D, 0, NotSerialized)
  5693. {
  5694. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  5695. {
  5696. Return (0x02)
  5697. }
  5698. Else
  5699. {
  5700. Return (0x03)
  5701. }
  5702. }
  5703. Method (_PSW, 1, NotSerialized)
  5704. {
  5705. If (Arg0)
  5706. {
  5707. Store (0x03, USBW)
  5708. }
  5709. Else
  5710. {
  5711. Store (Zero, USBW)
  5712. }
  5713. }
  5714. Method (_PRW, 0, NotSerialized)
  5715. {
  5716. Return (GPRW (0x04, 0x04))
  5717. }
  5718. }
  5719. Device (USB2)
  5720. {
  5721. Name (_ADR, 0x001D0002)
  5722. OperationRegion (BAR0, PCI_Config, 0xC4, One)
  5723. Field (BAR0, ByteAcc, NoLock, Preserve)
  5724. {
  5725. USBW, 2,
  5726. Offset (0x01)
  5727. }
  5728. Method (_S3D, 0, NotSerialized)
  5729. {
  5730. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  5731. {
  5732. Return (0x02)
  5733. }
  5734. Else
  5735. {
  5736. Return (0x03)
  5737. }
  5738. }
  5739. Method (_PSW, 1, NotSerialized)
  5740. {
  5741. If (Arg0)
  5742. {
  5743. Store (0x03, USBW)
  5744. }
  5745. Else
  5746. {
  5747. Store (Zero, USBW)
  5748. }
  5749. }
  5750. Method (_PRW, 0, NotSerialized)
  5751. {
  5752. Return (GPRW (0x0C, 0x04))
  5753. }
  5754. }
  5755. Device (USB3)
  5756. {
  5757. Name (_ADR, 0x001D0003)
  5758. OperationRegion (BAR0, PCI_Config, 0xC4, One)
  5759. Field (BAR0, ByteAcc, NoLock, Preserve)
  5760. {
  5761. USBW, 2,
  5762. Offset (0x01)
  5763. }
  5764. Method (_S3D, 0, NotSerialized)
  5765. {
  5766. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  5767. {
  5768. Return (0x02)
  5769. }
  5770. Else
  5771. {
  5772. Return (0x03)
  5773. }
  5774. }
  5775. Method (_PSW, 1, NotSerialized)
  5776. {
  5777. If (Arg0)
  5778. {
  5779. Store (0x03, USBW)
  5780. }
  5781. Else
  5782. {
  5783. Store (Zero, USBW)
  5784. }
  5785. }
  5786. Method (_PRW, 0, NotSerialized)
  5787. {
  5788. Return (GPRW (0x0E, 0x04))
  5789. }
  5790. }
  5791. Device (USB4)
  5792. {
  5793. Name (_ADR, 0x001A0000)
  5794. OperationRegion (BAR0, PCI_Config, 0xC4, One)
  5795. Field (BAR0, ByteAcc, NoLock, Preserve)
  5796. {
  5797. USBW, 2,
  5798. Offset (0x01)
  5799. }
  5800. Method (_S3D, 0, NotSerialized)
  5801. {
  5802. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  5803. {
  5804. Return (0x02)
  5805. }
  5806. Else
  5807. {
  5808. Return (0x03)
  5809. }
  5810. }
  5811. Method (_PSW, 1, NotSerialized)
  5812. {
  5813. If (Arg0)
  5814. {
  5815. Store (0x03, USBW)
  5816. }
  5817. Else
  5818. {
  5819. Store (Zero, USBW)
  5820. }
  5821. }
  5822. Method (_PRW, 0, NotSerialized)
  5823. {
  5824. Return (GPRW (0x0E, 0x04))
  5825. }
  5826. }
  5827. Device (USB5)
  5828. {
  5829. Name (_ADR, 0x001A0001)
  5830. OperationRegion (BAR0, PCI_Config, 0xC4, One)
  5831. Field (BAR0, ByteAcc, NoLock, Preserve)
  5832. {
  5833. USBW, 2,
  5834. Offset (0x01)
  5835. }
  5836. Method (_S3D, 0, NotSerialized)
  5837. {
  5838. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  5839. {
  5840. Return (0x02)
  5841. }
  5842. Else
  5843. {
  5844. Return (0x03)
  5845. }
  5846. }
  5847. Method (_PSW, 1, NotSerialized)
  5848. {
  5849. If (Arg0)
  5850. {
  5851. Store (0x03, USBW)
  5852. }
  5853. Else
  5854. {
  5855. Store (Zero, USBW)
  5856. }
  5857. }
  5858. Method (_PRW, 0, NotSerialized)
  5859. {
  5860. Return (GPRW (0x05, 0x04))
  5861. }
  5862. }
  5863. Device (USB6)
  5864. {
  5865. Name (_ADR, 0x001A0002)
  5866. OperationRegion (BAR0, PCI_Config, 0xC4, One)
  5867. Field (BAR0, ByteAcc, NoLock, Preserve)
  5868. {
  5869. USBW, 2,
  5870. Offset (0x01)
  5871. }
  5872. Method (_S3D, 0, NotSerialized)
  5873. {
  5874. If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
  5875. {
  5876. Return (0x02)
  5877. }
  5878. Else
  5879. {
  5880. Return (0x03)
  5881. }
  5882. }
  5883. Method (_PSW, 1, NotSerialized)
  5884. {
  5885. If (Arg0)
  5886. {
  5887. Store (0x03, USBW)
  5888. }
  5889. Else
  5890. {
  5891. Store (Zero, USBW)
  5892. }
  5893. }
  5894. Method (_PRW, 0, NotSerialized)
  5895. {
  5896. Return (GPRW (0x20, 0x04))
  5897. }
  5898. }
  5899. }
  5900. Scope (\_GPE)
  5901. {
  5902. Method (_L09, 0, NotSerialized)
  5903. {
  5904. Notify (\_SB.PCI0.P0P2, 0x02)
  5905. Notify (\_SB.PCI0.P0P4, 0x02)
  5906. Notify (\_SB.PCI0.P0P5, 0x02)
  5907. Notify (\_SB.PCI0.P0P6, 0x02)
  5908. Notify (\_SB.PCI0.P0P7, 0x02)
  5909. Notify (\_SB.PCI0.P0P8, 0x02)
  5910. Notify (\_SB.PCI0.P0P9, 0x02)
  5911. Notify (\_SB.PWRB, 0x02)
  5912. }
  5913. Method (_L0B, 0, NotSerialized)
  5914. {
  5915. Notify (\_SB.PCI0.P0P1, 0x02)
  5916. Notify (\_SB.PWRB, 0x02)
  5917. }
  5918. Method (_L08, 0, NotSerialized)
  5919. {
  5920. \_SB.PCI0.SBRG.SIOH ()
  5921. }
  5922. Method (_L1D, 0, NotSerialized)
  5923. {
  5924. \_SB.PCI0.SBRG.SIOH ()
  5925. }
  5926. Method (_L0D, 0, NotSerialized)
  5927. {
  5928. Notify (\_SB.PCI0.EUSB, 0x02)
  5929. Notify (\_SB.PCI0.USBE, 0x02)
  5930. Notify (\_SB.PCI0.GBEC, 0x02)
  5931. Notify (\_SB.PWRB, 0x02)
  5932. }
  5933. Method (_L03, 0, NotSerialized)
  5934. {
  5935. Notify (\_SB.PCI0.USB0, 0x02)
  5936. Notify (\_SB.PWRB, 0x02)
  5937. }
  5938. Method (_L04, 0, NotSerialized)
  5939. {
  5940. Notify (\_SB.PCI0.USB1, 0x02)
  5941. Notify (\_SB.PWRB, 0x02)
  5942. }
  5943. Method (_L0C, 0, NotSerialized)
  5944. {
  5945. Notify (\_SB.PCI0.USB2, 0x02)
  5946. Notify (\_SB.PWRB, 0x02)
  5947. }
  5948. Method (_L0E, 0, NotSerialized)
  5949. {
  5950. Notify (\_SB.PCI0.USB3, 0x02)
  5951. Notify (\_SB.PCI0.USB4, 0x02)
  5952. Notify (\_SB.PWRB, 0x02)
  5953. }
  5954. Method (_L05, 0, NotSerialized)
  5955. {
  5956. Notify (\_SB.PCI0.USB5, 0x02)
  5957. Notify (\_SB.PWRB, 0x02)
  5958. }
  5959. Method (_L20, 0, NotSerialized)
  5960. {
  5961. Notify (\_SB.PCI0.USB6, 0x02)
  5962. Notify (\_SB.PWRB, 0x02)
  5963. }
  5964. }
  5965. Device (PWRB)
  5966. {
  5967. Name (_HID, EisaId ("PNP0C0C"))
  5968. Name (_UID, 0xAA)
  5969. Name (_STA, 0x0B)
  5970. }
  5971. }
  5972. Scope (_SB.PCI0.SBRG.ASOC)
  5973. {
  5974. Name (G0T1, Package (0x07)
  5975. {
  5976. 0x00060001,
  5977. "Feature Flag",
  5978. One,
  5979. Zero,
  5980. Zero,
  5981. One,
  5982. 0x08
  5983. })
  5984. Name (GRP0, Package (0x01)
  5985. {
  5986. G0T1
  5987. })
  5988. Method (GIT0, 1, NotSerialized)
  5989. {
  5990. Name (_T_0, Zero)
  5991. Store (And (Arg0, 0xFFFF), _T_0)
  5992. If (LEqual (_T_0, One))
  5993. {
  5994. Store (GNVS (0x173F), ASB1)
  5995. Or (ShiftLeft (GNVS (0x1746), One), ASB1, ASB1)
  5996. }
  5997. Else
  5998. {
  5999. If (LEqual (_T_0, 0x02))
  6000. {
  6001. Store (Zero, ASB1)
  6002. }
  6003. Else
  6004. {
  6005. Store (Zero, ASB0)
  6006. }
  6007. }
  6008. }
  6009. Method (SIT0, 3, NotSerialized)
  6010. {
  6011. If (And (Arg2, 0xFFFF))
  6012. {
  6013. Name (_T_0, Zero)
  6014. Store (And (Arg0, 0xFFFF), _T_0)
  6015. If (LEqual (_T_0, One))
  6016. {
  6017. SNVS (0x173F, Arg1)
  6018. Store (0x03, ASB0)
  6019. }
  6020. Else
  6021. {
  6022. If (LEqual (_T_0, 0x02))
  6023. {
  6024. Store (0x0302, DBG8)
  6025. Store (0x03, ASB0)
  6026. }
  6027. Else
  6028. {
  6029. Store (Zero, ASB0)
  6030. }
  6031. }
  6032. }
  6033. Else
  6034. {
  6035. Store (0x03, ASB0)
  6036. }
  6037. }
  6038. }
  6039. Scope (_SB.PCI0.SBRG.ASOC)
  6040. {
  6041. Name (G3T0, Package (0x07)
  6042. {
  6043. 0x03010011,
  6044. "CPU Frequency",
  6045. Zero,
  6046. Zero,
  6047. 0x4E20,
  6048. 0x64,
  6049. 0x0259
  6050. })
  6051. Name (G3T2, Package (0x07)
  6052. {
  6053. 0x03060013,
  6054. "CPU Ratio",
  6055. Zero,
  6056. Zero,
  6057. 0x06,
  6058. One,
  6059. 0x19
  6060. })
  6061. Name (G321, Package (0x09)
  6062. {
  6063. 0x03820032,
  6064. "DRAM Voltage",
  6065. Zero,
  6066. Zero,
  6067. 0x0708,
  6068. 0x32,
  6069. 0x11,
  6070. One,
  6071. "Auto"
  6072. })
  6073. Name (G322, Package (0x0D)
  6074. {
  6075. 0x03080031,
  6076. "DRAM Frequency",
  6077. Zero,
  6078. Zero,
  6079. 0x08,
  6080. "Auto",
  6081. "667 MHz",
  6082. "800 MHz",
  6083. "833 MHz",
  6084. "1000 MHz",
  6085. "1066 MHz",
  6086. "1111 MHz",
  6087. "1333 MHz"
  6088. })
  6089. Name (G340, Package (0x09)
  6090. {
  6091. 0x03810051,
  6092. "PCIE Frequency",
  6093. Zero,
  6094. Zero,
  6095. 0x2710,
  6096. 0x64,
  6097. 0x33,
  6098. One,
  6099. "Auto"
  6100. })
  6101. Name (GRP3, Package (0x05)
  6102. {
  6103. G3T0,
  6104. G3T2,
  6105. G321,
  6106. G322,
  6107. G340
  6108. })
  6109. Name (IDEX, Zero)
  6110. Method (GIT3, 1, NotSerialized)
  6111. {
  6112. Name (_T_0, Zero)
  6113. Store (And (Arg0, 0xFFFF), _T_0)
  6114. If (LEqual (_T_0, 0x11))
  6115. {
  6116. Subtract (GNVS (0xA6E8), 0xC8, ASB1)
  6117. }
  6118. Else
  6119. {
  6120. If (LEqual (_T_0, 0x13))
  6121. {
  6122. If (LGreater (And (GCAX (One), 0x0FF0, Local0), 0x06F0))
  6123. {
  6124. Store (GMAX (0x2C), Local0)
  6125. And (ShiftRight (Local0, 0x08), 0xFF, Local2)
  6126. And (Local0, 0xFF, Local1)
  6127. Subtract (Local1, Local2, Local0)
  6128. Store (GMDX (0x0198), Local7)
  6129. And (ShiftRight (Local7, 0x08), 0xFF, Local7)
  6130. If (LLess (Local7, Local0))
  6131. {
  6132. Store (Local1, Local7)
  6133. }
  6134. }
  6135. Else
  6136. {
  6137. Store (GMDX (0x0198), Local0)
  6138. And (ShiftRight (Local0, 0x08), 0x1F, Local1)
  6139. Store (Local1, Local7)
  6140. Store (GMAX (0x0198), Local0)
  6141. And (ShiftRight (Local0, 0x18), 0x1F, Local0)
  6142. }
  6143. If (LEqual (GNVS (0x1661), Zero))
  6144. {
  6145. If (And (GMAX (0x17), 0x00800000))
  6146. {
  6147. Store (ShiftRight (And (GMAX (0x17), 0x4000), 0x0E), Local5)
  6148. Store (Subtract (Local7, Local0), Local4)
  6149. Multiply (Local4, 0x02, Local6)
  6150. Add (Local6, Local5, ASB1)
  6151. }
  6152. Else
  6153. {
  6154. Store (Subtract (Local7, Local0), ASB1)
  6155. }
  6156. }
  6157. Else
  6158. {
  6159. If (And (GMAX (0x17), 0x00800000))
  6160. {
  6161. Store (ShiftRight (And (GNVS (0x8298), 0x40), 0x06), Local5)
  6162. Store (Subtract (And (GNVS (0x8298), 0x1F), Local0), Local4)
  6163. Multiply (Local4, 0x02, Local6)
  6164. Add (Local6, Local5, ASB1)
  6165. }
  6166. Else
  6167. {
  6168. Store (Subtract (And (GNVS (0x8298), 0x1F), Local0), ASB1)
  6169. }
  6170. }
  6171. Store (ASB1, IDEX)
  6172. }
  6173. Else
  6174. {
  6175. If (LEqual (_T_0, 0x32))
  6176. {
  6177. Store (GNVS (0x53A8), ASB1)
  6178. }
  6179. Else
  6180. {
  6181. If (LEqual (_T_0, 0x31))
  6182. {
  6183. Store (GNVS (0x4450), ASB1)
  6184. }
  6185. Else
  6186. {
  6187. If (LEqual (_T_0, 0x51))
  6188. {
  6189. Store (GNVS (0x6368), ASB1)
  6190. }
  6191. Else
  6192. {
  6193. Store (Zero, ASB0)
  6194. }
  6195. }
  6196. }
  6197. }
  6198. }
  6199. }
  6200. Method (SIT3, 3, NotSerialized)
  6201. {
  6202. Name (_T_0, Zero)
  6203. Store (And (Arg0, 0xFFFF), _T_0)
  6204. If (LEqual (_T_0, 0x11))
  6205. {
  6206. Add (Arg1, 0xC8, Local2)
  6207. If (LNotEqual (GNVS (0xA6E8), Local2))
  6208. {
  6209. Subtract (GNVS (0xA6E8), 0xC8, Local1)
  6210. Multiply (Local1, 0x03, Local0)
  6211. CreateByteField (MNBF, Local0, CB04)
  6212. CreateWordField (CLKR, 0x0B, CBMN)
  6213. Store (RBLK (0xD2, Zero, 0x13), CLKR)
  6214. Multiply (Arg1, 0x03, Local0)
  6215. CreateByteField (MNBF, Local0, MN04)
  6216. CreateWordField (MNBF, Increment (Local0), MNVL)
  6217. If (LEqual (CB04, MN04))
  6218. {
  6219. If (And (Arg2, One))
  6220. {
  6221. Store (MNVL, CBMN)
  6222. WBLK (0xD2, Zero, 0x13, CLKR)
  6223. }
  6224. }
  6225. Else
  6226. {
  6227. Or (ASB0, 0x02, ASB0)
  6228. }
  6229. If (And (Arg2, One))
  6230. {
  6231. SNVS (0xA6E8, Local2)
  6232. }
  6233. }
  6234. }
  6235. Else
  6236. {
  6237. If (LEqual (_T_0, 0x13))
  6238. {
  6239. If (LNotEqual (IDEX, Arg1))
  6240. {
  6241. If (And (Arg2, One))
  6242. {
  6243. SNVS (0x3523, 0x04)
  6244. SNVS (0x1661, One)
  6245. If (LGreater (And (GCAX (One), 0x0FF0, Local0), 0x06F0))
  6246. {
  6247. Store (GMAX (0x2C), Local0)
  6248. And (ShiftRight (Local0, 0x08), 0xFF, Local2)
  6249. And (Local0, 0xFF, Local1)
  6250. Subtract (Local1, Local2, Local3)
  6251. }
  6252. Else
  6253. {
  6254. Store (GMDX (0x0198), Local0)
  6255. And (ShiftRight (Local0, 0x08), 0x1F, Local1)
  6256. Store (GMAX (0x0198), Local0)
  6257. And (ShiftRight (Local0, 0x18), 0x1F, Local3)
  6258. }
  6259. If (And (GMAX (0x17), 0x00800000))
  6260. {
  6261. Store (Arg1, Local2)
  6262. And (Local2, One, Local0)
  6263. ShiftRight (Local2, One, Arg1)
  6264. Add (Arg1, Local3, Arg1)
  6265. }
  6266. Else
  6267. {
  6268. Store (Zero, Local0)
  6269. Add (Arg1, Local3, Arg1)
  6270. }
  6271. Or (Arg1, ShiftLeft (Local0, 0x06), Arg1)
  6272. SNVS (0x8298, Arg1)
  6273. }
  6274. Or (ASB0, 0x02, ASB0)
  6275. }
  6276. }
  6277. Else
  6278. {
  6279. If (LEqual (_T_0, 0x32))
  6280. {
  6281. If (LNotEqual (GNVS (0x53A8), Arg1))
  6282. {
  6283. If (LEqual (Arg1, Zero))
  6284. {
  6285. Or (ASB0, 0x02, ASB0)
  6286. }
  6287. Else
  6288. {
  6289. If (And (Arg2, One))
  6290. {
  6291. ENFG (0x09)
  6292. And (OPT5, 0x1F, Local1)
  6293. Store (0x10, Local3)
  6294. ShiftLeft (Subtract (Local3, Arg1), 0x04, Local2)
  6295. And (Local2, 0xE0, Local2)
  6296. Or (Local1, Local2, OPT5)
  6297. And (CRE4, 0xFD, Local1)
  6298. ShiftLeft (Subtract (Local3, Arg1), One, Local2)
  6299. And (Local2, 0x02, Local2)
  6300. Or (Local1, Local2, CRE4)
  6301. EXFG ()
  6302. }
  6303. }
  6304. If (And (Arg2, One))
  6305. {
  6306. SNVS (0x53A8, Arg1)
  6307. }
  6308. }
  6309. }
  6310. Else
  6311. {
  6312. If (LEqual (_T_0, 0x31))
  6313. {
  6314. If (LNotEqual (GNVS (0x4450), Arg1))
  6315. {
  6316. If (And (Arg2, One))
  6317. {
  6318. SNVS (0x4450, Arg1)
  6319. }
  6320. Or (ASB0, 0x02, ASB0)
  6321. }
  6322. }
  6323. Else
  6324. {
  6325. If (LEqual (_T_0, 0x51))
  6326. {
  6327. If (LNotEqual (GNVS (0x6368), Arg1))
  6328. {
  6329. If (And (Arg2, One))
  6330. {
  6331. SNVS (0x6368, Arg1)
  6332. }
  6333. Or (ASB0, 0x02, ASB0)
  6334. }
  6335. }
  6336. Else
  6337. {
  6338. Store (Zero, ASB0)
  6339. }
  6340. }
  6341. }
  6342. }
  6343. }
  6344. }
  6345. Name (CLKR, Buffer (0x18)
  6346. {
  6347. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  6348. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  6349. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  6350. })
  6351. Name (PCEF, Buffer (0x68)
  6352. {
  6353. /* 0000 */ 0x9F, 0xD8, 0x9F, 0xD8, 0x9C, 0xC5, 0x62, 0xF2,
  6354. /* 0008 */ 0x5B, 0xC2, 0xD2, 0x82, 0x21, 0xF2, 0x9A, 0xC0,
  6355. /* 0010 */ 0x13, 0x8E, 0xDD, 0xDA, 0x1F, 0xEC, 0xDA, 0xC7,
  6356. /* 0018 */ 0xE1, 0xFF, 0x9F, 0xF2, 0x1C, 0xDD, 0x54, 0x9F,
  6357. /* 0020 */ 0x1F, 0xF9, 0xDB, 0xDA, 0xD0, 0x82, 0x5E, 0xF7,
  6358. /* 0028 */ 0x1D, 0xF1, 0x15, 0xB0, 0xDA, 0xDB, 0x98, 0xCC,
  6359. /* 0030 */ 0x16, 0xBD, 0x9C, 0xF2, 0x59, 0xDA, 0x19, 0xDC,
  6360. /* 0038 */ 0xD9, 0xDD, 0x99, 0xDF, 0x5A, 0xEA, 0xD6, 0xC7,
  6361. /* 0040 */ 0xD9, 0xE4, 0x58, 0xDD, 0x9A, 0xF1, 0x57, 0xD7,
  6362. /* 0048 */ 0x15, 0xC6, 0x1A, 0xF7, 0x96, 0xD2, 0xD4, 0xC0,
  6363. /* 0050 */ 0x18, 0xE9, 0x12, 0xB0, 0x52, 0xB1, 0x18, 0xEE,
  6364. /* 0058 */ 0xD3, 0xBD, 0x56, 0xDD, 0x18, 0xF3, 0xCE, 0x8E,
  6365. /* 0060 */ 0x0F, 0x9A, 0xD7, 0xED, 0xD8, 0xF9, 0x15, 0xDC
  6366. })
  6367. Name (MNBF, Buffer (0x070B)
  6368. {
  6369. /* 0000 */ 0x01, 0x64, 0xFC, 0x01, 0x5F, 0xDA, 0x01, 0xA1,
  6370. /* 0008 */ 0xE9, 0x01, 0xE2, 0xF1, 0x01, 0x98, 0xAB, 0x01,
  6371. /* 0010 */ 0x5D, 0xD0, 0x01, 0x5D, 0xD1, 0x01, 0x23, 0xFE,
  6372. /* 0018 */ 0x01, 0x15, 0x99, 0x01, 0x1C, 0xCD, 0x01, 0x5A,
  6373. /* 0020 */ 0xBF, 0x01, 0xA0, 0xEC, 0x01, 0xA2, 0xFC, 0x01,
  6374. /* 0028 */ 0xD3, 0x8D, 0x01, 0x22, 0xFF, 0x01, 0xD8, 0xB4,
  6375. /* 0030 */ 0x01, 0xD3, 0x8F, 0x01, 0x60, 0xF3, 0x01, 0x21,
  6376. /* 0038 */ 0xFC, 0x01, 0xA0, 0xF5, 0x01, 0x57, 0xB1, 0x03,
  6377. /* 0040 */ 0xA7, 0x96, 0x03, 0x7F, 0xF4, 0x03, 0xA1, 0x80,
  6378. /* 0048 */ 0x03, 0xBE, 0xF2, 0x03, 0xB1, 0xC0, 0x03, 0x73,
  6379. /* 0050 */ 0xC9, 0x03, 0xFE, 0xF5, 0x03, 0x35, 0xD3, 0x03,
  6380. /* 0058 */ 0x35, 0xD4, 0x03, 0x3E, 0xF9, 0x03, 0xF4, 0xD1,
  6381. /* 0060 */ 0x03, 0xB1, 0xC6, 0x03, 0x7E, 0xFC, 0x03, 0xE0,
  6382. /* 0068 */ 0x82, 0x03, 0x3A, 0xEE, 0x03, 0x7C, 0xF7, 0x03,
  6383. /* 0070 */ 0xAF, 0xC2, 0x03, 0xBD, 0xFD, 0x03, 0x34, 0xD9,
  6384. /* 0078 */ 0x03, 0x7B, 0xF7, 0x03, 0xEA, 0xB0, 0x03, 0x69,
  6385. /* 0080 */ 0xAD, 0x03, 0xE4, 0x98, 0x03, 0x6F, 0xC8, 0x03,
  6386. /* 0088 */ 0x36, 0xE7, 0x03, 0x77, 0xEC, 0x03, 0xB8, 0xF1,
  6387. /* 0090 */ 0x03, 0xB8, 0xF2, 0x03, 0x2E, 0xC8, 0x03, 0x34,
  6388. /* 0098 */ 0xE3, 0x03, 0x60, 0x8C, 0x03, 0x37, 0xF2, 0x03,
  6389. /* 00A0 */ 0x37, 0xF3, 0x03, 0xB6, 0xEF, 0x03, 0xE5, 0xA4,
  6390. /* 00A8 */ 0x03, 0xB2, 0xDF, 0x03, 0xA8, 0xB3, 0x03, 0x72,
  6391. /* 00B0 */ 0xE1, 0x03, 0x78, 0xFD, 0x03, 0x32, 0xE3, 0x03,
  6392. /* 00B8 */ 0xF0, 0xDA, 0x03, 0xF2, 0xE4, 0x03, 0x6E, 0xD3,
  6393. /* 00C0 */ 0x03, 0x29, 0xBD, 0x03, 0xB7, 0xFE, 0x03, 0x36,
  6394. /* 00C8 */ 0xFC, 0x03, 0xEC, 0xCD, 0x03, 0x9F, 0xF1, 0x03,
  6395. /* 00D0 */ 0xE0, 0x96, 0x03, 0xA3, 0xA5, 0x03, 0xB5, 0xFB,
  6396. /* 00D8 */ 0x03, 0x65, 0xB0, 0x03, 0x71, 0xEA, 0x03, 0xDF,
  6397. /* 00E0 */ 0x94, 0x03, 0x26, 0xB7, 0x03, 0xB3, 0xF6, 0x03,
  6398. /* 00E8 */ 0x74, 0xFC, 0x03, 0x64, 0xAF, 0x03, 0xB0, 0xEA,
  6399. /* 00F0 */ 0x03, 0x71, 0xF0, 0x03, 0xB0, 0xEB, 0x03, 0xAE,
  6400. /* 00F8 */ 0xE2, 0x03, 0x6F, 0xE8, 0x03, 0x31, 0xF3, 0x03,
  6401. /* 0100 */ 0x2A, 0xD1, 0x03, 0xE8, 0xC7, 0x03, 0xAC, 0xDC,
  6402. /* 0108 */ 0x03, 0x23, 0xB0, 0x03, 0xE6, 0xBF, 0x03, 0x2F,
  6403. /* 0110 */ 0xEE, 0x03, 0x25, 0xBC, 0x03, 0x61, 0xA8, 0x03,
  6404. /* 0118 */ 0x5C, 0x8F, 0x02, 0x2D, 0xE7, 0x02, 0x70, 0xF7,
  6405. /* 0120 */ 0x02, 0x71, 0xFD, 0x02, 0x67, 0xCA, 0x02, 0xA0,
  6406. /* 0128 */ 0xA6, 0x02, 0xA2, 0xB1, 0x02, 0x2A, 0xDC, 0x02,
  6407. /* 0130 */ 0x6C, 0xE7, 0x02, 0xEB, 0xE2, 0x02, 0xE5, 0xC3,
  6408. /* 0138 */ 0x02, 0x6B, 0xE4, 0x02, 0x2B, 0xE5, 0x02, 0x23,
  6409. /* 0140 */ 0xBB, 0x02, 0x62, 0xB6, 0x02, 0x2D, 0xF2, 0x02,
  6410. /* 0148 */ 0x2B, 0xE8, 0x02, 0xEB, 0xE8, 0x02, 0xAB, 0xE9,
  6411. /* 0150 */ 0x02, 0x6B, 0xEA, 0x02, 0x2B, 0xEB, 0x02, 0xEB,
  6412. /* 0158 */ 0xEB, 0x02, 0x2C, 0xF2, 0x02, 0x6B, 0xED, 0x02,
  6413. /* 0160 */ 0x2B, 0xEE, 0x02, 0xEB, 0xEE, 0x02, 0xAB, 0xEF,
  6414. /* 0168 */ 0x02, 0x6B, 0xF0, 0x02, 0xDF, 0xAD, 0x02, 0x2D,
  6415. /* 0170 */ 0xFD, 0x02, 0xE2, 0xBF, 0x02, 0x23, 0xC6, 0x02,
  6416. /* 0178 */ 0x2B, 0xF4, 0x02, 0xEB, 0xF4, 0x02, 0x65, 0xD3,
  6417. /* 0180 */ 0x02, 0x6B, 0xF6, 0x02, 0xEC, 0xFC, 0x02, 0x2A,
  6418. /* 0188 */ 0xF2, 0x02, 0xA2, 0xC4, 0x02, 0xA0, 0xB9, 0x02,
  6419. /* 0190 */ 0x62, 0xC6, 0x02, 0xDC, 0xA3, 0x02, 0xA9, 0xF0,
  6420. /* 0198 */ 0x02, 0x9E, 0xB0, 0x02, 0xEB, 0xFD, 0x02, 0xAB,
  6421. /* 01A0 */ 0xFE, 0x02, 0x1F, 0xB8, 0x02, 0xA0, 0xBE, 0x02,
  6422. /* 01A8 */ 0x22, 0xCB, 0x02, 0xA9, 0xF5, 0x02, 0x6A, 0xFC,
  6423. /* 01B0 */ 0x02, 0xE1, 0xC6, 0x02, 0x5F, 0xBB, 0x02, 0x67,
  6424. /* 01B8 */ 0xEC, 0x02, 0x28, 0xF3, 0x02, 0x9B, 0xA4, 0x02,
  6425. /* 01C0 */ 0xD9, 0x98, 0x02, 0x69, 0xFB, 0x02, 0xE5, 0xE2,
  6426. /* 01C8 */ 0x02, 0x64, 0xDD, 0x02, 0x5A, 0xA0, 0x02, 0x5D,
  6427. /* 01D0 */ 0xB3, 0x02, 0xDD, 0xB3, 0x02, 0xD6, 0x88, 0x02,
  6428. /* 01D8 */ 0x1E, 0xBB, 0x02, 0x28, 0xFA, 0x02, 0x9C, 0xAF,
  6429. /* 01E0 */ 0x02, 0x1C, 0xB0, 0x02, 0x21, 0xD0, 0x02, 0xA7,
  6430. /* 01E8 */ 0xF6, 0x02, 0xA5, 0xEA, 0x02, 0xA6, 0xF1, 0x02,
  6431. /* 01F0 */ 0xA7, 0xF8, 0x02, 0xD9, 0x9F, 0x02, 0xA6, 0xF3,
  6432. /* 01F8 */ 0x02, 0xDE, 0xC0, 0x02, 0xA3, 0xE1, 0x02, 0x99,
  6433. /* 0200 */ 0xA1, 0x02, 0x96, 0x8E, 0x02, 0x67, 0xFD, 0x02,
  6434. /* 0208 */ 0x54, 0x82, 0x02, 0x59, 0xA3, 0x02, 0x65, 0xF2,
  6435. /* 0210 */ 0x02, 0x5B, 0xB1, 0x02, 0x24, 0xED, 0x02, 0x19,
  6436. /* 0218 */ 0xA5, 0x02, 0xE0, 0xD3, 0x02, 0x9A, 0xAC, 0x02,
  6437. /* 0220 */ 0x17, 0x99, 0x02, 0xDC, 0xBA, 0x02, 0x5C, 0xBB,
  6438. /* 0228 */ 0x02, 0x96, 0x93, 0x02, 0x24, 0xF2, 0x02, 0xD8,
  6439. /* 0230 */ 0xA1, 0x02, 0x64, 0xF3, 0x02, 0x1F, 0xD2, 0x02,
  6440. /* 0238 */ 0xA4, 0xF4, 0x02, 0x15, 0x8F, 0x02, 0x9A, 0xB1,
  6441. /* 0240 */ 0x02, 0x20, 0xDB, 0x02, 0x1D, 0xC7, 0x02, 0x5F,
  6442. /* 0248 */ 0xD5, 0x02, 0x1D, 0xC8, 0x02, 0x60, 0xDD, 0x02,
  6443. /* 0250 */ 0xE1, 0xE4, 0x02, 0x62, 0xEC, 0x02, 0x1E, 0xD1,
  6444. /* 0258 */ 0x02, 0x9F, 0xD8, 0x02, 0x24, 0xFC, 0x02, 0x9B,
  6445. /* 0260 */ 0xBD, 0x02, 0xD5, 0x93, 0x02, 0x9C, 0xC5, 0x02,
  6446. /* 0268 */ 0xA3, 0xF7, 0x02, 0x9C, 0xC6, 0x02, 0xE3, 0xF8,
  6447. /* 0270 */ 0x02, 0x62, 0xF2, 0x02, 0x5E, 0xD6, 0x02, 0x61,
  6448. /* 0278 */ 0xEC, 0x02, 0x22, 0xF4, 0x02, 0x5B, 0xC2, 0x02,
  6449. /* 0280 */ 0x9A, 0xBB, 0x02, 0x9B, 0xAD, 0x02, 0xA2, 0xF6,
  6450. /* 0288 */ 0x02, 0xD2, 0x82, 0x02, 0x20, 0xE9, 0x02, 0x5F,
  6451. /* 0290 */ 0xE2, 0x02, 0xE2, 0xF8, 0x02, 0x21, 0xF2, 0x02,
  6452. /* 0298 */ 0x60, 0xEB, 0x02, 0x13, 0x8C, 0x02, 0xE1, 0xF3,
  6453. /* 02A0 */ 0x02, 0x9A, 0xC0, 0x02, 0x13, 0x8D, 0x02, 0xA1,
  6454. /* 02A8 */ 0xF5, 0x02, 0xA2, 0xFD, 0x02, 0x13, 0x8E, 0x02,
  6455. /* 02B0 */ 0xDC, 0xD1, 0x02, 0x5E, 0xE1, 0x02, 0x5D, 0xDA,
  6456. /* 02B8 */ 0x02, 0xDD, 0xDA, 0x02, 0xA1, 0xF9, 0x02, 0xA0,
  6457. /* 02C0 */ 0xF2, 0x02, 0x95, 0x9F, 0x02, 0x1F, 0xEC, 0x02,
  6458. /* 02C8 */ 0x97, 0xAF, 0x02, 0x9B, 0xCE, 0x02, 0x18, 0xB8,
  6459. /* 02D0 */ 0x02, 0xDA, 0xC7, 0x02, 0x88, 0x82, 0x02, 0x5F,
  6460. /* 02D8 */ 0xEF, 0x02, 0x91, 0x83, 0x02, 0xE1, 0xFF, 0x02,
  6461. /* 02E0 */ 0x59, 0xC2, 0x02, 0xD4, 0x9B, 0x02, 0xE0, 0xF9,
  6462. /* 02E8 */ 0x02, 0x9F, 0xF2, 0x02, 0x19, 0xC4, 0x02, 0x1C,
  6463. /* 02F0 */ 0xDC, 0x02, 0xDA, 0xCC, 0x02, 0x1C, 0xDB, 0x02,
  6464. /* 02F8 */ 0xD9, 0xC5, 0x02, 0xDF, 0xF5, 0x02, 0x12, 0x8F,
  6465. /* 0300 */ 0x02, 0x54, 0x9F, 0x02, 0x99, 0xC7, 0x02, 0x17,
  6466. /* 0308 */ 0xB8, 0x02, 0x51, 0x88, 0x02, 0x1F, 0xF9, 0x02,
  6467. /* 0310 */ 0x14, 0xA1, 0x02, 0x1E, 0xF2, 0x02, 0x5B, 0xDA,
  6468. /* 0318 */ 0x02, 0xDB, 0xDA, 0x02, 0xD7, 0xBA, 0x02, 0x5F,
  6469. /* 0320 */ 0xFC, 0x02, 0x1A, 0xD4, 0x02, 0xD0, 0x82, 0x02,
  6470. /* 0328 */ 0x9D, 0xED, 0x02, 0xD7, 0xBC, 0x02, 0x9D, 0xEE,
  6471. /* 0330 */ 0x02, 0x5E, 0xF7, 0x02, 0x5C, 0xE7, 0x02, 0x53,
  6472. /* 0338 */ 0x9D, 0x02, 0x11, 0x8D, 0x02, 0x1D, 0xF1, 0x02,
  6473. /* 0340 */ 0x53, 0x9E, 0x02, 0x1A, 0xD9, 0x02, 0x16, 0xB8,
  6474. /* 0348 */ 0x02, 0x15, 0xB0, 0x02, 0xDB, 0xE2, 0x02, 0xD5,
  6475. /* 0350 */ 0xB0, 0x02, 0x1E, 0xFD, 0x02, 0xDA, 0xDB, 0x02,
  6476. /* 0358 */ 0x58, 0xCB, 0x02, 0xD2, 0x98, 0x02, 0x95, 0xB2,
  6477. /* 0360 */ 0x02, 0x98, 0xCC, 0x02, 0x1A, 0xDE, 0x02, 0x1B,
  6478. /* 0368 */ 0xE7, 0x02, 0xD8, 0xCD, 0x02, 0x16, 0xBD, 0x02,
  6479. /* 0370 */ 0x17, 0xC6, 0x02, 0x9C, 0xF1, 0x02, 0x1C, 0xF2,
  6480. /* 0378 */ 0x02, 0x9C, 0xF2, 0x02, 0x1C, 0xF3, 0x02, 0x17,
  6481. /* 0380 */ 0xC8, 0x02, 0x5B, 0xEB, 0x02, 0x59, 0xDA, 0x02,
  6482. /* 0388 */ 0x18, 0xD2, 0x02, 0x50, 0x8C, 0x02, 0x17, 0xCA,
  6483. /* 0390 */ 0x02, 0x19, 0xDC, 0x02, 0x5A, 0xE5, 0x02, 0xDA,
  6484. /* 0398 */ 0xE5, 0x02, 0xD6, 0xC2, 0x02, 0xD9, 0xDD, 0x02,
  6485. /* 03A0 */ 0xD4, 0xB1, 0x02, 0x15, 0xBB, 0x02, 0xD0, 0x8E,
  6486. /* 03A8 */ 0x02, 0x99, 0xDF, 0x02, 0x17, 0xCE, 0x02, 0x94,
  6487. /* 03B0 */ 0xB3, 0x02, 0xDC, 0xFB, 0x02, 0x5A, 0xEA, 0x02,
  6488. /* 03B8 */ 0xDC, 0xFC, 0x02, 0x5C, 0xFD, 0x02, 0x54, 0xB5,
  6489. /* 03C0 */ 0x02, 0xD6, 0xC7, 0x02, 0xD2, 0xA3, 0x02, 0xD8,
  6490. /* 03C8 */ 0xDA, 0x02, 0x93, 0xAD, 0x02, 0xD9, 0xE4, 0x02,
  6491. /* 03D0 */ 0x9B, 0xF7, 0x02, 0x93, 0xAE, 0x02, 0x5A, 0xEF,
  6492. /* 03D8 */ 0x02, 0x58, 0xDD, 0x02, 0x93, 0xAF, 0x02, 0x92,
  6493. /* 03E0 */ 0xA6, 0x02, 0x57, 0xD5, 0x02, 0x9A, 0xF1, 0x02,
  6494. /* 03E8 */ 0xD6, 0xCC, 0x02, 0xDB, 0xFB, 0x02, 0x96, 0xCD,
  6495. /* 03F0 */ 0x02, 0x57, 0xD7, 0x02, 0x56, 0xCE, 0x02, 0x5A,
  6496. /* 03F8 */ 0xF4, 0x02, 0xCE, 0x83, 0x02, 0x15, 0xC6, 0x02,
  6497. /* 0400 */ 0x57, 0xD9, 0x02, 0x9B, 0xFF, 0x02, 0x9A, 0xF6,
  6498. /* 0408 */ 0x02, 0x1A, 0xF7, 0x02, 0x50, 0x98, 0x02, 0x0F,
  6499. /* 0410 */ 0x8F, 0x02, 0xD9, 0xEE, 0x02, 0x96, 0xD2, 0x02,
  6500. /* 0418 */ 0x5A, 0xF9, 0x02, 0x51, 0xA3, 0x02, 0x99, 0xF0,
  6501. /* 0420 */ 0x02, 0xD4, 0xC0, 0x02, 0xD5, 0xCA, 0x02, 0x9A,
  6502. /* 0428 */ 0xFB, 0x02, 0x95, 0xCB, 0x02, 0x18, 0xE9, 0x02,
  6503. /* 0430 */ 0x94, 0xC2, 0x02, 0x5A, 0xFD, 0x02, 0x58, 0xEA,
  6504. /* 0438 */ 0x02, 0x12, 0xB0, 0x02, 0x96, 0xD7, 0x02, 0x98,
  6505. /* 0440 */ 0xEB, 0x02, 0xD9, 0xF5, 0x02, 0x52, 0xB1, 0x02,
  6506. /* 0448 */ 0xD8, 0xEC, 0x02, 0x11, 0xA8, 0x02, 0x99, 0xF7,
  6507. /* 0450 */ 0x02, 0x18, 0xEE, 0x02, 0x97, 0xE4, 0x02, 0x15,
  6508. /* 0458 */ 0xD1, 0x02, 0x59, 0xF9, 0x02, 0xD3, 0xBD, 0x02,
  6509. /* 0460 */ 0x19, 0xFA, 0x02, 0x97, 0xE6, 0x02, 0xD3, 0xBE,
  6510. /* 0468 */ 0x02, 0x56, 0xDD, 0x02, 0x94, 0xC9, 0x02, 0xD3,
  6511. /* 0470 */ 0xBF, 0x02, 0xD0, 0xA1, 0x02, 0x18, 0xF3, 0x02,
  6512. /* 0478 */ 0xD3, 0xC0, 0x02, 0xD1, 0xAC, 0x02, 0x8E, 0x8E,
  6513. /* 0480 */ 0x02, 0xCE, 0x8E, 0x02, 0x95, 0xD6, 0x02, 0x4E,
  6514. /* 0488 */ 0x8F, 0x02, 0x55, 0xD7, 0x02, 0x0F, 0x9A, 0x02,
  6515. /* 0490 */ 0x56, 0xE2, 0x02, 0x58, 0xF7, 0x02, 0xD2, 0xB9,
  6516. /* 0498 */ 0x02, 0xD7, 0xED, 0x02, 0x98, 0xF8, 0x02, 0x97,
  6517. /* 04A0 */ 0xEE, 0x02, 0x12, 0xBB, 0x02, 0xD8, 0xF9, 0x02,
  6518. /* 04A8 */ 0xD7, 0xEF, 0x02, 0x91, 0xB1, 0x02, 0x18, 0xFB,
  6519. /* 04B0 */ 0x02, 0x15, 0xDC, 0x02, 0xD8, 0xFB, 0x02, 0xD7,
  6520. /* 04B8 */ 0xF1, 0x02, 0x92, 0xBD, 0x02, 0x16, 0xE8, 0x02,
  6521. /* 04C0 */ 0x98, 0xFD, 0x02, 0xD6, 0xE8, 0x02, 0xD7, 0xF3,
  6522. /* 04C8 */ 0x02, 0x0D, 0x8A, 0x02, 0x8F, 0x9F, 0x02, 0x14,
  6523. /* 04D0 */ 0xD5, 0x02, 0xD6, 0xEA, 0x02, 0xD4, 0xD5, 0x02,
  6524. /* 04D8 */ 0x50, 0xAB, 0x02, 0x51, 0xB6, 0x02, 0x56, 0xEC,
  6525. /* 04E0 */ 0x02, 0x97, 0xF7, 0x02, 0x55, 0xE2, 0x02, 0x52,
  6526. /* 04E8 */ 0xC2, 0x02, 0xD1, 0xB7, 0x02, 0x17, 0xF9, 0x02,
  6527. /* 04F0 */ 0x90, 0xAD, 0x02, 0x92, 0xC3, 0x02, 0x57, 0xFA,
  6528. /* 04F8 */ 0x02, 0xCC, 0x82, 0x02, 0x17, 0xFB, 0x02, 0xD2,
  6529. /* 0500 */ 0xC4, 0x02, 0x13, 0xD0, 0x02, 0x56, 0xF1, 0x02,
  6530. /* 0508 */ 0xCF, 0xA4, 0x02, 0x16, 0xF2, 0x02, 0x4E, 0x9A,
  6531. /* 0510 */ 0x02, 0xD5, 0xE7, 0x02, 0x13, 0xD2, 0x02, 0x52,
  6532. /* 0518 */ 0xC7, 0x02, 0xD4, 0xDD, 0x02, 0x13, 0xD3, 0x02,
  6533. /* 0520 */ 0xD6, 0xF4, 0x02, 0x50, 0xB2, 0x02, 0x13, 0xD4,
  6534. /* 0528 */ 0x02, 0x94, 0xDF, 0x02, 0x8D, 0x91, 0x02, 0x13,
  6535. /* 0530 */ 0xD5, 0x02, 0x16, 0xF7, 0x02, 0x96, 0xF7, 0x02,
  6536. /* 0538 */ 0x54, 0xE1, 0x02, 0xD1, 0xBF, 0x02, 0x55, 0xED,
  6537. /* 0540 */ 0x02, 0x13, 0xD7, 0x02, 0x15, 0xEE, 0x02, 0x14,
  6538. /* 0548 */ 0xE3, 0x02, 0x8F, 0xAA, 0x02, 0x0D, 0x94, 0x02,
  6539. /* 0550 */ 0x52, 0xCD, 0x02, 0x56, 0xFB, 0x02, 0xD4, 0xE4,
  6540. /* 0558 */ 0x02, 0x16, 0xFC, 0x02, 0x92, 0xCE, 0x02, 0xD6,
  6541. /* 0560 */ 0xFC, 0x02, 0x56, 0xFD, 0x02, 0x15, 0xF2, 0x02,
  6542. /* 0568 */ 0xD2, 0xCF, 0x02, 0x91, 0xC4, 0x02, 0x8D, 0x96,
  6543. /* 0570 */ 0x02, 0x90, 0xB9, 0x02, 0x12, 0xD1, 0x02, 0x55,
  6544. /* 0578 */ 0xF4, 0x02, 0xCC, 0x8B, 0x02, 0x54, 0xE9, 0x02,
  6545. /* 0580 */ 0x8B, 0x80, 0x02, 0x8F, 0xAF, 0x02, 0xCF, 0xAF,
  6546. /* 0588 */ 0x02, 0x0F, 0xB0, 0x02, 0xD5, 0xF6, 0x02, 0x0D,
  6547. /* 0590 */ 0x99, 0x02, 0x95, 0xF7, 0x02, 0x4E, 0xA5, 0x02,
  6548. /* 0598 */ 0x55, 0xF8, 0x02, 0x51, 0xC9, 0x02, 0x53, 0xE1,
  6549. /* 05A0 */ 0x02, 0x4E, 0xA6, 0x02, 0x50, 0xBE, 0x02, 0x53,
  6550. /* 05A8 */ 0xE2, 0x02, 0x94, 0xEE, 0x02, 0x4D, 0x9B, 0x02,
  6551. /* 05B0 */ 0x53, 0xE3, 0x02, 0xCB, 0x83, 0x02, 0x14, 0xF0,
  6552. /* 05B8 */ 0x02, 0x53, 0xE4, 0x02, 0x90, 0xC0, 0x02, 0x15,
  6553. /* 05C0 */ 0xFD, 0x02, 0x53, 0xE5, 0x02, 0xD5, 0xFD, 0x02,
  6554. /* 05C8 */ 0x14, 0xF2, 0x02, 0x11, 0xCE, 0x02, 0xCD, 0x9D,
  6555. /* 05D0 */ 0x02, 0xD2, 0xDA, 0x02, 0x53, 0xE7, 0x02, 0x4C,
  6556. /* 05D8 */ 0x92, 0x02, 0x4B, 0x86, 0x02, 0x12, 0xDC, 0x02,
  6557. /* 05E0 */ 0xD4, 0xF4, 0x02, 0x54, 0xF5, 0x02, 0x94, 0xF5,
  6558. /* 05E8 */ 0x02, 0x52, 0xDD, 0x02, 0x51, 0xD1, 0x02, 0x4D,
  6559. /* 05F0 */ 0xA0, 0x02, 0x90, 0xC5, 0x02, 0x54, 0xF7, 0x02,
  6560. /* 05F8 */ 0x53, 0xEB, 0x02, 0xD1, 0xD2, 0x02, 0x54, 0xF8,
  6561. /* 0600 */ 0x02, 0xCB, 0x88, 0x02, 0x14, 0xF9, 0x02, 0x0F,
  6562. /* 0608 */ 0xBB, 0x02, 0xD0, 0xC7, 0x02, 0x14, 0xFA, 0x02,
  6563. /* 0610 */ 0xCD, 0xA2, 0x02, 0xD4, 0xFA, 0x02, 0xCE, 0xAF,
  6564. /* 0618 */ 0x02, 0x0E, 0xB0, 0x02, 0x4E, 0xB0, 0x02, 0x8E,
  6565. /* 0620 */ 0xB0, 0x02, 0x94, 0xFC, 0x02, 0x50, 0xCA, 0x02,
  6566. /* 0628 */ 0x4B, 0x8B, 0x02, 0x91, 0xD7, 0x02, 0x92, 0xE4,
  6567. /* 0630 */ 0x02, 0x4D, 0xA5, 0x02, 0xCC, 0x98, 0x02, 0x14,
  6568. /* 0638 */ 0xFF, 0x02, 0xD2, 0xE5, 0x02, 0x90, 0xCC, 0x02,
  6569. /* 0640 */ 0x0F, 0xC0, 0x02, 0x93, 0xF3, 0x02, 0x12, 0xE7,
  6570. /* 0648 */ 0x02, 0xCF, 0xC0, 0x02, 0x93, 0xF4, 0x02, 0xCB,
  6571. /* 0650 */ 0x8D, 0x02, 0x52, 0xE8, 0x02, 0x93, 0xF5, 0x02,
  6572. /* 0658 */ 0x10, 0xCF, 0x02, 0x51, 0xDC, 0x02, 0x93, 0xF6,
  6573. /* 0660 */ 0x02, 0xD3, 0xF6, 0x02, 0x53, 0xF7, 0x02, 0x4A,
  6574. /* 0668 */ 0x82, 0x02, 0xD2, 0xEA, 0x02, 0x11, 0xDE, 0x02,
  6575. /* 0670 */ 0x50, 0xD1, 0x02, 0x4D, 0xAA, 0x02, 0x0A, 0x83,
  6576. /* 0678 */ 0x02, 0x93, 0xF9, 0x02, 0x8B, 0x90, 0x02, 0x13,
  6577. /* 0680 */ 0xFA, 0x02, 0x4D, 0xAB, 0x02, 0x0F, 0xC6, 0x02,
  6578. /* 0688 */ 0x13, 0xFB, 0x02, 0xD0, 0xD3, 0x02, 0xCF, 0xC6,
  6579. /* 0690 */ 0x02, 0x13, 0xFC, 0x02, 0xD1, 0xE1, 0x02, 0xD0,
  6580. /* 0698 */ 0xD4, 0x02, 0x13, 0xFD, 0x02, 0xCE, 0xBA, 0x02,
  6581. /* 06A0 */ 0x0E, 0xBB, 0x02, 0x13, 0xFE, 0x02, 0xCF, 0xC8,
  6582. /* 06A8 */ 0x02, 0x8B, 0x93, 0x02, 0x51, 0xE4, 0x02, 0x12,
  6583. /* 06B0 */ 0xF2, 0x02, 0x0D, 0xAF, 0x02, 0x92, 0xF2, 0x02,
  6584. /* 06B8 */ 0x91, 0xE5, 0x02, 0x52, 0xF3, 0x02, 0x90, 0xD8,
  6585. /* 06C0 */ 0x02, 0xD2, 0xF3, 0x02, 0x91, 0xE6, 0x02, 0x92,
  6586. /* 06C8 */ 0xF4, 0x02, 0x90, 0xD9, 0x02, 0x12, 0xF5, 0x02,
  6587. /* 06D0 */ 0x0B, 0x96, 0x02, 0x8D, 0xB1, 0x02, 0x4B, 0x96,
  6588. /* 06D8 */ 0x02, 0x4C, 0xA4, 0x02, 0x11, 0xE9, 0x02, 0x0E,
  6589. /* 06E0 */ 0xC0, 0x02, 0x4E, 0xC0, 0x02, 0x4F, 0xCE, 0x02,
  6590. /* 06E8 */ 0xCA, 0x89, 0x02, 0x91, 0xEA, 0x02, 0x92, 0xF8,
  6591. /* 06F0 */ 0x02, 0x50, 0xDD, 0x02, 0x51, 0xEB, 0x02, 0x8B,
  6592. /* 06F8 */ 0x98, 0x02, 0xD2, 0xF9, 0x02, 0xCB, 0x98, 0x02,
  6593. /* 0700 */ 0xCF, 0xD0, 0x02, 0x0D, 0xB5, 0x02, 0x4F, 0xD1,
  6594. /* 0708 */ 0x02, 0x90, 0xDF
  6595. })
  6596. }
  6597. Scope (_SB.PCI0.SBRG.ASOC)
  6598. {
  6599. Name (G4T0, Package (0x04)
  6600. {
  6601. 0x04070010,
  6602. "CPU Q-FAN Control",
  6603. 0x80000000,
  6604. Zero
  6605. })
  6606. Name (G4T1, Package (0x08)
  6607. {
  6608. 0x04080011,
  6609. "CPU Q-FAN Profile",
  6610. 0x00100001,
  6611. Zero,
  6612. 0x03,
  6613. "Optimal",
  6614. "Silent",
  6615. "Performance"
  6616. })
  6617. Name (G420, Package (0x04)
  6618. {
  6619. 0x04070070,
  6620. "Chassis Q-FAN Control",
  6621. 0x80000000,
  6622. Zero
  6623. })
  6624. Name (G421, Package (0x0A)
  6625. {
  6626. 0x04080071,
  6627. "Chassis FAN Ratio",
  6628. 0x00700001,
  6629. Zero,
  6630. 0x05,
  6631. "Auto",
  6632. "90%",
  6633. "80%",
  6634. "70%",
  6635. "60%"
  6636. })
  6637. Name (GRP4, Package (0x04)
  6638. {
  6639. G4T0,
  6640. G4T1,
  6641. G420,
  6642. G421
  6643. })
  6644. Method (GIT4, 1, NotSerialized)
  6645. {
  6646. Name (_T_0, Zero)
  6647. Store (And (Arg0, 0xFFFF), _T_0)
  6648. If (LEqual (_T_0, 0x10))
  6649. {
  6650. Store (GNVS (0x16AD), ASB1)
  6651. }
  6652. Else
  6653. {
  6654. If (LEqual (_T_0, 0x11))
  6655. {
  6656. Store (GNVS (0x2572), ASB1)
  6657. }
  6658. Else
  6659. {
  6660. If (LEqual (_T_0, 0x70))
  6661. {
  6662. Store (GNVS (0x16B2), ASB1)
  6663. }
  6664. Else
  6665. {
  6666. If (LEqual (_T_0, 0x71))
  6667. {
  6668. Store (GNVS (0x3513), ASB1)
  6669. }
  6670. Else
  6671. {
  6672. Store (Zero, ASB0)
  6673. }
  6674. }
  6675. }
  6676. }
  6677. }
  6678. Method (SIT4, 3, NotSerialized)
  6679. {
  6680. Name (_T_0, Zero)
  6681. Store (And (Arg0, 0xFFFF), _T_0)
  6682. If (LEqual (_T_0, 0x10))
  6683. {
  6684. If (LNotEqual (GNVS (0x16AD), Arg1))
  6685. {
  6686. If (And (Arg2, One))
  6687. {
  6688. SNVS (0x16AD, Arg1)
  6689. }
  6690. Or (ASB0, 0x02, ASB0)
  6691. }
  6692. }
  6693. Else
  6694. {
  6695. If (LEqual (_T_0, 0x11))
  6696. {
  6697. If (LNotEqual (GNVS (0x2572), Arg1))
  6698. {
  6699. If (And (Arg2, One))
  6700. {
  6701. SNVS (0x2572, Arg1)
  6702. }
  6703. Or (ASB0, 0x02, ASB0)
  6704. }
  6705. }
  6706. Else
  6707. {
  6708. If (LEqual (_T_0, 0x70))
  6709. {
  6710. If (LNotEqual (GNVS (0x16B2), Arg1))
  6711. {
  6712. If (And (Arg2, One))
  6713. {
  6714. SNVS (0x16B2, Arg1)
  6715. }
  6716. Or (ASB0, 0x02, ASB0)
  6717. }
  6718. }
  6719. Else
  6720. {
  6721. If (LEqual (_T_0, 0x71))
  6722. {
  6723. If (LNotEqual (GNVS (0x3513), Arg1))
  6724. {
  6725. If (And (Arg2, One))
  6726. {
  6727. SNVS (0x3513, Arg1)
  6728. }
  6729. Or (ASB0, 0x02, ASB0)
  6730. }
  6731. }
  6732. Else
  6733. {
  6734. Store (Zero, ASB0)
  6735. }
  6736. }
  6737. }
  6738. }
  6739. }
  6740. }
  6741. Scope (_SB.PCI0.SBRG.ASOC)
  6742. {
  6743. Name (G5T0, Package (0x07)
  6744. {
  6745. 0x05080000,
  6746. "AI Profile",
  6747. Zero,
  6748. Zero,
  6749. 0x02,
  6750. "Auto",
  6751. Zero
  6752. })
  6753. Name (GRP5, Package (0x01)
  6754. {
  6755. G5T0
  6756. })
  6757. Method (GIT5, 1, NotSerialized)
  6758. {
  6759. Name (_T_0, Zero)
  6760. Store (And (Arg0, 0xFFFF), _T_0)
  6761. If (LEqual (_T_0, Zero))
  6762. {
  6763. Store (One, ASB1)
  6764. }
  6765. Else
  6766. {
  6767. Store (Zero, ASB0)
  6768. }
  6769. }
  6770. Method (SIT5, 3, NotSerialized)
  6771. {
  6772. Name (_T_0, Zero)
  6773. Store (And (Arg0, 0xFFFF), _T_0)
  6774. If (LEqual (_T_0, Zero))
  6775. {
  6776. Store (0x03, ASB0)
  6777. }
  6778. Else
  6779. {
  6780. Store (Zero, ASB0)
  6781. }
  6782. }
  6783. }
  6784. Scope (_SB.PCI0.SBRG.ASOC)
  6785. {
  6786. Name (G6T1, Package (0x07)
  6787. {
  6788. 0x06020011,
  6789. "Vcore Voltage",
  6790. 0x20000000,
  6791. Zero,
  6792. 0x0352,
  6793. 0x02EE,
  6794. 0x02
  6795. })
  6796. Name (G6T2, Package (0x07)
  6797. {
  6798. 0x06030012,
  6799. "CPU Temperature",
  6800. 0x20000000,
  6801. Zero,
  6802. 0x0258,
  6803. 0x015E,
  6804. 0x02
  6805. })
  6806. Name (G6T3, Package (0x07)
  6807. {
  6808. 0x06040013,
  6809. "CPU FAN Speed",
  6810. 0x20000000,
  6811. Zero,
  6812. 0x0320,
  6813. 0x1900,
  6814. 0x02
  6815. })
  6816. Name (G6T4, Package (0x07)
  6817. {
  6818. 0x06040073,
  6819. "Chassis FAN Speed",
  6820. 0x20000000,
  6821. Zero,
  6822. 0x0320,
  6823. 0x1900,
  6824. 0x02
  6825. })
  6826. Name (G6T5, Package (0x07)
  6827. {
  6828. 0x060400C3,
  6829. "Power FAN Speed",
  6830. 0x20000000,
  6831. Zero,
  6832. 0x0320,
  6833. 0x1900,
  6834. 0x02
  6835. })
  6836. Name (G6T6, Package (0x07)
  6837. {
  6838. 0x06020061,
  6839. "+12V Voltage",
  6840. 0x20000000,
  6841. 0x2EE0,
  6842. 0x27D8,
  6843. 0x0E10,
  6844. 0x02
  6845. })
  6846. Name (G6T7, Package (0x07)
  6847. {
  6848. 0x06020062,
  6849. "+5V Voltage",
  6850. 0x20000000,
  6851. 0x1388,
  6852. 0x1194,
  6853. 0x03E8,
  6854. 0x02
  6855. })
  6856. Name (G6T8, Package (0x07)
  6857. {
  6858. 0x06020063,
  6859. "+3.3V Voltage",
  6860. 0x20000000,
  6861. 0x0CE4,
  6862. 0x0B9A,
  6863. 0x0294,
  6864. 0x02
  6865. })
  6866. Name (G6T9, Package (0x07)
  6867. {
  6868. 0x06030074,
  6869. "MB Temperature",
  6870. 0x20000000,
  6871. Zero,
  6872. 0x01C2,
  6873. 0x01F4,
  6874. 0x02
  6875. })
  6876. Name (GRP6, Package (0x09)
  6877. {
  6878. G6T1,
  6879. G6T2,
  6880. G6T3,
  6881. G6T4,
  6882. G6T5,
  6883. G6T6,
  6884. G6T7,
  6885. G6T8,
  6886. G6T9
  6887. })
  6888. Method (GIT6, 1, NotSerialized)
  6889. {
  6890. Name (_T_0, Zero)
  6891. Store (And (Arg0, 0xFFFF), _T_0)
  6892. If (LEqual (_T_0, 0x11))
  6893. {
  6894. Store (0x0600, ASB1)
  6895. }
  6896. Else
  6897. {
  6898. If (LEqual (_T_0, 0x12))
  6899. {
  6900. Store (0x0601, ASB1)
  6901. }
  6902. Else
  6903. {
  6904. If (LEqual (_T_0, 0x13))
  6905. {
  6906. Store (0x0602, ASB1)
  6907. }
  6908. Else
  6909. {
  6910. If (LEqual (_T_0, 0x73))
  6911. {
  6912. Store (0x0603, ASB1)
  6913. }
  6914. Else
  6915. {
  6916. If (LEqual (_T_0, 0xC3))
  6917. {
  6918. Store (0x0604, ASB1)
  6919. }
  6920. Else
  6921. {
  6922. If (LEqual (_T_0, 0x61))
  6923. {
  6924. Store (0x0605, ASB1)
  6925. }
  6926. Else
  6927. {
  6928. If (LEqual (_T_0, 0x62))
  6929. {
  6930. Store (0x0606, ASB1)
  6931. }
  6932. Else
  6933. {
  6934. If (LEqual (_T_0, 0x63))
  6935. {
  6936. Store (0x0607, ASB1)
  6937. }
  6938. Else
  6939. {
  6940. If (LEqual (_T_0, 0x74))
  6941. {
  6942. Store (0x0608, ASB1)
  6943. }
  6944. Else
  6945. {
  6946. Store (Zero, ASB0)
  6947. }
  6948. }
  6949. }
  6950. }
  6951. }
  6952. }
  6953. }
  6954. }
  6955. }
  6956. }
  6957. Method (SIT6, 3, NotSerialized)
  6958. {
  6959. Name (_T_0, Zero)
  6960. Store (And (Arg0, 0xFFFF), _T_0)
  6961. If (LEqual (_T_0, 0x11))
  6962. {
  6963. Store (0x0600, DBG8)
  6964. }
  6965. Else
  6966. {
  6967. If (LEqual (_T_0, 0x12))
  6968. {
  6969. Store (0x0601, DBG8)
  6970. }
  6971. Else
  6972. {
  6973. If (LEqual (_T_0, 0x13))
  6974. {
  6975. Store (0x0602, DBG8)
  6976. }
  6977. Else
  6978. {
  6979. If (LEqual (_T_0, 0x73))
  6980. {
  6981. Store (0x0603, DBG8)
  6982. }
  6983. Else
  6984. {
  6985. If (LEqual (_T_0, 0xC3))
  6986. {
  6987. Store (0x0604, DBG8)
  6988. }
  6989. Else
  6990. {
  6991. If (LEqual (_T_0, 0x61))
  6992. {
  6993. Store (0x0605, DBG8)
  6994. }
  6995. Else
  6996. {
  6997. If (LEqual (_T_0, 0x62))
  6998. {
  6999. Store (0x0606, DBG8)
  7000. }
  7001. Else
  7002. {
  7003. If (LEqual (_T_0, 0x63))
  7004. {
  7005. Store (0x0607, DBG8)
  7006. }
  7007. Else
  7008. {
  7009. If (LEqual (_T_0, 0x74))
  7010. {
  7011. Store (0x0608, DBG8)
  7012. }
  7013. Else
  7014. {
  7015. Store (Zero, ASB0)
  7016. }
  7017. }
  7018. }
  7019. }
  7020. }
  7021. }
  7022. }
  7023. }
  7024. }
  7025. }
  7026. }
  7027. Scope (_SB.PCI0.SBRG.ASOC)
  7028. {
  7029. Name (G8T1, Package (0x09)
  7030. {
  7031. 0x08080001,
  7032. "N.O.S. Sensitivity",
  7033. Zero,
  7034. Zero,
  7035. 0x04,
  7036. "Auto",
  7037. "Standard",
  7038. "Sensitive",
  7039. "Heavy Load"
  7040. })
  7041. Name (G8T2, Package (0x0B)
  7042. {
  7043. 0x08080002,
  7044. "N.O.S. Profile",
  7045. Zero,
  7046. One,
  7047. 0x06,
  7048. "103%",
  7049. "105%",
  7050. "110%",
  7051. "115%",
  7052. "120%",
  7053. "130%"
  7054. })
  7055. Name (GRP8, Package (0x02)
  7056. {
  7057. G8T1,
  7058. G8T2
  7059. })
  7060. Method (GIT8, 1, NotSerialized)
  7061. {
  7062. Name (_T_0, Zero)
  7063. Store (And (Arg0, 0xFFFF), _T_0)
  7064. If (LEqual (_T_0, One))
  7065. {
  7066. Store (GNVS (0x2570), ASB1)
  7067. }
  7068. Else
  7069. {
  7070. If (LEqual (_T_0, 0x02))
  7071. {
  7072. Store (GNVS (0x3510), ASB1)
  7073. }
  7074. Else
  7075. {
  7076. Store (Zero, ASB0)
  7077. }
  7078. }
  7079. }
  7080. Method (SIT8, 3, NotSerialized)
  7081. {
  7082. Name (_T_0, Zero)
  7083. Store (And (Arg0, 0xFFFF), _T_0)
  7084. If (LEqual (_T_0, One))
  7085. {
  7086. If (LNotEqual (GNVS (0x2570), Arg1))
  7087. {
  7088. If (And (Arg2, One))
  7089. {
  7090. SNVS (0x2570, Arg1)
  7091. }
  7092. Or (ASB0, 0x02, ASB0)
  7093. }
  7094. }
  7095. Else
  7096. {
  7097. If (LEqual (_T_0, 0x02))
  7098. {
  7099. If (LNotEqual (GNVS (0x3510), Arg1))
  7100. {
  7101. If (And (Arg2, One))
  7102. {
  7103. SNVS (0x3510, Arg1)
  7104. }
  7105. Or (ASB0, 0x02, ASB0)
  7106. }
  7107. }
  7108. Else
  7109. {
  7110. Store (Zero, ASB0)
  7111. }
  7112. }
  7113. }
  7114. }
  7115. Scope (_SB.PCI0.SBRG.ASOC)
  7116. {
  7117. Name (G9T0, Package (0x0B)
  7118. {
  7119. 0x09080000,
  7120. "AI Overclocking",
  7121. Zero,
  7122. One,
  7123. 0x06,
  7124. "Manual",
  7125. "Auto",
  7126. "Standard",
  7127. Zero,
  7128. "N.O.S.",
  7129. Zero
  7130. })
  7131. Name (GRP9, Package (0x01)
  7132. {
  7133. G9T0
  7134. })
  7135. Method (GIT9, 1, NotSerialized)
  7136. {
  7137. Name (_T_0, Zero)
  7138. Store (And (Arg0, 0xFFFF), _T_0)
  7139. If (LEqual (_T_0, Zero))
  7140. {
  7141. Store (GNVS (0x34F3), ASB1)
  7142. }
  7143. Else
  7144. {
  7145. Store (Zero, ASB0)
  7146. }
  7147. }
  7148. Method (SIT9, 3, NotSerialized)
  7149. {
  7150. Name (_T_0, Zero)
  7151. Store (And (Arg0, 0xFFFF), _T_0)
  7152. If (LEqual (_T_0, Zero))
  7153. {
  7154. If (LNotEqual (GNVS (0x34F3), Arg1))
  7155. {
  7156. If (And (Arg2, One))
  7157. {
  7158. SNVS (0x34F3, Arg1)
  7159. }
  7160. Or (ASB0, 0x02, ASB0)
  7161. }
  7162. }
  7163. Else
  7164. {
  7165. Store (Zero, ASB0)
  7166. }
  7167. }
  7168. }
  7169. Scope (_SB.PCI0.SBRG.ASOC)
  7170. {
  7171. Name (GBT0, Package (0x07)
  7172. {
  7173. 0x0B060001,
  7174. "System Performance",
  7175. 0x00400000,
  7176. Zero,
  7177. 0x03,
  7178. One,
  7179. 0x04
  7180. })
  7181. Name (GBT1, Package (0x07)
  7182. {
  7183. 0x0B060003,
  7184. "System GUI",
  7185. One,
  7186. Zero,
  7187. Zero,
  7188. Zero,
  7189. Zero
  7190. })
  7191. Name (GRPB, Package (0x02)
  7192. {
  7193. GBT0,
  7194. GBT1
  7195. })
  7196. Name (VEAL, Zero)
  7197. Method (GITB, 1, NotSerialized)
  7198. {
  7199. Name (_T_0, Zero)
  7200. Store (And (Arg0, 0xFFFF), _T_0)
  7201. If (LEqual (_T_0, 0x03))
  7202. {
  7203. Store (One, ASB1)
  7204. }
  7205. Else
  7206. {
  7207. Store (VEAL, ASB1)
  7208. }
  7209. }
  7210. Method (SITB, 3, NotSerialized)
  7211. {
  7212. If (LEqual (And (Arg2, 0xFFFF), One))
  7213. {
  7214. And (Arg1, 0xFFFF, VEAL)
  7215. Store (VEAL, ASB1)
  7216. Store (VEAL, PAR0)
  7217. ISMI (0x88)
  7218. }
  7219. If (LEqual (And (Arg2, 0xFFFF), Zero))
  7220. {
  7221. If (LEqual (VEAL, Zero))
  7222. {
  7223. Store (VEAL, PAR0)
  7224. ISMI (0x88)
  7225. }
  7226. }
  7227. }
  7228. }
  7229. Scope (_SB.PCI0.SBRG.ASOC)
  7230. {
  7231. Name (GDT1, Package (0x07)
  7232. {
  7233. 0x0D070001,
  7234. "RTC Alarm",
  7235. One,
  7236. Zero,
  7237. Zero,
  7238. One,
  7239. 0x02
  7240. })
  7241. Name (GDT2, Package (0x07)
  7242. {
  7243. 0x0D060002,
  7244. "Alarm Date",
  7245. Zero,
  7246. Zero,
  7247. Zero,
  7248. One,
  7249. 0x20
  7250. })
  7251. Name (GDT3, Package (0x07)
  7252. {
  7253. 0x0D060003,
  7254. "Alarm Hour",
  7255. Zero,
  7256. Zero,
  7257. Zero,
  7258. One,
  7259. 0x18
  7260. })
  7261. Name (GDT4, Package (0x07)
  7262. {
  7263. 0x0D060004,
  7264. "Alarm Minute",
  7265. Zero,
  7266. Zero,
  7267. Zero,
  7268. One,
  7269. 0x3C
  7270. })
  7271. Name (GDT5, Package (0x07)
  7272. {
  7273. 0x0D060005,
  7274. "Alarm Second",
  7275. Zero,
  7276. Zero,
  7277. Zero,
  7278. One,
  7279. 0x3C
  7280. })
  7281. Name (GRPD, Package (0x05)
  7282. {
  7283. GDT1,
  7284. GDT2,
  7285. GDT3,
  7286. GDT4,
  7287. GDT5
  7288. })
  7289. Method (GITD, 1, NotSerialized)
  7290. {
  7291. Name (_T_0, Zero)
  7292. Store (And (Arg0, 0xFFFF), _T_0)
  7293. If (LEqual (_T_0, One))
  7294. {
  7295. Store (GNVS (0x16A5), ASB1)
  7296. }
  7297. Else
  7298. {
  7299. If (LEqual (_T_0, 0x02))
  7300. {
  7301. Store (GNVS (0x5398), ASB1)
  7302. }
  7303. Else
  7304. {
  7305. If (LEqual (_T_0, 0x03))
  7306. {
  7307. Store (GNVS (0x53A0), ASB1)
  7308. }
  7309. Else
  7310. {
  7311. If (LEqual (_T_0, 0x04))
  7312. {
  7313. Store (GNVS (0x6358), ASB1)
  7314. }
  7315. Else
  7316. {
  7317. If (LEqual (_T_0, 0x05))
  7318. {
  7319. Store (GNVS (0x6360), ASB1)
  7320. }
  7321. Else
  7322. {
  7323. Store (Zero, ASB0)
  7324. }
  7325. }
  7326. }
  7327. }
  7328. }
  7329. }
  7330. Method (SITD, 3, NotSerialized)
  7331. {
  7332. Name (_T_0, Zero)
  7333. Store (And (Arg0, 0xFFFF), _T_0)
  7334. If (LEqual (_T_0, One))
  7335. {
  7336. SNVS (0x16A5, Arg1)
  7337. Store (0x03, ASB0)
  7338. }
  7339. Else
  7340. {
  7341. If (LEqual (_T_0, 0x02))
  7342. {
  7343. SNVS (0x5398, Arg1)
  7344. Store (0x03, ASB0)
  7345. }
  7346. Else
  7347. {
  7348. If (LEqual (_T_0, 0x03))
  7349. {
  7350. SNVS (0x53A0, Arg1)
  7351. Store (0x03, ASB0)
  7352. }
  7353. Else
  7354. {
  7355. If (LEqual (_T_0, 0x04))
  7356. {
  7357. SNVS (0x6358, Arg1)
  7358. Store (0x03, ASB0)
  7359. }
  7360. Else
  7361. {
  7362. If (LEqual (_T_0, 0x05))
  7363. {
  7364. SNVS (0x6360, Arg1)
  7365. Store (0x03, ASB0)
  7366. }
  7367. Else
  7368. {
  7369. Store (Zero, ASB0)
  7370. }
  7371. }
  7372. }
  7373. }
  7374. }
  7375. }
  7376. }
  7377. OperationRegion (_SB.PCI0.SBRG.PIX0, PCI_Config, 0x60, 0x0C)
  7378. Field (\_SB.PCI0.SBRG.PIX0, ByteAcc, NoLock, Preserve)
  7379. {
  7380. PIRA, 8,
  7381. PIRB, 8,
  7382. PIRC, 8,
  7383. PIRD, 8,
  7384. Offset (0x08),
  7385. PIRE, 8,
  7386. PIRF, 8,
  7387. PIRG, 8,
  7388. PIRH, 8
  7389. }
  7390. Scope (_SB)
  7391. {
  7392. Name (BUFA, ResourceTemplate ()
  7393. {
  7394. IRQ (Level, ActiveLow, Shared, )
  7395. {15}
  7396. })
  7397. CreateWordField (BUFA, One, IRA0)
  7398. Device (LNKA)
  7399. {
  7400. Name (_HID, EisaId ("PNP0C0F"))
  7401. Name (_UID, One)
  7402. Method (_STA, 0, NotSerialized)
  7403. {
  7404. And (PIRA, 0x80, Local0)
  7405. If (Local0)
  7406. {
  7407. Return (0x09)
  7408. }
  7409. Else
  7410. {
  7411. Return (0x0B)
  7412. }
  7413. }
  7414. Method (_PRS, 0, NotSerialized)
  7415. {
  7416. Return (PRSA)
  7417. }
  7418. Method (_DIS, 0, NotSerialized)
  7419. {
  7420. Or (PIRA, 0x80, PIRA)
  7421. }
  7422. Method (_CRS, 0, NotSerialized)
  7423. {
  7424. And (PIRA, 0x0F, Local0)
  7425. ShiftLeft (One, Local0, IRA0)
  7426. Return (BUFA)
  7427. }
  7428. Method (_SRS, 1, NotSerialized)
  7429. {
  7430. CreateWordField (Arg0, One, IRA)
  7431. FindSetRightBit (IRA, Local0)
  7432. Decrement (Local0)
  7433. Store (Local0, PIRA)
  7434. }
  7435. }
  7436. Device (LNKB)
  7437. {
  7438. Name (_HID, EisaId ("PNP0C0F"))
  7439. Name (_UID, 0x02)
  7440. Method (_STA, 0, NotSerialized)
  7441. {
  7442. And (PIRB, 0x80, Local0)
  7443. If (Local0)
  7444. {
  7445. Return (0x09)
  7446. }
  7447. Else
  7448. {
  7449. Return (0x0B)
  7450. }
  7451. }
  7452. Method (_PRS, 0, NotSerialized)
  7453. {
  7454. Return (PRSB)
  7455. }
  7456. Method (_DIS, 0, NotSerialized)
  7457. {
  7458. Or (PIRB, 0x80, PIRB)
  7459. }
  7460. Method (_CRS, 0, NotSerialized)
  7461. {
  7462. And (PIRB, 0x0F, Local0)
  7463. ShiftLeft (One, Local0, IRA0)
  7464. Return (BUFA)
  7465. }
  7466. Method (_SRS, 1, NotSerialized)
  7467. {
  7468. CreateWordField (Arg0, One, IRA)
  7469. FindSetRightBit (IRA, Local0)
  7470. Decrement (Local0)
  7471. Store (Local0, PIRB)
  7472. }
  7473. }
  7474. Device (LNKC)
  7475. {
  7476. Name (_HID, EisaId ("PNP0C0F"))
  7477. Name (_UID, 0x03)
  7478. Method (_STA, 0, NotSerialized)
  7479. {
  7480. And (PIRC, 0x80, Local0)
  7481. If (Local0)
  7482. {
  7483. Return (0x09)
  7484. }
  7485. Else
  7486. {
  7487. Return (0x0B)
  7488. }
  7489. }
  7490. Method (_PRS, 0, NotSerialized)
  7491. {
  7492. Return (PRSC)
  7493. }
  7494. Method (_DIS, 0, NotSerialized)
  7495. {
  7496. Or (PIRC, 0x80, PIRC)
  7497. }
  7498. Method (_CRS, 0, NotSerialized)
  7499. {
  7500. And (PIRC, 0x0F, Local0)
  7501. ShiftLeft (One, Local0, IRA0)
  7502. Return (BUFA)
  7503. }
  7504. Method (_SRS, 1, NotSerialized)
  7505. {
  7506. CreateWordField (Arg0, One, IRA)
  7507. FindSetRightBit (IRA, Local0)
  7508. Decrement (Local0)
  7509. Store (Local0, PIRC)
  7510. }
  7511. }
  7512. Device (LNKD)
  7513. {
  7514. Name (_HID, EisaId ("PNP0C0F"))
  7515. Name (_UID, 0x04)
  7516. Method (_STA, 0, NotSerialized)
  7517. {
  7518. And (PIRD, 0x80, Local0)
  7519. If (Local0)
  7520. {
  7521. Return (0x09)
  7522. }
  7523. Else
  7524. {
  7525. Return (0x0B)
  7526. }
  7527. }
  7528. Method (_PRS, 0, NotSerialized)
  7529. {
  7530. Return (PRSD)
  7531. }
  7532. Method (_DIS, 0, NotSerialized)
  7533. {
  7534. Or (PIRD, 0x80, PIRD)
  7535. }
  7536. Method (_CRS, 0, NotSerialized)
  7537. {
  7538. And (PIRD, 0x0F, Local0)
  7539. ShiftLeft (One, Local0, IRA0)
  7540. Return (BUFA)
  7541. }
  7542. Method (_SRS, 1, NotSerialized)
  7543. {
  7544. CreateWordField (Arg0, One, IRA)
  7545. FindSetRightBit (IRA, Local0)
  7546. Decrement (Local0)
  7547. Store (Local0, PIRD)
  7548. }
  7549. }
  7550. Device (LNKE)
  7551. {
  7552. Name (_HID, EisaId ("PNP0C0F"))
  7553. Name (_UID, 0x05)
  7554. Method (_STA, 0, NotSerialized)
  7555. {
  7556. And (PIRE, 0x80, Local0)
  7557. If (Local0)
  7558. {
  7559. Return (0x09)
  7560. }
  7561. Else
  7562. {
  7563. Return (0x0B)
  7564. }
  7565. }
  7566. Method (_PRS, 0, NotSerialized)
  7567. {
  7568. Return (PRSE)
  7569. }
  7570. Method (_DIS, 0, NotSerialized)
  7571. {
  7572. Or (PIRE, 0x80, PIRE)
  7573. }
  7574. Method (_CRS, 0, NotSerialized)
  7575. {
  7576. And (PIRE, 0x0F, Local0)
  7577. ShiftLeft (One, Local0, IRA0)
  7578. Return (BUFA)
  7579. }
  7580. Method (_SRS, 1, NotSerialized)
  7581. {
  7582. CreateWordField (Arg0, One, IRA)
  7583. FindSetRightBit (IRA, Local0)
  7584. Decrement (Local0)
  7585. Store (Local0, PIRE)
  7586. }
  7587. }
  7588. Device (LNKF)
  7589. {
  7590. Name (_HID, EisaId ("PNP0C0F"))
  7591. Name (_UID, 0x06)
  7592. Method (_STA, 0, NotSerialized)
  7593. {
  7594. And (PIRF, 0x80, Local0)
  7595. If (Local0)
  7596. {
  7597. Return (0x09)
  7598. }
  7599. Else
  7600. {
  7601. Return (0x0B)
  7602. }
  7603. }
  7604. Method (_PRS, 0, NotSerialized)
  7605. {
  7606. Return (PRSF)
  7607. }
  7608. Method (_DIS, 0, NotSerialized)
  7609. {
  7610. Or (PIRF, 0x80, PIRF)
  7611. }
  7612. Method (_CRS, 0, NotSerialized)
  7613. {
  7614. And (PIRF, 0x0F, Local0)
  7615. ShiftLeft (One, Local0, IRA0)
  7616. Return (BUFA)
  7617. }
  7618. Method (_SRS, 1, NotSerialized)
  7619. {
  7620. CreateWordField (Arg0, One, IRA)
  7621. FindSetRightBit (IRA, Local0)
  7622. Decrement (Local0)
  7623. Store (Local0, PIRF)
  7624. }
  7625. }
  7626. Device (LNKG)
  7627. {
  7628. Name (_HID, EisaId ("PNP0C0F"))
  7629. Name (_UID, 0x07)
  7630. Method (_STA, 0, NotSerialized)
  7631. {
  7632. And (PIRG, 0x80, Local0)
  7633. If (Local0)
  7634. {
  7635. Return (0x09)
  7636. }
  7637. Else
  7638. {
  7639. Return (0x0B)
  7640. }
  7641. }
  7642. Method (_PRS, 0, NotSerialized)
  7643. {
  7644. Return (PRSG)
  7645. }
  7646. Method (_DIS, 0, NotSerialized)
  7647. {
  7648. Or (PIRG, 0x80, PIRG)
  7649. }
  7650. Method (_CRS, 0, NotSerialized)
  7651. {
  7652. And (PIRG, 0x0F, Local0)
  7653. ShiftLeft (One, Local0, IRA0)
  7654. Return (BUFA)
  7655. }
  7656. Method (_SRS, 1, NotSerialized)
  7657. {
  7658. CreateWordField (Arg0, One, IRA)
  7659. FindSetRightBit (IRA, Local0)
  7660. Decrement (Local0)
  7661. Store (Local0, PIRG)
  7662. }
  7663. }
  7664. Device (LNKH)
  7665. {
  7666. Name (_HID, EisaId ("PNP0C0F"))
  7667. Name (_UID, 0x08)
  7668. Method (_STA, 0, NotSerialized)
  7669. {
  7670. And (PIRH, 0x80, Local0)
  7671. If (Local0)
  7672. {
  7673. Return (0x09)
  7674. }
  7675. Else
  7676. {
  7677. Return (0x0B)
  7678. }
  7679. }
  7680. Method (_PRS, 0, NotSerialized)
  7681. {
  7682. Return (PRSH)
  7683. }
  7684. Method (_DIS, 0, NotSerialized)
  7685. {
  7686. Or (PIRH, 0x80, PIRH)
  7687. }
  7688. Method (_CRS, 0, NotSerialized)
  7689. {
  7690. And (PIRH, 0x0F, Local0)
  7691. ShiftLeft (One, Local0, IRA0)
  7692. Return (BUFA)
  7693. }
  7694. Method (_SRS, 1, NotSerialized)
  7695. {
  7696. CreateWordField (Arg0, One, IRA)
  7697. FindSetRightBit (IRA, Local0)
  7698. Decrement (Local0)
  7699. Store (Local0, PIRH)
  7700. }
  7701. }
  7702. }
  7703. Scope (_SB)
  7704. {
  7705. Name (XCPD, Zero)
  7706. Name (XNPT, One)
  7707. Name (XCAP, 0x02)
  7708. Name (XDCP, 0x04)
  7709. Name (XDCT, 0x08)
  7710. Name (XDST, 0x0A)
  7711. Name (XLCP, 0x0C)
  7712. Name (XLCT, 0x10)
  7713. Name (XLST, 0x12)
  7714. Name (XSCP, 0x14)
  7715. Name (XSCT, 0x18)
  7716. Name (XSST, 0x1A)
  7717. Name (XRCT, 0x1C)
  7718. Mutex (MUTE, 0x00)
  7719. Method (RBPE, 1, NotSerialized)
  7720. {
  7721. Acquire (MUTE, 0x03E8)
  7722. Add (Arg0, PCIB, Local0)
  7723. OperationRegion (PCFG, SystemMemory, Local0, One)
  7724. Field (PCFG, ByteAcc, NoLock, Preserve)
  7725. {
  7726. XCFG, 8
  7727. }
  7728. Release (MUTE)
  7729. Return (XCFG)
  7730. }
  7731. Method (RWPE, 1, NotSerialized)
  7732. {
  7733. Acquire (MUTE, 0x03E8)
  7734. And (Arg0, 0xFFFFFFFE, Arg0)
  7735. Add (Arg0, PCIB, Local0)
  7736. OperationRegion (PCFG, SystemMemory, Local0, 0x02)
  7737. Field (PCFG, WordAcc, NoLock, Preserve)
  7738. {
  7739. XCFG, 16
  7740. }
  7741. Release (MUTE)
  7742. Return (XCFG)
  7743. }
  7744. Method (RDPE, 1, NotSerialized)
  7745. {
  7746. Acquire (MUTE, 0x03E8)
  7747. And (Arg0, 0xFFFFFFFC, Arg0)
  7748. Add (Arg0, PCIB, Local0)
  7749. OperationRegion (PCFG, SystemMemory, Local0, 0x04)
  7750. Field (PCFG, DWordAcc, NoLock, Preserve)
  7751. {
  7752. XCFG, 32
  7753. }
  7754. Release (MUTE)
  7755. Return (XCFG)
  7756. }
  7757. Method (WBPE, 2, NotSerialized)
  7758. {
  7759. Acquire (MUTE, 0x0FFF)
  7760. Add (Arg0, PCIB, Local0)
  7761. OperationRegion (PCFG, SystemMemory, Local0, One)
  7762. Field (PCFG, ByteAcc, NoLock, Preserve)
  7763. {
  7764. XCFG, 8
  7765. }
  7766. Store (Arg1, XCFG)
  7767. Release (MUTE)
  7768. }
  7769. Method (WWPE, 2, NotSerialized)
  7770. {
  7771. Acquire (MUTE, 0x03E8)
  7772. And (Arg0, 0xFFFFFFFE, Arg0)
  7773. Add (Arg0, PCIB, Local0)
  7774. OperationRegion (PCFG, SystemMemory, Local0, 0x02)
  7775. Field (PCFG, WordAcc, NoLock, Preserve)
  7776. {
  7777. XCFG, 16
  7778. }
  7779. Store (Arg1, XCFG)
  7780. Release (MUTE)
  7781. }
  7782. Method (WDPE, 2, NotSerialized)
  7783. {
  7784. Acquire (MUTE, 0x03E8)
  7785. And (Arg0, 0xFFFFFFFC, Arg0)
  7786. Add (Arg0, PCIB, Local0)
  7787. OperationRegion (PCFG, SystemMemory, Local0, 0x04)
  7788. Field (PCFG, DWordAcc, NoLock, Preserve)
  7789. {
  7790. XCFG, 32
  7791. }
  7792. Store (Arg1, XCFG)
  7793. Release (MUTE)
  7794. }
  7795. Method (RWDP, 3, NotSerialized)
  7796. {
  7797. Acquire (MUTE, 0x03E8)
  7798. And (Arg0, 0xFFFFFFFC, Arg0)
  7799. Add (Arg0, PCIB, Local0)
  7800. OperationRegion (PCFG, SystemMemory, Local0, 0x04)
  7801. Field (PCFG, DWordAcc, NoLock, Preserve)
  7802. {
  7803. XCFG, 32
  7804. }
  7805. And (XCFG, Arg2, Local1)
  7806. Or (Local1, Arg1, XCFG)
  7807. Release (MUTE)
  7808. }
  7809. Method (RPME, 1, NotSerialized)
  7810. {
  7811. Add (Arg0, 0x84, Local0)
  7812. Store (RDPE (Local0), Local1)
  7813. If (LEqual (Local1, Ones))
  7814. {
  7815. Return (Zero)
  7816. }
  7817. Else
  7818. {
  7819. If (LAnd (Local1, 0x00010000))
  7820. {
  7821. WDPE (Local0, And (Local1, 0x00010000))
  7822. Return (One)
  7823. }
  7824. Return (Zero)
  7825. }
  7826. }
  7827. }
  7828. OperationRegion (SMRG, SystemIO, 0x0400, 0x10)
  7829. Field (SMRG, ByteAcc, NoLock, Preserve)
  7830. {
  7831. HSTS, 8,
  7832. SSTS, 8,
  7833. HSTC, 8,
  7834. HCMD, 8,
  7835. HADR, 8,
  7836. HDT0, 8,
  7837. HDT1, 8,
  7838. BLKD, 8
  7839. }
  7840. Field (SMRG, ByteAcc, NoLock, Preserve)
  7841. {
  7842. Offset (0x05),
  7843. HDTW, 16
  7844. }
  7845. Method (SCMD, 4, Serialized)
  7846. {
  7847. Store (0x05, Local0)
  7848. While (Decrement (Local0))
  7849. {
  7850. Store (0xFFFF, Local1)
  7851. While (LAnd (HSTS, Decrement (Local1)))
  7852. {
  7853. Store (0xFE, HSTS)
  7854. Stall (0x0A)
  7855. }
  7856. Store (HSTC, Local2)
  7857. Store (Arg0, HADR)
  7858. Store (Arg1, HCMD)
  7859. Store (Arg2, HDTW)
  7860. Store (Arg3, HSTC)
  7861. Store (0xFFFF, Local1)
  7862. While (Decrement (Local1))
  7863. {
  7864. If (And (HSTS, 0x0C))
  7865. {
  7866. Store (One, Local1)
  7867. }
  7868. If (LEqual (And (HSTS, 0x03), 0x02))
  7869. {
  7870. Return (HDTW)
  7871. }
  7872. Stall (0x0A)
  7873. }
  7874. Store (0x42, HSTC)
  7875. Store (0xFFFF, Local1)
  7876. While (Decrement (Local1))
  7877. {
  7878. If (And (HSTS, 0x10))
  7879. {
  7880. Store (One, Local1)
  7881. }
  7882. Stall (0x0A)
  7883. }
  7884. Store (Zero, HSTC)
  7885. }
  7886. Return (Ones)
  7887. }
  7888. Method (SBYT, 2, NotSerialized)
  7889. {
  7890. SCMD (Arg0, Arg1, Zero, 0x44)
  7891. }
  7892. Method (WBYT, 3, NotSerialized)
  7893. {
  7894. SCMD (Arg0, Arg1, Arg2, 0x48)
  7895. }
  7896. Method (WWRD, 3, NotSerialized)
  7897. {
  7898. SCMD (Arg0, Arg1, Arg2, 0x4C)
  7899. }
  7900. Method (RSBT, 2, NotSerialized)
  7901. {
  7902. Or (Arg0, One, Arg0)
  7903. Return (And (SCMD (Arg0, Arg1, Zero, 0x44), 0xFF))
  7904. }
  7905. Method (RBYT, 2, NotSerialized)
  7906. {
  7907. Or (Arg0, One, Arg0)
  7908. Return (And (SCMD (Arg0, Arg1, Zero, 0x48), 0xFF))
  7909. }
  7910. Method (RWRD, 2, NotSerialized)
  7911. {
  7912. Or (Arg0, One, Arg0)
  7913. Return (SCMD (Arg0, Arg1, Zero, 0x4C))
  7914. }
  7915. Method (RBLK, 3, NotSerialized)
  7916. {
  7917. Or (Arg0, One, Local0)
  7918. SCMD (Local0, Arg1, Arg2, 0x54)
  7919. Store (HSTC, Local0)
  7920. Store (HDT0, Local0)
  7921. Add (Local0, One, Local7)
  7922. Name (RBUF, Buffer (Local7) {})
  7923. Store (Zero, Local1)
  7924. While (Local0)
  7925. {
  7926. Store (BLKD, Index (RBUF, Local1))
  7927. Decrement (Local0)
  7928. Increment (Local1)
  7929. }
  7930. Return (RBUF)
  7931. }
  7932. Method (WBLK, 4, NotSerialized)
  7933. {
  7934. Store (HSTC, Local0)
  7935. Store (Zero, Local0)
  7936. While (LLessEqual (Local0, Arg2))
  7937. {
  7938. Store (DerefOf (Index (Arg3, Local0)), BLKD)
  7939. Increment (Local0)
  7940. }
  7941. And (Arg0, 0xFE, Local0)
  7942. SCMD (Local0, Arg1, Arg2, 0x54)
  7943. }
  7944. Scope (_SB.PCI0.SBRG.SIOR)
  7945. {
  7946. Method (HWV0, 0, NotSerialized)
  7947. {
  7948. Return (Multiply (VCOR, 0x08))
  7949. }
  7950. Method (HWV1, 0, NotSerialized)
  7951. {
  7952. Return (Multiply (V12V, 0x08))
  7953. }
  7954. Method (HWV3, 0, NotSerialized)
  7955. {
  7956. Return (Multiply (V33V, 0x08))
  7957. }
  7958. Method (HWV5, 0, NotSerialized)
  7959. {
  7960. Return (Multiply (V50V, 0x08))
  7961. }
  7962. Method (HWT0, 0, NotSerialized)
  7963. {
  7964. Store (MBTE, Local1)
  7965. Multiply (Local1, 0x0A, Local1)
  7966. Return (Local1)
  7967. }
  7968. Method (HWT1, 0, NotSerialized)
  7969. {
  7970. Store (One, BSEL)
  7971. Store (TSR1, Local1)
  7972. Multiply (Local1, 0x0A, Local1)
  7973. Store (TSR2, Local2)
  7974. Multiply (Local2, 0x05, Local2)
  7975. Add (Local1, Local2, Local1)
  7976. Return (Local1)
  7977. }
  7978. Method (HWT2, 0, NotSerialized)
  7979. {
  7980. Store (0x02, BSEL)
  7981. Store (TSR1, Local1)
  7982. Multiply (Local1, 0x0A, Local1)
  7983. Store (TSR2, Local2)
  7984. Multiply (Local2, 0x05, Local2)
  7985. Add (Local1, Local2, Local1)
  7986. Return (Local1)
  7987. }
  7988. OperationRegion (DBGE, SystemIO, 0x80, 0x04)
  7989. Field (DBGE, WordAcc, NoLock, Preserve)
  7990. {
  7991. DBGG, 22
  7992. }
  7993. Method (HWF0, 0, NotSerialized)
  7994. {
  7995. Store (FAN1, Local0)
  7996. Store (Zero, BSEL)
  7997. And (FD21, 0x20, Local1)
  7998. ShiftRight (Local1, 0x05, Local1)
  7999. Multiply (Local1, 0x04, Local1)
  8000. And (FDR1, 0x30, Local2)
  8001. ShiftRight (Local2, 0x04, Local2)
  8002. Add (Local1, Local2, Local1)
  8003. If (LOr (LGreater (Local1, 0x05), LLess (Local1, 0x02)))
  8004. {
  8005. If (LGreater (Local0, 0xF0))
  8006. {
  8007. Store (0x02, Local1)
  8008. }
  8009. Else
  8010. {
  8011. If (LLess (Local0, 0x1E))
  8012. {
  8013. Store (0x05, Local1)
  8014. }
  8015. Else
  8016. {
  8017. Store (0x03, Local1)
  8018. }
  8019. }
  8020. Divide (Local1, 0x04, Local2, Local3)
  8021. ShiftLeft (Local3, 0x05, Local3)
  8022. Store (FD21, Local4)
  8023. And (Local4, 0xDF, Local4)
  8024. Or (Local3, Local4, FD21)
  8025. Store (FDR1, Local4)
  8026. And (Local4, 0xCF, Local4)
  8027. ShiftLeft (Local2, 0x04, Local2)
  8028. Or (Local4, One, Local4)
  8029. Or (Local4, Local2, FDR1)
  8030. }
  8031. While (LOr (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)), LAnd (
  8032. LLess (Local0, 0x1E), LGreater (Local1, 0x02))))
  8033. {
  8034. If (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)))
  8035. {
  8036. Add (Local1, One, Local1)
  8037. Divide (Local1, 0x04, Local2, Local3)
  8038. Store (Zero, BSEL)
  8039. ShiftLeft (Local3, 0x05, Local3)
  8040. Store (FD21, Local4)
  8041. And (Local4, 0xDF, Local4)
  8042. Or (Local3, Local4, FD21)
  8043. Store (FDR1, Local4)
  8044. And (Local4, 0xCF, Local4)
  8045. ShiftLeft (Local2, 0x04, Local2)
  8046. Or (Local4, One, Local4)
  8047. Or (Local4, Local2, FDR1)
  8048. Sleep (0x32)
  8049. Store (FAN1, Local0)
  8050. Sleep (0x32)
  8051. Store (FAN1, Local0)
  8052. Sleep (0x32)
  8053. Store (FAN1, Local0)
  8054. }
  8055. Else
  8056. {
  8057. Subtract (Local1, One, Local1)
  8058. Divide (Local1, 0x04, Local2, Local3)
  8059. Store (Zero, BSEL)
  8060. ShiftLeft (Local3, 0x05, Local3)
  8061. Store (FD21, Local4)
  8062. And (Local4, 0xDF, Local4)
  8063. Or (Local3, Local4, FD21)
  8064. Store (FDR1, Local4)
  8065. And (Local4, 0xCF, Local4)
  8066. ShiftLeft (Local2, 0x04, Local2)
  8067. Or (Local4, One, Local4)
  8068. Or (Local4, Local2, FDR1)
  8069. Sleep (0x32)
  8070. Store (FAN1, Local0)
  8071. Sleep (0x32)
  8072. Store (FAN1, Local0)
  8073. Sleep (0x32)
  8074. Store (FAN1, Local0)
  8075. }
  8076. }
  8077. If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x05)))
  8078. {
  8079. Return (Zero)
  8080. }
  8081. If (LAnd (LEqual (Local0, Zero), LEqual (Local1, 0x02)))
  8082. {
  8083. Return (0xFFFF)
  8084. }
  8085. Store (One, Local2)
  8086. While (Local1)
  8087. {
  8088. Multiply (Local2, 0x02, Local2)
  8089. Decrement (Local1)
  8090. }
  8091. Multiply (Local0, Local2, Local0)
  8092. Divide (0x00149970, Local0, Local1, Local0)
  8093. Return (Local0)
  8094. }
  8095. Method (HWF1, 0, NotSerialized)
  8096. {
  8097. Store (Zero, BSEL)
  8098. Store (FAN2, Local0)
  8099. And (FD21, 0x40, Local1)
  8100. ShiftRight (Local1, 0x06, Local1)
  8101. Multiply (Local1, 0x04, Local1)
  8102. And (FDR1, 0xC0, Local2)
  8103. ShiftRight (Local2, 0x06, Local2)
  8104. Add (Local1, Local2, Local1)
  8105. If (LOr (LGreater (Local1, 0x05), LLess (Local1, 0x02)))
  8106. {
  8107. If (LGreater (Local0, 0xF0))
  8108. {
  8109. Store (0x02, Local1)
  8110. }
  8111. Else
  8112. {
  8113. If (LLess (Local0, 0x1E))
  8114. {
  8115. Store (0x05, Local1)
  8116. }
  8117. Else
  8118. {
  8119. Store (0x03, Local1)
  8120. }
  8121. }
  8122. Divide (Local1, 0x04, Local2, Local3)
  8123. ShiftLeft (Local3, 0x06, Local3)
  8124. Store (FD21, Local4)
  8125. And (Local4, 0xBF, Local4)
  8126. Or (Local3, Local4, FD21)
  8127. Store (FDR1, Local4)
  8128. And (Local4, 0x3F, Local4)
  8129. ShiftLeft (Local2, 0x06, Local2)
  8130. Or (Local4, One, Local4)
  8131. Or (Local4, Local2, FDR1)
  8132. }
  8133. While (LOr (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)), LAnd (
  8134. LLess (Local0, 0x1E), LGreater (Local1, 0x02))))
  8135. {
  8136. If (LAnd (LLess (Local0, 0x1E), LGreater (Local1, 0x02)))
  8137. {
  8138. Subtract (Local1, One, Local1)
  8139. Divide (Local1, 0x04, Local2, Local3)
  8140. Store (Zero, BSEL)
  8141. ShiftLeft (Local3, 0x06, Local3)
  8142. Store (FD21, Local4)
  8143. And (Local4, 0xBF, Local4)
  8144. Or (Local3, Local4, FD21)
  8145. Store (FDR1, Local4)
  8146. And (Local4, 0x3F, Local4)
  8147. ShiftLeft (Local2, 0x06, Local2)
  8148. Or (Local4, One, Local4)
  8149. Or (Local4, Local2, FDR1)
  8150. Sleep (0x32)
  8151. Store (Zero, BSEL)
  8152. Store (FAN2, Local0)
  8153. Sleep (0x32)
  8154. Store (FAN2, Local0)
  8155. Sleep (0x32)
  8156. Store (FAN2, Local0)
  8157. }
  8158. Else
  8159. {
  8160. Add (Local1, One, Local1)
  8161. Divide (Local1, 0x04, Local2, Local3)
  8162. Store (Zero, BSEL)
  8163. ShiftLeft (Local3, 0x06, Local3)
  8164. Store (FD21, Local4)
  8165. And (Local4, 0xBF, Local4)
  8166. Or (Local3, Local4, FD21)
  8167. Store (FDR1, Local4)
  8168. And (Local4, 0x3F, Local4)
  8169. ShiftLeft (Local2, 0x06, Local2)
  8170. Or (Local4, One, Local4)
  8171. Or (Local4, Local2, FDR1)
  8172. Sleep (0x32)
  8173. Store (Zero, BSEL)
  8174. Store (FAN2, Local0)
  8175. Sleep (0x32)
  8176. Store (FAN2, Local0)
  8177. Sleep (0x32)
  8178. Store (FAN2, Local0)
  8179. }
  8180. }
  8181. If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x05)))
  8182. {
  8183. Return (Zero)
  8184. }
  8185. If (LAnd (LEqual (Local0, Zero), LEqual (Local1, 0x02)))
  8186. {
  8187. Return (0xFFFF)
  8188. }
  8189. Store (One, Local2)
  8190. While (Local1)
  8191. {
  8192. Multiply (Local2, 0x02, Local2)
  8193. Decrement (Local1)
  8194. }
  8195. Multiply (Local0, Local2, Local0)
  8196. Divide (0x00149970, Local0, Local1, Local0)
  8197. Return (Local0)
  8198. }
  8199. Method (HWF2, 0, NotSerialized)
  8200. {
  8201. Store (FAN3, Local0)
  8202. Store (Zero, BSEL)
  8203. And (FD21, 0x80, Local1)
  8204. ShiftRight (Local1, 0x07, Local1)
  8205. Multiply (Local1, 0x04, Local1)
  8206. Divide (FD13, 0x40, Local2, Local3)
  8207. Add (Local1, Local3, Local1)
  8208. If (LOr (LGreater (Local1, 0x05), LLess (Local1, 0x02)))
  8209. {
  8210. If (LGreater (Local0, 0xF0))
  8211. {
  8212. Store (0x02, Local1)
  8213. }
  8214. Else
  8215. {
  8216. If (LLess (Local0, 0x1E))
  8217. {
  8218. Store (0x05, Local1)
  8219. }
  8220. Else
  8221. {
  8222. Store (0x03, Local1)
  8223. }
  8224. }
  8225. Divide (Local1, 0x04, Local2, Local3)
  8226. ShiftLeft (Local3, 0x07, Local3)
  8227. Store (FD21, Local4)
  8228. And (Local4, 0x7F, Local4)
  8229. Or (Local3, Local4, FD21)
  8230. Store (FD13, Local3)
  8231. And (Local3, 0x3F, Local3)
  8232. Multiply (Local2, 0x40, Local2)
  8233. Add (Local3, Local2, Local2)
  8234. Store (Local2, FD13)
  8235. }
  8236. While (LOr (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)), LAnd (
  8237. LLess (Local0, 0x1E), LGreater (Local1, 0x02))))
  8238. {
  8239. If (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)))
  8240. {
  8241. If (LEqual (Local0, 0xFF))
  8242. {
  8243. Store (0x05, Local1)
  8244. }
  8245. Else
  8246. {
  8247. Add (Local1, One, Local1)
  8248. }
  8249. Divide (Local1, 0x04, Local2, Local3)
  8250. Store (Zero, BSEL)
  8251. ShiftLeft (Local3, 0x07, Local3)
  8252. Store (FD21, Local4)
  8253. And (Local4, 0x7F, Local4)
  8254. Or (Local3, Local4, FD21)
  8255. Store (FD13, Local3)
  8256. And (Local3, 0x3F, Local3)
  8257. Multiply (Local2, 0x40, Local2)
  8258. Add (Local3, Local2, Local2)
  8259. Store (Local2, FD13)
  8260. If (LNotEqual (Local0, 0xFF))
  8261. {
  8262. Sleep (0x32)
  8263. }
  8264. Store (FAN3, Local0)
  8265. Sleep (0x32)
  8266. Store (FAN3, Local0)
  8267. Sleep (0x32)
  8268. Store (FAN3, Local0)
  8269. }
  8270. Else
  8271. {
  8272. Subtract (Local1, One, Local1)
  8273. Divide (Local1, 0x04, Local2, Local3)
  8274. Store (Zero, BSEL)
  8275. ShiftLeft (Local3, 0x07, Local3)
  8276. Store (FD21, Local4)
  8277. And (Local4, 0x7F, Local4)
  8278. Or (Local3, Local4, FD21)
  8279. Store (FD13, Local3)
  8280. And (Local3, 0x3F, Local3)
  8281. Multiply (Local2, 0x40, Local2)
  8282. Add (Local3, Local2, Local2)
  8283. Store (Local2, FD13)
  8284. Sleep (0x32)
  8285. Store (FAN3, Local0)
  8286. Sleep (0x32)
  8287. Store (FAN3, Local0)
  8288. Sleep (0x32)
  8289. Store (FAN3, Local0)
  8290. }
  8291. }
  8292. If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x05)))
  8293. {
  8294. Return (Zero)
  8295. }
  8296. If (LAnd (LEqual (Local0, Zero), LEqual (Local1, 0x02)))
  8297. {
  8298. Return (0xFFFF)
  8299. }
  8300. Store (One, Local2)
  8301. While (Local1)
  8302. {
  8303. Multiply (Local2, 0x02, Local2)
  8304. Decrement (Local1)
  8305. }
  8306. Multiply (Local0, Local2, Local0)
  8307. Divide (0x00149970, Local0, Local1, Local0)
  8308. Return (Local0)
  8309. }
  8310. Method (HWF4, 0, NotSerialized)
  8311. {
  8312. Store (0x05, BSEL)
  8313. Store (FAN4, Local0)
  8314. Store (Zero, BSEL)
  8315. And (FND4, 0x80, Local1)
  8316. ShiftRight (Local1, 0x08, Local1)
  8317. Multiply (Local1, 0x04, Local1)
  8318. And (FND4, 0x0C, Local2)
  8319. ShiftRight (Local2, 0x02, Local2)
  8320. Add (Local1, Local2, Local1)
  8321. If (LOr (LGreater (Local1, 0x05), LLess (Local1, 0x02)))
  8322. {
  8323. If (LGreater (Local0, 0xF0))
  8324. {
  8325. Store (0x02, Local1)
  8326. }
  8327. Else
  8328. {
  8329. If (LLess (Local0, 0x1E))
  8330. {
  8331. Store (0x05, Local1)
  8332. }
  8333. Else
  8334. {
  8335. Store (0x03, Local1)
  8336. }
  8337. }
  8338. Divide (Local1, 0x04, Local2, Local3)
  8339. ShiftLeft (Local3, 0x08, Local3)
  8340. ShiftLeft (Local2, 0x02, Local2)
  8341. Store (FND4, Local4)
  8342. And (Local4, 0x73, Local4)
  8343. Or (Local3, Local2, Local3)
  8344. Or (Local3, Local4, FND4)
  8345. }
  8346. While (LOr (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)), LAnd (
  8347. LLess (Local0, 0x1E), LGreater (Local1, 0x02))))
  8348. {
  8349. If (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)))
  8350. {
  8351. Add (Local1, One, Local1)
  8352. Divide (Local1, 0x04, Local2, Local3)
  8353. Store (Zero, BSEL)
  8354. ShiftLeft (Local3, 0x08, Local3)
  8355. ShiftLeft (Local2, 0x02, Local2)
  8356. Store (FND4, Local4)
  8357. And (Local4, 0x73, Local4)
  8358. Or (Local3, Local2, Local3)
  8359. Or (Local3, Local4, FND4)
  8360. If (LNotEqual (Local0, 0xFF))
  8361. {
  8362. Sleep (0x32)
  8363. }
  8364. Store (0x05, BSEL)
  8365. Store (FAN4, Local0)
  8366. Sleep (0x32)
  8367. Store (FAN4, Local0)
  8368. Sleep (0x32)
  8369. Store (FAN4, Local0)
  8370. Store (Zero, BSEL)
  8371. }
  8372. Else
  8373. {
  8374. Subtract (Local1, One, Local1)
  8375. Divide (Local1, 0x04, Local2, Local3)
  8376. Store (Zero, BSEL)
  8377. ShiftLeft (Local3, 0x08, Local3)
  8378. ShiftLeft (Local2, 0x02, Local2)
  8379. Store (FND4, Local4)
  8380. And (Local4, 0x73, Local4)
  8381. Or (Local3, Local2, Local3)
  8382. Or (Local3, Local4, FND4)
  8383. Sleep (0x32)
  8384. Store (0x05, BSEL)
  8385. Store (FAN4, Local0)
  8386. Sleep (0x32)
  8387. Store (FAN4, Local0)
  8388. Sleep (0x32)
  8389. Store (FAN4, Local0)
  8390. Store (Zero, BSEL)
  8391. }
  8392. }
  8393. If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x05)))
  8394. {
  8395. Return (Zero)
  8396. }
  8397. If (LAnd (LEqual (Local0, Zero), LEqual (Local1, 0x02)))
  8398. {
  8399. Return (0xFFFF)
  8400. }
  8401. Store (One, Local2)
  8402. While (Local1)
  8403. {
  8404. Multiply (Local2, 0x02, Local2)
  8405. Decrement (Local1)
  8406. }
  8407. Multiply (Local0, Local2, Local0)
  8408. Divide (0x00149970, Local0, Local1, Local0)
  8409. Return (Local0)
  8410. }
  8411. Name (FNDT, Package (0x08)
  8412. {
  8413. One,
  8414. 0x02,
  8415. 0x04,
  8416. 0x08,
  8417. 0x10,
  8418. 0x20,
  8419. 0x40,
  8420. 0x80
  8421. })
  8422. Method (HWF3, 0, NotSerialized)
  8423. {
  8424. Store (Zero, BSEL)
  8425. Store (CFN3, Local0)
  8426. And (FD15, 0x80, Local1)
  8427. ShiftRight (Local1, 0x05, Local1)
  8428. And (FND4, 0x03, Local2)
  8429. Or (Local1, Local2, Local1)
  8430. If (LOr (LGreater (Local1, 0x05), LLess (Local1, 0x02)))
  8431. {
  8432. If (LGreater (Local0, 0xF0))
  8433. {
  8434. Store (0x02, Local1)
  8435. }
  8436. Else
  8437. {
  8438. If (LLess (Local0, 0x1E))
  8439. {
  8440. Store (0x05, Local1)
  8441. }
  8442. Else
  8443. {
  8444. Store (0x03, Local1)
  8445. }
  8446. }
  8447. ShiftLeft (Local1, 0x05, Local2)
  8448. And (Local2, 0x80, Local2)
  8449. And (FD15, 0x7F, Local3)
  8450. Or (Local2, Local3, Local3)
  8451. Store (Local3, FD15)
  8452. And (Local1, 0x03, Local2)
  8453. And (FND4, 0xFC, Local3)
  8454. Or (Local2, Local3, Local3)
  8455. Store (Local3, FND4)
  8456. }
  8457. While (LOr (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)), LAnd (
  8458. LLess (Local0, 0x1E), LGreater (Local1, 0x02))))
  8459. {
  8460. If (LAnd (LGreater (Local0, 0xF0), LLess (Local1, 0x05)))
  8461. {
  8462. Increment (Local1)
  8463. }
  8464. Else
  8465. {
  8466. Decrement (Local1)
  8467. }
  8468. ShiftLeft (Local1, 0x05, Local2)
  8469. And (Local2, 0x80, Local2)
  8470. And (FD15, 0x7F, Local3)
  8471. Or (Local2, Local3, Local3)
  8472. Store (Local3, FD15)
  8473. And (Local1, 0x03, Local2)
  8474. And (FND4, 0xFC, Local3)
  8475. Or (Local2, Local3, Local3)
  8476. Store (Local3, FND4)
  8477. Sleep (0x32)
  8478. Store (CFN3, Local0)
  8479. Sleep (0x32)
  8480. Store (CFN3, Local0)
  8481. Sleep (0x32)
  8482. Store (CFN3, Local0)
  8483. }
  8484. If (LAnd (LEqual (Local0, 0xFF), LEqual (Local1, 0x05)))
  8485. {
  8486. Return (Zero)
  8487. }
  8488. If (LAnd (LEqual (Local0, Zero), LEqual (Local1, 0x02)))
  8489. {
  8490. Return (0xFFFF)
  8491. }
  8492. Store (DerefOf (Index (FNDT, Local1)), Local2)
  8493. Multiply (Local0, Local2, Local0)
  8494. Divide (0x00149970, Local0, Local1, Local0)
  8495. Return (Local0)
  8496. }
  8497. OperationRegion (HWRE, SystemIO, IOHW, 0x0A)
  8498. Field (HWRE, ByteAcc, NoLock, Preserve)
  8499. {
  8500. Offset (0x05),
  8501. HIDX, 8,
  8502. HDAT, 8
  8503. }
  8504. IndexField (HIDX, HDAT, ByteAcc, NoLock, Preserve)
  8505. {
  8506. Offset (0x04),
  8507. CHNM, 1,
  8508. CFNM, 1,
  8509. CHNS, 2,
  8510. CFNS, 2,
  8511. Offset (0x05),
  8512. SYST, 8,
  8513. TRGT, 8,
  8514. Offset (0x08),
  8515. SSDN, 8,
  8516. CSDN, 8,
  8517. SSUP, 8,
  8518. CSUP, 8,
  8519. Offset (0x20),
  8520. VCOR, 8,
  8521. V12V, 8,
  8522. Offset (0x23),
  8523. V33V, 8,
  8524. Offset (0x25),
  8525. V50V, 8,
  8526. Offset (0x27),
  8527. MBTE, 8,
  8528. FAN1, 8,
  8529. FAN2, 8,
  8530. FAN3, 8,
  8531. Offset (0x3F),
  8532. CFN3, 8,
  8533. Offset (0x47),
  8534. FDR1, 8,
  8535. Offset (0x4B),
  8536. FD13, 8,
  8537. FD15, 8,
  8538. Offset (0x4E),
  8539. BSEL, 3,
  8540. Offset (0x4F),
  8541. Offset (0x50),
  8542. TSR1, 8,
  8543. , 7,
  8544. TSR2, 1,
  8545. Offset (0x53),
  8546. FAN4, 8,
  8547. Offset (0x59),
  8548. FND4, 8,
  8549. Offset (0x5D),
  8550. FD21, 8
  8551. }
  8552. }
  8553. Scope (_SB.PCI0.SBRG.ASOC)
  8554. {
  8555. Name (CORV, Package (0x05)
  8556. {
  8557. 0x06020000,
  8558. "Vcore Voltage",
  8559. 0x0352,
  8560. 0x0640,
  8561. One
  8562. })
  8563. Name (V3VV, Package (0x05)
  8564. {
  8565. 0x06020001,
  8566. " +3.3 Voltage",
  8567. 0x0B9A,
  8568. 0x0E2E,
  8569. One
  8570. })
  8571. Name (V5VV, Package (0x05)
  8572. {
  8573. 0x06020002,
  8574. " +5 Voltage",
  8575. 0x1194,
  8576. 0x157C,
  8577. One
  8578. })
  8579. Name (VV12, Package (0x05)
  8580. {
  8581. 0x06020003,
  8582. " +12 Voltage",
  8583. 0x27D8,
  8584. 0x35E8,
  8585. One
  8586. })
  8587. Name (VPAR, Package (0x04)
  8588. {
  8589. Package (0x03)
  8590. {
  8591. Zero,
  8592. One,
  8593. Zero
  8594. },
  8595. Package (0x03)
  8596. {
  8597. 0x22,
  8598. 0x22,
  8599. Zero
  8600. },
  8601. Package (0x03)
  8602. {
  8603. 0x14,
  8604. 0x0A,
  8605. Zero
  8606. },
  8607. Package (0x03)
  8608. {
  8609. 0x3C,
  8610. 0x0A,
  8611. Zero
  8612. }
  8613. })
  8614. Name (VBUF, Package (0x05)
  8615. {
  8616. 0x04,
  8617. CORV,
  8618. V3VV,
  8619. V5VV,
  8620. VV12
  8621. })
  8622. Method (VGET, 1, NotSerialized)
  8623. {
  8624. If (LEqual (Arg0, Zero))
  8625. {
  8626. Return (^^SIOR.HWV0 ())
  8627. }
  8628. If (LEqual (Arg0, One))
  8629. {
  8630. Return (^^SIOR.HWV3 ())
  8631. }
  8632. If (LEqual (Arg0, 0x02))
  8633. {
  8634. Return (^^SIOR.HWV5 ())
  8635. }
  8636. If (LEqual (Arg0, 0x03))
  8637. {
  8638. Return (^^SIOR.HWV1 ())
  8639. }
  8640. }
  8641. Name (CPUT, Package (0x05)
  8642. {
  8643. 0x06030000,
  8644. "CPU Temperature",
  8645. 0x0258,
  8646. 0x03B6,
  8647. 0x00010001
  8648. })
  8649. Name (MBTP, Package (0x05)
  8650. {
  8651. 0x06030001,
  8652. "MB Temperature",
  8653. 0x01C2,
  8654. 0x03B6,
  8655. 0x00010001
  8656. })
  8657. Name (TBUF, Package (0x03)
  8658. {
  8659. 0x02,
  8660. CPUT,
  8661. MBTP
  8662. })
  8663. Method (TGET, 1, NotSerialized)
  8664. {
  8665. If (LEqual (Arg0, Zero))
  8666. {
  8667. Return (^^SIOR.HWT1 ())
  8668. }
  8669. If (LEqual (Arg0, One))
  8670. {
  8671. Return (^^SIOR.HWT0 ())
  8672. }
  8673. }
  8674. Name (CPUF, Package (0x05)
  8675. {
  8676. 0x06040000,
  8677. "CPU FAN Speed",
  8678. 0x0258,
  8679. 0x1C20,
  8680. 0x00010001
  8681. })
  8682. Name (CHF1, Package (0x05)
  8683. {
  8684. 0x06040001,
  8685. "CHASSIS1 FAN Speed",
  8686. 0x0258,
  8687. 0x1C20,
  8688. 0x00010001
  8689. })
  8690. Name (CHF2, Package (0x05)
  8691. {
  8692. 0x06040002,
  8693. "CHASSIS2 FAN Speed",
  8694. 0x0258,
  8695. 0x1C20,
  8696. 0x00010001
  8697. })
  8698. Name (CHF3, Package (0x05)
  8699. {
  8700. 0x06040003,
  8701. "CHASSIS3 FAN Speed",
  8702. 0x0320,
  8703. 0x1C20,
  8704. 0x00010001
  8705. })
  8706. Name (FBUF, Package (0x05)
  8707. {
  8708. 0x04,
  8709. CPUF,
  8710. CHF1,
  8711. CHF2,
  8712. CHF3
  8713. })
  8714. Method (FGET, 1, NotSerialized)
  8715. {
  8716. If (LEqual (Arg0, Zero))
  8717. {
  8718. Return (^^SIOR.HWF1 ())
  8719. }
  8720. If (LEqual (Arg0, One))
  8721. {
  8722. Return (^^SIOR.HWF2 ())
  8723. }
  8724. If (LEqual (Arg0, 0x02))
  8725. {
  8726. Return (^^SIOR.HWF4 ())
  8727. }
  8728. If (LEqual (Arg0, 0x03))
  8729. {
  8730. Return (^^SIOR.HWF0 ())
  8731. }
  8732. }
  8733. Method (VSIF, 0, NotSerialized)
  8734. {
  8735. Return (VBUF)
  8736. }
  8737. Method (RVLT, 1, NotSerialized)
  8738. {
  8739. And (Arg0, 0xFFFF, Local0)
  8740. Store (VGET (Local0), Local1)
  8741. Store (DerefOf (Index (DerefOf (Index (VPAR, Local0)), Zero)),
  8742. Local2)
  8743. Store (DerefOf (Index (DerefOf (Index (VPAR, Local0)), One)),
  8744. Local3)
  8745. Store (DerefOf (Index (DerefOf (Index (VPAR, Local0)), 0x02)),
  8746. Local4)
  8747. Multiply (Local1, Add (Local2, Local3), Local5)
  8748. Divide (Local5, Local3, , Local5)
  8749. Add (Local5, Local4, Local5)
  8750. Return (Local5)
  8751. }
  8752. Method (SVLT, 1, NotSerialized)
  8753. {
  8754. And (DerefOf (Index (Arg0, Zero)), 0xFFFF, Local0)
  8755. Store (DerefOf (Index (VBUF, Zero)), Local1)
  8756. If (LGreaterEqual (Local0, Local1))
  8757. {
  8758. Return (Zero)
  8759. }
  8760. Increment (Local0)
  8761. Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (VBUF,
  8762. Local0)), One))
  8763. Store (DerefOf (Index (Arg0, 0x02)), Index (DerefOf (Index (VBUF,
  8764. Local0)), 0x02))
  8765. Store (DerefOf (Index (Arg0, 0x03)), Index (DerefOf (Index (VBUF,
  8766. Local0)), 0x03))
  8767. Store (DerefOf (Index (Arg0, 0x04)), Index (DerefOf (Index (VBUF,
  8768. Local0)), 0x04))
  8769. Return (One)
  8770. }
  8771. Method (TSIF, 0, NotSerialized)
  8772. {
  8773. Return (TBUF)
  8774. }
  8775. Method (RTMP, 1, NotSerialized)
  8776. {
  8777. And (Arg0, 0xFFFF, Local0)
  8778. Store (TGET (Local0), Local1)
  8779. Return (Local1)
  8780. }
  8781. Method (STMP, 1, NotSerialized)
  8782. {
  8783. Store (And (DerefOf (Index (Arg0, Zero)), 0xFFFF), Local0)
  8784. Store (DerefOf (Index (TBUF, Zero)), Local1)
  8785. If (LGreaterEqual (Local0, Local1))
  8786. {
  8787. Return (Zero)
  8788. }
  8789. Increment (Local0)
  8790. Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (TBUF,
  8791. Local0)), One))
  8792. Store (DerefOf (Index (Arg0, 0x02)), Index (DerefOf (Index (TBUF,
  8793. Local0)), 0x02))
  8794. Store (DerefOf (Index (Arg0, 0x03)), Index (DerefOf (Index (TBUF,
  8795. Local0)), 0x03))
  8796. Store (DerefOf (Index (Arg0, 0x04)), Index (DerefOf (Index (TBUF,
  8797. Local0)), 0x04))
  8798. Return (One)
  8799. }
  8800. Method (FSIF, 0, NotSerialized)
  8801. {
  8802. Return (FBUF)
  8803. }
  8804. Method (RFAN, 1, NotSerialized)
  8805. {
  8806. And (Arg0, 0xFFFF, Local0)
  8807. Store (FGET (Local0), Local1)
  8808. Return (Local1)
  8809. }
  8810. Method (SFAN, 1, NotSerialized)
  8811. {
  8812. And (DerefOf (Index (Arg0, Zero)), 0xFFFF, Local0)
  8813. Store (DerefOf (Index (FBUF, Zero)), Local1)
  8814. If (LGreaterEqual (Local0, Local1))
  8815. {
  8816. Return (Zero)
  8817. }
  8818. Increment (Local0)
  8819. Store (DerefOf (Index (Arg0, One)), Index (DerefOf (Index (FBUF,
  8820. Local0)), One))
  8821. Store (DerefOf (Index (Arg0, 0x02)), Index (DerefOf (Index (FBUF,
  8822. Local0)), 0x02))
  8823. Store (DerefOf (Index (Arg0, 0x03)), Index (DerefOf (Index (FBUF,
  8824. Local0)), 0x03))
  8825. Store (DerefOf (Index (Arg0, 0x04)), Index (DerefOf (Index (FBUF,
  8826. Local0)), 0x04))
  8827. Store (DerefOf (Index (Arg0, 0x05)), Index (DerefOf (Index (FBUF,
  8828. Local0)), 0x05))
  8829. Return (One)
  8830. }
  8831. }
  8832. Scope (_SB)
  8833. {
  8834. Scope (PCI0)
  8835. {
  8836. Name (CRS, ResourceTemplate ()
  8837. {
  8838. WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
  8839. 0x0000, // Granularity
  8840. 0x0000, // Range Minimum
  8841. 0x00FF, // Range Maximum
  8842. 0x0000, // Translation Offset
  8843. 0x0100, // Length
  8844. ,, )
  8845. IO (Decode16,
  8846. 0x0CF8, // Range Minimum
  8847. 0x0CF8, // Range Maximum
  8848. 0x01, // Alignment
  8849. 0x08, // Length
  8850. )
  8851. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  8852. 0x0000, // Granularity
  8853. 0x0000, // Range Minimum
  8854. 0x0CF7, // Range Maximum
  8855. 0x0000, // Translation Offset
  8856. 0x0CF8, // Length
  8857. ,, , TypeStatic)
  8858. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  8859. 0x0000, // Granularity
  8860. 0x0D00, // Range Minimum
  8861. 0xFFFF, // Range Maximum
  8862. 0x0000, // Translation Offset
  8863. 0xF300, // Length
  8864. ,, , TypeStatic)
  8865. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  8866. 0x00000000, // Granularity
  8867. 0x000A0000, // Range Minimum
  8868. 0x000BFFFF, // Range Maximum
  8869. 0x00000000, // Translation Offset
  8870. 0x00020000, // Length
  8871. ,, , AddressRangeMemory, TypeStatic)
  8872. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  8873. 0x00000000, // Granularity
  8874. 0x000C0000, // Range Minimum
  8875. 0x000DFFFF, // Range Maximum
  8876. 0x00000000, // Translation Offset
  8877. 0x00020000, // Length
  8878. ,, _Y11, AddressRangeMemory, TypeStatic)
  8879. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  8880. 0x00000000, // Granularity
  8881. 0x00000000, // Range Minimum
  8882. 0x00000000, // Range Maximum
  8883. 0x00000000, // Translation Offset
  8884. 0x00000000, // Length
  8885. ,, _Y12, AddressRangeMemory, TypeStatic)
  8886. })
  8887. CreateDWordField (CRS, \_SB.PCI0._Y11._MIN, MIN5)
  8888. CreateDWordField (CRS, \_SB.PCI0._Y11._MAX, MAX5)
  8889. CreateDWordField (CRS, \_SB.PCI0._Y11._LEN, LEN5)
  8890. CreateDWordField (CRS, \_SB.PCI0._Y12._MIN, MIN6)
  8891. CreateDWordField (CRS, \_SB.PCI0._Y12._MAX, MAX6)
  8892. CreateDWordField (CRS, \_SB.PCI0._Y12._LEN, LEN6)
  8893. Method (_CRS, 0, NotSerialized)
  8894. {
  8895. Store (MG1L, Local0)
  8896. If (Local0)
  8897. {
  8898. Store (MG1B, MIN5)
  8899. Store (MG1L, LEN5)
  8900. Add (MIN5, Decrement (Local0), MAX5)
  8901. }
  8902. Store (MG2B, MIN6)
  8903. Store (MG2L, LEN6)
  8904. Store (MG2L, Local0)
  8905. Add (MIN6, Decrement (Local0), MAX6)
  8906. Return (CRS)
  8907. }
  8908. }
  8909. }
  8910. Name (WOTB, Zero)
  8911. Name (WSSB, Zero)
  8912. Name (WAXB, Zero)
  8913. Method (_PTS, 1, NotSerialized)
  8914. {
  8915. Store (Arg0, DBG8)
  8916. PTS (Arg0)
  8917. Store (Zero, Index (WAKP, Zero))
  8918. Store (Zero, Index (WAKP, One))
  8919. If (LAnd (LEqual (Arg0, 0x04), LEqual (OSFL (), 0x02)))
  8920. {
  8921. Sleep (0x0BB8)
  8922. }
  8923. Store (ASSB, WSSB)
  8924. Store (AOTB, WOTB)
  8925. Store (AAXB, WAXB)
  8926. Store (Arg0, ASSB)
  8927. Store (OSFL (), AOTB)
  8928. Store (Zero, AAXB)
  8929. }
  8930. Method (_WAK, 1, NotSerialized)
  8931. {
  8932. ShiftLeft (Arg0, 0x04, DBG8)
  8933. WAK (Arg0)
  8934. If (IOWK) {}
  8935. Else
  8936. {
  8937. Notify (\_SB.PWRB, 0x02)
  8938. }
  8939. If (ASSB)
  8940. {
  8941. Store (WSSB, ASSB)
  8942. Store (WOTB, AOTB)
  8943. Store (WAXB, AAXB)
  8944. }
  8945. If (DerefOf (Index (WAKP, Zero)))
  8946. {
  8947. Store (Zero, Index (WAKP, One))
  8948. }
  8949. Else
  8950. {
  8951. Store (Arg0, Index (WAKP, One))
  8952. }
  8953. Return (WAKP)
  8954. }
  8955. OperationRegion (IORK, SystemIO, 0xB3, One)
  8956. Field (IORK, ByteAcc, NoLock, Preserve)
  8957. {
  8958. IOWK, 8
  8959. }
  8960. Name (_S0, Package (0x04)
  8961. {
  8962. Zero,
  8963. Zero,
  8964. Zero,
  8965. Zero
  8966. })
  8967. If (SS1)
  8968. {
  8969. Name (_S1, Package (0x04)
  8970. {
  8971. One,
  8972. Zero,
  8973. Zero,
  8974. Zero
  8975. })
  8976. }
  8977. If (SS3)
  8978. {
  8979. Name (_S3, Package (0x04)
  8980. {
  8981. 0x05,
  8982. Zero,
  8983. Zero,
  8984. Zero
  8985. })
  8986. }
  8987. If (SS4)
  8988. {
  8989. Name (_S4, Package (0x04)
  8990. {
  8991. 0x06,
  8992. Zero,
  8993. Zero,
  8994. Zero
  8995. })
  8996. }
  8997. Name (_S5, Package (0x04)
  8998. {
  8999. 0x07,
  9000. Zero,
  9001. Zero,
  9002. Zero
  9003. })
  9004. Method (PTS, 1, NotSerialized)
  9005. {
  9006. If (Arg0)
  9007. {
  9008. \_SB.PCI0.SBRG.SIOS (Arg0)
  9009. \_SB.PCI0.SBRG.SPTS (Arg0)
  9010. \_SB.PCI0.NPTS (Arg0)
  9011. }
  9012. }
  9013. Method (WAK, 1, NotSerialized)
  9014. {
  9015. \_SB.PCI0.SBRG.SIOW (Arg0)
  9016. \_SB.PCI0.SBRG.SWAK (Arg0)
  9017. \_SB.PCI0.NWAK (Arg0)
  9018. \_SB.HSWK (Arg0)
  9019. }
  9020. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement