Advertisement
Guest User

Untitled

a guest
Oct 10th, 2017
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 354.67 KB | None | 0 0
  1.  
  2.  
  3. Scope (_SB.PCI0)
  4. {
  5. Name (LTRE, Zero)
  6. Name (OBFF, Zero)
  7. Name (LMSL, Zero)
  8. Name (LNSL, Zero)
  9. Device (GLAN)
  10. {
  11. Name (_ADR, 0x00190000) // _ADR: Address
  12. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  13. {
  14. Return (GPRW (0x6D, 0x04))
  15. }
  16. }
  17.  
  18. Device (EHC1)
  19. {
  20. Name (_ADR, 0x001D0000) // _ADR: Address
  21. OperationRegion (PWKE, PCI_Config, 0x54, 0x12)
  22. Field (PWKE, DWordAcc, NoLock, Preserve)
  23. {
  24. Offset (0x01),
  25. PMEE, 1,
  26. , 6,
  27. PMES, 1,
  28. Offset (0x0E),
  29. , 1,
  30. PWUC, 8
  31. }
  32.  
  33. Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
  34. {
  35. If (Arg0)
  36. {
  37. Store (Ones, PWUC)
  38. }
  39. Else
  40. {
  41. Store (Zero, PWUC)
  42. }
  43. }
  44.  
  45. Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State
  46. {
  47. Return (0x02)
  48. }
  49.  
  50. Method (_S4D, 0, NotSerialized) // _S4D: S4 Device State
  51. {
  52. Return (0x02)
  53. }
  54.  
  55. Device (HUBN)
  56. {
  57. Name (_ADR, Zero) // _ADR: Address
  58. Device (PR01)
  59. {
  60. Name (_ADR, One) // _ADR: Address
  61. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  62. {
  63. Name (UPCA, Package (0x04)
  64. {
  65. 0xFF,
  66. Zero,
  67. Zero,
  68. Zero
  69. })
  70. Return (UPCA)
  71. }
  72.  
  73. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  74. {
  75. Name (PLDP, Package (0x01)
  76. {
  77. Buffer (0x10)
  78. {
  79. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  80. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  81. }
  82. })
  83. Return (PLDP)
  84. }
  85.  
  86. Device (PR11)
  87. {
  88. Name (_ADR, One) // _ADR: Address
  89. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  90. {
  91. Name (UPCP, Package (0x04)
  92. {
  93. 0xFF,
  94. 0xFF,
  95. Zero,
  96. Zero
  97. })
  98. Return (UPCP)
  99. }
  100.  
  101. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  102. {
  103. Name (PLDP, Package (0x01)
  104. {
  105. Buffer (0x10)
  106. {
  107. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  108. /* 0008 */ 0xE1, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  109. }
  110. })
  111. Return (PLDP)
  112. }
  113. }
  114.  
  115. Device (PR12)
  116. {
  117. Name (_ADR, 0x02) // _ADR: Address
  118. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  119. {
  120. Name (UPCP, Package (0x04)
  121. {
  122. 0xFF,
  123. 0xFF,
  124. Zero,
  125. Zero
  126. })
  127. Return (UPCP)
  128. }
  129.  
  130. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  131. {
  132. Name (PLDP, Package (0x01)
  133. {
  134. Buffer (0x10)
  135. {
  136. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  137. /* 0008 */ 0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  138. }
  139. })
  140. Return (PLDP)
  141. }
  142. }
  143.  
  144. Device (PR13)
  145. {
  146. Name (_ADR, 0x03) // _ADR: Address
  147. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  148. {
  149. Name (UPCP, Package (0x04)
  150. {
  151. 0xFF,
  152. 0xFF,
  153. Zero,
  154. Zero
  155. })
  156. Return (UPCP)
  157. }
  158.  
  159. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  160. {
  161. Name (PLDP, Package (0x01)
  162. {
  163. Buffer (0x10)
  164. {
  165. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  166. /* 0008 */ 0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  167. }
  168. })
  169. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  170. If (LEqual (And (CDID, 0xF000), 0x9000))
  171. {
  172. And (VIS, Zero, VIS)
  173. }
  174.  
  175. Return (PLDP)
  176. }
  177. }
  178.  
  179. Device (PR14)
  180. {
  181. Name (_ADR, 0x04) // _ADR: Address
  182. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  183. {
  184. Name (UPCP, Package (0x04)
  185. {
  186. 0xFF,
  187. 0xFF,
  188. Zero,
  189. Zero
  190. })
  191. Return (UPCP)
  192. }
  193.  
  194. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  195. {
  196. Name (PLDP, Package (0x01)
  197. {
  198. Buffer (0x10)
  199. {
  200. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  201. /* 0008 */ 0xE1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  202. }
  203. })
  204. Return (PLDP)
  205. }
  206.  
  207. Alias (SBV1, SDGV)
  208. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  209. {
  210. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  211. If (LEqual (Arg0, Buffer (0x10)
  212. {
  213. /* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  214. /* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  215. }))
  216. {
  217. While (One)
  218. {
  219. Store (ToInteger (Arg2), _T_0)
  220. If (LEqual (_T_0, Zero))
  221. {
  222. If (LEqual (Arg1, One))
  223. {
  224. Return (Buffer (One)
  225. {
  226. 0x07
  227. })
  228. }
  229. Else
  230. {
  231. Return (Buffer (One)
  232. {
  233. 0x00
  234. })
  235. }
  236. }
  237. Else
  238. {
  239. If (LEqual (_T_0, One))
  240. {
  241. If (LEqual (SDGV, 0xFF))
  242. {
  243. Return (Zero)
  244. }
  245. Else
  246. {
  247. Return (One)
  248. }
  249. }
  250. Else
  251. {
  252. If (LEqual (_T_0, 0x02))
  253. {
  254. Return (SDGV)
  255. }
  256. }
  257. }
  258.  
  259. Break
  260. }
  261. }
  262.  
  263. Return (Zero)
  264. }
  265. }
  266.  
  267. Device (PR15)
  268. {
  269. Name (_ADR, 0x05) // _ADR: Address
  270. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  271. {
  272. Name (UPCP, Package (0x04)
  273. {
  274. 0xFF,
  275. 0xFF,
  276. Zero,
  277. Zero
  278. })
  279. Return (UPCP)
  280. }
  281.  
  282. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  283. {
  284. Name (PLDP, Package (0x01)
  285. {
  286. Buffer (0x10)
  287. {
  288. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  289. /* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  290. }
  291. })
  292. Return (PLDP)
  293. }
  294.  
  295. Alias (SBV2, SDGV)
  296. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  297. {
  298. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  299. If (LEqual (Arg0, Buffer (0x10)
  300. {
  301. /* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  302. /* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  303. }))
  304. {
  305. While (One)
  306. {
  307. Store (ToInteger (Arg2), _T_0)
  308. If (LEqual (_T_0, Zero))
  309. {
  310. If (LEqual (Arg1, One))
  311. {
  312. Return (Buffer (One)
  313. {
  314. 0x07
  315. })
  316. }
  317. Else
  318. {
  319. Return (Buffer (One)
  320. {
  321. 0x00
  322. })
  323. }
  324. }
  325. Else
  326. {
  327. If (LEqual (_T_0, One))
  328. {
  329. If (LEqual (SDGV, 0xFF))
  330. {
  331. Return (Zero)
  332. }
  333. Else
  334. {
  335. Return (One)
  336. }
  337. }
  338. Else
  339. {
  340. If (LEqual (_T_0, 0x02))
  341. {
  342. Return (SDGV)
  343. }
  344. }
  345. }
  346.  
  347. Break
  348. }
  349. }
  350.  
  351. Return (Zero)
  352. }
  353. }
  354.  
  355. Device (PR16)
  356. {
  357. Name (_ADR, 0x06) // _ADR: Address
  358. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  359. {
  360. Name (UPCP, Package (0x04)
  361. {
  362. 0xFF,
  363. 0xFF,
  364. Zero,
  365. Zero
  366. })
  367. Return (UPCP)
  368. }
  369.  
  370. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  371. {
  372. Name (PLDP, Package (0x01)
  373. {
  374. Buffer (0x10)
  375. {
  376. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  377. /* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  378. }
  379. })
  380. Return (PLDP)
  381. }
  382.  
  383. Alias (SBV1, SDGV)
  384. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  385. {
  386. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  387. If (LEqual (Arg0, Buffer (0x10)
  388. {
  389. /* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  390. /* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  391. }))
  392. {
  393. While (One)
  394. {
  395. Store (ToInteger (Arg2), _T_0)
  396. If (LEqual (_T_0, Zero))
  397. {
  398. If (LEqual (Arg1, One))
  399. {
  400. Return (Buffer (One)
  401. {
  402. 0x07
  403. })
  404. }
  405. Else
  406. {
  407. Return (Buffer (One)
  408. {
  409. 0x00
  410. })
  411. }
  412. }
  413. Else
  414. {
  415. If (LEqual (_T_0, One))
  416. {
  417. If (LEqual (SDGV, 0xFF))
  418. {
  419. Return (Zero)
  420. }
  421. Else
  422. {
  423. Return (One)
  424. }
  425. }
  426. Else
  427. {
  428. If (LEqual (_T_0, 0x02))
  429. {
  430. Return (SDGV)
  431. }
  432. }
  433. }
  434.  
  435. Break
  436. }
  437. }
  438.  
  439. Return (Zero)
  440. }
  441. }
  442.  
  443. Device (PR17)
  444. {
  445. Name (_ADR, 0x07) // _ADR: Address
  446. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  447. {
  448. Name (UPCP, Package (0x04)
  449. {
  450. 0xFF,
  451. 0xFF,
  452. Zero,
  453. Zero
  454. })
  455. Return (UPCP)
  456. }
  457.  
  458. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  459. {
  460. Name (PLDP, Package (0x01)
  461. {
  462. Buffer (0x10)
  463. {
  464. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  465. /* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  466. }
  467. })
  468. Return (PLDP)
  469. }
  470.  
  471. Alias (SBV2, SDGV)
  472. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  473. {
  474. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  475. If (LEqual (Arg0, Buffer (0x10)
  476. {
  477. /* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  478. /* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  479. }))
  480. {
  481. While (One)
  482. {
  483. Store (ToInteger (Arg2), _T_0)
  484. If (LEqual (_T_0, Zero))
  485. {
  486. If (LEqual (Arg1, One))
  487. {
  488. Return (Buffer (One)
  489. {
  490. 0x07
  491. })
  492. }
  493. Else
  494. {
  495. Return (Buffer (One)
  496. {
  497. 0x00
  498. })
  499. }
  500. }
  501. Else
  502. {
  503. If (LEqual (_T_0, One))
  504. {
  505. If (LEqual (SDGV, 0xFF))
  506. {
  507. Return (Zero)
  508. }
  509. Else
  510. {
  511. Return (One)
  512. }
  513. }
  514. Else
  515. {
  516. If (LEqual (_T_0, 0x02))
  517. {
  518. Return (SDGV)
  519. }
  520. }
  521. }
  522.  
  523. Break
  524. }
  525. }
  526.  
  527. Return (Zero)
  528. }
  529. }
  530.  
  531. Device (PR18)
  532. {
  533. Name (_ADR, 0x08) // _ADR: Address
  534. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  535. {
  536. Name (UPCP, Package (0x04)
  537. {
  538. 0xFF,
  539. 0xFF,
  540. Zero,
  541. Zero
  542. })
  543. Return (UPCP)
  544. }
  545.  
  546. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  547. {
  548. Name (PLDP, Package (0x01)
  549. {
  550. Buffer (0x10)
  551. {
  552. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  553. /* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  554. }
  555. })
  556. Return (PLDP)
  557. }
  558. }
  559. }
  560. }
  561.  
  562. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  563. {
  564. Return (GPRW (0x6D, 0x04))
  565. }
  566. }
  567.  
  568. Device (EHC2)
  569. {
  570. Name (_ADR, 0x001A0000) // _ADR: Address
  571. OperationRegion (PWKE, PCI_Config, 0x54, 0x12)
  572. Field (PWKE, DWordAcc, NoLock, Preserve)
  573. {
  574. Offset (0x01),
  575. PMEE, 1,
  576. , 6,
  577. PMES, 1,
  578. Offset (0x0E),
  579. , 1,
  580. PWUC, 6
  581. }
  582.  
  583. Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
  584. {
  585. If (Arg0)
  586. {
  587. Store (Ones, PWUC)
  588. }
  589. Else
  590. {
  591. Store (Zero, PWUC)
  592. }
  593. }
  594.  
  595. Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State
  596. {
  597. Return (0x02)
  598. }
  599.  
  600. Method (_S4D, 0, NotSerialized) // _S4D: S4 Device State
  601. {
  602. Return (0x02)
  603. }
  604.  
  605. Device (HUBN)
  606. {
  607. Name (_ADR, Zero) // _ADR: Address
  608. Device (PR01)
  609. {
  610. Name (_ADR, One) // _ADR: Address
  611. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  612. {
  613. Name (UPCA, Package (0x04)
  614. {
  615. 0xFF,
  616. Zero,
  617. Zero,
  618. Zero
  619. })
  620. Return (UPCA)
  621. }
  622.  
  623. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  624. {
  625. Name (PLDP, Package (0x01)
  626. {
  627. Buffer (0x10)
  628. {
  629. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  630. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  631. }
  632. })
  633. Return (PLDP)
  634. }
  635.  
  636. Device (PR11)
  637. {
  638. Name (_ADR, One) // _ADR: Address
  639. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  640. {
  641. Name (UPCP, Package (0x04)
  642. {
  643. 0xFF,
  644. 0xFF,
  645. Zero,
  646. Zero
  647. })
  648. Return (UPCP)
  649. }
  650.  
  651. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  652. {
  653. Name (PLDP, Package (0x01)
  654. {
  655. Buffer (0x10)
  656. {
  657. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  658. /* 0008 */ 0xE1, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  659. }
  660. })
  661. Return (PLDP)
  662. }
  663. }
  664.  
  665. Device (PR12)
  666. {
  667. Name (_ADR, 0x02) // _ADR: Address
  668. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  669. {
  670. Name (UPCP, Package (0x04)
  671. {
  672. 0xFF,
  673. 0xFF,
  674. Zero,
  675. Zero
  676. })
  677. Return (UPCP)
  678. }
  679.  
  680. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  681. {
  682. Name (PLDP, Package (0x01)
  683. {
  684. Buffer (0x10)
  685. {
  686. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  687. /* 0008 */ 0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  688. }
  689. })
  690. Return (PLDP)
  691. }
  692.  
  693. Alias (SBV1, SDGV)
  694. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  695. {
  696. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  697. If (LEqual (Arg0, Buffer (0x10)
  698. {
  699. /* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  700. /* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  701. }))
  702. {
  703. While (One)
  704. {
  705. Store (ToInteger (Arg2), _T_0)
  706. If (LEqual (_T_0, Zero))
  707. {
  708. If (LEqual (Arg1, One))
  709. {
  710. Return (Buffer (One)
  711. {
  712. 0x07
  713. })
  714. }
  715. Else
  716. {
  717. Return (Buffer (One)
  718. {
  719. 0x00
  720. })
  721. }
  722. }
  723. Else
  724. {
  725. If (LEqual (_T_0, One))
  726. {
  727. If (LEqual (SDGV, 0xFF))
  728. {
  729. Return (Zero)
  730. }
  731. Else
  732. {
  733. Return (One)
  734. }
  735. }
  736. Else
  737. {
  738. If (LEqual (_T_0, 0x02))
  739. {
  740. Return (SDGV)
  741. }
  742. }
  743. }
  744.  
  745. Break
  746. }
  747. }
  748.  
  749. Return (Zero)
  750. }
  751. }
  752.  
  753. Device (PR13)
  754. {
  755. Name (_ADR, 0x03) // _ADR: Address
  756. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  757. {
  758. Name (UPCP, Package (0x04)
  759. {
  760. 0xFF,
  761. 0xFF,
  762. Zero,
  763. Zero
  764. })
  765. Return (UPCP)
  766. }
  767.  
  768. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  769. {
  770. Name (PLDP, Package (0x01)
  771. {
  772. Buffer (0x10)
  773. {
  774. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  775. /* 0008 */ 0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  776. }
  777. })
  778. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  779. If (LEqual (And (CDID, 0xF000), 0x9000))
  780. {
  781. And (VIS, Zero, VIS)
  782. }
  783.  
  784. Return (PLDP)
  785. }
  786.  
  787. Alias (SBV2, SDGV)
  788. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  789. {
  790. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  791. If (LEqual (Arg0, Buffer (0x10)
  792. {
  793. /* 0000 */ 0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  794. /* 0008 */ 0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  795. }))
  796. {
  797. While (One)
  798. {
  799. Store (ToInteger (Arg2), _T_0)
  800. If (LEqual (_T_0, Zero))
  801. {
  802. If (LEqual (Arg1, One))
  803. {
  804. Return (Buffer (One)
  805. {
  806. 0x07
  807. })
  808. }
  809. Else
  810. {
  811. Return (Buffer (One)
  812. {
  813. 0x00
  814. })
  815. }
  816. }
  817. Else
  818. {
  819. If (LEqual (_T_0, One))
  820. {
  821. If (LEqual (SDGV, 0xFF))
  822. {
  823. Return (Zero)
  824. }
  825. Else
  826. {
  827. Return (One)
  828. }
  829. }
  830. Else
  831. {
  832. If (LEqual (_T_0, 0x02))
  833. {
  834. Return (SDGV)
  835. }
  836. }
  837. }
  838.  
  839. Break
  840. }
  841. }
  842.  
  843. Return (Zero)
  844. }
  845. }
  846.  
  847. Device (PR14)
  848. {
  849. Name (_ADR, 0x04) // _ADR: Address
  850. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  851. {
  852. Name (UPCP, Package (0x04)
  853. {
  854. 0xFF,
  855. 0xFF,
  856. Zero,
  857. Zero
  858. })
  859. Return (UPCP)
  860. }
  861.  
  862. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  863. {
  864. Name (PLDP, Package (0x01)
  865. {
  866. Buffer (0x10)
  867. {
  868. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  869. /* 0008 */ 0xE1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  870. }
  871. })
  872. Return (PLDP)
  873. }
  874. }
  875.  
  876. Device (PR15)
  877. {
  878. Name (_ADR, 0x05) // _ADR: Address
  879. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  880. {
  881. Name (UPCP, Package (0x04)
  882. {
  883. 0xFF,
  884. 0xFF,
  885. Zero,
  886. Zero
  887. })
  888. Return (UPCP)
  889. }
  890.  
  891. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  892. {
  893. Name (PLDP, Package (0x01)
  894. {
  895. Buffer (0x10)
  896. {
  897. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  898. /* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  899. }
  900. })
  901. Return (PLDP)
  902. }
  903. }
  904.  
  905. Device (PR16)
  906. {
  907. Name (_ADR, 0x06) // _ADR: Address
  908. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  909. {
  910. Name (UPCP, Package (0x04)
  911. {
  912. 0xFF,
  913. 0xFF,
  914. Zero,
  915. Zero
  916. })
  917. Return (UPCP)
  918. }
  919.  
  920. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  921. {
  922. Name (PLDP, Package (0x01)
  923. {
  924. Buffer (0x10)
  925. {
  926. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  927. /* 0008 */ 0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  928. }
  929. })
  930. Return (PLDP)
  931. }
  932. }
  933. }
  934. }
  935.  
  936. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  937. {
  938. Return (GPRW (0x6D, 0x04))
  939. }
  940. }
  941.  
  942. Device (XHC)
  943. {
  944. Name (_ADR, 0x00140000) // _ADR: Address
  945. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  946. {
  947. If (LEqual (S0ID, One))
  948. {
  949. Return (Package (0x01)
  950. {
  951. PEPD
  952. })
  953. }
  954. Else
  955. {
  956. Return (Package (0x00) {})
  957. }
  958. }
  959.  
  960. OperationRegion (XPRT, PCI_Config, Zero, 0x0100)
  961. Field (XPRT, AnyAcc, NoLock, Preserve)
  962. {
  963. DVID, 16,
  964. Offset (0x74),
  965. D0D3, 2,
  966. Offset (0x75),
  967. PMEE, 1,
  968. , 6,
  969. PMES, 1,
  970. Offset (0xB0),
  971. , 13,
  972. MB13, 1,
  973. MB14, 1,
  974. Offset (0xB4),
  975. Offset (0xD0),
  976. PR2, 32,
  977. PR2M, 32,
  978. PR3, 32,
  979. PR3M, 32
  980. }
  981.  
  982. OperationRegion (XHCP, SystemMemory, Add (PEBS, 0x000A0000), 0x0100)
  983. Field (XHCP, AnyAcc, Lock, Preserve)
  984. {
  985. Offset (0x04),
  986. PDBM, 16,
  987. Offset (0x10),
  988. MEMB, 64
  989. }
  990.  
  991. Method (PR2S, 1, Serialized)
  992. {
  993. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  994. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  995. If (LEqual (And (CDID, 0xF000), 0x8000))
  996. {
  997. While (One)
  998. {
  999. Store (Arg0, _T_0)
  1000. If (LEqual (_T_0, One))
  1001. {
  1002. Return (One)
  1003. }
  1004. Else
  1005. {
  1006. If (LEqual (_T_0, 0x02))
  1007. {
  1008. Return (0x02)
  1009. }
  1010. Else
  1011. {
  1012. If (LEqual (_T_0, 0x03))
  1013. {
  1014. Return (0x04)
  1015. }
  1016. Else
  1017. {
  1018. If (LEqual (_T_0, 0x04))
  1019. {
  1020. Return (0x08)
  1021. }
  1022. Else
  1023. {
  1024. If (LEqual (_T_0, 0x05))
  1025. {
  1026. Return (0x0100)
  1027. }
  1028. Else
  1029. {
  1030. If (LEqual (_T_0, 0x06))
  1031. {
  1032. Return (0x0200)
  1033. }
  1034. Else
  1035. {
  1036. If (LEqual (_T_0, 0x07))
  1037. {
  1038. Return (0x0400)
  1039. }
  1040. Else
  1041. {
  1042. If (LEqual (_T_0, 0x08))
  1043. {
  1044. Return (0x0800)
  1045. }
  1046. Else
  1047. {
  1048. If (LEqual (_T_0, 0x09))
  1049. {
  1050. Return (0x10)
  1051. }
  1052. Else
  1053. {
  1054. If (LEqual (_T_0, 0x0A))
  1055. {
  1056. Return (0x20)
  1057. }
  1058. Else
  1059. {
  1060. If (LEqual (_T_0, 0x0B))
  1061. {
  1062. Return (0x1000)
  1063. }
  1064. Else
  1065. {
  1066. If (LEqual (_T_0, 0x0C))
  1067. {
  1068. Return (0x2000)
  1069. }
  1070. Else
  1071. {
  1072. If (LEqual (_T_0, 0x0D))
  1073. {
  1074. Return (0x40)
  1075. }
  1076. Else
  1077. {
  1078. If (LEqual (_T_0, 0x0E))
  1079. {
  1080. Return (0x80)
  1081. }
  1082. Else
  1083. {
  1084. If (LEqual (_T_0, 0x0F))
  1085. {
  1086. Return (0x4000)
  1087. }
  1088. }
  1089. }
  1090. }
  1091. }
  1092. }
  1093. }
  1094. }
  1095. }
  1096. }
  1097. }
  1098. }
  1099. }
  1100. }
  1101. }
  1102.  
  1103. Break
  1104. }
  1105. }
  1106. Else
  1107. {
  1108. While (One)
  1109. {
  1110. Store (Arg0, _T_1)
  1111. If (LEqual (_T_1, One))
  1112. {
  1113. Return (One)
  1114. }
  1115. Else
  1116. {
  1117. If (LEqual (_T_1, 0x02))
  1118. {
  1119. Return (0x02)
  1120. }
  1121. Else
  1122. {
  1123. If (LEqual (_T_1, 0x03))
  1124. {
  1125. Return (0x04)
  1126. }
  1127. Else
  1128. {
  1129. If (LEqual (_T_1, 0x04))
  1130. {
  1131. Return (0x08)
  1132. }
  1133. Else
  1134. {
  1135. If (LEqual (_T_1, 0x05))
  1136. {
  1137. Return (0x10)
  1138. }
  1139. Else
  1140. {
  1141. If (LEqual (_T_1, 0x06))
  1142. {
  1143. Return (0x20)
  1144. }
  1145. Else
  1146. {
  1147. If (LEqual (_T_1, 0x07))
  1148. {
  1149. Return (0x40)
  1150. }
  1151. Else
  1152. {
  1153. If (LEqual (_T_1, 0x08))
  1154. {
  1155. Return (0x80)
  1156. }
  1157. Else
  1158. {
  1159. If (LEqual (_T_1, 0x09))
  1160. {
  1161. Return (0x0100)
  1162. }
  1163. }
  1164. }
  1165. }
  1166. }
  1167. }
  1168. }
  1169. }
  1170. }
  1171.  
  1172. Break
  1173. }
  1174. }
  1175. }
  1176.  
  1177. Name (XRST, Zero)
  1178. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  1179. {
  1180. If (LEqual (DVID, 0xFFFF))
  1181. {
  1182. Return (Zero)
  1183. }
  1184.  
  1185. Store (MEMB, Local2)
  1186. Store (PDBM, Local1)
  1187. And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM)
  1188. Store (SRMB, MEMB)
  1189. Or (PDBM, 0x02, PDBM)
  1190. OperationRegion (MCA1, SystemMemory, SRMB, 0x9000)
  1191. Field (MCA1, DWordAcc, Lock, Preserve)
  1192. {
  1193. Offset (0x510),
  1194. R510, 32,
  1195. Offset (0x520),
  1196. R520, 32,
  1197. Offset (0x530),
  1198. R530, 32,
  1199. Offset (0x540),
  1200. R540, 32,
  1201. Offset (0x80E0),
  1202. , 15,
  1203. AX15, 1,
  1204. Offset (0x8154),
  1205. , 31,
  1206. CLK2, 1,
  1207. Offset (0x816C),
  1208. , 2,
  1209. CLK0, 1,
  1210. , 11,
  1211. CLK1, 1
  1212. }
  1213.  
  1214. Store (D0D3, Local3)
  1215. If (LEqual (Local3, 0x03))
  1216. {
  1217. Store (Zero, D0D3)
  1218. }
  1219.  
  1220. If (LEqual (PCHS, 0x02))
  1221. {
  1222. Store (Zero, MB13)
  1223. Store (Zero, MB14)
  1224. Store (Zero, CLK0)
  1225. Store (Zero, CLK1)
  1226. }
  1227.  
  1228. Store (One, CLK2)
  1229. If (LEqual (PCHS, 0x02))
  1230. {
  1231. While (LOr (LOr (LEqual (And (R510, 0x03FB), 0x02E0), LEqual (
  1232. And (R520, 0x03FB), 0x02E0)), LOr (LEqual (And (R530, 0x03FB),
  1233. 0x02E0), LEqual (And (R540, 0x03FB), 0x02E0))))
  1234. {
  1235. Stall (0x32)
  1236. }
  1237.  
  1238. Store (R510, Local0)
  1239. If (LEqual (And (Local0, 0x000203FB), 0x02A0))
  1240. {
  1241. Or (Local0, 0x80000000, R510)
  1242. While (LEqual (And (R510, 0x00180000), Zero))
  1243. {
  1244. Stall (0x32)
  1245. }
  1246.  
  1247. And (R510, 0xFFFFFFFFFFFFFFFD, Local0)
  1248. Or (Local0, 0x00FE0000, R510)
  1249. }
  1250.  
  1251. Store (R520, Local0)
  1252. If (LEqual (And (Local0, 0x000203FB), 0x02A0))
  1253. {
  1254. Or (Local0, 0x80000000, R520)
  1255. While (LEqual (And (R520, 0x00180000), Zero))
  1256. {
  1257. Stall (0x32)
  1258. }
  1259.  
  1260. And (R520, 0xFFFFFFFFFFFFFFFD, Local0)
  1261. Or (Local0, 0x00FE0000, R520)
  1262. }
  1263.  
  1264. Store (R530, Local0)
  1265. If (LEqual (And (Local0, 0x000203FB), 0x02A0))
  1266. {
  1267. Or (Local0, 0x80000000, R530)
  1268. While (LEqual (And (R530, 0x00180000), Zero))
  1269. {
  1270. Stall (0x32)
  1271. }
  1272.  
  1273. And (R530, 0xFFFFFFFFFFFFFFFD, Local0)
  1274. Or (Local0, 0x00FE0000, R530)
  1275. }
  1276.  
  1277. Store (R540, Local0)
  1278. If (LEqual (And (Local0, 0x000203FB), 0x02A0))
  1279. {
  1280. Or (Local0, 0x80000000, R540)
  1281. While (LEqual (And (R540, 0x00180000), Zero))
  1282. {
  1283. Stall (0x32)
  1284. }
  1285.  
  1286. And (R540, 0xFFFFFFFFFFFFFFFD, Local0)
  1287. Or (Local0, 0x00FE0000, R540)
  1288. }
  1289.  
  1290. Store (One, AX15)
  1291. }
  1292.  
  1293. If (CondRefOf (\_SB.PCI0.XHC.PS0X))
  1294. {
  1295. PS0X ()
  1296. }
  1297.  
  1298. If (LEqual (Local3, 0x03))
  1299. {
  1300. Store (0x03, D0D3)
  1301. }
  1302.  
  1303. And (PDBM, 0xFFFFFFFFFFFFFFFD, PDBM)
  1304. Store (Local2, MEMB)
  1305. Store (Local1, PDBM)
  1306. }
  1307.  
  1308. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  1309. {
  1310. If (LEqual (DVID, 0xFFFF))
  1311. {
  1312. Return (Zero)
  1313. }
  1314.  
  1315. Store (One, PMES)
  1316. Store (One, PMEE)
  1317. Store (MEMB, Local2)
  1318. Store (PDBM, Local1)
  1319. And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM)
  1320. Store (SRMB, MEMB)
  1321. Or (PDBM, 0x02, PDBM)
  1322. OperationRegion (MCA1, SystemMemory, SRMB, 0x9000)
  1323. Field (MCA1, DWordAcc, Lock, Preserve)
  1324. {
  1325. Offset (0x80E0),
  1326. , 15,
  1327. AX15, 1,
  1328. Offset (0x8154),
  1329. , 31,
  1330. CLK2, 1,
  1331. Offset (0x816C),
  1332. , 2,
  1333. CLK0, 1,
  1334. , 11,
  1335. CLK1, 1,
  1336. Offset (0x8170)
  1337. }
  1338.  
  1339. Store (D0D3, Local3)
  1340. If (LEqual (Local3, 0x03))
  1341. {
  1342. Store (Zero, D0D3)
  1343. }
  1344.  
  1345. If (LEqual (PCHS, 0x02))
  1346. {
  1347. Store (One, MB13)
  1348. Store (One, MB14)
  1349. Store (One, CLK0)
  1350. Store (One, CLK1)
  1351. }
  1352.  
  1353. Store (Zero, CLK2)
  1354. If (LEqual (PCHS, 0x02))
  1355. {
  1356. Store (Zero, AX15)
  1357. }
  1358.  
  1359. If (CondRefOf (\_SB.PCI0.XHC.PS3X))
  1360. {
  1361. PS3X ()
  1362. }
  1363.  
  1364. If (LEqual (Local3, 0x03))
  1365. {
  1366. Store (0x03, D0D3)
  1367. }
  1368.  
  1369. And (PDBM, 0xFFFFFFFFFFFFFFFD, PDBM)
  1370. Store (Local2, MEMB)
  1371. Store (Local1, PDBM)
  1372. }
  1373.  
  1374. Method (CUID, 1, Serialized)
  1375. {
  1376. If (LEqual (Arg0, Buffer (0x10)
  1377. {
  1378. /* 0000 */ 0xA9, 0x12, 0x95, 0x7C, 0x05, 0x17, 0xB4, 0x4C,
  1379. /* 0008 */ 0xAF, 0x7D, 0x50, 0x6A, 0x24, 0x23, 0xAB, 0x71
  1380. }))
  1381. {
  1382. Return (One)
  1383. }
  1384.  
  1385. Return (Zero)
  1386. }
  1387.  
  1388. Method (POSC, 3, Serialized)
  1389. {
  1390. CreateDWordField (Arg2, Zero, CDW1)
  1391. CreateDWordField (Arg2, 0x08, CDW3)
  1392. If (LEqual (XHCI, Zero))
  1393. {
  1394. Or (CDW1, 0x02, CDW1)
  1395. }
  1396.  
  1397. If (LNot (And (CDW1, One)))
  1398. {
  1399. If (And (CDW3, One))
  1400. {
  1401. ESEL ()
  1402. }
  1403. Else
  1404. {
  1405. If (LEqual (And (CDID, 0xF000), 0x8000))
  1406. {
  1407. If (LGreater (Arg0, One))
  1408. {
  1409. XSEL ()
  1410. }
  1411. Else
  1412. {
  1413. Or (CDW1, 0x0A, CDW1)
  1414. }
  1415. }
  1416. Else
  1417. {
  1418. If (LGreater (Arg0, 0x02))
  1419. {
  1420. XSEL ()
  1421. }
  1422. Else
  1423. {
  1424. Or (CDW1, 0x0A, CDW1)
  1425. }
  1426. }
  1427. }
  1428. }
  1429.  
  1430. Return (Arg2)
  1431. }
  1432.  
  1433. Method (XSEL, 0, Serialized)
  1434. {
  1435. If (LOr (LEqual (XHCI, 0x02), LEqual (XHCI, 0x03)))
  1436. {
  1437. Store (One, XUSB)
  1438. Store (One, XRST)
  1439. Store (Zero, Local0)
  1440. And (PR3, 0xFFFFFFC0, Local0)
  1441. Or (Local0, PR3M, PR3)
  1442. Store (Zero, Local0)
  1443. And (PR2, 0xFFFF8000, Local0)
  1444. Or (Local0, PR2M, PR2)
  1445. }
  1446. }
  1447.  
  1448. Method (ESEL, 0, Serialized)
  1449. {
  1450. If (LOr (LEqual (XHCI, 0x02), LEqual (XHCI, 0x03)))
  1451. {
  1452. And (PR3, 0xFFFFFFC0, PR3)
  1453. And (PR2, 0xFFFF8000, PR2)
  1454. Store (Zero, XUSB)
  1455. Store (Zero, XRST)
  1456. }
  1457. }
  1458.  
  1459. Method (XWAK, 0, Serialized)
  1460. {
  1461. If (LOr (LEqual (XUSB, One), LEqual (XRST, One)))
  1462. {
  1463. XSEL ()
  1464. }
  1465. }
  1466.  
  1467. Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State
  1468. {
  1469. Return (0x02)
  1470. }
  1471.  
  1472. Method (_S4D, 0, NotSerialized) // _S4D: S4 Device State
  1473. {
  1474. Return (0x02)
  1475. }
  1476.  
  1477. Device (RHUB)
  1478. {
  1479. Name (_ADR, Zero) // _ADR: Address
  1480. Device (HS01)
  1481. {
  1482. Name (_ADR, One) // _ADR: Address
  1483. Name (_STA, 0x0F) // _STA: Status
  1484. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1485. {
  1486. Name (UPCP, Package (0x04)
  1487. {
  1488. 0xFF,
  1489. 0x03,
  1490. Zero,
  1491. Zero
  1492. })
  1493. If (LNot (And (PR2S (One), PR2)))
  1494. {
  1495. Store (Zero, Index (UPCP, Zero))
  1496. }
  1497.  
  1498. Return (UPCP)
  1499. }
  1500.  
  1501. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1502. {
  1503. Name (PLDP, Package (0x01)
  1504. {
  1505. Buffer (0x10)
  1506. {
  1507. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  1508. /* 0008 */ 0x69, 0x0C, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00
  1509. }
  1510. })
  1511. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1512. If (LNot (And (PR2S (One), PR2)))
  1513. {
  1514. And (VIS, Zero, VIS)
  1515. }
  1516.  
  1517. Return (PLDP)
  1518. }
  1519. }
  1520.  
  1521. Device (HS02)
  1522. {
  1523. Name (_ADR, 0x02) // _ADR: Address
  1524. Name (_STA, 0x0F) // _STA: Status
  1525. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1526. {
  1527. Name (UPCP, Package (0x04)
  1528. {
  1529. 0xFF,
  1530. 0x03,
  1531. Zero,
  1532. Zero
  1533. })
  1534. If (LNot (And (PR2S (0x02), PR2)))
  1535. {
  1536. Store (Zero, Index (UPCP, Zero))
  1537. }
  1538.  
  1539. Return (UPCP)
  1540. }
  1541.  
  1542. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1543. {
  1544. Name (PLDP, Package (0x01)
  1545. {
  1546. Buffer (0x10)
  1547. {
  1548. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  1549. /* 0008 */ 0x69, 0x0C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
  1550. }
  1551. })
  1552. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1553. If (LNot (And (PR2S (0x02), PR2)))
  1554. {
  1555. And (VIS, Zero, VIS)
  1556. }
  1557.  
  1558. Return (PLDP)
  1559. }
  1560. }
  1561.  
  1562. Device (HS03)
  1563. {
  1564. Name (_ADR, 0x03) // _ADR: Address
  1565. Name (_STA, 0x0F) // _STA: Status
  1566. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1567. {
  1568. Name (UPCP, Package (0x04)
  1569. {
  1570. 0xFF,
  1571. 0x03,
  1572. Zero,
  1573. Zero
  1574. })
  1575. If (LNot (And (PR2S (0x03), PR2)))
  1576. {
  1577. Store (Zero, Index (UPCP, Zero))
  1578. }
  1579.  
  1580. Return (UPCP)
  1581. }
  1582.  
  1583. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1584. {
  1585. Name (PLDP, Package (0x01)
  1586. {
  1587. Buffer (0x10)
  1588. {
  1589. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  1590. /* 0008 */ 0x71, 0x0C, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00
  1591. }
  1592. })
  1593. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1594. If (LNot (And (PR2S (0x03), PR2)))
  1595. {
  1596. And (VIS, Zero, VIS)
  1597. }
  1598.  
  1599. If (LEqual (And (CDID, 0xF000), 0x9000))
  1600. {
  1601. And (VIS, Zero, VIS)
  1602. }
  1603.  
  1604. Return (PLDP)
  1605. }
  1606. }
  1607.  
  1608. Device (HS04)
  1609. {
  1610. Name (_ADR, 0x04) // _ADR: Address
  1611. Name (_STA, 0x0F) // _STA: Status
  1612. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1613. {
  1614. Name (UPCP, Package (0x04)
  1615. {
  1616. 0xFF,
  1617. 0x03,
  1618. Zero,
  1619. Zero
  1620. })
  1621. If (LNot (And (PR2S (0x04), PR2)))
  1622. {
  1623. Store (Zero, Index (UPCP, Zero))
  1624. }
  1625.  
  1626. Return (UPCP)
  1627. }
  1628.  
  1629. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1630. {
  1631. Name (PLDP, Package (0x01)
  1632. {
  1633. Buffer (0x10)
  1634. {
  1635. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  1636. /* 0008 */ 0x71, 0x0C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00
  1637. }
  1638. })
  1639. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1640. If (LNot (And (PR2S (0x04), PR2)))
  1641. {
  1642. And (VIS, Zero, VIS)
  1643. }
  1644.  
  1645. Return (PLDP)
  1646. }
  1647. }
  1648.  
  1649. Device (HS05)
  1650. {
  1651. Name (_ADR, 0x05) // _ADR: Address
  1652. Name (_STA, 0x0F) // _STA: Status
  1653. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1654. {
  1655. Name (UPCP, Package (0x04)
  1656. {
  1657. 0xFF,
  1658. Zero,
  1659. Zero,
  1660. Zero
  1661. })
  1662. If (LNot (And (PR2S (0x05), PR2)))
  1663. {
  1664. Store (Zero, Index (UPCP, Zero))
  1665. }
  1666.  
  1667. Return (UPCP)
  1668. }
  1669.  
  1670. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1671. {
  1672. Name (PLDP, Package (0x01)
  1673. {
  1674. Buffer (0x10)
  1675. {
  1676. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1677. /* 0008 */ 0x69, 0x0C, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00
  1678. }
  1679. })
  1680. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1681. If (LNot (And (PR2S (0x05), PR2)))
  1682. {
  1683. And (VIS, Zero, VIS)
  1684. }
  1685.  
  1686. Return (PLDP)
  1687. }
  1688. }
  1689.  
  1690. Device (HS06)
  1691. {
  1692. Name (_ADR, 0x06) // _ADR: Address
  1693. Name (_STA, 0x0F) // _STA: Status
  1694. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1695. {
  1696. Name (UPCP, Package (0x04)
  1697. {
  1698. 0xFF,
  1699. Zero,
  1700. Zero,
  1701. Zero
  1702. })
  1703. If (LNot (And (PR2S (0x06), PR2)))
  1704. {
  1705. Store (Zero, Index (UPCP, Zero))
  1706. }
  1707.  
  1708. Return (UPCP)
  1709. }
  1710.  
  1711. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1712. {
  1713. Name (PLDP, Package (0x01)
  1714. {
  1715. Buffer (0x10)
  1716. {
  1717. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1718. /* 0008 */ 0x69, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00
  1719. }
  1720. })
  1721. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1722. If (LNot (And (PR2S (0x06), PR2)))
  1723. {
  1724. And (VIS, Zero, VIS)
  1725. }
  1726.  
  1727. Return (PLDP)
  1728. }
  1729. }
  1730.  
  1731. Device (HS07)
  1732. {
  1733. Name (_ADR, 0x07) // _ADR: Address
  1734. Name (_STA, 0x0F) // _STA: Status
  1735. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1736. {
  1737. Name (UPCP, Package (0x04)
  1738. {
  1739. 0xFF,
  1740. Zero,
  1741. Zero,
  1742. Zero
  1743. })
  1744. If (LNot (And (PR2S (0x07), PR2)))
  1745. {
  1746. Store (Zero, Index (UPCP, Zero))
  1747. }
  1748.  
  1749. Return (UPCP)
  1750. }
  1751.  
  1752. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1753. {
  1754. Name (PLDP, Package (0x01)
  1755. {
  1756. Buffer (0x10)
  1757. {
  1758. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1759. /* 0008 */ 0x71, 0x0C, 0x80, 0x03, 0x00, 0x00, 0x00, 0x00
  1760. }
  1761. })
  1762. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1763. If (LNot (And (PR2S (0x07), PR2)))
  1764. {
  1765. And (VIS, Zero, VIS)
  1766. }
  1767.  
  1768. Return (PLDP)
  1769. }
  1770. }
  1771.  
  1772. Device (HS08)
  1773. {
  1774. Name (_ADR, 0x08) // _ADR: Address
  1775. Name (_STA, 0x0F) // _STA: Status
  1776. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1777. {
  1778. Name (UPCP, Package (0x04)
  1779. {
  1780. 0xFF,
  1781. Zero,
  1782. Zero,
  1783. Zero
  1784. })
  1785. If (LNot (And (PR2S (0x08), PR2)))
  1786. {
  1787. Store (Zero, Index (UPCP, Zero))
  1788. }
  1789.  
  1790. Return (UPCP)
  1791. }
  1792.  
  1793. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1794. {
  1795. Name (PLDP, Package (0x01)
  1796. {
  1797. Buffer (0x10)
  1798. {
  1799. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1800. /* 0008 */ 0x71, 0x0C, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00
  1801. }
  1802. })
  1803. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1804. If (LNot (And (PR2S (0x08), PR2)))
  1805. {
  1806. And (VIS, Zero, VIS)
  1807. }
  1808.  
  1809. Return (PLDP)
  1810. }
  1811. }
  1812.  
  1813. Device (HS09)
  1814. {
  1815. Name (_ADR, 0x09) // _ADR: Address
  1816. Name (_STA, 0x0F) // _STA: Status
  1817. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1818. {
  1819. Name (UPCP, Package (0x04)
  1820. {
  1821. 0xFF,
  1822. 0x03,
  1823. Zero,
  1824. Zero
  1825. })
  1826. If (LNot (And (PR2S (0x09), PR2)))
  1827. {
  1828. Store (Zero, Index (UPCP, Zero))
  1829. }
  1830.  
  1831. Return (UPCP)
  1832. }
  1833.  
  1834. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1835. {
  1836. Name (PLDP, Package (0x01)
  1837. {
  1838. Buffer (0x10)
  1839. {
  1840. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  1841. /* 0008 */ 0x71, 0x0C, 0x80, 0x04, 0x00, 0x00, 0x00, 0x00
  1842. }
  1843. })
  1844. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1845. If (LNot (And (PR2S (0x09), PR2)))
  1846. {
  1847. And (VIS, Zero, VIS)
  1848. }
  1849.  
  1850. If (LEqual (And (CDID, 0xF000), 0x9000))
  1851. {
  1852. And (VIS, Zero, VIS)
  1853. }
  1854.  
  1855. Return (PLDP)
  1856. }
  1857. }
  1858.  
  1859. Device (HS10)
  1860. {
  1861. Method (_ADR, 0, Serialized) // _ADR: Address
  1862. {
  1863. If (LEqual (And (CDID, 0xF000), 0x8000))
  1864. {
  1865. Return (0x0A)
  1866. }
  1867. Else
  1868. {
  1869. Return (0xFA)
  1870. }
  1871. }
  1872.  
  1873. Method (_STA, 0, Serialized) // _STA: Status
  1874. {
  1875. If (LEqual (And (CDID, 0xF000), 0x8000))
  1876. {
  1877. Return (0x0F)
  1878. }
  1879. Else
  1880. {
  1881. Return (Zero)
  1882. }
  1883. }
  1884.  
  1885. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1886. {
  1887. Name (UPCP, Package (0x04)
  1888. {
  1889. 0xFF,
  1890. 0x03,
  1891. Zero,
  1892. Zero
  1893. })
  1894. If (LNot (And (PR2S (0x0A), PR2)))
  1895. {
  1896. Store (Zero, Index (UPCP, Zero))
  1897. }
  1898.  
  1899. Return (UPCP)
  1900. }
  1901.  
  1902. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1903. {
  1904. Name (PLDP, Package (0x01)
  1905. {
  1906. Buffer (0x10)
  1907. {
  1908. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  1909. /* 0008 */ 0x71, 0x0C, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00
  1910. }
  1911. })
  1912. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1913. If (LNot (And (PR2S (0x0A), PR2)))
  1914. {
  1915. And (VIS, Zero, VIS)
  1916. }
  1917.  
  1918. Return (PLDP)
  1919. }
  1920. }
  1921.  
  1922. Device (HS11)
  1923. {
  1924. Method (_ADR, 0, Serialized) // _ADR: Address
  1925. {
  1926. If (LEqual (And (CDID, 0xF000), 0x8000))
  1927. {
  1928. Return (0x0B)
  1929. }
  1930. Else
  1931. {
  1932. Return (0xFB)
  1933. }
  1934. }
  1935.  
  1936. Method (_STA, 0, Serialized) // _STA: Status
  1937. {
  1938. If (LEqual (And (CDID, 0xF000), 0x8000))
  1939. {
  1940. Return (0x0F)
  1941. }
  1942. Else
  1943. {
  1944. Return (Zero)
  1945. }
  1946. }
  1947.  
  1948. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  1949. {
  1950. Name (UPCP, Package (0x04)
  1951. {
  1952. 0xFF,
  1953. 0xFF,
  1954. Zero,
  1955. Zero
  1956. })
  1957. If (LNot (And (PR2S (0x0B), PR2)))
  1958. {
  1959. Store (Zero, Index (UPCP, Zero))
  1960. }
  1961.  
  1962. Return (UPCP)
  1963. }
  1964.  
  1965. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  1966. {
  1967. Name (PLDP, Package (0x01)
  1968. {
  1969. Buffer (0x10)
  1970. {
  1971. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1972. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  1973. }
  1974. })
  1975. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  1976. If (LNot (And (PR2S (0x0B), PR2)))
  1977. {
  1978. And (VIS, Zero, VIS)
  1979. }
  1980.  
  1981. Return (PLDP)
  1982. }
  1983. }
  1984.  
  1985. Device (HS12)
  1986. {
  1987. Method (_ADR, 0, Serialized) // _ADR: Address
  1988. {
  1989. If (LEqual (And (CDID, 0xF000), 0x8000))
  1990. {
  1991. Return (0x0C)
  1992. }
  1993. Else
  1994. {
  1995. Return (0xFC)
  1996. }
  1997. }
  1998.  
  1999. Method (_STA, 0, Serialized) // _STA: Status
  2000. {
  2001. If (LEqual (And (CDID, 0xF000), 0x8000))
  2002. {
  2003. Return (0x0F)
  2004. }
  2005. Else
  2006. {
  2007. Return (Zero)
  2008. }
  2009. }
  2010.  
  2011. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2012. {
  2013. Name (UPCP, Package (0x04)
  2014. {
  2015. 0xFF,
  2016. 0xFF,
  2017. Zero,
  2018. Zero
  2019. })
  2020. If (LNot (And (PR2S (0x0C), PR2)))
  2021. {
  2022. Store (Zero, Index (UPCP, Zero))
  2023. }
  2024.  
  2025. Return (UPCP)
  2026. }
  2027.  
  2028. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2029. {
  2030. Name (PLDP, Package (0x01)
  2031. {
  2032. Buffer (0x10)
  2033. {
  2034. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  2035. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  2036. }
  2037. })
  2038. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2039. If (LNot (And (PR2S (0x0C), PR2)))
  2040. {
  2041. And (VIS, Zero, VIS)
  2042. }
  2043.  
  2044. Return (PLDP)
  2045. }
  2046. }
  2047.  
  2048. Device (HS13)
  2049. {
  2050. Method (_ADR, 0, Serialized) // _ADR: Address
  2051. {
  2052. If (LEqual (And (CDID, 0xF000), 0x8000))
  2053. {
  2054. Return (0x0D)
  2055. }
  2056. Else
  2057. {
  2058. Return (0xFD)
  2059. }
  2060. }
  2061.  
  2062. Method (_STA, 0, Serialized) // _STA: Status
  2063. {
  2064. If (LEqual (And (CDID, 0xF000), 0x8000))
  2065. {
  2066. Return (0x0F)
  2067. }
  2068. Else
  2069. {
  2070. Return (Zero)
  2071. }
  2072. }
  2073.  
  2074. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2075. {
  2076. Name (UPCP, Package (0x04)
  2077. {
  2078. 0xFF,
  2079. 0xFF,
  2080. Zero,
  2081. Zero
  2082. })
  2083. If (LNot (And (PR2S (0x0D), PR2)))
  2084. {
  2085. Store (Zero, Index (UPCP, Zero))
  2086. }
  2087.  
  2088. Return (UPCP)
  2089. }
  2090.  
  2091. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2092. {
  2093. Name (PLDP, Package (0x01)
  2094. {
  2095. Buffer (0x10)
  2096. {
  2097. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  2098. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  2099. }
  2100. })
  2101. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2102. If (LNot (And (PR2S (0x0D), PR2)))
  2103. {
  2104. And (VIS, Zero, VIS)
  2105. }
  2106.  
  2107. Return (PLDP)
  2108. }
  2109. }
  2110.  
  2111. Device (HS14)
  2112. {
  2113. Name (_ADR, 0x0E) // _ADR: Address
  2114. Method (_STA, 0, Serialized) // _STA: Status
  2115. {
  2116. If (LEqual (And (CDID, 0xF000), 0x8000))
  2117. {
  2118. Return (0x0F)
  2119. }
  2120. Else
  2121. {
  2122. Return (Zero)
  2123. }
  2124. }
  2125.  
  2126. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2127. {
  2128. Name (UPCP, Package (0x04)
  2129. {
  2130. 0xFF,
  2131. 0xFF,
  2132. Zero,
  2133. Zero
  2134. })
  2135. If (LNot (And (PR2S (0x0E), PR2)))
  2136. {
  2137. Store (Zero, Index (UPCP, Zero))
  2138. }
  2139.  
  2140. Return (UPCP)
  2141. }
  2142.  
  2143. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2144. {
  2145. Name (PLDP, Package (0x01)
  2146. {
  2147. Buffer (0x10)
  2148. {
  2149. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  2150. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  2151. }
  2152. })
  2153. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2154. If (LNot (And (PR2S (0x0E), PR2)))
  2155. {
  2156. And (VIS, Zero, VIS)
  2157. }
  2158.  
  2159. Return (PLDP)
  2160. }
  2161. }
  2162.  
  2163. Device (HS15)
  2164. {
  2165. Name (_ADR, 0x0F) // _ADR: Address
  2166. Method (_STA, 0, Serialized) // _STA: Status
  2167. {
  2168. If (LEqual (And (CDID, 0xF000), 0x8000))
  2169. {
  2170. Return (0x0F)
  2171. }
  2172. Else
  2173. {
  2174. Return (Zero)
  2175. }
  2176. }
  2177.  
  2178. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2179. {
  2180. Name (UPCP, Package (0x04)
  2181. {
  2182. Zero,
  2183. Zero,
  2184. Zero,
  2185. Zero
  2186. })
  2187. If (LNot (And (PR2S (0x0F), PR2)))
  2188. {
  2189. Store (Zero, Index (UPCP, Zero))
  2190. }
  2191.  
  2192. Return (UPCP)
  2193. }
  2194.  
  2195. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2196. {
  2197. Name (PLDP, Package (0x01)
  2198. {
  2199. Buffer (0x10)
  2200. {
  2201. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  2202. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  2203. }
  2204. })
  2205. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2206. If (LNot (And (PR2S (0x0F), PR2)))
  2207. {
  2208. And (VIS, Zero, VIS)
  2209. }
  2210.  
  2211. Return (PLDP)
  2212. }
  2213. }
  2214.  
  2215. Device (SSP1)
  2216. {
  2217. Method (_ADR, 0, Serialized) // _ADR: Address
  2218. {
  2219. If (LEqual (And (CDID, 0xF000), 0x8000))
  2220. {
  2221. Return (0x10)
  2222. }
  2223. Else
  2224. {
  2225. Return (0x0A)
  2226. }
  2227. }
  2228.  
  2229. Name (_STA, 0x0F) // _STA: Status
  2230. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2231. {
  2232. Name (UPCP, Package (0x04)
  2233. {
  2234. 0xFF,
  2235. 0x03,
  2236. Zero,
  2237. Zero
  2238. })
  2239. If (LNot (And (PR3, One)))
  2240. {
  2241. Store (Zero, Index (UPCP, Zero))
  2242. }
  2243.  
  2244. Return (UPCP)
  2245. }
  2246.  
  2247. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2248. {
  2249. Name (PLDP, Package (0x01)
  2250. {
  2251. Buffer (0x10)
  2252. {
  2253. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  2254. /* 0008 */ 0x69, 0x0C, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00
  2255. }
  2256. })
  2257. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2258. If (LNot (And (PR3, One)))
  2259. {
  2260. And (VIS, Zero, VIS)
  2261. }
  2262.  
  2263. Return (PLDP)
  2264. }
  2265. }
  2266.  
  2267. Device (SSP2)
  2268. {
  2269. Method (_ADR, 0, Serialized) // _ADR: Address
  2270. {
  2271. If (LEqual (And (CDID, 0xF000), 0x8000))
  2272. {
  2273. Return (0x11)
  2274. }
  2275. Else
  2276. {
  2277. Return (0x0B)
  2278. }
  2279. }
  2280.  
  2281. Name (_STA, 0x0F) // _STA: Status
  2282. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2283. {
  2284. Name (UPCP, Package (0x04)
  2285. {
  2286. 0xFF,
  2287. 0x03,
  2288. Zero,
  2289. Zero
  2290. })
  2291. If (LNot (And (PR3, 0x02)))
  2292. {
  2293. Store (Zero, Index (UPCP, Zero))
  2294. }
  2295.  
  2296. Return (UPCP)
  2297. }
  2298.  
  2299. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2300. {
  2301. Name (PLDP, Package (0x01)
  2302. {
  2303. Buffer (0x10)
  2304. {
  2305. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  2306. /* 0008 */ 0x69, 0x0C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
  2307. }
  2308. })
  2309. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2310. If (LNot (And (PR3, 0x02)))
  2311. {
  2312. And (VIS, Zero, VIS)
  2313. }
  2314.  
  2315. Return (PLDP)
  2316. }
  2317. }
  2318.  
  2319. Device (SSP3)
  2320. {
  2321. Method (_ADR, 0, Serialized) // _ADR: Address
  2322. {
  2323. If (LEqual (And (CDID, 0xF000), 0x8000))
  2324. {
  2325. Return (0x12)
  2326. }
  2327. Else
  2328. {
  2329. Return (0x0C)
  2330. }
  2331. }
  2332.  
  2333. Name (_STA, 0x0F) // _STA: Status
  2334. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2335. {
  2336. Name (UPCP, Package (0x04)
  2337. {
  2338. 0xFF,
  2339. 0x03,
  2340. Zero,
  2341. Zero
  2342. })
  2343. If (LNot (And (PR3, 0x04)))
  2344. {
  2345. Store (Zero, Index (UPCP, Zero))
  2346. }
  2347.  
  2348. Return (UPCP)
  2349. }
  2350.  
  2351. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2352. {
  2353. Name (PLDP, Package (0x01)
  2354. {
  2355. Buffer (0x10)
  2356. {
  2357. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  2358. /* 0008 */ 0x71, 0x0C, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00
  2359. }
  2360. })
  2361. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2362. If (LNot (And (PR3, 0x04)))
  2363. {
  2364. And (VIS, Zero, VIS)
  2365. }
  2366.  
  2367. Return (PLDP)
  2368. }
  2369. }
  2370.  
  2371. Device (SSP4)
  2372. {
  2373. Method (_ADR, 0, Serialized) // _ADR: Address
  2374. {
  2375. If (LEqual (And (CDID, 0xF000), 0x8000))
  2376. {
  2377. Return (0x13)
  2378. }
  2379. Else
  2380. {
  2381. Return (0x0D)
  2382. }
  2383. }
  2384.  
  2385. Name (_STA, 0x0F) // _STA: Status
  2386. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2387. {
  2388. Name (UPCP, Package (0x04)
  2389. {
  2390. 0xFF,
  2391. 0x03,
  2392. Zero,
  2393. Zero
  2394. })
  2395. If (LNot (And (PR3, 0x08)))
  2396. {
  2397. Store (Zero, Index (UPCP, Zero))
  2398. }
  2399.  
  2400. Return (UPCP)
  2401. }
  2402.  
  2403. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2404. {
  2405. Name (PLDP, Package (0x01)
  2406. {
  2407. Buffer (0x10)
  2408. {
  2409. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  2410. /* 0008 */ 0x71, 0x0C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00
  2411. }
  2412. })
  2413. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2414. If (LNot (And (PR3, 0x08)))
  2415. {
  2416. And (VIS, Zero, VIS)
  2417. }
  2418.  
  2419. Return (PLDP)
  2420. }
  2421. }
  2422.  
  2423. Device (SSP5)
  2424. {
  2425. Name (_ADR, 0x14) // _ADR: Address
  2426. Method (_STA, 0, Serialized) // _STA: Status
  2427. {
  2428. If (LEqual (And (CDID, 0xF000), 0x8000))
  2429. {
  2430. Return (0x0F)
  2431. }
  2432. Else
  2433. {
  2434. Return (Zero)
  2435. }
  2436. }
  2437.  
  2438. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2439. {
  2440. Name (UPCP, Package (0x04)
  2441. {
  2442. 0xFF,
  2443. 0x03,
  2444. Zero,
  2445. Zero
  2446. })
  2447. If (LNot (And (PR3, 0x10)))
  2448. {
  2449. Store (Zero, Index (UPCP, Zero))
  2450. }
  2451.  
  2452. Return (UPCP)
  2453. }
  2454.  
  2455. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2456. {
  2457. Name (PLDP, Package (0x01)
  2458. {
  2459. Buffer (0x10)
  2460. {
  2461. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  2462. /* 0008 */ 0x71, 0x0C, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00
  2463. }
  2464. })
  2465. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2466. If (LNot (And (PR3, 0x10)))
  2467. {
  2468. And (VIS, Zero, VIS)
  2469. }
  2470.  
  2471. Return (PLDP)
  2472. }
  2473. }
  2474.  
  2475. Device (SSP6)
  2476. {
  2477. Name (_ADR, 0x15) // _ADR: Address
  2478. Method (_STA, 0, Serialized) // _STA: Status
  2479. {
  2480. If (LEqual (And (CDID, 0xF000), 0x8000))
  2481. {
  2482. Return (0x0F)
  2483. }
  2484. Else
  2485. {
  2486. Return (Zero)
  2487. }
  2488. }
  2489.  
  2490. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  2491. {
  2492. Name (UPCP, Package (0x04)
  2493. {
  2494. 0xFF,
  2495. 0x03,
  2496. Zero,
  2497. Zero
  2498. })
  2499. If (LNot (And (PR3, 0x20)))
  2500. {
  2501. Store (Zero, Index (UPCP, Zero))
  2502. }
  2503.  
  2504. Return (UPCP)
  2505. }
  2506.  
  2507. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  2508. {
  2509. Name (PLDP, Package (0x01)
  2510. {
  2511. Buffer (0x10)
  2512. {
  2513. /* 0000 */ 0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  2514. /* 0008 */ 0x71, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00
  2515. }
  2516. })
  2517. CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  2518. If (LNot (And (PR3, 0x20)))
  2519. {
  2520. And (VIS, Zero, VIS)
  2521. }
  2522.  
  2523. Return (PLDP)
  2524. }
  2525. }
  2526. }
  2527.  
  2528. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  2529. {
  2530. Return (GPRW (0x6D, 0x04))
  2531. }
  2532. }
  2533.  
  2534. Device (HDEF)
  2535. {
  2536. Name (_ADR, 0x001B0000) // _ADR: Address
  2537. OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)
  2538. Field (HDAR, WordAcc, NoLock, Preserve)
  2539. {
  2540. DCKA, 1,
  2541. Offset (0x01),
  2542. DCKM, 1,
  2543. , 6,
  2544. DCKS, 1,
  2545. Offset (0x08),
  2546. Offset (0x09),
  2547. PMEE, 1,
  2548. , 6,
  2549. PMES, 1
  2550. }
  2551.  
  2552. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  2553. {
  2554. Return (GPRW (0x6D, 0x04))
  2555. }
  2556. }
  2557.  
  2558. Scope (\_SB.PCI0)
  2559. {
  2560. Device (SIRC)
  2561. {
  2562. Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
  2563. Name (_UID, 0x04) // _UID: Unique ID
  2564. Method (_STA, 0, NotSerialized) // _STA: Status
  2565. {
  2566. If (LLess (OSYS, 0x07DC))
  2567. {
  2568. Return (Zero)
  2569. }
  2570.  
  2571. If (LEqual (And (CDID, 0xF000), 0x8000))
  2572. {
  2573. Return (Zero)
  2574. }
  2575.  
  2576. Return (0x0F)
  2577. }
  2578.  
  2579. Name (BUF1, ResourceTemplate ()
  2580. {
  2581. Memory32Fixed (ReadWrite,
  2582. 0x00000000, // Address Base
  2583. 0x00001000, // Address Length
  2584. _Y21)
  2585. })
  2586. Name (BUF2, ResourceTemplate ()
  2587. {
  2588. Memory32Fixed (ReadWrite,
  2589. 0xFE104000, // Address Base
  2590. 0x00001000, // Address Length
  2591. _Y22)
  2592. })
  2593. Name (BUF3, ResourceTemplate ()
  2594. {
  2595. Memory32Fixed (ReadWrite,
  2596. 0xFE106000, // Address Base
  2597. 0x00001000, // Address Length
  2598. _Y23)
  2599. })
  2600. Name (BUF4, ResourceTemplate ()
  2601. {
  2602. Memory32Fixed (ReadWrite,
  2603. 0x00000000, // Address Base
  2604. 0x00001000, // Address Length
  2605. _Y24)
  2606. })
  2607. Name (BUF5, ResourceTemplate ()
  2608. {
  2609. Memory32Fixed (ReadWrite,
  2610. 0x00000000, // Address Base
  2611. 0x00001000, // Address Length
  2612. _Y25)
  2613. })
  2614. Name (BUF6, ResourceTemplate ()
  2615. {
  2616. Memory32Fixed (ReadWrite,
  2617. 0x00000000, // Address Base
  2618. 0x00001000, // Address Length
  2619. _Y26)
  2620. })
  2621. Name (BUF7, ResourceTemplate ()
  2622. {
  2623. Memory32Fixed (ReadWrite,
  2624. 0xFE10E000, // Address Base
  2625. 0x00001000, // Address Length
  2626. _Y27)
  2627. })
  2628. Name (BUF8, ResourceTemplate ()
  2629. {
  2630. Memory32Fixed (ReadWrite,
  2631. 0xFE112000, // Address Base
  2632. 0x00001000, // Address Length
  2633. _Y28)
  2634. })
  2635. Name (BUFL, ResourceTemplate ()
  2636. {
  2637. Memory32Fixed (ReadWrite,
  2638. 0x00000000, // Address Base
  2639. 0x00000008, // Address Length
  2640. _Y29)
  2641. })
  2642. Name (BUFH, ResourceTemplate ()
  2643. {
  2644. Memory32Fixed (ReadWrite,
  2645. 0x00000000, // Address Base
  2646. 0x00000FEC, // Address Length
  2647. _Y2A)
  2648. })
  2649. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  2650. {
  2651. Store (ResourceTemplate ()
  2652. {
  2653. }, Local0)
  2654. CreateDWordField (BUF1, \_SB.PCI0.SIRC._Y21._BAS, BR01) // _BAS: Base Address
  2655. CreateDWordField (BUF2, \_SB.PCI0.SIRC._Y22._BAS, BR02) // _BAS: Base Address
  2656. CreateDWordField (BUF3, \_SB.PCI0.SIRC._Y23._BAS, BR03) // _BAS: Base Address
  2657. CreateDWordField (BUF4, \_SB.PCI0.SIRC._Y24._BAS, BR04) // _BAS: Base Address
  2658. CreateDWordField (BUF5, \_SB.PCI0.SIRC._Y25._BAS, BR05) // _BAS: Base Address
  2659. CreateDWordField (BUF6, \_SB.PCI0.SIRC._Y26._BAS, BR06) // _BAS: Base Address
  2660. CreateDWordField (BUF7, \_SB.PCI0.SIRC._Y27._BAS, BR07) // _BAS: Base Address
  2661. CreateDWordField (BUF8, \_SB.PCI0.SIRC._Y28._BAS, BR08) // _BAS: Base Address
  2662. If (LNotEqual (BR01, Zero))
  2663. {
  2664. ConcatenateResTemplate (Local0, BUF1, Local0)
  2665. }
  2666.  
  2667. If (LNotEqual (BR02, Zero))
  2668. {
  2669. ConcatenateResTemplate (Local0, BUF2, Local0)
  2670. }
  2671.  
  2672. If (LNotEqual (BR03, Zero))
  2673. {
  2674. ConcatenateResTemplate (Local0, BUF3, Local0)
  2675. }
  2676.  
  2677. If (LNotEqual (BR04, Zero))
  2678. {
  2679. ConcatenateResTemplate (Local0, BUF4, Local0)
  2680. }
  2681.  
  2682. If (LNotEqual (BR05, Zero))
  2683. {
  2684. ConcatenateResTemplate (Local0, BUF5, Local0)
  2685. }
  2686.  
  2687. If (LNotEqual (BR06, Zero))
  2688. {
  2689. ConcatenateResTemplate (Local0, BUF6, Local0)
  2690. }
  2691.  
  2692. If (LNotEqual (BR07, Zero))
  2693. {
  2694. ConcatenateResTemplate (Local0, BUF7, Local0)
  2695. }
  2696.  
  2697. If (LNotEqual (BR08, Zero))
  2698. {
  2699. ConcatenateResTemplate (Local0, BUF8, Local0)
  2700. OperationRegion (SDCH, SystemMemory, BR08, 0x40)
  2701. Field (SDCH, DWordAcc, NoLock, Preserve)
  2702. {
  2703. Offset (0x10),
  2704. BAR0, 32
  2705. }
  2706.  
  2707. CreateDWordField (BUFL, \_SB.PCI0.SIRC._Y29._BAS, LBAS) // _BAS: Base Address
  2708. CreateDWordField (BUFH, \_SB.PCI0.SIRC._Y2A._BAS, HBAS) // _BAS: Base Address
  2709. Add (BAR0, 0x1000, LBAS)
  2710. Add (BAR0, 0x1014, HBAS)
  2711. ConcatenateResTemplate (Local0, BUFL, Local0)
  2712. ConcatenateResTemplate (Local0, BUFH, Local0)
  2713. }
  2714.  
  2715. Return (Local0)
  2716. }
  2717.  
  2718. Method (CNTR, 1, Serialized)
  2719. {
  2720. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  2721. While (One)
  2722. {
  2723. Store (ToInteger (Arg0), _T_0)
  2724. If (LEqual (_T_0, One))
  2725. {
  2726. CreateDWordField (BUF1, \_SB.PCI0.SIRC._Y21._BAS, BAR1) // _BAS: Base Address
  2727. Return (BAR1)
  2728. }
  2729. Else
  2730. {
  2731. If (LEqual (_T_0, 0x02))
  2732. {
  2733. CreateDWordField (BUF2, \_SB.PCI0.SIRC._Y22._BAS, BAR2) // _BAS: Base Address
  2734. Return (BAR2)
  2735. }
  2736. Else
  2737. {
  2738. If (LEqual (_T_0, 0x03))
  2739. {
  2740. CreateDWordField (BUF3, \_SB.PCI0.SIRC._Y23._BAS, BAR3) // _BAS: Base Address
  2741. Return (BAR3)
  2742. }
  2743. Else
  2744. {
  2745. If (LEqual (_T_0, 0x04))
  2746. {
  2747. CreateDWordField (BUF4, \_SB.PCI0.SIRC._Y24._BAS, BAR4) // _BAS: Base Address
  2748. Return (BAR4)
  2749. }
  2750. Else
  2751. {
  2752. If (LEqual (_T_0, 0x05))
  2753. {
  2754. CreateDWordField (BUF5, \_SB.PCI0.SIRC._Y25._BAS, BAR5) // _BAS: Base Address
  2755. Return (BAR5)
  2756. }
  2757. Else
  2758. {
  2759. If (LEqual (_T_0, 0x06))
  2760. {
  2761. CreateDWordField (BUF6, \_SB.PCI0.SIRC._Y26._BAS, BAR6) // _BAS: Base Address
  2762. Return (BAR6)
  2763. }
  2764. Else
  2765. {
  2766. If (LEqual (_T_0, 0x07))
  2767. {
  2768. CreateDWordField (BUF7, \_SB.PCI0.SIRC._Y27._BAS, BAR7) // _BAS: Base Address
  2769. Return (BAR7)
  2770. }
  2771. Else
  2772. {
  2773. If (LEqual (_T_0, 0x08))
  2774. {
  2775. CreateDWordField (BUF8, \_SB.PCI0.SIRC._Y28._BAS, BAR8) // _BAS: Base Address
  2776. Return (BAR8)
  2777. }
  2778. Else
  2779. {
  2780. Return (0xFFFFFFFF)
  2781. }
  2782. }
  2783. }
  2784. }
  2785. }
  2786. }
  2787. }
  2788. }
  2789.  
  2790. Break
  2791. }
  2792. }
  2793. }
  2794.  
  2795. Device (GPI0)
  2796. {
  2797. Name (_HID, "INT33C7") // _HID: Hardware ID
  2798. Name (_CID, "INT33C7") // _CID: Compatible ID
  2799. Name (_UID, One) // _UID: Unique ID
  2800. Name (RBUF, ResourceTemplate ()
  2801. {
  2802. DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  2803. 0x00000000, // Granularity
  2804. 0x00001C00, // Range Minimum
  2805. 0x00001FFF, // Range Maximum
  2806. 0x00000000, // Translation Offset
  2807. 0x00000400, // Length
  2808. ,, _Y2B, TypeStatic)
  2809. })
  2810. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  2811. {
  2812. Return (RBUF)
  2813. }
  2814.  
  2815. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  2816. {
  2817. Return (CRID)
  2818. }
  2819.  
  2820. CreateDWordField (RBUF, \_SB.PCI0.GPI0._Y2B._MIN, BVAL) // _MIN: Minimum Base Address
  2821. Method (_STA, 0, NotSerialized) // _STA: Status
  2822. {
  2823. If (LEqual (BVAL, Zero))
  2824. {
  2825. Return (Zero)
  2826. }
  2827.  
  2828. If (LLess (OSYS, 0x07DC))
  2829. {
  2830. Return (Zero)
  2831. }
  2832.  
  2833. If (LEqual (S0ID, One))
  2834. {
  2835. Return (0x0F)
  2836. }
  2837.  
  2838. Return (Zero)
  2839. }
  2840. }
  2841.  
  2842. Device (SDMA)
  2843. {
  2844. Name (_HID, "INTL9C60") // _HID: Hardware ID
  2845. Name (_UID, One) // _UID: Unique ID
  2846. Name (_ADR, 0x00150000) // _ADR: Address
  2847. Name (RBUF, ResourceTemplate ()
  2848. {
  2849. Memory32Fixed (ReadWrite,
  2850. 0x00000000, // Address Base
  2851. 0x00001000, // Address Length
  2852. _Y2C)
  2853. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  2854. {
  2855. 0x00000014,
  2856. }
  2857. })
  2858. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  2859. {
  2860. Return (RBUF)
  2861. }
  2862.  
  2863. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  2864. {
  2865. Return (CRID)
  2866. }
  2867.  
  2868. Method (PTD3, 0, NotSerialized)
  2869. {
  2870. If (LNotEqual (^^SIRC.CNTR (One), Zero))
  2871. {
  2872. Add (^^SIRC.CNTR (One), 0x84, Local0)
  2873. OperationRegion (DMB1, SystemMemory, Local0, 0x04)
  2874. Field (DMB1, DWordAcc, NoLock, Preserve)
  2875. {
  2876. TEMP, 32
  2877. }
  2878.  
  2879. Or (TEMP, 0x03, TEMP)
  2880. }
  2881. }
  2882.  
  2883. CreateDWordField (RBUF, \_SB.PCI0.SDMA._Y2C._BAS, BVAL) // _BAS: Base Address
  2884. Method (_STA, 0, NotSerialized) // _STA: Status
  2885. {
  2886. If (LEqual (BVAL, Zero))
  2887. {
  2888. Return (Zero)
  2889. }
  2890.  
  2891. If (LLess (OSYS, 0x07DC))
  2892. {
  2893. Return (Zero)
  2894. }
  2895.  
  2896. If (LAnd (LEqual (DOSD, 0x02), LEqual (OSYS, 0x07DC)))
  2897. {
  2898. PTD3 ()
  2899. Return (Zero)
  2900. }
  2901.  
  2902. If (LEqual (S0ID, One))
  2903. {
  2904. Return (0x0F)
  2905. }
  2906.  
  2907. Return (Zero)
  2908. }
  2909. }
  2910.  
  2911. Device (I2C0)
  2912. {
  2913. Name (_HID, "INT33C2") // _HID: Hardware ID
  2914. Name (_CID, "INT33C2") // _CID: Compatible ID
  2915. Name (_UID, One) // _UID: Unique ID
  2916. Name (_ADR, 0x00150001) // _ADR: Address
  2917. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  2918. {
  2919. ADBG ("I2C0 DEP Call")
  2920. If (LEqual (S0ID, One))
  2921. {
  2922. ADBG ("I2C0 DEP")
  2923. Return (Package (0x01)
  2924. {
  2925. PEPD
  2926. })
  2927. }
  2928. Else
  2929. {
  2930. ADBG ("I2C0 DEP NULL")
  2931. Return (Package (0x00) {})
  2932. }
  2933. }
  2934.  
  2935. Method (SSCN, 0, NotSerialized)
  2936. {
  2937. Name (PKG, Package (0x03)
  2938. {
  2939. 0x01B0,
  2940. 0x01FB,
  2941. 0x09
  2942. })
  2943. Store (SSH0, Index (PKG, Zero))
  2944. Store (SSL0, Index (PKG, One))
  2945. Store (SSD0, Index (PKG, 0x02))
  2946. Return (PKG)
  2947. }
  2948.  
  2949. Method (FMCN, 0, NotSerialized)
  2950. {
  2951. Name (PKG, Package (0x03)
  2952. {
  2953. 0x48,
  2954. 0xA0,
  2955. 0x09
  2956. })
  2957. Store (FMH0, Index (PKG, Zero))
  2958. Store (FML0, Index (PKG, One))
  2959. Store (FMD0, Index (PKG, 0x02))
  2960. Return (PKG)
  2961. }
  2962.  
  2963. Method (FPCN, 0, NotSerialized)
  2964. {
  2965. Name (PKG, Package (0x03)
  2966. {
  2967. 0x1A,
  2968. 0x32,
  2969. 0x05
  2970. })
  2971. Store (FPH0, Index (PKG, Zero))
  2972. Store (FPL0, Index (PKG, One))
  2973. Store (FPD0, Index (PKG, 0x02))
  2974. Return (PKG)
  2975. }
  2976.  
  2977. Method (M0D3, 0, NotSerialized)
  2978. {
  2979. Name (PKG, Package (0x01)
  2980. {
  2981. 0xC8
  2982. })
  2983. Store (M0C0, Index (PKG, Zero))
  2984. Return (PKG)
  2985. }
  2986.  
  2987. Method (M1D3, 0, NotSerialized)
  2988. {
  2989. Name (PKG, Package (0x01)
  2990. {
  2991. 0x07D0
  2992. })
  2993. Store (M1C0, Index (PKG, Zero))
  2994. Return (PKG)
  2995. }
  2996.  
  2997. Method (M0D0, 0, NotSerialized)
  2998. {
  2999. Name (PKG, Package (0x01)
  3000. {
  3001. Zero
  3002. })
  3003. Store (M2C0, Index (PKG, Zero))
  3004. Return (PKG)
  3005. }
  3006.  
  3007. Name (RBUF, ResourceTemplate ()
  3008. {
  3009. Memory32Fixed (ReadWrite,
  3010. 0xFE103000, // Address Base
  3011. 0x00001000, // Address Length
  3012. _Y2D)
  3013. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  3014. {
  3015. 0x00000007,
  3016. }
  3017. })
  3018. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3019. {
  3020. Name (DBUF, ResourceTemplate ()
  3021. {
  3022. FixedDMA (0x0018, 0x0004, Width32bit, )
  3023. FixedDMA (0x0019, 0x0005, Width32bit, )
  3024. })
  3025. If (LNotEqual (^^SDMA._STA (), Zero))
  3026. {
  3027. Return (ConcatenateResTemplate (RBUF, DBUF))
  3028. }
  3029. Else
  3030. {
  3031. Return (RBUF)
  3032. }
  3033. }
  3034.  
  3035. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  3036. {
  3037. Return (CRID)
  3038. }
  3039.  
  3040. CreateDWordField (RBUF, \_SB.PCI0.I2C0._Y2D._BAS, BVAL) // _BAS: Base Address
  3041. Method (_STA, 0, NotSerialized) // _STA: Status
  3042. {
  3043. If (LEqual (BVAL, Zero))
  3044. {
  3045. Return (Zero)
  3046. }
  3047.  
  3048. If (LLess (OSYS, 0x07DC))
  3049. {
  3050. Return (Zero)
  3051. }
  3052.  
  3053. If (LEqual (S0ID, One))
  3054. {
  3055. Return (0x0F)
  3056. }
  3057.  
  3058. Return (Zero)
  3059. }
  3060.  
  3061. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  3062. {
  3063. ADBG ("I2C0 Ctrlr D0")
  3064. If (LNotEqual (^^SIRC.CNTR (0x02), Zero))
  3065. {
  3066. Add (^^SIRC.CNTR (0x02), 0x84, Local0)
  3067. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3068. Field (ICB1, DWordAcc, NoLock, Preserve)
  3069. {
  3070. TEMP, 32
  3071. }
  3072.  
  3073. And (TEMP, 0xFFFFFFFC, TEMP)
  3074. Store (TEMP, Local0)
  3075. }
  3076.  
  3077. If (CondRefOf (\_SB.PCI0.I2C0.PS0X))
  3078. {
  3079. PS0X ()
  3080. }
  3081. }
  3082.  
  3083. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  3084. {
  3085. ADBG ("I2C0 Ctrlr D3")
  3086. If (LNotEqual (^^SIRC.CNTR (0x02), Zero))
  3087. {
  3088. Add (^^SIRC.CNTR (0x02), 0x84, Local0)
  3089. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3090. Field (ICB1, DWordAcc, NoLock, Preserve)
  3091. {
  3092. TEMP, 32
  3093. }
  3094.  
  3095. Or (TEMP, 0x03, TEMP)
  3096. Store (TEMP, Local0)
  3097. }
  3098.  
  3099. If (CondRefOf (\_SB.PCI0.I2C0.PS3X))
  3100. {
  3101. PS3X ()
  3102. }
  3103. }
  3104. }
  3105.  
  3106. Device (I2C1)
  3107. {
  3108. Name (_HID, "INT33C3") // _HID: Hardware ID
  3109. Name (_CID, "INT33C3") // _CID: Compatible ID
  3110. Name (_UID, 0x02) // _UID: Unique ID
  3111. Name (_ADR, 0x00150002) // _ADR: Address
  3112. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  3113. {
  3114. ADBG ("I2C1 DEP Call")
  3115. If (LEqual (S0ID, One))
  3116. {
  3117. ADBG ("I2C1 DEP")
  3118. Return (Package (0x01)
  3119. {
  3120. PEPD
  3121. })
  3122. }
  3123. Else
  3124. {
  3125. ADBG ("I2C1 DEP NULL")
  3126. Return (Package (0x00) {})
  3127. }
  3128. }
  3129.  
  3130. Method (SSCN, 0, NotSerialized)
  3131. {
  3132. Name (PKG, Package (0x03)
  3133. {
  3134. 0x01B0,
  3135. 0x01FB,
  3136. 0x09
  3137. })
  3138. Store (SSH1, Index (PKG, Zero))
  3139. Store (SSL1, Index (PKG, One))
  3140. Store (SSD1, Index (PKG, 0x02))
  3141. Return (PKG)
  3142. }
  3143.  
  3144. Method (FMCN, 0, NotSerialized)
  3145. {
  3146. Name (PKG, Package (0x03)
  3147. {
  3148. 0x48,
  3149. 0xA0,
  3150. 0x09
  3151. })
  3152. Store (FMH1, Index (PKG, Zero))
  3153. Store (FML1, Index (PKG, One))
  3154. Store (FMD1, Index (PKG, 0x02))
  3155. Return (PKG)
  3156. }
  3157.  
  3158. Method (FPCN, 0, NotSerialized)
  3159. {
  3160. Name (PKG, Package (0x03)
  3161. {
  3162. 0x1A,
  3163. 0x32,
  3164. 0x05
  3165. })
  3166. Store (FPH1, Index (PKG, Zero))
  3167. Store (FPL1, Index (PKG, One))
  3168. Store (FPD1, Index (PKG, 0x02))
  3169. Return (PKG)
  3170. }
  3171.  
  3172. Method (M0D3, 0, NotSerialized)
  3173. {
  3174. Name (PKG, Package (0x01)
  3175. {
  3176. 0xC8
  3177. })
  3178. Store (M0C1, Index (PKG, Zero))
  3179. Return (PKG)
  3180. }
  3181.  
  3182. Method (M1D3, 0, NotSerialized)
  3183. {
  3184. Name (PKG, Package (0x01)
  3185. {
  3186. 0x07D0
  3187. })
  3188. Store (M1C1, Index (PKG, Zero))
  3189. Return (PKG)
  3190. }
  3191.  
  3192. Method (M0D0, 0, NotSerialized)
  3193. {
  3194. Name (PKG, Package (0x01)
  3195. {
  3196. Zero
  3197. })
  3198. Store (M2C1, Index (PKG, Zero))
  3199. Return (PKG)
  3200. }
  3201.  
  3202. Name (RBUF, ResourceTemplate ()
  3203. {
  3204. Memory32Fixed (ReadWrite,
  3205. 0xFE105000, // Address Base
  3206. 0x00001000, // Address Length
  3207. _Y2E)
  3208. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  3209. {
  3210. 0x00000007,
  3211. }
  3212. })
  3213. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3214. {
  3215. Name (DBUF, ResourceTemplate ()
  3216. {
  3217. FixedDMA (0x001A, 0x0006, Width32bit, )
  3218. FixedDMA (0x001B, 0x0007, Width32bit, )
  3219. })
  3220. If (LNotEqual (^^SDMA._STA (), Zero))
  3221. {
  3222. Return (ConcatenateResTemplate (RBUF, DBUF))
  3223. }
  3224. Else
  3225. {
  3226. Return (RBUF)
  3227. }
  3228. }
  3229.  
  3230. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  3231. {
  3232. Return (CRID)
  3233. }
  3234.  
  3235. CreateDWordField (RBUF, \_SB.PCI0.I2C1._Y2E._BAS, BVAL) // _BAS: Base Address
  3236. Method (_STA, 0, NotSerialized) // _STA: Status
  3237. {
  3238. If (LEqual (BVAL, Zero))
  3239. {
  3240. Return (Zero)
  3241. }
  3242.  
  3243. If (LLess (OSYS, 0x07DC))
  3244. {
  3245. Return (Zero)
  3246. }
  3247.  
  3248. If (LEqual (S0ID, One))
  3249. {
  3250. Return (0x0F)
  3251. }
  3252.  
  3253. Return (Zero)
  3254. }
  3255.  
  3256. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  3257. {
  3258. ADBG ("I2C1 Ctrlr D0")
  3259. If (LNotEqual (^^SIRC.CNTR (0x03), Zero))
  3260. {
  3261. If (CondRefOf (\_SB.PCI0.I2C1.PS0X))
  3262. {
  3263. PS0X ()
  3264. }
  3265.  
  3266. Add (^^SIRC.CNTR (0x03), 0x84, Local0)
  3267. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3268. Field (ICB1, DWordAcc, NoLock, Preserve)
  3269. {
  3270. TEMP, 32
  3271. }
  3272.  
  3273. And (TEMP, 0xFFFFFFFC, TEMP)
  3274. Store (TEMP, Local0)
  3275. }
  3276. }
  3277.  
  3278. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  3279. {
  3280. ADBG ("I2C1 Ctrlr D3")
  3281. If (LNotEqual (^^SIRC.CNTR (0x03), Zero))
  3282. {
  3283. Add (^^SIRC.CNTR (0x03), 0x84, Local0)
  3284. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3285. Field (ICB1, DWordAcc, NoLock, Preserve)
  3286. {
  3287. TEMP, 32
  3288. }
  3289.  
  3290. Or (TEMP, 0x03, TEMP)
  3291. Store (TEMP, Local0)
  3292. }
  3293. }
  3294. }
  3295.  
  3296. Device (SPI0)
  3297. {
  3298. Name (_HID, "INT33C0") // _HID: Hardware ID
  3299. Name (_CID, "INT33C0") // _CID: Compatible ID
  3300. Name (_UID, One) // _UID: Unique ID
  3301. Name (_ADR, 0x00150003) // _ADR: Address
  3302. Method (M0D3, 0, NotSerialized)
  3303. {
  3304. Name (PKG, Package (0x01)
  3305. {
  3306. 0xC8
  3307. })
  3308. Store (M0C2, Index (PKG, Zero))
  3309. Return (PKG)
  3310. }
  3311.  
  3312. Method (M1D3, 0, NotSerialized)
  3313. {
  3314. Name (PKG, Package (0x01)
  3315. {
  3316. 0x07D0
  3317. })
  3318. Store (M1C2, Index (PKG, Zero))
  3319. Return (PKG)
  3320. }
  3321.  
  3322. Name (RBUF, ResourceTemplate ()
  3323. {
  3324. Memory32Fixed (ReadWrite,
  3325. 0x00000000, // Address Base
  3326. 0x00001000, // Address Length
  3327. _Y2F)
  3328. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  3329. {
  3330. 0x00000015,
  3331. }
  3332. })
  3333. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3334. {
  3335. Return (RBUF)
  3336. }
  3337.  
  3338. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  3339. {
  3340. Return (CRID)
  3341. }
  3342.  
  3343. CreateDWordField (RBUF, \_SB.PCI0.SPI0._Y2F._BAS, BVAL) // _BAS: Base Address
  3344. Method (_STA, 0, NotSerialized) // _STA: Status
  3345. {
  3346. If (LEqual (BVAL, Zero))
  3347. {
  3348. Return (Zero)
  3349. }
  3350.  
  3351. If (LLess (OSYS, 0x07DC))
  3352. {
  3353. Return (Zero)
  3354. }
  3355.  
  3356. If (LEqual (S0ID, One))
  3357. {
  3358. Return (0x0F)
  3359. }
  3360.  
  3361. Return (Zero)
  3362. }
  3363.  
  3364. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  3365. {
  3366. ADBG ("SPI0 Ctrlr D0")
  3367. If (LNotEqual (^^SIRC.CNTR (0x04), Zero))
  3368. {
  3369. Add (^^SIRC.CNTR (0x04), 0x84, Local0)
  3370. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3371. Field (ICB1, DWordAcc, NoLock, Preserve)
  3372. {
  3373. TEMP, 32
  3374. }
  3375.  
  3376. And (TEMP, 0xFFFFFFFC, TEMP)
  3377. Store (TEMP, Local0)
  3378. }
  3379. }
  3380.  
  3381. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  3382. {
  3383. ADBG ("SPI0 Ctrlr D3")
  3384. If (LNotEqual (^^SIRC.CNTR (0x04), Zero))
  3385. {
  3386. Add (^^SIRC.CNTR (0x04), 0x84, Local0)
  3387. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3388. Field (ICB1, DWordAcc, NoLock, Preserve)
  3389. {
  3390. TEMP, 32
  3391. }
  3392.  
  3393. Or (TEMP, 0x03, TEMP)
  3394. Store (TEMP, Local0)
  3395. }
  3396. }
  3397. }
  3398.  
  3399. Device (SPI1)
  3400. {
  3401. Name (_HID, "INT33C1") // _HID: Hardware ID
  3402. Name (_CID, "INT33C1") // _CID: Compatible ID
  3403. Name (_UID, 0x02) // _UID: Unique ID
  3404. Name (_ADR, 0x00150004) // _ADR: Address
  3405. Method (M0D3, 0, NotSerialized)
  3406. {
  3407. Name (PKG, Package (0x01)
  3408. {
  3409. 0xC8
  3410. })
  3411. Store (M0C3, Index (PKG, Zero))
  3412. Return (PKG)
  3413. }
  3414.  
  3415. Method (M1D3, 0, NotSerialized)
  3416. {
  3417. Name (PKG, Package (0x01)
  3418. {
  3419. 0x07D0
  3420. })
  3421. Store (M1C3, Index (PKG, Zero))
  3422. Return (PKG)
  3423. }
  3424.  
  3425. Name (RBUF, ResourceTemplate ()
  3426. {
  3427. Memory32Fixed (ReadWrite,
  3428. 0x00000000, // Address Base
  3429. 0x00001000, // Address Length
  3430. _Y30)
  3431. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  3432. {
  3433. 0x00000015,
  3434. }
  3435. })
  3436. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3437. {
  3438. Name (DBUF, ResourceTemplate ()
  3439. {
  3440. FixedDMA (0x0010, 0x0000, Width32bit, )
  3441. FixedDMA (0x0011, 0x0001, Width32bit, )
  3442. })
  3443. If (LNotEqual (^^SDMA._STA (), Zero))
  3444. {
  3445. Return (ConcatenateResTemplate (RBUF, DBUF))
  3446. }
  3447. Else
  3448. {
  3449. Return (RBUF)
  3450. }
  3451. }
  3452.  
  3453. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  3454. {
  3455. Return (CRID)
  3456. }
  3457.  
  3458. CreateDWordField (RBUF, \_SB.PCI0.SPI1._Y30._BAS, BVAL) // _BAS: Base Address
  3459. Method (_STA, 0, NotSerialized) // _STA: Status
  3460. {
  3461. If (LEqual (BVAL, Zero))
  3462. {
  3463. Return (Zero)
  3464. }
  3465.  
  3466. If (LLess (OSYS, 0x07DC))
  3467. {
  3468. Return (Zero)
  3469. }
  3470.  
  3471. If (LEqual (S0ID, One))
  3472. {
  3473. Return (0x0F)
  3474. }
  3475.  
  3476. Return (Zero)
  3477. }
  3478.  
  3479. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  3480. {
  3481. ADBG ("SPI1 Ctrlr D0")
  3482. If (LNotEqual (^^SIRC.CNTR (0x05), Zero))
  3483. {
  3484. Add (^^SIRC.CNTR (0x05), 0x84, Local0)
  3485. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3486. Field (ICB1, DWordAcc, NoLock, Preserve)
  3487. {
  3488. TEMP, 32
  3489. }
  3490.  
  3491. And (TEMP, 0xFFFFFFFC, TEMP)
  3492. Store (TEMP, Local0)
  3493. }
  3494. }
  3495.  
  3496. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  3497. {
  3498. ADBG ("SPI1 Ctrlr D3")
  3499. If (LNotEqual (^^SIRC.CNTR (0x05), Zero))
  3500. {
  3501. Add (^^SIRC.CNTR (0x05), 0x84, Local0)
  3502. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3503. Field (ICB1, DWordAcc, NoLock, Preserve)
  3504. {
  3505. TEMP, 32
  3506. }
  3507.  
  3508. Or (TEMP, 0x03, TEMP)
  3509. Store (TEMP, Local0)
  3510. }
  3511. }
  3512. }
  3513.  
  3514. Device (UA00)
  3515. {
  3516. Name (_HID, "INT33C4") // _HID: Hardware ID
  3517. Name (_CID, "INT33C4") // _CID: Compatible ID
  3518. Name (_UID, One) // _UID: Unique ID
  3519. Name (_ADR, 0x00150005) // _ADR: Address
  3520. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  3521. {
  3522. ADBG ("UA00 DEP Call")
  3523. If (LEqual (S0ID, One))
  3524. {
  3525. ADBG ("UA00 DEP")
  3526. Return (Package (0x01)
  3527. {
  3528. PEPD
  3529. })
  3530. }
  3531. Else
  3532. {
  3533. ADBG ("UA00 DEP NULL")
  3534. Return (Package (0x00) {})
  3535. }
  3536. }
  3537.  
  3538. Method (M0D3, 0, NotSerialized)
  3539. {
  3540. Name (PKG, Package (0x01)
  3541. {
  3542. 0xC8
  3543. })
  3544. Store (M0C4, Index (PKG, Zero))
  3545. Return (PKG)
  3546. }
  3547.  
  3548. Method (M1D3, 0, NotSerialized)
  3549. {
  3550. Name (PKG, Package (0x01)
  3551. {
  3552. 0xC8
  3553. })
  3554. Store (M1C4, Index (PKG, Zero))
  3555. Return (PKG)
  3556. }
  3557.  
  3558. Name (RBUF, ResourceTemplate ()
  3559. {
  3560. Memory32Fixed (ReadWrite,
  3561. 0x00000000, // Address Base
  3562. 0x00001000, // Address Length
  3563. _Y31)
  3564. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  3565. {
  3566. 0x00000015,
  3567. }
  3568. })
  3569. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3570. {
  3571. Return (RBUF)
  3572. }
  3573.  
  3574. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  3575. {
  3576. Return (CRID)
  3577. }
  3578.  
  3579. CreateDWordField (RBUF, \_SB.PCI0.UA00._Y31._BAS, BVAL) // _BAS: Base Address
  3580. Method (_STA, 0, NotSerialized) // _STA: Status
  3581. {
  3582. If (LEqual (BVAL, Zero))
  3583. {
  3584. Return (Zero)
  3585. }
  3586.  
  3587. If (LLess (OSYS, 0x07DC))
  3588. {
  3589. Return (Zero)
  3590. }
  3591.  
  3592. If (LEqual (S0ID, One))
  3593. {
  3594. Return (0x0F)
  3595. }
  3596.  
  3597. Return (Zero)
  3598. }
  3599.  
  3600. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  3601. {
  3602. ADBG ("UAR0 Ctrlr D0")
  3603. If (LNotEqual (^^SIRC.CNTR (0x06), Zero))
  3604. {
  3605. Add (^^SIRC.CNTR (0x06), 0x84, Local0)
  3606. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3607. Field (ICB1, DWordAcc, NoLock, Preserve)
  3608. {
  3609. TEMP, 32
  3610. }
  3611.  
  3612. And (TEMP, 0xFFFFFFFC, TEMP)
  3613. Store (TEMP, Local0)
  3614. }
  3615. }
  3616.  
  3617. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  3618. {
  3619. ADBG ("UAR0 Ctrlr D3")
  3620. If (LNotEqual (^^SIRC.CNTR (0x06), Zero))
  3621. {
  3622. Add (^^SIRC.CNTR (0x06), 0x84, Local0)
  3623. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3624. Field (ICB1, DWordAcc, NoLock, Preserve)
  3625. {
  3626. TEMP, 32
  3627. }
  3628.  
  3629. Or (TEMP, 0x03, TEMP)
  3630. Store (TEMP, Local0)
  3631. }
  3632. }
  3633. }
  3634.  
  3635. Device (UA01)
  3636. {
  3637. Name (_HID, "INT33C5") // _HID: Hardware ID
  3638. Name (_CID, "INT33C5") // _CID: Compatible ID
  3639. Name (_UID, 0x02) // _UID: Unique ID
  3640. Name (_ADR, 0x00150006) // _ADR: Address
  3641. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  3642. {
  3643. ADBG ("UA01 DEP Call")
  3644. If (LEqual (S0ID, One))
  3645. {
  3646. ADBG ("UA01 DEP")
  3647. Return (Package (0x01)
  3648. {
  3649. PEPD
  3650. })
  3651. }
  3652. Else
  3653. {
  3654. ADBG ("UA01 DEP NULL")
  3655. Return (Package (0x00) {})
  3656. }
  3657. }
  3658.  
  3659. Method (M0D3, 0, NotSerialized)
  3660. {
  3661. Name (PKG, Package (0x01)
  3662. {
  3663. 0xC8
  3664. })
  3665. Store (M0C5, Index (PKG, Zero))
  3666. Return (PKG)
  3667. }
  3668.  
  3669. Method (M1D3, 0, NotSerialized)
  3670. {
  3671. Name (PKG, Package (0x01)
  3672. {
  3673. 0xC8
  3674. })
  3675. Store (M1C5, Index (PKG, Zero))
  3676. Return (PKG)
  3677. }
  3678.  
  3679. Name (RBUF, ResourceTemplate ()
  3680. {
  3681. Memory32Fixed (ReadWrite,
  3682. 0xFE10D000, // Address Base
  3683. 0x00001000, // Address Length
  3684. _Y32)
  3685. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  3686. {
  3687. 0x0000000D,
  3688. }
  3689. })
  3690. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3691. {
  3692. Name (DBUF, ResourceTemplate ()
  3693. {
  3694. FixedDMA (0x0016, 0x0002, Width32bit, )
  3695. FixedDMA (0x0017, 0x0003, Width32bit, )
  3696. })
  3697. If (LNotEqual (^^SDMA._STA (), Zero))
  3698. {
  3699. Return (ConcatenateResTemplate (RBUF, DBUF))
  3700. }
  3701. Else
  3702. {
  3703. Return (RBUF)
  3704. }
  3705. }
  3706.  
  3707. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  3708. {
  3709. Return (CRID)
  3710. }
  3711.  
  3712. CreateDWordField (RBUF, \_SB.PCI0.UA01._Y32._BAS, BVAL) // _BAS: Base Address
  3713. Method (_STA, 0, NotSerialized) // _STA: Status
  3714. {
  3715. If (LEqual (BVAL, Zero))
  3716. {
  3717. Return (Zero)
  3718. }
  3719.  
  3720. If (LLess (OSYS, 0x07DC))
  3721. {
  3722. Return (Zero)
  3723. }
  3724.  
  3725. If (LEqual (S0ID, One))
  3726. {
  3727. Return (0x0F)
  3728. }
  3729.  
  3730. Return (Zero)
  3731. }
  3732.  
  3733. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  3734. {
  3735. ADBG ("UAR1 Ctrlr D0")
  3736. If (LNotEqual (^^SIRC.CNTR (0x07), Zero))
  3737. {
  3738. Add (^^SIRC.CNTR (0x07), 0x84, Local0)
  3739. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3740. Field (ICB1, DWordAcc, NoLock, Preserve)
  3741. {
  3742. TEMP, 32
  3743. }
  3744.  
  3745. And (TEMP, 0xFFFFFFFC, TEMP)
  3746. Store (TEMP, Local0)
  3747. }
  3748. }
  3749.  
  3750. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  3751. {
  3752. ADBG ("UAR1 Ctrlr D3")
  3753. If (LNotEqual (^^SIRC.CNTR (0x07), Zero))
  3754. {
  3755. Add (^^SIRC.CNTR (0x07), 0x84, Local0)
  3756. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3757. Field (ICB1, DWordAcc, NoLock, Preserve)
  3758. {
  3759. TEMP, 32
  3760. }
  3761.  
  3762. Or (TEMP, 0x03, TEMP)
  3763. Store (TEMP, Local0)
  3764. }
  3765. }
  3766. }
  3767.  
  3768. Device (SDHC)
  3769. {
  3770. Name (_HID, "INT33C6") // _HID: Hardware ID
  3771. Name (_CID, "PNP0D40") // _CID: Compatible ID
  3772. Name (_UID, One) // _UID: Unique ID
  3773. Name (_ADR, 0x00170000) // _ADR: Address
  3774. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  3775. {
  3776. ADBG ("SDHC DEP Call")
  3777. If (LEqual (S0ID, One))
  3778. {
  3779. ADBG ("SDHC DEP")
  3780. Return (Package (0x01)
  3781. {
  3782. PEPD
  3783. })
  3784. }
  3785. Else
  3786. {
  3787. ADBG ("SDHC DEP NULL")
  3788. Return (Package (0x00) {})
  3789. }
  3790. }
  3791.  
  3792. Name (RBUF, ResourceTemplate ()
  3793. {
  3794. Memory32Fixed (ReadWrite,
  3795. 0xFE110000, // Address Base
  3796. 0x00001000, // Address Length
  3797. _Y33)
  3798. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  3799. {
  3800. 0x00000005,
  3801. }
  3802. })
  3803. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3804. {
  3805. Return (RBUF)
  3806. }
  3807.  
  3808. CreateDWordField (RBUF, \_SB.PCI0.SDHC._Y33._BAS, BVAL) // _BAS: Base Address
  3809. Method (_STA, 0, NotSerialized) // _STA: Status
  3810. {
  3811. If (LEqual (BVAL, Zero))
  3812. {
  3813. Return (Zero)
  3814. }
  3815.  
  3816. If (LLess (OSYS, 0x07DC))
  3817. {
  3818. Return (Zero)
  3819. }
  3820.  
  3821. If (LEqual (S0ID, One))
  3822. {
  3823. Return (0x0F)
  3824. }
  3825.  
  3826. Return (Zero)
  3827. }
  3828.  
  3829. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  3830. {
  3831. ADBG ("SDHC Ctrlr D0")
  3832. If (LNotEqual (^^SIRC.CNTR (0x08), Zero))
  3833. {
  3834. Add (^^SIRC.CNTR (0x08), 0x84, Local0)
  3835. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3836. Field (ICB1, DWordAcc, NoLock, Preserve)
  3837. {
  3838. TEMP, 32
  3839. }
  3840.  
  3841. And (TEMP, 0xFFFFFFFC, TEMP)
  3842. Store (TEMP, Local0)
  3843. }
  3844.  
  3845. If (CondRefOf (\_SB.PCI0.SDHC.PS0X))
  3846. {
  3847. PS0X ()
  3848. }
  3849. }
  3850.  
  3851. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  3852. {
  3853. ADBG ("SDHC Ctrlr D3")
  3854. If (LNotEqual (^^SIRC.CNTR (0x08), Zero))
  3855. {
  3856. Add (^^SIRC.CNTR (0x08), 0x84, Local0)
  3857. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  3858. Field (ICB1, DWordAcc, NoLock, Preserve)
  3859. {
  3860. TEMP, 32
  3861. }
  3862.  
  3863. Or (TEMP, 0x03, TEMP)
  3864. Store (TEMP, Local0)
  3865. }
  3866. }
  3867. }
  3868. }
  3869.  
  3870. Scope (\_SB.PCI0)
  3871. {
  3872. }
  3873.  
  3874. Scope (I2C0)
  3875. {
  3876. Device (ACD0)
  3877. {
  3878. Name (_ADR, 0x1C) // _ADR: Address
  3879. Name (_HID, "INT33CA") // _HID: Hardware ID
  3880. Name (_CID, "INT33CA") // _CID: Compatible ID
  3881. Name (_DDN, "Intel(R) Smart Sound Technology Audio Codec - INT33CA") // _DDN: DOS Device Name
  3882. Name (_UID, One) // _UID: Unique ID
  3883. Name (MCLK, Zero)
  3884. Name (SCLK, 0x09)
  3885. Name (SSPM, Zero)
  3886. Name (RBUF, ResourceTemplate ()
  3887. {
  3888. I2cSerialBus (0x001C, ControllerInitiated, 0x00061A80,
  3889. AddressingMode7Bit, "\\_SB.PCI0.I2C0",
  3890. 0x00, ResourceConsumer, ,
  3891. )
  3892. Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, )
  3893. {
  3894. 0x00000025,
  3895. }
  3896. })
  3897. Name (EOD, One)
  3898. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3899. {
  3900. Return (RBUF)
  3901. }
  3902.  
  3903. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  3904. {
  3905. Store (One, EOD)
  3906. }
  3907.  
  3908. Method (_STA, 0, NotSerialized) // _STA: Status
  3909. {
  3910. If (LOr (LNotEqual (CODS, Zero), LNotEqual (ADSD, Zero)))
  3911. {
  3912. Return (Zero)
  3913. }
  3914.  
  3915. If (And (EOD, One, EOD))
  3916. {
  3917. Return (0x0F)
  3918. }
  3919. Else
  3920. {
  3921. Return (0x0D)
  3922. }
  3923. }
  3924.  
  3925. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  3926. {
  3927. Store (Zero, EOD)
  3928. }
  3929. }
  3930.  
  3931. Device (ACD1)
  3932. {
  3933. Name (_ADR, 0x4A) // _ADR: Address
  3934. Name (_HID, "INT33C9") // _HID: Hardware ID
  3935. Name (_CID, "INT33C9") // _CID: Compatible ID
  3936. Name (_DDN, "Intel(R) Smart Sound Technology Audio Codec - INT33C9") // _DDN: DOS Device Name
  3937. Name (_UID, One) // _UID: Unique ID
  3938. Name (MCLK, 0x06)
  3939. Name (SCLK, Zero)
  3940. Name (SSPM, One)
  3941. Name (RBUF, ResourceTemplate ()
  3942. {
  3943. I2cSerialBus (0x004A, ControllerInitiated, 0x00061A80,
  3944. AddressingMode7Bit, "\\_SB.PCI0.I2C0",
  3945. 0x00, ResourceConsumer, ,
  3946. )
  3947. })
  3948. Name (EOD, One)
  3949. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3950. {
  3951. Store (One, EOD)
  3952. Return (RBUF)
  3953. }
  3954.  
  3955. Method (_STA, 0, NotSerialized) // _STA: Status
  3956. {
  3957. If (LOr (LNotEqual (CODS, One), LNotEqual (ADSD, Zero)))
  3958. {
  3959. Return (Zero)
  3960. }
  3961.  
  3962. If (And (EOD, One, EOD))
  3963. {
  3964. Return (0x0F)
  3965. }
  3966. Else
  3967. {
  3968. Return (0x0D)
  3969. }
  3970. }
  3971.  
  3972. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  3973. {
  3974. Store (Zero, EOD)
  3975. }
  3976. }
  3977.  
  3978. Device (ACD2)
  3979. {
  3980. Name (_ADR, 0x69) // _ADR: Address
  3981. Name (_HID, "INT33CB") // _HID: Hardware ID
  3982. Name (_CID, "INT33CB") // _CID: Compatible ID
  3983. Name (_DDN, "Intel(R) Smart Sound Technology Audio Codec - INT33CB") // _DDN: DOS Device Name
  3984. Name (_UID, One) // _UID: Unique ID
  3985. Name (MCLK, 0x18)
  3986. Name (SCLK, 0x09)
  3987. Name (SSPM, Zero)
  3988. Name (RBUF, ResourceTemplate ()
  3989. {
  3990. I2cSerialBus (0x0069, ControllerInitiated, 0x00061A80,
  3991. AddressingMode7Bit, "\\_SB.PCI0.I2C0",
  3992. 0x00, ResourceConsumer, ,
  3993. )
  3994. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  3995. "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
  3996. )
  3997. { // Pin list
  3998. 0x0033
  3999. }
  4000. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  4001. "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
  4002. )
  4003. { // Pin list
  4004. 0x0035
  4005. }
  4006. Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, )
  4007. {
  4008. 0x00000023,
  4009. }
  4010. Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, )
  4011. {
  4012. 0x00000025,
  4013. }
  4014. })
  4015. Name (EOD, One)
  4016. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4017. {
  4018. Return (RBUF)
  4019. }
  4020.  
  4021. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  4022. {
  4023. Store (One, EOD)
  4024. }
  4025.  
  4026. Method (_STA, 0, NotSerialized) // _STA: Status
  4027. {
  4028. If (LOr (LNotEqual (CODS, 0x02), LNotEqual (ADSD, Zero)))
  4029. {
  4030. Return (Zero)
  4031. }
  4032.  
  4033. If (And (EOD, One, EOD))
  4034. {
  4035. Return (0x0F)
  4036. }
  4037. Else
  4038. {
  4039. Return (0x0D)
  4040. }
  4041. }
  4042.  
  4043. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  4044. {
  4045. Store (Zero, EOD)
  4046. }
  4047. }
  4048.  
  4049. Device (SHUB)
  4050. {
  4051. Name (_HID, "INT33D1") // _HID: Hardware ID
  4052. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4053. Name (_ADR, Zero) // _ADR: Address
  4054. Name (_UID, One) // _UID: Unique ID
  4055. Name (_RMV, One) // _RMV: Removal Status
  4056. Method (_STA, 0, NotSerialized) // _STA: Status
  4057. {
  4058. If (LNotEqual (And (SDS0, One), One))
  4059. {
  4060. Return (Zero)
  4061. }
  4062.  
  4063. If (LAnd (LEqual (RDGP (0x2C), One), LEqual (_HID, "INT33D1")))
  4064. {
  4065. Return (0x0F)
  4066. }
  4067.  
  4068. If (LAnd (LEqual (RDGP (0x2C), Zero), LEqual (_HID, "INT33D7")))
  4069. {
  4070. Return (0x0F)
  4071. }
  4072.  
  4073. Return (Zero)
  4074. }
  4075.  
  4076. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4077. {
  4078. If (LEqual (Arg0, Buffer (0x10)
  4079. {
  4080. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4081. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4082. }))
  4083. {
  4084. If (LEqual (Arg2, Zero))
  4085. {
  4086. If (LEqual (Arg1, One))
  4087. {
  4088. Return (Buffer (One)
  4089. {
  4090. 0x03
  4091. })
  4092. }
  4093. }
  4094.  
  4095. If (LEqual (Arg2, One))
  4096. {
  4097. Return (One)
  4098. }
  4099. }
  4100. Else
  4101. {
  4102. Return (Buffer (One)
  4103. {
  4104. 0x00
  4105. })
  4106. }
  4107. }
  4108.  
  4109. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4110. {
  4111. Name (SBFI, ResourceTemplate ()
  4112. {
  4113. I2cSerialBus (0x0040, ControllerInitiated, 0x00061A80,
  4114. AddressingMode7Bit, "\\_SB.PCI0.I2C0",
  4115. 0x00, ResourceConsumer, ,
  4116. )
  4117. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  4118. {
  4119. 0x0000001C,
  4120. }
  4121. })
  4122. Return (SBFI)
  4123. }
  4124. }
  4125.  
  4126. Device (DFUD)
  4127. {
  4128. Name (_HID, "INT33D7") // _HID: Hardware ID
  4129. Name (_ADR, Zero) // _ADR: Address
  4130. Name (_UID, One) // _UID: Unique ID
  4131. Name (_RMV, One) // _RMV: Removal Status
  4132. Method (_STA, 0, NotSerialized) // _STA: Status
  4133. {
  4134. If (LNotEqual (And (SDS0, One), One))
  4135. {
  4136. Return (Zero)
  4137. }
  4138.  
  4139. If (LAnd (LEqual (RDGP (0x2C), One), LEqual (_HID, "INT33D1")))
  4140. {
  4141. Return (0x0F)
  4142. }
  4143.  
  4144. If (LAnd (LEqual (RDGP (0x2C), Zero), LEqual (_HID, "INT33D7")))
  4145. {
  4146. Return (0x0F)
  4147. }
  4148.  
  4149. Return (Zero)
  4150. }
  4151.  
  4152. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4153. {
  4154. If (LEqual (Arg0, Buffer (0x10)
  4155. {
  4156. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4157. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4158. }))
  4159. {
  4160. If (LEqual (Arg2, Zero))
  4161. {
  4162. If (LEqual (Arg1, One))
  4163. {
  4164. Return (Buffer (One)
  4165. {
  4166. 0x03
  4167. })
  4168. }
  4169. }
  4170.  
  4171. If (LEqual (Arg2, One))
  4172. {
  4173. Return (One)
  4174. }
  4175. }
  4176. Else
  4177. {
  4178. Return (Buffer (One)
  4179. {
  4180. 0x00
  4181. })
  4182. }
  4183. }
  4184.  
  4185. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4186. {
  4187. Name (SBFI, ResourceTemplate ()
  4188. {
  4189. I2cSerialBus (0x0040, ControllerInitiated, 0x00061A80,
  4190. AddressingMode7Bit, "\\_SB.PCI0.I2C0",
  4191. 0x00, ResourceConsumer, ,
  4192. )
  4193. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  4194. {
  4195. 0x0000001C,
  4196. }
  4197. })
  4198. Return (SBFI)
  4199. }
  4200. }
  4201.  
  4202. Device (TPD4)
  4203. {
  4204. Name (_ADR, Zero) // _ADR: Address
  4205. Name (_HID, "MSFT1111") // _HID: Hardware ID
  4206. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4207. Name (_UID, One) // _UID: Unique ID
  4208. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4209. {
  4210. If (LEqual (Arg0, Buffer (0x10)
  4211. {
  4212. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4213. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4214. }))
  4215. {
  4216. If (LEqual (Arg2, Zero))
  4217. {
  4218. If (LEqual (Arg1, One))
  4219. {
  4220. Return (Buffer (One)
  4221. {
  4222. 0x03
  4223. })
  4224. }
  4225. }
  4226.  
  4227. If (LEqual (Arg2, One))
  4228. {
  4229. Return (One)
  4230. }
  4231. }
  4232. Else
  4233. {
  4234. Return (Buffer (One)
  4235. {
  4236. 0x00
  4237. })
  4238. }
  4239. }
  4240.  
  4241. Method (_STA, 0, NotSerialized) // _STA: Status
  4242. {
  4243. If (LEqual (And (SDS0, 0x04), 0x04))
  4244. {
  4245. Return (0x0F)
  4246. }
  4247. Else
  4248. {
  4249. Return (Zero)
  4250. }
  4251. }
  4252.  
  4253. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4254. {
  4255. Name (SBFI, ResourceTemplate ()
  4256. {
  4257. I2cSerialBus (0x0060, ControllerInitiated, 0x00061A80,
  4258. AddressingMode7Bit, "\\_SB.PCI0.I2C0",
  4259. 0x00, ResourceConsumer, ,
  4260. )
  4261. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  4262. {
  4263. 0x0000001C,
  4264. }
  4265. })
  4266. Return (SBFI)
  4267. }
  4268.  
  4269. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  4270. {
  4271. Return (Package (0x02)
  4272. {
  4273. 0x0E,
  4274. 0x04
  4275. })
  4276. }
  4277.  
  4278. Method (_S3W, 0, NotSerialized) // _S3W: S3 Device Wake State
  4279. {
  4280. Return (0x03)
  4281. }
  4282.  
  4283. Method (_S4W, 0, NotSerialized) // _S4W: S4 Device Wake State
  4284. {
  4285. Return (0x03)
  4286. }
  4287.  
  4288. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  4289. {
  4290. ADBG ("TPD4 Ctrlr D0")
  4291. WTIN (0x0E, Zero)
  4292. Store (One, GO14)
  4293. }
  4294.  
  4295. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  4296. {
  4297. ADBG ("TPD4 Ctrlr D3")
  4298. WTIN (0x0E, One)
  4299. Store (Zero, GO14)
  4300. }
  4301. }
  4302. }
  4303.  
  4304. Scope (I2C1)
  4305. {
  4306. Device (TPL0)
  4307. {
  4308. Name (_ADR, Zero) // _ADR: Address
  4309. Name (_HID, "ATML1000") // _HID: Hardware ID
  4310. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4311. Name (_UID, One) // _UID: Unique ID
  4312. Name (_S0W, 0x04) // _S0W: S0 Device Wake State
  4313. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4314. {
  4315. If (LEqual (Arg0, Buffer (0x10)
  4316. {
  4317. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4318. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4319. }))
  4320. {
  4321. If (LEqual (Arg2, Zero))
  4322. {
  4323. If (LEqual (Arg1, One))
  4324. {
  4325. Return (Buffer (One)
  4326. {
  4327. 0x03
  4328. })
  4329. }
  4330. Else
  4331. {
  4332. Return (Buffer (One)
  4333. {
  4334. 0x00
  4335. })
  4336. }
  4337. }
  4338.  
  4339. If (LEqual (Arg2, One))
  4340. {
  4341. Return (Zero)
  4342. }
  4343. }
  4344. Else
  4345. {
  4346. Return (Buffer (One)
  4347. {
  4348. 0x00
  4349. })
  4350. }
  4351. }
  4352.  
  4353. Method (_STA, 0, NotSerialized) // _STA: Status
  4354. {
  4355. If (LEqual (And (SDS1, One), One))
  4356. {
  4357. Return (0x0F)
  4358. }
  4359. Else
  4360. {
  4361. Return (Zero)
  4362. }
  4363. }
  4364.  
  4365. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4366. {
  4367. Name (SBFI, ResourceTemplate ()
  4368. {
  4369. I2cSerialBus (0x004C, ControllerInitiated, 0x00061A80,
  4370. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4371. 0x00, ResourceConsumer, ,
  4372. )
  4373. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  4374. {
  4375. 0x00000022,
  4376. }
  4377. })
  4378. Return (SBFI)
  4379. }
  4380. }
  4381.  
  4382. Device (TPFU)
  4383. {
  4384. Name (_ADR, Zero) // _ADR: Address
  4385. Name (_HID, "ATML2000") // _HID: Hardware ID
  4386. Name (_CID, "PNP0C02") // _CID: Compatible ID
  4387. Name (_UID, 0x0A) // _UID: Unique ID
  4388. Method (_STA, 0, NotSerialized) // _STA: Status
  4389. {
  4390. If (LAnd (And (SDS1, One), And (APFU, One)))
  4391. {
  4392. Return (0x0F)
  4393. }
  4394. Else
  4395. {
  4396. Return (Zero)
  4397. }
  4398. }
  4399.  
  4400. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4401. {
  4402. Name (SBFI, ResourceTemplate ()
  4403. {
  4404. I2cSerialBus (0x0026, ControllerInitiated, 0x00061A80,
  4405. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4406. 0x00, ResourceConsumer, ,
  4407. )
  4408. I2cSerialBus (0x0027, ControllerInitiated, 0x00061A80,
  4409. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4410. 0x00, ResourceConsumer, ,
  4411. )
  4412. })
  4413. Return (SBFI)
  4414. }
  4415. }
  4416.  
  4417. Device (TPL1)
  4418. {
  4419. Name (_HID, "ELAN1001") // _HID: Hardware ID
  4420. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4421. Name (_UID, One) // _UID: Unique ID
  4422. Name (_S0W, 0x04) // _S0W: S0 Device Wake State
  4423. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4424. {
  4425. If (LEqual (Arg0, Buffer (0x10)
  4426. {
  4427. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4428. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4429. }))
  4430. {
  4431. If (LEqual (Arg2, Zero))
  4432. {
  4433. If (LEqual (Arg1, One))
  4434. {
  4435. Return (Buffer (One)
  4436. {
  4437. 0x03
  4438. })
  4439. }
  4440. Else
  4441. {
  4442. Return (Buffer (One)
  4443. {
  4444. 0x00
  4445. })
  4446. }
  4447. }
  4448.  
  4449. If (LEqual (Arg2, One))
  4450. {
  4451. Return (One)
  4452. }
  4453. }
  4454. Else
  4455. {
  4456. Return (Buffer (One)
  4457. {
  4458. 0x00
  4459. })
  4460. }
  4461. }
  4462.  
  4463. Method (_STA, 0, NotSerialized) // _STA: Status
  4464. {
  4465. If (LEqual (And (SDS1, 0x02), 0x02))
  4466. {
  4467. Return (0x0F)
  4468. }
  4469. Else
  4470. {
  4471. Return (Zero)
  4472. }
  4473. }
  4474.  
  4475. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4476. {
  4477. Name (SBFI, ResourceTemplate ()
  4478. {
  4479. I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
  4480. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4481. 0x00, ResourceConsumer, ,
  4482. )
  4483. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  4484. {
  4485. 0x00000022,
  4486. }
  4487. })
  4488. Return (SBFI)
  4489. }
  4490. }
  4491.  
  4492. Device (TPL2)
  4493. {
  4494. Name (_ADR, One) // _ADR: Address
  4495. Name (_HID, "NTRG0001") // _HID: Hardware ID
  4496. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4497. Name (_UID, One) // _UID: Unique ID
  4498. Name (_S0W, 0x04) // _S0W: S0 Device Wake State
  4499. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4500. {
  4501. If (LEqual (Arg0, Buffer (0x10)
  4502. {
  4503. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4504. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4505. }))
  4506. {
  4507. If (LEqual (Arg2, Zero))
  4508. {
  4509. If (LEqual (Arg1, One))
  4510. {
  4511. Return (Buffer (One)
  4512. {
  4513. 0x03
  4514. })
  4515. }
  4516. Else
  4517. {
  4518. Return (Buffer (One)
  4519. {
  4520. 0x00
  4521. })
  4522. }
  4523. }
  4524.  
  4525. If (LEqual (Arg2, One))
  4526. {
  4527. Return (One)
  4528. }
  4529. }
  4530. Else
  4531. {
  4532. Return (Buffer (One)
  4533. {
  4534. 0x00
  4535. })
  4536. }
  4537. }
  4538.  
  4539. Method (_STA, 0, NotSerialized) // _STA: Status
  4540. {
  4541. If (LEqual (And (SDS1, 0x20), 0x20))
  4542. {
  4543. Return (0x0F)
  4544. }
  4545. Else
  4546. {
  4547. Return (Zero)
  4548. }
  4549. }
  4550.  
  4551. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4552. {
  4553. Name (SBFI, ResourceTemplate ()
  4554. {
  4555. I2cSerialBus (0x0007, ControllerInitiated, 0x00061A80,
  4556. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4557. 0x00, ResourceConsumer, ,
  4558. )
  4559. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  4560. {
  4561. 0x00000022,
  4562. }
  4563. })
  4564. Return (SBFI)
  4565. }
  4566. }
  4567.  
  4568. Device (TPL3)
  4569. {
  4570. Name (_ADR, One) // _ADR: Address
  4571. Name (_HID, "EETI7900") // _HID: Hardware ID
  4572. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4573. Name (_UID, One) // _UID: Unique ID
  4574. Name (_S0W, 0x04) // _S0W: S0 Device Wake State
  4575. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4576. {
  4577. If (LEqual (Arg0, Buffer (0x10)
  4578. {
  4579. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4580. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4581. }))
  4582. {
  4583. If (LEqual (Arg2, Zero))
  4584. {
  4585. If (LEqual (Arg1, One))
  4586. {
  4587. Return (Buffer (One)
  4588. {
  4589. 0x03
  4590. })
  4591. }
  4592. Else
  4593. {
  4594. Return (Buffer (One)
  4595. {
  4596. 0x00
  4597. })
  4598. }
  4599. }
  4600.  
  4601. If (LEqual (Arg2, One))
  4602. {
  4603. Return (0x0F)
  4604. }
  4605. }
  4606. Else
  4607. {
  4608. Return (Buffer (One)
  4609. {
  4610. 0x00
  4611. })
  4612. }
  4613. }
  4614.  
  4615. Method (_STA, 0, NotSerialized) // _STA: Status
  4616. {
  4617. If (LEqual (And (SDS1, 0x40), 0x40))
  4618. {
  4619. Return (0x0F)
  4620. }
  4621. Else
  4622. {
  4623. Return (Zero)
  4624. }
  4625. }
  4626.  
  4627. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4628. {
  4629. Name (SBFI, ResourceTemplate ()
  4630. {
  4631. I2cSerialBus (0x002A, ControllerInitiated, 0x00061A80,
  4632. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4633. 0x00, ResourceConsumer, ,
  4634. )
  4635. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  4636. {
  4637. 0x00000022,
  4638. }
  4639. })
  4640. Return (SBFI)
  4641. }
  4642. }
  4643.  
  4644. Device (TPD0)
  4645. {
  4646. Name (_ADR, One) // _ADR: Address
  4647. Name (_HID, "ELAN1000") // _HID: Hardware ID
  4648. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4649. Name (_UID, One) // _UID: Unique ID
  4650. Name (_S0W, 0x04) // _S0W: S0 Device Wake State
  4651. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4652. {
  4653. If (LEqual (Arg0, Buffer (0x10)
  4654. {
  4655. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4656. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4657. }))
  4658. {
  4659. If (LEqual (Arg2, Zero))
  4660. {
  4661. If (LEqual (Arg1, One))
  4662. {
  4663. Return (Buffer (One)
  4664. {
  4665. 0x03
  4666. })
  4667. }
  4668. Else
  4669. {
  4670. Return (Buffer (One)
  4671. {
  4672. 0x00
  4673. })
  4674. }
  4675. }
  4676.  
  4677. If (LEqual (Arg2, One))
  4678. {
  4679. Return (One)
  4680. }
  4681. }
  4682. Else
  4683. {
  4684. Return (Buffer (One)
  4685. {
  4686. 0x00
  4687. })
  4688. }
  4689. }
  4690.  
  4691. Method (_STA, 0, NotSerialized) // _STA: Status
  4692. {
  4693. If (LEqual (And (SDS1, 0x04), 0x04))
  4694. {
  4695. Return (0x0F)
  4696. }
  4697. Else
  4698. {
  4699. Return (Zero)
  4700. }
  4701. }
  4702.  
  4703. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  4704. {
  4705. Name (SBFI, ResourceTemplate ()
  4706. {
  4707. I2cSerialBus (0x0015, ControllerInitiated, 0x00061A80,
  4708. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4709. 0x00, ResourceConsumer, ,
  4710. )
  4711. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y34)
  4712. {
  4713. 0x00000027,
  4714. }
  4715. })
  4716. If (LEqual (GR13, One))
  4717. {
  4718. CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD0._CRS._Y34._INT, VAL3) // _INT: Interrupts
  4719. Store (0x1B, VAL3)
  4720. }
  4721.  
  4722. Return (SBFI)
  4723. }
  4724. }
  4725.  
  4726. Device (TPD1)
  4727. {
  4728. Name (_ADR, One) // _ADR: Address
  4729. Name (_HID, "MSFT0001") // _HID: Hardware ID
  4730. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4731. Name (_UID, One) // _UID: Unique ID
  4732. Name (_S0W, 0x04) // _S0W: S0 Device Wake State
  4733. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4734. {
  4735. If (LEqual (Arg0, Buffer (0x10)
  4736. {
  4737. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4738. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4739. }))
  4740. {
  4741. If (LEqual (Arg2, Zero))
  4742. {
  4743. If (LEqual (Arg1, One))
  4744. {
  4745. Return (Buffer (One)
  4746. {
  4747. 0x03
  4748. })
  4749. }
  4750. Else
  4751. {
  4752. Return (Buffer (One)
  4753. {
  4754. 0x00
  4755. })
  4756. }
  4757. }
  4758.  
  4759. If (LEqual (Arg2, One))
  4760. {
  4761. Return (0x20)
  4762. }
  4763. }
  4764. Else
  4765. {
  4766. Return (Buffer (One)
  4767. {
  4768. 0x00
  4769. })
  4770. }
  4771. }
  4772.  
  4773. Method (_STA, 0, NotSerialized) // _STA: Status
  4774. {
  4775. If (LEqual (And (SDS1, 0x08), 0x08))
  4776. {
  4777. Return (0x0F)
  4778. }
  4779. Else
  4780. {
  4781. Return (Zero)
  4782. }
  4783. }
  4784.  
  4785. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  4786. {
  4787. Name (SBFI, ResourceTemplate ()
  4788. {
  4789. I2cSerialBus (0x0020, ControllerInitiated, 0x00061A80,
  4790. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4791. 0x00, ResourceConsumer, ,
  4792. )
  4793. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y35)
  4794. {
  4795. 0x00000027,
  4796. }
  4797. })
  4798. If (LEqual (GR13, One))
  4799. {
  4800. CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD1._CRS._Y35._INT, VAL3) // _INT: Interrupts
  4801. Store (0x1B, VAL3)
  4802. }
  4803.  
  4804. Return (SBFI)
  4805. }
  4806. }
  4807.  
  4808. Device (TPD2)
  4809. {
  4810. Name (_ADR, One) // _ADR: Address
  4811. Name (_HID, "ALP0001") // _HID: Hardware ID
  4812. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4813. Name (_UID, One) // _UID: Unique ID
  4814. Name (_S0W, 0x04) // _S0W: S0 Device Wake State
  4815. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4816. {
  4817. If (LEqual (Arg0, Buffer (0x10)
  4818. {
  4819. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4820. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4821. }))
  4822. {
  4823. If (LEqual (Arg2, Zero))
  4824. {
  4825. If (LEqual (Arg1, One))
  4826. {
  4827. Return (Buffer (One)
  4828. {
  4829. 0x03
  4830. })
  4831. }
  4832. Else
  4833. {
  4834. Return (Buffer (One)
  4835. {
  4836. 0x00
  4837. })
  4838. }
  4839. }
  4840.  
  4841. If (LEqual (Arg2, One))
  4842. {
  4843. Return (One)
  4844. }
  4845. }
  4846. Else
  4847. {
  4848. Return (Buffer (One)
  4849. {
  4850. 0x00
  4851. })
  4852. }
  4853. }
  4854.  
  4855. Method (_STA, 0, NotSerialized) // _STA: Status
  4856. {
  4857. If (LEqual (And (SDS1, 0x80), 0x80))
  4858. {
  4859. Return (0x0F)
  4860. }
  4861. Else
  4862. {
  4863. Return (Zero)
  4864. }
  4865. }
  4866.  
  4867. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  4868. {
  4869. Name (SBFI, ResourceTemplate ()
  4870. {
  4871. I2cSerialBus (0x002A, ControllerInitiated, 0x00061A80,
  4872. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4873. 0x00, ResourceConsumer, ,
  4874. )
  4875. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y36)
  4876. {
  4877. 0x00000027,
  4878. }
  4879. })
  4880. If (LEqual (GR13, One))
  4881. {
  4882. CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD2._CRS._Y36._INT, VAL3) // _INT: Interrupts
  4883. Store (0x1B, VAL3)
  4884. }
  4885.  
  4886. Return (SBFI)
  4887. }
  4888. }
  4889.  
  4890. Device (TPD3)
  4891. {
  4892. Name (_ADR, One) // _ADR: Address
  4893. Name (_HID, "CYP0001") // _HID: Hardware ID
  4894. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4895. Name (_UID, One) // _UID: Unique ID
  4896. Name (_S0W, 0x04) // _S0W: S0 Device Wake State
  4897. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4898. {
  4899. If (LEqual (Arg0, Buffer (0x10)
  4900. {
  4901. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4902. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4903. }))
  4904. {
  4905. If (LEqual (Arg2, Zero))
  4906. {
  4907. If (LEqual (Arg1, One))
  4908. {
  4909. Return (Buffer (One)
  4910. {
  4911. 0x03
  4912. })
  4913. }
  4914. Else
  4915. {
  4916. Return (Buffer (One)
  4917. {
  4918. 0x00
  4919. })
  4920. }
  4921. }
  4922.  
  4923. If (LEqual (Arg2, One))
  4924. {
  4925. Return (One)
  4926. }
  4927. }
  4928. Else
  4929. {
  4930. Return (Buffer (One)
  4931. {
  4932. 0x00
  4933. })
  4934. }
  4935. }
  4936.  
  4937. Method (_STA, 0, NotSerialized) // _STA: Status
  4938. {
  4939. If (LEqual (And (SDS1, 0x0100), 0x0100))
  4940. {
  4941. Return (0x0F)
  4942. }
  4943. Else
  4944. {
  4945. Return (Zero)
  4946. }
  4947. }
  4948.  
  4949. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  4950. {
  4951. Name (SBFI, ResourceTemplate ()
  4952. {
  4953. I2cSerialBus (0x0024, ControllerInitiated, 0x00061A80,
  4954. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  4955. 0x00, ResourceConsumer, ,
  4956. )
  4957. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y37)
  4958. {
  4959. 0x00000027,
  4960. }
  4961. })
  4962. If (LEqual (GR13, One))
  4963. {
  4964. CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD3._CRS._Y37._INT, VAL3) // _INT: Interrupts
  4965. Store (0x1B, VAL3)
  4966. }
  4967.  
  4968. Return (SBFI)
  4969. }
  4970. }
  4971.  
  4972. Device (TPD7)
  4973. {
  4974. Name (_ADR, One) // _ADR: Address
  4975. Name (_HID, "ELAN1010") // _HID: Hardware ID
  4976. Name (_CID, "PNP0C50") // _CID: Compatible ID
  4977. Name (_UID, One) // _UID: Unique ID
  4978. Name (_S0W, 0x03) // _S0W: S0 Device Wake State
  4979. Method (_S3W, 0, NotSerialized) // _S3W: S3 Device Wake State
  4980. {
  4981. If (LEqual (S0ID, Zero))
  4982. {
  4983. Return (0x03)
  4984. }
  4985. Else
  4986. {
  4987. Return (Zero)
  4988. }
  4989. }
  4990.  
  4991. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4992. {
  4993. If (LEqual (Arg0, Buffer (0x10)
  4994. {
  4995. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  4996. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  4997. }))
  4998. {
  4999. If (LEqual (Arg2, Zero))
  5000. {
  5001. If (LEqual (Arg1, One))
  5002. {
  5003. Return (Buffer (One)
  5004. {
  5005. 0x03
  5006. })
  5007. }
  5008. Else
  5009. {
  5010. Return (Buffer (One)
  5011. {
  5012. 0x00
  5013. })
  5014. }
  5015. }
  5016.  
  5017. If (LEqual (Arg2, One))
  5018. {
  5019. Return (One)
  5020. }
  5021. }
  5022. Else
  5023. {
  5024. Return (Buffer (One)
  5025. {
  5026. 0x00
  5027. })
  5028. }
  5029. }
  5030.  
  5031. Method (_STA, 0, NotSerialized) // _STA: Status
  5032. {
  5033. If (LEqual (And (SDS1, 0x0800), 0x0800))
  5034. {
  5035. Return (0x0F)
  5036. }
  5037. Else
  5038. {
  5039. Return (Zero)
  5040. }
  5041. }
  5042.  
  5043. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  5044. {
  5045. Name (SBFI, ResourceTemplate ()
  5046. {
  5047. I2cSerialBus (0x0015, ControllerInitiated, 0x00061A80,
  5048. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  5049. 0x00, ResourceConsumer, ,
  5050. )
  5051. Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y38)
  5052. {
  5053. 0x00000027,
  5054. }
  5055. })
  5056. If (LEqual (GR13, One))
  5057. {
  5058. CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD7._CRS._Y38._INT, VAL3) // _INT: Interrupts
  5059. Store (0x1B, VAL3)
  5060. If (LEqual (S0ID, Zero))
  5061. {
  5062. CreateByteField (SBFI, 0x24, VAL4)
  5063. And (VAL4, 0xE7, VAL4)
  5064. }
  5065. }
  5066.  
  5067. Return (SBFI)
  5068. }
  5069.  
  5070. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  5071. {
  5072. If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One)))
  5073. {
  5074. Return (Package (0x02)
  5075. {
  5076. 0x0D,
  5077. 0x03
  5078. })
  5079. }
  5080.  
  5081. Return (Package (0x02)
  5082. {
  5083. Zero,
  5084. Zero
  5085. })
  5086. }
  5087.  
  5088. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  5089. {
  5090. ADBG ("TPD7 Ctrlr D0")
  5091. If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One)))
  5092. {
  5093. WTIN (0x0D, Zero)
  5094. Store (One, GO13)
  5095. }
  5096.  
  5097. If (CondRefOf (\_SB.PCI0.I2C1.TPD7.PS0X))
  5098. {
  5099. PS0X ()
  5100. }
  5101. }
  5102.  
  5103. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  5104. {
  5105. ADBG ("TPD7 Ctrlr D3")
  5106. If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One)))
  5107. {
  5108. WTIN (0x0D, One)
  5109. Store (Zero, GO13)
  5110. }
  5111. }
  5112. }
  5113.  
  5114. Device (TPD8)
  5115. {
  5116. Name (_ADR, One) // _ADR: Address
  5117. Name (_HID, "MSFT0002") // _HID: Hardware ID
  5118. Name (_CID, "PNP0C50") // _CID: Compatible ID
  5119. Name (_UID, One) // _UID: Unique ID
  5120. Name (_S0W, 0x03) // _S0W: S0 Device Wake State
  5121. Method (_S3W, 0, NotSerialized) // _S3W: S3 Device Wake State
  5122. {
  5123. If (LEqual (S0ID, Zero))
  5124. {
  5125. Return (0x03)
  5126. }
  5127. Else
  5128. {
  5129. Return (Zero)
  5130. }
  5131. }
  5132.  
  5133. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  5134. {
  5135. If (LEqual (Arg0, Buffer (0x10)
  5136. {
  5137. /* 0000 */ 0xF7, 0xF6, 0xDF, 0x3C, 0x67, 0x42, 0x55, 0x45,
  5138. /* 0008 */ 0xAD, 0x05, 0xB3, 0x0A, 0x3D, 0x89, 0x38, 0xDE
  5139. }))
  5140. {
  5141. If (LEqual (Arg2, Zero))
  5142. {
  5143. If (LEqual (Arg1, One))
  5144. {
  5145. Return (Buffer (One)
  5146. {
  5147. 0x03
  5148. })
  5149. }
  5150. Else
  5151. {
  5152. Return (Buffer (One)
  5153. {
  5154. 0x00
  5155. })
  5156. }
  5157. }
  5158.  
  5159. If (LEqual (Arg2, One))
  5160. {
  5161. Return (0x20)
  5162. }
  5163. }
  5164. Else
  5165. {
  5166. Return (Buffer (One)
  5167. {
  5168. 0x00
  5169. })
  5170. }
  5171. }
  5172.  
  5173. Method (_STA, 0, NotSerialized) // _STA: Status
  5174. {
  5175. If (LEqual (And (SDS1, 0x1000), 0x1000))
  5176. {
  5177. Return (0x0F)
  5178. }
  5179. Else
  5180. {
  5181. Return (Zero)
  5182. }
  5183. }
  5184.  
  5185. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  5186. {
  5187. Name (SBFI, ResourceTemplate ()
  5188. {
  5189. I2cSerialBus (0x0020, ControllerInitiated, 0x00061A80,
  5190. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  5191. 0x00, ResourceConsumer, ,
  5192. )
  5193. Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y39)
  5194. {
  5195. 0x00000027,
  5196. }
  5197. })
  5198. If (LEqual (GR13, One))
  5199. {
  5200. CreateByteField (SBFI, \_SB.PCI0.I2C1.TPD8._CRS._Y39._INT, VAL3) // _INT: Interrupts
  5201. Store (0x1B, VAL3)
  5202. If (LEqual (S0ID, Zero))
  5203. {
  5204. CreateByteField (SBFI, 0x24, VAL4)
  5205. And (VAL4, 0xE7, VAL4)
  5206. }
  5207. }
  5208.  
  5209. Return (SBFI)
  5210. }
  5211.  
  5212. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  5213. {
  5214. If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One)))
  5215. {
  5216. Return (Package (0x02)
  5217. {
  5218. 0x0D,
  5219. 0x03
  5220. })
  5221. }
  5222.  
  5223. Return (Package (0x02)
  5224. {
  5225. Zero,
  5226. Zero
  5227. })
  5228. }
  5229.  
  5230. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  5231. {
  5232. ADBG ("TPD8 Ctrlr D0")
  5233. If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One)))
  5234. {
  5235. WTIN (0x0D, Zero)
  5236. Store (One, GO13)
  5237. }
  5238.  
  5239. If (CondRefOf (\_SB.PCI0.I2C1.TPD8.PS0X))
  5240. {
  5241. PS0X ()
  5242. }
  5243. }
  5244.  
  5245. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  5246. {
  5247. ADBG ("TPD8 Ctrlr D3")
  5248. If (LAnd (LEqual (S0ID, Zero), LEqual (GR13, One)))
  5249. {
  5250. WTIN (0x0D, One)
  5251. Store (Zero, GO13)
  5252. }
  5253. }
  5254. }
  5255. }
  5256.  
  5257. Scope (SPI0)
  5258. {
  5259. }
  5260.  
  5261. Scope (SPI1)
  5262. {
  5263. }
  5264.  
  5265. Scope (UA00)
  5266. {
  5267. Device (BTH0)
  5268. {
  5269. Name (_HID, "INT33E0") // _HID: Hardware ID
  5270. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  5271. {
  5272. Name (UBUF, ResourceTemplate ()
  5273. {
  5274. UartSerialBus (0x0001C200, DataBitsEight, StopBitsOne,
  5275. 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware,
  5276. 0x0020, 0x0020, "\\_SB.PCI0.UA00",
  5277. 0x00, ResourceConsumer, ,
  5278. )
  5279. })
  5280. Return (UBUF)
  5281. }
  5282.  
  5283. Method (_STA, 0, NotSerialized) // _STA: Status
  5284. {
  5285. If (LEqual (And (SDS4, One), One))
  5286. {
  5287. Return (0x0F)
  5288. }
  5289. Else
  5290. {
  5291. Return (Zero)
  5292. }
  5293. }
  5294. }
  5295. }
  5296.  
  5297. Scope (UA01)
  5298. {
  5299. Device (BTH1)
  5300. {
  5301. Name (_HID, "INT33E0") // _HID: Hardware ID
  5302. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  5303. {
  5304. Name (UBUF, ResourceTemplate ()
  5305. {
  5306. UartSerialBus (0x0001C200, DataBitsEight, StopBitsOne,
  5307. 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware,
  5308. 0x0020, 0x0020, "\\_SB.PCI0.UA01",
  5309. 0x00, ResourceConsumer, ,
  5310. )
  5311. Interrupt (ResourceConsumer, Level, ActiveLow, SharedAndWake, ,, )
  5312. {
  5313. 0x00000019,
  5314. }
  5315. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  5316. "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
  5317. )
  5318. { // Pin list
  5319. 0x0057
  5320. }
  5321. })
  5322. Return (UBUF)
  5323. }
  5324.  
  5325. Method (_STA, 0, NotSerialized) // _STA: Status
  5326. {
  5327. If (LEqual (And (SDS5, One), One))
  5328. {
  5329. Return (0x0F)
  5330. }
  5331. Else
  5332. {
  5333. Return (Zero)
  5334. }
  5335. }
  5336. }
  5337.  
  5338. Device (BTH2)
  5339. {
  5340. Method (_HID, 0, NotSerialized) // _HID: Hardware ID
  5341. {
  5342. If (LEqual (BCV4, Zero))
  5343. {
  5344. Return ("BCM2E20")
  5345. }
  5346. Else
  5347. {
  5348. Return ("BCM2E40")
  5349. }
  5350. }
  5351.  
  5352. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  5353. {
  5354. Name (UBUF, ResourceTemplate ()
  5355. {
  5356. UartSerialBus (0x0001C200, DataBitsEight, StopBitsOne,
  5357. 0xC0, LittleEndian, ParityTypeNone, FlowControlHardware,
  5358. 0x0020, 0x0020, "\\_SB.PCI0.UA01",
  5359. 0x00, ResourceConsumer, ,
  5360. )
  5361. Interrupt (ResourceConsumer, Edge, ActiveLow, Exclusive, ,, )
  5362. {
  5363. 0x00000019,
  5364. }
  5365. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  5366. "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
  5367. )
  5368. { // Pin list
  5369. 0x0039
  5370. }
  5371. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  5372. "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
  5373. )
  5374. { // Pin list
  5375. 0x0057
  5376. }
  5377. })
  5378. Return (UBUF)
  5379. }
  5380.  
  5381. Method (_STA, 0, NotSerialized) // _STA: Status
  5382. {
  5383. If (LEqual (And (SDS5, 0x02), 0x02))
  5384. {
  5385. Return (0x0F)
  5386. }
  5387. Else
  5388. {
  5389. Return (Zero)
  5390. }
  5391. }
  5392.  
  5393. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  5394. }
  5395. }
  5396.  
  5397. Scope (SDHC)
  5398. {
  5399. Device (WI01)
  5400. {
  5401. Name (_ADR, One) // _ADR: Address
  5402. Name (_DDN, "SDIO Wifi device Function 1") // _DDN: DOS Device Name
  5403. Method (_STA, 0, NotSerialized) // _STA: Status
  5404. {
  5405. Return (0x0F)
  5406. }
  5407.  
  5408. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  5409. {
  5410. Return (Zero)
  5411. }
  5412.  
  5413. Name (_S4W, 0x02) // _S4W: S4 Device Wake State
  5414. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  5415. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  5416. {
  5417. ADBG ("WiFi1 Enter D0")
  5418. If (CondRefOf (\_SB.PCI0.SDHC.WI01.PS0X))
  5419. {
  5420. PS0X ()
  5421. }
  5422. }
  5423.  
  5424. Method (_PS2, 0, Serialized) // _PS2: Power State 2
  5425. {
  5426. ADBG ("WiFi1 Enter D2")
  5427. }
  5428.  
  5429. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  5430. {
  5431. ADBG ("WiFi1 Enter D3")
  5432. If (CondRefOf (\_SB.PCI0.SDHC.WI01.PS3X))
  5433. {
  5434. PS3X ()
  5435. }
  5436. }
  5437.  
  5438. Name (RBUF, ResourceTemplate ()
  5439. {
  5440. Memory32Fixed (ReadWrite,
  5441. 0x00000000, // Address Base
  5442. 0x00000000, // Address Length
  5443. _Y3A)
  5444. Interrupt (ResourceConsumer, Level, ActiveLow, SharedAndWake, ,, )
  5445. {
  5446. 0x00000026,
  5447. }
  5448. })
  5449. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  5450. {
  5451. CreateDWordField (^^RBUF, \_SB.PCI0.SDHC._Y33._BAS, AVAL) // _BAS: Base Address
  5452. If (LNotEqual (AVAL, Zero))
  5453. {
  5454. CreateDWordField (RBUF, \_SB.PCI0.SDHC.WI01._Y3A._LEN, WLN0) // _LEN: Length
  5455. Store (0x0C, WLN0)
  5456. CreateDWordField (RBUF, \_SB.PCI0.SDHC.WI01._Y3A._BAS, WVAL) // _BAS: Base Address
  5457. Add (AVAL, 0x1008, WVAL)
  5458. }
  5459.  
  5460. Return (RBUF)
  5461. }
  5462. }
  5463. }
  5464.  
  5465. Device (SAT0)
  5466. {
  5467. Name (_ADR, 0x001F0002) // _ADR: Address
  5468. Name (FDEV, Zero)
  5469. Name (FDRP, Zero)
  5470. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  5471. {
  5472. ADBG ("SAT0 DEP Call")
  5473. If (LGreaterEqual (OSYS, 0x07DD))
  5474. {
  5475. If (LAnd (LEqual (S0ID, One), LNotEqual (And (PEPC, 0x03
  5476. ), Zero)))
  5477. {
  5478. ADBG ("SAT0 DEP")
  5479. Return (Package (0x01)
  5480. {
  5481. PEPD
  5482. })
  5483. }
  5484. }
  5485.  
  5486. ADBG ("SAT0 DEP NULL")
  5487. Return (Package (0x00) {})
  5488. }
  5489.  
  5490. Device (PRT0)
  5491. {
  5492. Name (_ADR, 0xFFFF) // _ADR: Address
  5493. Method (_SDD, 1, Serialized) // _SDD: Set Device Data
  5494. {
  5495. CreateByteField (Arg0, 0x9D, BFDS)
  5496. ToInteger (BFDS, FDEV)
  5497. CreateByteField (Arg0, 0x9A, BFRP)
  5498. ToInteger (BFRP, FDRP)
  5499. }
  5500.  
  5501. Method (_GTF, 0, Serialized) // _GTF: Get Task File
  5502. {
  5503. If (LAnd (LAnd (LEqual (DVS0, One), LEqual (And (FDEV, One
  5504. ), One)), LEqual (And (FDRP, 0x80), 0x80)))
  5505. {
  5506. Name (PIB1, Buffer (0x07)
  5507. {
  5508. 0x10, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5509. })
  5510. Return (PIB1)
  5511. }
  5512.  
  5513. Name (PIB2, Buffer (0x07)
  5514. {
  5515. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  5516. })
  5517. Return (PIB2)
  5518. }
  5519. }
  5520.  
  5521. Device (PRT1)
  5522. {
  5523. Name (_ADR, 0x0001FFFF) // _ADR: Address
  5524. Name (FDEV, Zero)
  5525. Name (FDRP, Zero)
  5526. Method (_SDD, 1, Serialized) // _SDD: Set Device Data
  5527. {
  5528. CreateByteField (Arg0, 0x9D, BFDS)
  5529. ToInteger (BFDS, FDEV)
  5530. CreateByteField (Arg0, 0x9A, BFRP)
  5531. ToInteger (BFRP, FDRP)
  5532. }
  5533.  
  5534. Method (_GTF, 0, Serialized) // _GTF: Get Task File
  5535. {
  5536. If (LAnd (LAnd (LEqual (DVS1, One), LEqual (And (FDEV, One
  5537. ), One)), LEqual (And (FDRP, 0x80), 0x80)))
  5538. {
  5539. Name (PIB1, Buffer (0x07)
  5540. {
  5541. 0x10, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5542. })
  5543. Return (PIB1)
  5544. }
  5545.  
  5546. Name (PIB2, Buffer (0x07)
  5547. {
  5548. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  5549. })
  5550. Return (PIB2)
  5551. }
  5552. }
  5553.  
  5554. Device (PRT2)
  5555. {
  5556. Name (_ADR, 0x0002FFFF) // _ADR: Address
  5557. Name (FDEV, Zero)
  5558. Name (FDRP, Zero)
  5559. Method (_SDD, 1, Serialized) // _SDD: Set Device Data
  5560. {
  5561. CreateByteField (Arg0, 0x9D, BFDS)
  5562. ToInteger (BFDS, FDEV)
  5563. CreateByteField (Arg0, 0x9A, BFRP)
  5564. ToInteger (BFRP, FDRP)
  5565. }
  5566.  
  5567. Method (_GTF, 0, Serialized) // _GTF: Get Task File
  5568. {
  5569. If (LAnd (LAnd (LEqual (DVS2, One), LEqual (And (FDEV, One
  5570. ), One)), LEqual (And (FDRP, 0x80), 0x80)))
  5571. {
  5572. Name (PIB1, Buffer (0x07)
  5573. {
  5574. 0x10, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5575. })
  5576. Return (PIB1)
  5577. }
  5578.  
  5579. Name (PIB2, Buffer (0x07)
  5580. {
  5581. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  5582. })
  5583. Return (PIB2)
  5584. }
  5585. }
  5586.  
  5587. Device (PRT3)
  5588. {
  5589. Name (_ADR, 0x0003FFFF) // _ADR: Address
  5590. Name (FDEV, Zero)
  5591. Name (FDRP, Zero)
  5592. Method (_SDD, 1, Serialized) // _SDD: Set Device Data
  5593. {
  5594. CreateByteField (Arg0, 0x9D, BFDS)
  5595. ToInteger (BFDS, FDEV)
  5596. CreateByteField (Arg0, 0x9A, BFRP)
  5597. ToInteger (BFRP, FDRP)
  5598. }
  5599.  
  5600. Method (_GTF, 0, Serialized) // _GTF: Get Task File
  5601. {
  5602. If (LAnd (LAnd (LEqual (DVS3, One), LEqual (And (FDEV, One
  5603. ), One)), LEqual (And (FDRP, 0x80), 0x80)))
  5604. {
  5605. Name (PIB1, Buffer (0x07)
  5606. {
  5607. 0x10, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xEF
  5608. })
  5609. Return (PIB1)
  5610. }
  5611.  
  5612. Name (PIB2, Buffer (0x07)
  5613. {
  5614. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  5615. })
  5616. Return (PIB2)
  5617. }
  5618. }
  5619. }
  5620.  
  5621. Device (SAT1)
  5622. {
  5623. Name (_ADR, 0x001F0005) // _ADR: Address
  5624. }
  5625.  
  5626. Device (SBUS)
  5627. {
  5628. Name (_ADR, 0x001F0003) // _ADR: Address
  5629. OperationRegion (SMBP, PCI_Config, 0x40, 0xC0)
  5630. Field (SMBP, DWordAcc, NoLock, Preserve)
  5631. {
  5632. , 2,
  5633. I2CE, 1
  5634. }
  5635.  
  5636. OperationRegion (SMPB, PCI_Config, 0x20, 0x04)
  5637. Field (SMPB, DWordAcc, NoLock, Preserve)
  5638. {
  5639. , 5,
  5640. SBAR, 11
  5641. }
  5642.  
  5643. OperationRegion (SMBI, SystemIO, ShiftLeft (SBAR, 0x05), 0x10)
  5644. Field (SMBI, ByteAcc, NoLock, Preserve)
  5645. {
  5646. HSTS, 8,
  5647. Offset (0x02),
  5648. HCON, 8,
  5649. HCOM, 8,
  5650. TXSA, 8,
  5651. DAT0, 8,
  5652. DAT1, 8,
  5653. HBDR, 8,
  5654. PECR, 8,
  5655. RXSA, 8,
  5656. SDAT, 16
  5657. }
  5658.  
  5659. Method (SSXB, 2, Serialized)
  5660. {
  5661. If (STRT ())
  5662. {
  5663. Return (Zero)
  5664. }
  5665.  
  5666. Store (Zero, I2CE)
  5667. Store (0xBF, HSTS)
  5668. Store (Arg0, TXSA)
  5669. Store (Arg1, HCOM)
  5670. Store (0x48, HCON)
  5671. If (COMP ())
  5672. {
  5673. Or (HSTS, 0xFF, HSTS)
  5674. Return (One)
  5675. }
  5676.  
  5677. Return (Zero)
  5678. }
  5679.  
  5680. Method (SRXB, 1, Serialized)
  5681. {
  5682. If (STRT ())
  5683. {
  5684. Return (0xFFFF)
  5685. }
  5686.  
  5687. Store (Zero, I2CE)
  5688. Store (0xBF, HSTS)
  5689. Store (Or (Arg0, One), TXSA)
  5690. Store (0x44, HCON)
  5691. If (COMP ())
  5692. {
  5693. Or (HSTS, 0xFF, HSTS)
  5694. Return (DAT0)
  5695. }
  5696.  
  5697. Return (0xFFFF)
  5698. }
  5699.  
  5700. Method (SWRB, 3, Serialized)
  5701. {
  5702. If (STRT ())
  5703. {
  5704. Return (Zero)
  5705. }
  5706.  
  5707. Store (Zero, I2CE)
  5708. Store (0xBF, HSTS)
  5709. Store (Arg0, TXSA)
  5710. Store (Arg1, HCOM)
  5711. Store (Arg2, DAT0)
  5712. Store (0x48, HCON)
  5713. If (COMP ())
  5714. {
  5715. Or (HSTS, 0xFF, HSTS)
  5716. Return (One)
  5717. }
  5718.  
  5719. Return (Zero)
  5720. }
  5721.  
  5722. Method (SRDB, 2, Serialized)
  5723. {
  5724. If (STRT ())
  5725. {
  5726. Return (0xFFFF)
  5727. }
  5728.  
  5729. Store (Zero, I2CE)
  5730. Store (0xBF, HSTS)
  5731. Store (Or (Arg0, One), TXSA)
  5732. Store (Arg1, HCOM)
  5733. Store (0x48, HCON)
  5734. If (COMP ())
  5735. {
  5736. Or (HSTS, 0xFF, HSTS)
  5737. Return (DAT0)
  5738. }
  5739.  
  5740. Return (0xFFFF)
  5741. }
  5742.  
  5743. Method (SWRW, 3, Serialized)
  5744. {
  5745. If (STRT ())
  5746. {
  5747. Return (Zero)
  5748. }
  5749.  
  5750. Store (Zero, I2CE)
  5751. Store (0xBF, HSTS)
  5752. Store (Arg0, TXSA)
  5753. Store (Arg1, HCOM)
  5754. And (Arg2, 0xFF, DAT1)
  5755. And (ShiftRight (Arg2, 0x08), 0xFF, DAT0)
  5756. Store (0x4C, HCON)
  5757. If (COMP ())
  5758. {
  5759. Or (HSTS, 0xFF, HSTS)
  5760. Return (One)
  5761. }
  5762.  
  5763. Return (Zero)
  5764. }
  5765.  
  5766. Method (SRDW, 2, Serialized)
  5767. {
  5768. If (STRT ())
  5769. {
  5770. Return (0xFFFF)
  5771. }
  5772.  
  5773. Store (Zero, I2CE)
  5774. Store (0xBF, HSTS)
  5775. Store (Or (Arg0, One), TXSA)
  5776. Store (Arg1, HCOM)
  5777. Store (0x4C, HCON)
  5778. If (COMP ())
  5779. {
  5780. Or (HSTS, 0xFF, HSTS)
  5781. Return (Or (ShiftLeft (DAT0, 0x08), DAT1))
  5782. }
  5783.  
  5784. Return (0xFFFFFFFF)
  5785. }
  5786.  
  5787. Method (SBLW, 4, Serialized)
  5788. {
  5789. If (STRT ())
  5790. {
  5791. Return (Zero)
  5792. }
  5793.  
  5794. Store (Arg3, I2CE)
  5795. Store (0xBF, HSTS)
  5796. Store (Arg0, TXSA)
  5797. Store (Arg1, HCOM)
  5798. Store (SizeOf (Arg2), DAT0)
  5799. Store (Zero, Local1)
  5800. Store (DerefOf (Index (Arg2, Zero)), HBDR)
  5801. Store (0x54, HCON)
  5802. While (LGreater (SizeOf (Arg2), Local1))
  5803. {
  5804. Store (0x0FA0, Local0)
  5805. While (LAnd (LNot (And (HSTS, 0x80)), Local0))
  5806. {
  5807. Decrement (Local0)
  5808. Stall (0x32)
  5809. }
  5810.  
  5811. If (LNot (Local0))
  5812. {
  5813. KILL ()
  5814. Return (Zero)
  5815. }
  5816.  
  5817. Store (0x80, HSTS)
  5818. Increment (Local1)
  5819. If (LGreater (SizeOf (Arg2), Local1))
  5820. {
  5821. Store (DerefOf (Index (Arg2, Local1)), HBDR)
  5822. }
  5823. }
  5824.  
  5825. If (COMP ())
  5826. {
  5827. Or (HSTS, 0xFF, HSTS)
  5828. Return (One)
  5829. }
  5830.  
  5831. Return (Zero)
  5832. }
  5833.  
  5834. Method (SBLR, 3, Serialized)
  5835. {
  5836. Name (TBUF, Buffer (0x0100) {})
  5837. If (STRT ())
  5838. {
  5839. Return (Zero)
  5840. }
  5841.  
  5842. Store (Arg2, I2CE)
  5843. Store (0xBF, HSTS)
  5844. Store (Or (Arg0, One), TXSA)
  5845. Store (Arg1, HCOM)
  5846. Store (0x54, HCON)
  5847. Store (0x0FA0, Local0)
  5848. While (LAnd (LNot (And (HSTS, 0x80)), Local0))
  5849. {
  5850. Decrement (Local0)
  5851. Stall (0x32)
  5852. }
  5853.  
  5854. If (LNot (Local0))
  5855. {
  5856. KILL ()
  5857. Return (Zero)
  5858. }
  5859.  
  5860. Store (DAT0, Index (TBUF, Zero))
  5861. Store (0x80, HSTS)
  5862. Store (One, Local1)
  5863. While (LLess (Local1, DerefOf (Index (TBUF, Zero))))
  5864. {
  5865. Store (0x0FA0, Local0)
  5866. While (LAnd (LNot (And (HSTS, 0x80)), Local0))
  5867. {
  5868. Decrement (Local0)
  5869. Stall (0x32)
  5870. }
  5871.  
  5872. If (LNot (Local0))
  5873. {
  5874. KILL ()
  5875. Return (Zero)
  5876. }
  5877.  
  5878. Store (HBDR, Index (TBUF, Local1))
  5879. Store (0x80, HSTS)
  5880. Increment (Local1)
  5881. }
  5882.  
  5883. If (COMP ())
  5884. {
  5885. Or (HSTS, 0xFF, HSTS)
  5886. Return (TBUF)
  5887. }
  5888.  
  5889. Return (Zero)
  5890. }
  5891.  
  5892. Method (STRT, 0, Serialized)
  5893. {
  5894. Store (0xC8, Local0)
  5895. While (Local0)
  5896. {
  5897. If (And (HSTS, 0x40))
  5898. {
  5899. Decrement (Local0)
  5900. Sleep (One)
  5901. If (LEqual (Local0, Zero))
  5902. {
  5903. Return (One)
  5904. }
  5905. }
  5906. Else
  5907. {
  5908. Store (Zero, Local0)
  5909. }
  5910. }
  5911.  
  5912. Store (0x0FA0, Local0)
  5913. While (Local0)
  5914. {
  5915. If (And (HSTS, One))
  5916. {
  5917. Decrement (Local0)
  5918. Stall (0x32)
  5919. If (LEqual (Local0, Zero))
  5920. {
  5921. KILL ()
  5922. }
  5923. }
  5924. Else
  5925. {
  5926. Return (Zero)
  5927. }
  5928. }
  5929.  
  5930. Return (One)
  5931. }
  5932.  
  5933. Method (COMP, 0, Serialized)
  5934. {
  5935. Store (0x0FA0, Local0)
  5936. While (Local0)
  5937. {
  5938. If (And (HSTS, 0x02))
  5939. {
  5940. Return (One)
  5941. }
  5942. Else
  5943. {
  5944. Decrement (Local0)
  5945. Stall (0x32)
  5946. If (LEqual (Local0, Zero))
  5947. {
  5948. KILL ()
  5949. }
  5950. }
  5951. }
  5952.  
  5953. Return (Zero)
  5954. }
  5955.  
  5956. Method (KILL, 0, Serialized)
  5957. {
  5958. Or (HCON, 0x02, HCON)
  5959. Or (HSTS, 0xFF, HSTS)
  5960. }
  5961. }
  5962. }
  5963.  
  5964. Scope (_SB.PCI0.LPCB)
  5965. {
  5966. OperationRegion (CPSB, SystemMemory, 0x7934DE18, 0x10)
  5967. Field (CPSB, AnyAcc, NoLock, Preserve)
  5968. {
  5969. RTCX, 1,
  5970. SBB0, 7,
  5971. SBB1, 8,
  5972. SBB2, 8,
  5973. SBB3, 8,
  5974. SBB4, 8,
  5975. SBB5, 8,
  5976. SBB6, 8,
  5977. SBB7, 8,
  5978. SBB8, 8,
  5979. SBB9, 8,
  5980. SBBA, 8,
  5981. SBBB, 8,
  5982. SBBC, 8,
  5983. SBBD, 8,
  5984. SBBE, 8,
  5985. SBBF, 8
  5986. }
  5987.  
  5988. Method (SPTS, 1, NotSerialized)
  5989. {
  5990. Store (One, SLPX)
  5991. Store (One, SLPE)
  5992. Store (Zero, ^^RP01.RPAV)
  5993. Store (Zero, ^^RP02.RPAV)
  5994. Store (Zero, ^^RP03.RPAV)
  5995. Store (Zero, ^^RP04.RPAV)
  5996. Store (Zero, ^^RP05.RPAV)
  5997. Store (Zero, ^^RP06.RPAV)
  5998. Store (Zero, ^^RP07.RPAV)
  5999. Store (Zero, ^^RP08.RPAV)
  6000. }
  6001.  
  6002. Method (SWAK, 1, NotSerialized)
  6003. {
  6004. Store (Zero, SLPE)
  6005. If (RTCS) {}
  6006. Else
  6007. {
  6008. Notify (PWRB, 0x02)
  6009. }
  6010. }
  6011.  
  6012. OperationRegion (SMIE, SystemIO, PMBS, 0x04)
  6013. Field (SMIE, ByteAcc, NoLock, Preserve)
  6014. {
  6015. , 10,
  6016. RTCS, 1,
  6017. , 3,
  6018. PEXS, 1,
  6019. WAKS, 1,
  6020. Offset (0x03),
  6021. PWBT, 1,
  6022. Offset (0x04)
  6023. }
  6024.  
  6025. OperationRegion (SLPR, SystemIO, SMCR, 0x08)
  6026. Field (SLPR, ByteAcc, NoLock, Preserve)
  6027. {
  6028. , 4,
  6029. SLPE, 1,
  6030. , 31,
  6031. SLPX, 1,
  6032. Offset (0x08)
  6033. }
  6034. }
  6035.  
  6036. Scope (_SB.PCI0.RP01)
  6037. {
  6038. Method (_INI, 0, NotSerialized) // _INI: Initialize
  6039. {
  6040. Store (LTR1, LTRE)
  6041. Store (PML1, LMSL)
  6042. Store (PNL1, LNSL)
  6043. Store (OBF1, OBFF)
  6044. }
  6045.  
  6046. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6047. {
  6048. Return (GPRW (0x69, 0x04))
  6049. }
  6050. }
  6051.  
  6052. Scope (_SB.PCI0.RP02)
  6053. {
  6054. Method (_INI, 0, NotSerialized) // _INI: Initialize
  6055. {
  6056. Store (LTR2, LTRE)
  6057. Store (PML2, LMSL)
  6058. Store (PNL2, LNSL)
  6059. Store (OBF2, OBFF)
  6060. }
  6061.  
  6062. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6063. {
  6064. Return (GPRW (0x69, 0x04))
  6065. }
  6066. }
  6067.  
  6068. Scope (_SB.PCI0.RP03)
  6069. {
  6070. Method (_INI, 0, NotSerialized) // _INI: Initialize
  6071. {
  6072. Store (LTR3, LTRE)
  6073. Store (PML3, LMSL)
  6074. Store (PNL3, LNSL)
  6075. Store (OBF3, OBFF)
  6076. }
  6077.  
  6078. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6079. {
  6080. Return (GPRW (0x69, 0x04))
  6081. }
  6082. }
  6083.  
  6084. Scope (_SB.PCI0.RP04)
  6085. {
  6086. Method (_INI, 0, NotSerialized) // _INI: Initialize
  6087. {
  6088. Store (LTR4, LTRE)
  6089. Store (PML4, LMSL)
  6090. Store (PNL4, LNSL)
  6091. Store (OBF4, OBFF)
  6092. }
  6093.  
  6094. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6095. {
  6096. Return (GPRW (0x69, 0x04))
  6097. }
  6098. }
  6099.  
  6100. Scope (_SB.PCI0.RP05)
  6101. {
  6102. Method (_INI, 0, NotSerialized) // _INI: Initialize
  6103. {
  6104. Store (LTR5, LTRE)
  6105. Store (PML5, LMSL)
  6106. Store (PNL5, LNSL)
  6107. Store (OBF5, OBFF)
  6108. }
  6109.  
  6110. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6111. {
  6112. Return (GPRW (0x69, 0x04))
  6113. }
  6114. }
  6115.  
  6116. Scope (_SB.PCI0.RP06)
  6117. {
  6118. Method (_INI, 0, NotSerialized) // _INI: Initialize
  6119. {
  6120. Store (LTR6, LTRE)
  6121. Store (PML6, LMSL)
  6122. Store (PNL6, LNSL)
  6123. Store (OBF6, OBFF)
  6124. }
  6125.  
  6126. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6127. {
  6128. Return (GPRW (0x69, 0x04))
  6129. }
  6130. }
  6131.  
  6132. Scope (_SB.PCI0.RP07)
  6133. {
  6134. Method (_INI, 0, NotSerialized) // _INI: Initialize
  6135. {
  6136. Store (LTR7, LTRE)
  6137. Store (PML7, LMSL)
  6138. Store (PNL7, LNSL)
  6139. Store (OBF7, OBFF)
  6140. }
  6141.  
  6142. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6143. {
  6144. Return (GPRW (0x69, 0x04))
  6145. }
  6146. }
  6147.  
  6148. Scope (_SB.PCI0.RP08)
  6149. {
  6150. Method (_INI, 0, NotSerialized) // _INI: Initialize
  6151. {
  6152. Store (LTR8, LTRE)
  6153. Store (PML8, LMSL)
  6154. Store (PNL8, LNSL)
  6155. Store (OBF8, OBFF)
  6156. }
  6157.  
  6158. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6159. {
  6160. Return (GPRW (0x69, 0x04))
  6161. }
  6162. }
  6163.  
  6164. OperationRegion (_SB.PCI0.LPCB.LPCR, PCI_Config, 0x80, 0x04)
  6165. Field (\_SB.PCI0.LPCB.LPCR, ByteAcc, NoLock, Preserve)
  6166. {
  6167. CADR, 3,
  6168. , 1,
  6169. CBDR, 3,
  6170. Offset (0x01),
  6171. LTDR, 2,
  6172. , 2,
  6173. FDDR, 1,
  6174. Offset (0x02),
  6175. CALE, 1,
  6176. CBLE, 1,
  6177. LTLE, 1,
  6178. FDLE, 1,
  6179. Offset (0x03),
  6180. GLLE, 1,
  6181. GHLE, 1,
  6182. KCLE, 1,
  6183. MCLE, 1,
  6184. C1LE, 1,
  6185. C2LE, 1,
  6186. Offset (0x04)
  6187. }
  6188.  
  6189. Method (UXDV, 1, Serialized)
  6190. {
  6191. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  6192. Store (0xFF, Local0)
  6193. While (One)
  6194. {
  6195. Store (Add (Arg0, Zero), _T_0)
  6196. If (LEqual (_T_0, 0x03F8))
  6197. {
  6198. Store (Zero, Local0)
  6199. }
  6200. Else
  6201. {
  6202. If (LEqual (_T_0, 0x02F8))
  6203. {
  6204. Store (One, Local0)
  6205. }
  6206. Else
  6207. {
  6208. If (LEqual (_T_0, 0x0220))
  6209. {
  6210. Store (0x02, Local0)
  6211. }
  6212. Else
  6213. {
  6214. If (LEqual (_T_0, 0x0228))
  6215. {
  6216. Store (0x03, Local0)
  6217. }
  6218. Else
  6219. {
  6220. If (LEqual (_T_0, 0x0238))
  6221. {
  6222. Store (0x04, Local0)
  6223. }
  6224. Else
  6225. {
  6226. If (LEqual (_T_0, 0x02E8))
  6227. {
  6228. Store (0x05, Local0)
  6229. }
  6230. Else
  6231. {
  6232. If (LEqual (_T_0, 0x0338))
  6233. {
  6234. Store (0x06, Local0)
  6235. }
  6236. Else
  6237. {
  6238. If (LEqual (_T_0, 0x03E8))
  6239. {
  6240. Store (0x07, Local0)
  6241. }
  6242. }
  6243. }
  6244. }
  6245. }
  6246. }
  6247. }
  6248. }
  6249.  
  6250. Break
  6251. }
  6252.  
  6253. Return (Local0)
  6254. }
  6255.  
  6256. Method (RRIO, 4, Serialized)
  6257. {
  6258. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  6259. While (One)
  6260. {
  6261. Store (Add (Arg0, Zero), _T_0)
  6262. If (LEqual (_T_0, Zero))
  6263. {
  6264. Store (Zero, CALE)
  6265. Store (UXDV (Arg2), Local0)
  6266. If (LNotEqual (Local0, 0xFF))
  6267. {
  6268. Store (Local0, CADR)
  6269. }
  6270.  
  6271. If (Arg1)
  6272. {
  6273. Store (One, CALE)
  6274. }
  6275. }
  6276. Else
  6277. {
  6278. If (LEqual (_T_0, One))
  6279. {
  6280. Store (Zero, CBLE)
  6281. Store (UXDV (Arg2), Local0)
  6282. If (LNotEqual (Local0, 0xFF))
  6283. {
  6284. Store (Local0, CBDR)
  6285. }
  6286.  
  6287. If (Arg1)
  6288. {
  6289. Store (One, CBLE)
  6290. }
  6291. }
  6292. Else
  6293. {
  6294. If (LEqual (_T_0, 0x02))
  6295. {
  6296. Store (Zero, LTLE)
  6297. If (LEqual (Arg2, 0x0378))
  6298. {
  6299. Store (Zero, LTDR)
  6300. }
  6301.  
  6302. If (LEqual (Arg2, 0x0278))
  6303. {
  6304. Store (One, LTDR)
  6305. }
  6306.  
  6307. If (LEqual (Arg2, 0x03BC))
  6308. {
  6309. Store (0x02, LTDR)
  6310. }
  6311.  
  6312. If (Arg1)
  6313. {
  6314. Store (One, LTLE)
  6315. }
  6316. }
  6317. Else
  6318. {
  6319. If (LEqual (_T_0, 0x03))
  6320. {
  6321. Store (Zero, FDLE)
  6322. If (LEqual (Arg2, 0x03F0))
  6323. {
  6324. Store (Zero, FDDR)
  6325. }
  6326.  
  6327. If (LEqual (Arg2, 0x0370))
  6328. {
  6329. Store (One, FDDR)
  6330. }
  6331.  
  6332. If (Arg1)
  6333. {
  6334. Store (One, FDLE)
  6335. }
  6336. }
  6337. Else
  6338. {
  6339. If (LEqual (_T_0, 0x08))
  6340. {
  6341. If (LEqual (Arg2, 0x0200))
  6342. {
  6343. If (Arg1)
  6344. {
  6345. Store (One, GLLE)
  6346. }
  6347. Else
  6348. {
  6349. Store (Zero, GLLE)
  6350. }
  6351. }
  6352.  
  6353. If (LEqual (Arg2, 0x0208))
  6354. {
  6355. If (Arg1)
  6356. {
  6357. Store (One, GHLE)
  6358. }
  6359. Else
  6360. {
  6361. Store (Zero, GHLE)
  6362. }
  6363. }
  6364. }
  6365. Else
  6366. {
  6367. If (LEqual (_T_0, 0x09))
  6368. {
  6369. If (LEqual (Arg2, 0x0200))
  6370. {
  6371. If (Arg1)
  6372. {
  6373. Store (One, GLLE)
  6374. }
  6375. Else
  6376. {
  6377. Store (Zero, GLLE)
  6378. }
  6379. }
  6380.  
  6381. If (LEqual (Arg2, 0x0208))
  6382. {
  6383. If (Arg1)
  6384. {
  6385. Store (One, GHLE)
  6386. }
  6387. Else
  6388. {
  6389. Store (Zero, GHLE)
  6390. }
  6391. }
  6392. }
  6393. Else
  6394. {
  6395. If (LEqual (_T_0, 0x0A))
  6396. {
  6397. If (LOr (LEqual (Arg2, 0x60), LEqual (Arg2, 0x64)))
  6398. {
  6399. If (Arg1)
  6400. {
  6401. Store (One, KCLE)
  6402. }
  6403. Else
  6404. {
  6405. Store (Zero, KCLE)
  6406. }
  6407. }
  6408. }
  6409. Else
  6410. {
  6411. If (LEqual (_T_0, 0x0B))
  6412. {
  6413. If (LOr (LEqual (Arg2, 0x62), LEqual (Arg2, 0x66)))
  6414. {
  6415. If (Arg1)
  6416. {
  6417. Store (One, MCLE)
  6418. }
  6419. Else
  6420. {
  6421. Store (Zero, MCLE)
  6422. }
  6423. }
  6424. }
  6425. Else
  6426. {
  6427. If (LEqual (_T_0, 0x0C))
  6428. {
  6429. If (LEqual (Arg2, 0x2E))
  6430. {
  6431. If (Arg1)
  6432. {
  6433. Store (One, C1LE)
  6434. }
  6435. Else
  6436. {
  6437. Store (Zero, C1LE)
  6438. }
  6439. }
  6440.  
  6441. If (LEqual (Arg2, 0x4E))
  6442. {
  6443. If (Arg1)
  6444. {
  6445. Store (One, C2LE)
  6446. }
  6447. Else
  6448. {
  6449. Store (Zero, C2LE)
  6450. }
  6451. }
  6452. }
  6453. Else
  6454. {
  6455. If (LEqual (_T_0, 0x0D))
  6456. {
  6457. If (LEqual (Arg2, 0x2E))
  6458. {
  6459. If (Arg1)
  6460. {
  6461. Store (One, C1LE)
  6462. }
  6463. Else
  6464. {
  6465. Store (Zero, C1LE)
  6466. }
  6467. }
  6468.  
  6469. If (LEqual (Arg2, 0x4E))
  6470. {
  6471. If (Arg1)
  6472. {
  6473. Store (One, C2LE)
  6474. }
  6475. Else
  6476. {
  6477. Store (Zero, C2LE)
  6478. }
  6479. }
  6480. }
  6481. }
  6482. }
  6483. }
  6484. }
  6485. }
  6486. }
  6487. }
  6488. }
  6489. }
  6490.  
  6491. Break
  6492. }
  6493. }
  6494.  
  6495. Method (RDMA, 3, NotSerialized)
  6496. {
  6497. }
  6498.  
  6499. Scope (_SB.PCI0)
  6500. {
  6501. Name (PA0H, Zero)
  6502. Name (PA1H, Zero)
  6503. Name (PA1L, Zero)
  6504. Name (PA2H, Zero)
  6505. Name (PA2L, Zero)
  6506. Name (PA3H, Zero)
  6507. Name (PA3L, Zero)
  6508. Name (PA4H, Zero)
  6509. Name (PA4L, Zero)
  6510. Name (PA5H, Zero)
  6511. Name (PA5L, Zero)
  6512. Name (PA6H, Zero)
  6513. Name (PA6L, Zero)
  6514. Method (NPTS, 1, NotSerialized)
  6515. {
  6516. Store (PM0H, PA0H)
  6517. Store (PM1H, PA1H)
  6518. Store (PM1L, PA1L)
  6519. Store (PM2H, PA2H)
  6520. Store (PM2L, PA2L)
  6521. Store (PM3H, PA3H)
  6522. Store (PM3L, PA3L)
  6523. Store (PM4H, PA4H)
  6524. Store (PM4L, PA4L)
  6525. Store (PM5H, PA5H)
  6526. Store (PM5L, PA5L)
  6527. Store (PM6H, PA6H)
  6528. Store (PM6L, PA6L)
  6529. }
  6530.  
  6531. Method (NWAK, 1, NotSerialized)
  6532. {
  6533. Store (PA0H, PM0H)
  6534. Store (PA1H, PM1H)
  6535. Store (PA1L, PM1L)
  6536. Store (PA2H, PM2H)
  6537. Store (PA2L, PM2L)
  6538. Store (PA3H, PM3H)
  6539. Store (PA3L, PM3L)
  6540. Store (PA4H, PM4H)
  6541. Store (PA4L, PM4L)
  6542. Store (PA5H, PM5H)
  6543. Store (PA5L, PM5L)
  6544. Store (PA6H, PM6H)
  6545. Store (PA6L, PM6L)
  6546. }
  6547. }
  6548.  
  6549. Scope (_PR)
  6550. {
  6551. Processor (CPU0, 0x01, 0x00001810, 0x06)
  6552. {
  6553. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  6554. {
  6555. ADBG ("CPU0 DEP Call")
  6556. If (LEqual (S0ID, One))
  6557. {
  6558. ADBG ("CPU0 DEP")
  6559. Return (Package (0x01)
  6560. {
  6561. \_SB.PEPD
  6562. })
  6563. }
  6564. Else
  6565. {
  6566. ADBG ("CPU0 DEP NULL")
  6567. Return (Package (0x00) {})
  6568. }
  6569. }
  6570. }
  6571.  
  6572. Processor (CPU1, 0x02, 0x00001810, 0x06)
  6573. {
  6574. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  6575. {
  6576. ADBG ("CPU1 DEP Call")
  6577. If (LEqual (S0ID, One))
  6578. {
  6579. ADBG ("CPU1 DEP")
  6580. Return (Package (0x01)
  6581. {
  6582. \_SB.PEPD
  6583. })
  6584. }
  6585. Else
  6586. {
  6587. ADBG ("CPU1 DEP NULL")
  6588. Return (Package (0x00) {})
  6589. }
  6590. }
  6591. }
  6592.  
  6593. Processor (CPU2, 0x03, 0x00001810, 0x06)
  6594. {
  6595. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  6596. {
  6597. ADBG ("CPU2 DEP Call")
  6598. If (LEqual (S0ID, One))
  6599. {
  6600. ADBG ("CPU2 DEP")
  6601. Return (Package (0x01)
  6602. {
  6603. \_SB.PEPD
  6604. })
  6605. }
  6606. Else
  6607. {
  6608. ADBG ("CPU2 DEP NULL")
  6609. Return (Package (0x00) {})
  6610. }
  6611. }
  6612. }
  6613.  
  6614. Processor (CPU3, 0x04, 0x00001810, 0x06)
  6615. {
  6616. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  6617. {
  6618. ADBG ("CPU3 DEP Call")
  6619. If (LEqual (S0ID, One))
  6620. {
  6621. ADBG ("CPU3 DEP")
  6622. Return (Package (0x01)
  6623. {
  6624. \_SB.PEPD
  6625. })
  6626. }
  6627. Else
  6628. {
  6629. ADBG ("CPU3 DEP NULL")
  6630. Return (Package (0x00) {})
  6631. }
  6632. }
  6633. }
  6634.  
  6635. Processor (CPU4, 0x05, 0x00001810, 0x06)
  6636. {
  6637. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  6638. {
  6639. ADBG ("CPU4 DEP Call")
  6640. If (LEqual (S0ID, One))
  6641. {
  6642. ADBG ("CPU4 DEP")
  6643. Return (Package (0x01)
  6644. {
  6645. \_SB.PEPD
  6646. })
  6647. }
  6648. Else
  6649. {
  6650. ADBG ("CPU4 DEP NULL")
  6651. Return (Package (0x00) {})
  6652. }
  6653. }
  6654. }
  6655.  
  6656. Processor (CPU5, 0x06, 0x00001810, 0x06)
  6657. {
  6658. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  6659. {
  6660. ADBG ("CPU5 DEP Call")
  6661. If (LEqual (S0ID, One))
  6662. {
  6663. ADBG ("CPU5 DEP")
  6664. Return (Package (0x01)
  6665. {
  6666. \_SB.PEPD
  6667. })
  6668. }
  6669. Else
  6670. {
  6671. ADBG ("CPU5 DEP NULL")
  6672. Return (Package (0x00) {})
  6673. }
  6674. }
  6675. }
  6676.  
  6677. Processor (CPU6, 0x07, 0x00001810, 0x06)
  6678. {
  6679. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  6680. {
  6681. ADBG ("CPU6 DEP Call")
  6682. If (LEqual (S0ID, One))
  6683. {
  6684. ADBG ("CPU6 DEP")
  6685. Return (Package (0x01)
  6686. {
  6687. \_SB.PEPD
  6688. })
  6689. }
  6690. Else
  6691. {
  6692. ADBG ("CPU6 DEP NULL")
  6693. Return (Package (0x00) {})
  6694. }
  6695. }
  6696. }
  6697.  
  6698. Processor (CPU7, 0x08, 0x00001810, 0x06)
  6699. {
  6700. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  6701. {
  6702. ADBG ("CPU7 DEP Call")
  6703. If (LEqual (S0ID, One))
  6704. {
  6705. ADBG ("CPU7 DEP")
  6706. Return (Package (0x01)
  6707. {
  6708. \_SB.PEPD
  6709. })
  6710. }
  6711. Else
  6712. {
  6713. ADBG ("CPU7 DEP NULL")
  6714. Return (Package (0x00) {})
  6715. }
  6716. }
  6717. }
  6718. }
  6719.  
  6720. Name (ECUP, One)
  6721. Scope (\)
  6722. {
  6723. Device (NFC1)
  6724. {
  6725. Name (_HID, EisaId ("SKTD000")) // _HID: Hardware ID
  6726. Method (_STA, 0, NotSerialized) // _STA: Status
  6727. {
  6728. If (LEqual (NFCE, 0x03))
  6729. {
  6730. Return (0x0F)
  6731. }
  6732. Else
  6733. {
  6734. Return (Zero)
  6735. }
  6736. }
  6737. }
  6738.  
  6739. Device (NFC2)
  6740. {
  6741. Name (_HID, EisaId ("NXP5442")) // _HID: Hardware ID
  6742. Method (_STA, 0, NotSerialized) // _STA: Status
  6743. {
  6744. If (LEqual (NFCE, 0x02))
  6745. {
  6746. Return (0x0F)
  6747. }
  6748. Else
  6749. {
  6750. Return (Zero)
  6751. }
  6752. }
  6753. }
  6754.  
  6755. Device (NFC3)
  6756. {
  6757. Name (_HID, EisaId ("ICV0A12")) // _HID: Hardware ID
  6758. Method (_STA, 0, NotSerialized) // _STA: Status
  6759. {
  6760. If (LEqual (NFCE, One))
  6761. {
  6762. Return (0x0F)
  6763. }
  6764. Else
  6765. {
  6766. Return (Zero)
  6767. }
  6768. }
  6769. }
  6770. }
  6771.  
  6772. Mutex (MUTX, 0x00)
  6773. OperationRegion (DEB0, SystemIO, 0x80, One)
  6774. Field (DEB0, ByteAcc, NoLock, Preserve)
  6775. {
  6776. DBG8, 8
  6777. }
  6778.  
  6779. OperationRegion (DEB1, SystemIO, 0x90, 0x02)
  6780. Field (DEB1, WordAcc, NoLock, Preserve)
  6781. {
  6782. DBG9, 16
  6783. }
  6784.  
  6785. OperationRegion (PRT0, SystemIO, 0x80, 0x04)
  6786. Field (PRT0, DWordAcc, Lock, Preserve)
  6787. {
  6788. P80H, 32
  6789. }
  6790.  
  6791. Method (P8XH, 2, Serialized)
  6792. {
  6793. If (LEqual (Arg0, Zero))
  6794. {
  6795. Store (Or (And (P80D, 0xFFFFFF00), Arg1), P80D)
  6796. }
  6797.  
  6798. If (LEqual (Arg0, One))
  6799. {
  6800. Store (Or (And (P80D, 0xFFFF00FF), ShiftLeft (Arg1, 0x08)
  6801. ), P80D)
  6802. }
  6803.  
  6804. If (LEqual (Arg0, 0x02))
  6805. {
  6806. Store (Or (And (P80D, 0xFF00FFFF), ShiftLeft (Arg1, 0x10)
  6807. ), P80D)
  6808. }
  6809.  
  6810. If (LEqual (Arg0, 0x03))
  6811. {
  6812. Store (Or (And (P80D, 0x00FFFFFF), ShiftLeft (Arg1, 0x18)
  6813. ), P80D)
  6814. }
  6815.  
  6816. Store (P80D, P80H)
  6817. }
  6818.  
  6819. Method (ADBG, 1, Serialized)
  6820. {
  6821. If (CondRefOf (MDBG))
  6822. {
  6823. Return (MDBG)
  6824. Arg0
  6825. }
  6826.  
  6827. Return (Zero)
  6828. }
  6829.  
  6830. OperationRegion (SPRT, SystemIO, 0xB2, 0x02)
  6831. Field (SPRT, ByteAcc, Lock, Preserve)
  6832. {
  6833. SSMP, 8
  6834. }
  6835.  
  6836. Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
  6837. {
  6838. Store (Arg0, GPIC)
  6839. Store (Arg0, PICM)
  6840. }
  6841.  
  6842. Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep
  6843. {
  6844. Store (Zero, P80D)
  6845. P8XH (Zero, Arg0)
  6846. PTS (Arg0)
  6847. ADBG (Concatenate ("_PTS=", ToHexString (Arg0)))
  6848. If (And (ICNF, 0x10))
  6849. {
  6850. If (CondRefOf (\_SB.IAOE.PTSL))
  6851. {
  6852. Store (Arg0, \_SB.IAOE.PTSL)
  6853. }
  6854. }
  6855.  
  6856. If (LEqual (Arg0, 0x03))
  6857. {
  6858. If (LAnd (DTSE, LGreater (TCNT, One)))
  6859. {
  6860. TRAP (TRTD, 0x1E)
  6861. }
  6862.  
  6863. If (LEqual (ECON, One))
  6864. {
  6865. If (And (ICNF, One))
  6866. {
  6867. If (LAnd (And (ICNF, 0x10), LEqual (\_SB.IAOE.ITMR, Zero)))
  6868. {
  6869. If (LAnd (CondRefOf (\_SB.PCI0.LPCB.H_EC.AWT0), CondRefOf (\_SB.IAOE.ECTM)))
  6870. {
  6871. If (LGreater (\_SB.IAOE.ECTM, Zero))
  6872. {
  6873. \_SB.PCI0.LPCB.H_EC.ECWT (And (\_SB.IAOE.ECTM, 0xFF), RefOf (\_SB.PCI0.LPCB.H_EC.AWT0))
  6874. \_SB.PCI0.LPCB.H_EC.ECWT (ShiftRight (And (\_SB.IAOE.ECTM, 0xFF00), 0x08), RefOf (\_SB.PCI0.LPCB.H_EC.AWT1))
  6875. \_SB.PCI0.LPCB.H_EC.ECWT (ShiftRight (And (\_SB.IAOE.ECTM, 0x00FF0000), 0x10), RefOf (\_SB.PCI0.LPCB.H_EC.AWT2))
  6876. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.WTMS)), Local0)
  6877. \_SB.PCI0.LPCB.H_EC.ECWT (Or (0x81, Local0), RefOf (\_SB.PCI0.LPCB.H_EC.WTMS))
  6878. }
  6879. }
  6880. }
  6881.  
  6882. If (LAnd (And (ICNF, 0x10), CondRefOf (\_SB.IFFS.FFSS)))
  6883. {
  6884. If (And (\_SB.IFFS.FFSS, One))
  6885. {
  6886. Store (One, \_SB.IAOE.FFSE)
  6887. If (LAnd (CondRefOf (\_SB.PCI0.LPCB.H_EC.WTMS), LEqual (\_SB.IAOE.PTSL, 0x03)))
  6888. {
  6889. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.WTMS)), Local0)
  6890. \_SB.PCI0.LPCB.H_EC.ECWT (Or (0x02, Local0), RefOf (\_SB.PCI0.LPCB.H_EC.WTMS))
  6891. }
  6892. }
  6893. Else
  6894. {
  6895. Store (Zero, \_SB.IAOE.FFSE)
  6896. }
  6897. }
  6898. }
  6899. }
  6900. }
  6901.  
  6902. If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
  6903. {
  6904. If (LAnd (CondRefOf (\_SB.PCI0.LPCB.H_EC.PB10), ECON))
  6905. {
  6906. If (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.PB10)))
  6907. {
  6908. Or (PB1E, 0x80, PB1E)
  6909. }
  6910. Else
  6911. {
  6912. And (PB1E, 0x7F, PB1E)
  6913. }
  6914. }
  6915. }
  6916.  
  6917. If (CondRefOf (\_SB.TPM.PTS))
  6918. {
  6919. \_SB.TPM.PTS (Arg0)
  6920. }
  6921.  
  6922. If (LOr (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)), LEqual (
  6923. Arg0, 0x05)))
  6924. {
  6925. If (LEqual (PFLV, FDTP))
  6926. {
  6927. Store (One, GP27)
  6928. }
  6929. }
  6930. }
  6931.  
  6932. Method (_WAK, 1, Serialized) // _WAK: Wake
  6933. {
  6934. P8XH (One, 0xAB)
  6935. WAK (Arg0)
  6936. ADBG ("_WAK")
  6937. If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
  6938. {
  6939. If (CondRefOf (\_SB.PCI0.PEG0.PEGP.EPON))
  6940. {
  6941. \_SB.PCI0.PEG0.PEGP.EPON ()
  6942. }
  6943.  
  6944. If (CondRefOf (\_SB.PCI0.RP05.PEGP.EPON))
  6945. {
  6946. \_SB.PCI0.RP05.PEGP.EPON ()
  6947. }
  6948. }
  6949.  
  6950. If (LAnd (LNotEqual (And (\_SB.PCI0.B0D3.ABAR, 0xFFFFC004), 0xFFFFC004),
  6951. LNotEqual (And (\_SB.PCI0.B0D3.ABAR, 0xFFFFC000), Zero)))
  6952. {
  6953. Store (\_SB.PCI0.B0D3.ABAR, \_SB.PCI0.B0D3.BARA)
  6954. }
  6955.  
  6956. If (And (ICNF, 0x10))
  6957. {
  6958. If (And (\_SB.PCI0.GFX0.TCHE, 0x0100))
  6959. {
  6960. If (LEqual (\_SB.IAOE.ITMR, One))
  6961. {
  6962. If (LAnd (And (\_SB.IAOE.IBT1, One), LOr (And (\_SB.IAOE.WKRS, 0x02
  6963. ), And (\_SB.IAOE.WKRS, 0x10))))
  6964. {
  6965. Store (Or (And (\_SB.PCI0.GFX0.STAT, 0xFFFFFFFFFFFFFFFC), One), \_SB.PCI0.GFX0.STAT)
  6966. }
  6967. Else
  6968. {
  6969. Store (And (\_SB.PCI0.GFX0.STAT, 0xFFFFFFFFFFFFFFFC), \_SB.PCI0.GFX0.STAT)
  6970. }
  6971. }
  6972. Else
  6973. {
  6974. If (LEqual (ECON, One))
  6975. {
  6976. If (CondRefOf (\_SB.PCI0.LPCB.H_EC.IBT1))
  6977. {
  6978. If (LAnd (And (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.IBT1)), One), LOr (And (
  6979. \_SB.IAOE.WKRS, 0x02), And (\_SB.IAOE.WKRS, 0x10))))
  6980. {
  6981. Store (Or (And (\_SB.PCI0.GFX0.STAT, 0xFFFFFFFFFFFFFFFC), One), \_SB.PCI0.GFX0.STAT)
  6982. }
  6983. Else
  6984. {
  6985. Store (And (\_SB.PCI0.GFX0.STAT, 0xFFFFFFFFFFFFFFFC), \_SB.PCI0.GFX0.STAT)
  6986. }
  6987. }
  6988. }
  6989. }
  6990. }
  6991.  
  6992. If (CondRefOf (\_SB.IAOE.PTSL))
  6993. {
  6994. Store (Zero, \_SB.IAOE.PTSL)
  6995. }
  6996.  
  6997. If (LEqual (\_SB.IAOE.ITMR, Zero))
  6998. {
  6999. If (CondRefOf (\_SB.PCI0.LPCB.H_EC.WTMS))
  7000. {
  7001. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.WTMS))
  7002. }
  7003. }
  7004.  
  7005. If (CondRefOf (\_SB.IAOE.ECTM))
  7006. {
  7007. Store (Zero, \_SB.IAOE.ECTM)
  7008. }
  7009.  
  7010. If (CondRefOf (\_SB.IAOE.RCTM))
  7011. {
  7012. Store (Zero, \_SB.IAOE.RCTM)
  7013. }
  7014. }
  7015.  
  7016. If (NEXP)
  7017. {
  7018. If (And (OSCC, 0x02))
  7019. {
  7020. \_SB.PCI0.NHPG ()
  7021. }
  7022.  
  7023. If (And (OSCC, 0x04))
  7024. {
  7025. \_SB.PCI0.NPME ()
  7026. }
  7027. }
  7028.  
  7029. If (LEqual (Arg0, 0x03))
  7030. {
  7031. If (LEqual (Zero, ACTT))
  7032. {
  7033. If (LEqual (ECON, One))
  7034. {
  7035. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.CFAN))
  7036. }
  7037. }
  7038. }
  7039.  
  7040. If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
  7041. {
  7042. If (LAnd (CondRefOf (\_SB.PCI0.LPCB.H_EC.PB10), ECON))
  7043. {
  7044. If (And (PB1E, 0x80))
  7045. {
  7046. \_SB.PCI0.LPCB.H_EC.ECWT (One, RefOf (\_SB.PCI0.LPCB.H_EC.PB10))
  7047. }
  7048. }
  7049.  
  7050. If (And (GBSX, 0x40))
  7051. {
  7052. \_SB.PCI0.GFX0.IUEH (0x06)
  7053. }
  7054.  
  7055. If (And (GBSX, 0x80))
  7056. {
  7057. \_SB.PCI0.GFX0.IUEH (0x07)
  7058. }
  7059.  
  7060. If (LAnd (DTSE, LGreater (TCNT, One)))
  7061. {
  7062. TRAP (TRTD, 0x14)
  7063. }
  7064.  
  7065. If (LEqual (OSYS, 0x07D2))
  7066. {
  7067. If (And (\_PR.CFGD, One))
  7068. {
  7069. If (LGreater (\_PR.CPU0._PPC, Zero))
  7070. {
  7071. Subtract (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
  7072. PNOT ()
  7073. Add (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
  7074. PNOT ()
  7075. }
  7076. Else
  7077. {
  7078. Add (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
  7079. PNOT ()
  7080. Subtract (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
  7081. PNOT ()
  7082. }
  7083. }
  7084. }
  7085.  
  7086. If (LEqual (ECON, One))
  7087. {
  7088. If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
  7089. {
  7090. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.LSTE)), LIDS)
  7091. If (IGDS)
  7092. {
  7093. If (LEqual (LIDS (), Zero))
  7094. {
  7095. Store (0x80000000, \_SB.PCI0.GFX0.CLID)
  7096. }
  7097.  
  7098. If (LEqual (LIDS (), One))
  7099. {
  7100. Store (0x80000003, \_SB.PCI0.GFX0.CLID)
  7101. }
  7102. }
  7103.  
  7104. Notify (\_SB.LID0, 0x80)
  7105. }
  7106.  
  7107. If (LNotEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.DOCK)), DSTS))
  7108. {
  7109. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.DOCK)), DSTS)
  7110. If (LAnd (\_SB.PCI0.HDEF.DCKS, One))
  7111. {
  7112. Store (DSTS, \_SB.PCI0.HDEF.DCKA)
  7113. }
  7114.  
  7115. If (LEqual (DSTS, One))
  7116. {
  7117. If (LEqual (Arg0, 0x03))
  7118. {
  7119. Sleep (0x03E8)
  7120. Store (PDBR, SSMP)
  7121. Sleep (0x03E8)
  7122. }
  7123.  
  7124. Notify (\_SB.PCI0.DOCK, Zero)
  7125. }
  7126. Else
  7127. {
  7128. Notify (\_SB.PCI0.DOCK, One)
  7129. }
  7130. }
  7131.  
  7132. If (LEqual (BNUM, Zero))
  7133. {
  7134. If (LNotEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.VPWR)), PWRS))
  7135. {
  7136. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.VPWR)), PWRS)
  7137. PNOT ()
  7138. }
  7139. }
  7140. Else
  7141. {
  7142. If (LNotEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.RPWR)), PWRS))
  7143. {
  7144. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.RPWR)), PWRS)
  7145. PNOT ()
  7146. }
  7147. }
  7148. }
  7149.  
  7150. If (LEqual (RP1D, Zero))
  7151. {
  7152. Notify (\_SB.PCI0.RP01, Zero)
  7153. }
  7154.  
  7155. If (LEqual (RP2D, Zero))
  7156. {
  7157. Notify (\_SB.PCI0.RP02, Zero)
  7158. }
  7159.  
  7160. If (LEqual (RP3D, Zero))
  7161. {
  7162. Notify (\_SB.PCI0.RP03, Zero)
  7163. }
  7164.  
  7165. If (LEqual (RP4D, Zero))
  7166. {
  7167. Notify (\_SB.PCI0.RP04, Zero)
  7168. }
  7169.  
  7170. If (LEqual (RP5D, Zero))
  7171. {
  7172. Notify (\_SB.PCI0.RP05, Zero)
  7173. }
  7174.  
  7175. If (LEqual (RP6D, Zero))
  7176. {
  7177. Notify (\_SB.PCI0.RP06, Zero)
  7178. }
  7179.  
  7180. If (LEqual (RP7D, Zero))
  7181. {
  7182. If (LEqual (DSTS, Zero))
  7183. {
  7184. Notify (\_SB.PCI0.RP07, Zero)
  7185. }
  7186. }
  7187.  
  7188. If (LEqual (RP8D, Zero))
  7189. {
  7190. If (LEqual (DSTS, Zero))
  7191. {
  7192. Notify (\_SB.PCI0.RP08, Zero)
  7193. }
  7194. }
  7195. }
  7196.  
  7197. If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
  7198. {
  7199. \_SB.PCI0.XHC.XWAK ()
  7200. }
  7201.  
  7202. Return (Package (0x02)
  7203. {
  7204. Zero,
  7205. Zero
  7206. })
  7207. }
  7208.  
  7209. Method (GETB, 3, Serialized)
  7210. {
  7211. Multiply (Arg0, 0x08, Local0)
  7212. Multiply (Arg1, 0x08, Local1)
  7213. CreateField (Arg2, Local0, Local1, TBF3)
  7214. Return (TBF3)
  7215. }
  7216.  
  7217. Method (PNOT, 0, Serialized)
  7218. {
  7219. If (CondRefOf (\_SB.PCCD.PENB))
  7220. {
  7221. Store (0x82, Local0)
  7222. }
  7223. Else
  7224. {
  7225. Store (0x80, Local0)
  7226. }
  7227.  
  7228. If (LGreater (TCNT, One))
  7229. {
  7230. If (And (PDC0, 0x08))
  7231. {
  7232. Notify (\_PR.CPU0, Local0)
  7233. If (And (PDC0, 0x10))
  7234. {
  7235. Notify (\_PR.CPU0, 0x81)
  7236. }
  7237. }
  7238.  
  7239. If (And (PDC1, 0x08))
  7240. {
  7241. Notify (\_PR.CPU1, Local0)
  7242. If (And (PDC1, 0x10))
  7243. {
  7244. Notify (\_PR.CPU1, 0x81)
  7245. }
  7246. }
  7247.  
  7248. If (And (PDC2, 0x08))
  7249. {
  7250. Notify (\_PR.CPU2, Local0)
  7251. If (And (PDC2, 0x10))
  7252. {
  7253. Notify (\_PR.CPU2, 0x81)
  7254. }
  7255. }
  7256.  
  7257. If (And (PDC3, 0x08))
  7258. {
  7259. Notify (\_PR.CPU3, Local0)
  7260. If (And (PDC3, 0x10))
  7261. {
  7262. Notify (\_PR.CPU3, 0x81)
  7263. }
  7264. }
  7265.  
  7266. If (And (PDC4, 0x08))
  7267. {
  7268. Notify (\_PR.CPU4, Local0)
  7269. If (And (PDC4, 0x10))
  7270. {
  7271. Notify (\_PR.CPU4, 0x81)
  7272. }
  7273. }
  7274.  
  7275. If (And (PDC5, 0x08))
  7276. {
  7277. Notify (\_PR.CPU5, Local0)
  7278. If (And (PDC5, 0x10))
  7279. {
  7280. Notify (\_PR.CPU5, 0x81)
  7281. }
  7282. }
  7283.  
  7284. If (And (PDC6, 0x08))
  7285. {
  7286. Notify (\_PR.CPU6, Local0)
  7287. If (And (PDC6, 0x10))
  7288. {
  7289. Notify (\_PR.CPU6, 0x81)
  7290. }
  7291. }
  7292.  
  7293. If (And (PDC7, 0x08))
  7294. {
  7295. Notify (\_PR.CPU7, Local0)
  7296. If (And (PDC7, 0x10))
  7297. {
  7298. Notify (\_PR.CPU7, 0x81)
  7299. }
  7300. }
  7301. }
  7302. Else
  7303. {
  7304. Notify (\_PR.CPU0, Local0)
  7305. Notify (\_PR.CPU0, 0x81)
  7306. }
  7307.  
  7308. If (LEqual (ECON, One))
  7309. {
  7310. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.B1CC)), B1SC)
  7311. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.B1ST)), B1SS)
  7312. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.B2CC)), B2SC)
  7313. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.B2ST)), B2SS)
  7314. If (LGreaterEqual (OSYS, 0x07D6))
  7315. {
  7316. Notify (\_SB.PCI0.LPCB.H_EC.BAT0, 0x81)
  7317. Notify (\_SB.PCI0.LPCB.H_EC.BAT1, 0x81)
  7318. Notify (\_SB.PCI0.LPCB.H_EC.BAT2, 0x81)
  7319. }
  7320. Else
  7321. {
  7322. Notify (\_SB.PCI0.LPCB.H_EC.BAT0, 0x80)
  7323. Notify (\_SB.PCI0.LPCB.H_EC.BAT1, 0x80)
  7324. Notify (\_SB.PCI0.LPCB.H_EC.BAT2, 0x80)
  7325. }
  7326. }
  7327.  
  7328. If (LEqual (DPTF, One))
  7329. {
  7330. Notify (\_SB.IETM, 0x86)
  7331. }
  7332. }
  7333.  
  7334. OperationRegion (MBAR, SystemMemory, Add (ShiftLeft (\_SB.PCI0.MHBR, 0x0F), 0x5000), 0x1000)
  7335. Field (MBAR, ByteAcc, NoLock, Preserve)
  7336. {
  7337. Offset (0x938),
  7338. PWRU, 4,
  7339. Offset (0x9A0),
  7340. PPL1, 15,
  7341. PL1E, 1,
  7342. CLP1, 1
  7343. }
  7344.  
  7345. Name (CLMP, Zero)
  7346. Name (PLEN, Zero)
  7347. Name (PLSV, 0x8000)
  7348. Name (CSEM, Zero)
  7349. Method (SPL1, 0, Serialized)
  7350. {
  7351. Name (PPUU, Zero)
  7352. If (LEqual (CSEM, One))
  7353. {
  7354. Return (Zero)
  7355. }
  7356.  
  7357. Store (One, CSEM)
  7358. Store (PPL1, PLSV)
  7359. Store (PL1E, PLEN)
  7360. Store (CLP1, CLMP)
  7361. If (LEqual (PWRU, Zero))
  7362. {
  7363. Store (One, PPUU)
  7364. }
  7365. Else
  7366. {
  7367. ShiftLeft (Decrement (PWRU), 0x02, PPUU)
  7368. }
  7369.  
  7370. Multiply (PLVL, PPUU, Local0)
  7371. Divide (Local0, 0x03E8, , Local1)
  7372. Store (Local1, PPL1)
  7373. Store (One, PL1E)
  7374. Store (One, CLP1)
  7375. }
  7376.  
  7377. Method (RPL1, 0, Serialized)
  7378. {
  7379. Store (PLSV, PPL1)
  7380. Store (PLEN, PL1E)
  7381. Store (CLMP, CLP1)
  7382. Store (Zero, CSEM)
  7383. }
  7384.  
  7385. Name (DDPS, Zero)
  7386. Name (UAMS, Zero)
  7387. Method (GUAM, 1, Serialized)
  7388. {
  7389. If (LNotEqual (Arg0, DDPS))
  7390. {
  7391. Store (Arg0, DDPS)
  7392. Store (LAnd (Arg0, Not (PWRS)), UAMS)
  7393. If (Arg0)
  7394. {
  7395. If (LEqual (ECNO, One))
  7396. {
  7397. ADBG ("EC Notify")
  7398. If (LEqual (ECDB, One))
  7399. {
  7400. ADBG ("EC Debug")
  7401. \_SB.PCI0.LPCB.H_EC.ECWT (One, RefOf (\_SB.PCI0.LPCB.H_EC.DLED))
  7402. }
  7403.  
  7404. \_SB.PCI0.LPCB.H_EC.ECMD (0x2C)
  7405. If (LEqual (ECLP, One))
  7406. {
  7407. Store (Zero, ECUP)
  7408. }
  7409. }
  7410.  
  7411. P8XH (Zero, 0xC5)
  7412. P8XH (One, Zero)
  7413. ADBG ("Enter CS")
  7414. If (PSCP)
  7415. {
  7416. If (LAnd (CondRefOf (\_PR.CPU0._PSS), CondRefOf (\_PR.CPU0._PPC)))
  7417. {
  7418. Subtract (SizeOf (\_PR.CPU0._PSS), One, \_PR.CPU0._PPC)
  7419. PNOT ()
  7420. }
  7421. }
  7422.  
  7423. If (PLCS)
  7424. {
  7425. SPL1 ()
  7426. }
  7427. }
  7428. Else
  7429. {
  7430. If (LEqual (ECNO, One))
  7431. {
  7432. ADBG ("EC Notify")
  7433. \_SB.PCI0.LPCB.H_EC.ECMD (0x2D)
  7434. Store (One, ECUP)
  7435. ADBG ("EC Debug")
  7436. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.DLED))
  7437. }
  7438.  
  7439. P8XH (Zero, 0xC5)
  7440. P8XH (One, 0xAB)
  7441. ADBG ("Exit CS")
  7442. If (PSCP)
  7443. {
  7444. If (CondRefOf (\_PR.CPU0._PPC))
  7445. {
  7446. Store (Zero, \_PR.CPU0._PPC)
  7447. PNOT ()
  7448. }
  7449. }
  7450.  
  7451. If (PLCS)
  7452. {
  7453. RPL1 ()
  7454. }
  7455. }
  7456.  
  7457. P_CS ()
  7458. }
  7459. }
  7460.  
  7461. Method (P_CS, 0, Serialized)
  7462. {
  7463. If (CondRefOf (\_SB.PCI0.PAUD.PUAM))
  7464. {
  7465. \_SB.PCI0.PAUD.PUAM ()
  7466. }
  7467.  
  7468. If (LEqual (OSYS, 0x07DC))
  7469. {
  7470. If (CondRefOf (\_SB.PCI0.XHC.DUAM))
  7471. {
  7472. \_SB.PCI0.XHC.DUAM ()
  7473. }
  7474. }
  7475. }
  7476.  
  7477. Method (TRAP, 2, Serialized)
  7478. {
  7479. Store (Arg1, SMIF)
  7480. If (LEqual (Arg0, TRTD))
  7481. {
  7482. Store (Arg1, DTSF)
  7483. Store (Zero, TRPD)
  7484. Return (DTSF)
  7485. }
  7486.  
  7487. If (LEqual (Arg0, TRTI))
  7488. {
  7489. Store (Zero, TRPH)
  7490. }
  7491.  
  7492. If (LEqual (Arg0, PFTI))
  7493. {
  7494. Store (Zero, TRPF)
  7495. }
  7496.  
  7497. Return (SMIF)
  7498. }
  7499.  
  7500. Scope (_SB.PCI0)
  7501. {
  7502. Method (PTMA, 0, NotSerialized)
  7503. {
  7504. Return (PFMA)
  7505. }
  7506.  
  7507. Method (PTMS, 0, NotSerialized)
  7508. {
  7509. Return (PFMS)
  7510. }
  7511.  
  7512. Method (PTIA, 0, NotSerialized)
  7513. {
  7514. Return (PFIA)
  7515. }
  7516.  
  7517. Method (_INI, 0, NotSerialized) // _INI: Initialize
  7518. {
  7519. Store (0x07D0, OSYS)
  7520. If (CondRefOf (\_OSI, Local0))
  7521. {
  7522. If (_OSI ("Linux"))
  7523. {
  7524. Store (0x03E8, OSYS)
  7525. }
  7526.  
  7527. If (_OSI ("Windows 2001"))
  7528. {
  7529. Store (0x07D1, OSYS)
  7530. }
  7531.  
  7532. If (_OSI ("Windows 2001 SP1"))
  7533. {
  7534. Store (0x07D1, OSYS)
  7535. }
  7536.  
  7537. If (_OSI ("Windows 2001 SP2"))
  7538. {
  7539. Store (0x07D2, OSYS)
  7540. }
  7541.  
  7542. If (_OSI ("Windows 2001.1"))
  7543. {
  7544. Store (0x07D3, OSYS)
  7545. }
  7546.  
  7547. If (_OSI ("Windows 2006"))
  7548. {
  7549. Store (0x07D6, OSYS)
  7550. }
  7551.  
  7552. If (_OSI ("Windows 2009"))
  7553. {
  7554. Store (0x07D9, OSYS)
  7555. }
  7556.  
  7557. If (_OSI ("Windows 2012"))
  7558. {
  7559. Store (0x07DC, OSYS)
  7560. }
  7561.  
  7562. If (_OSI ("Windows 2013"))
  7563. {
  7564. Store (0x07DD, OSYS)
  7565. }
  7566. }
  7567.  
  7568. PINI ()
  7569. }
  7570.  
  7571. Method (NHPG, 0, Serialized)
  7572. {
  7573. Store (Zero, ^RP01.HPEX)
  7574. Store (Zero, ^RP02.HPEX)
  7575. Store (Zero, ^RP03.HPEX)
  7576. Store (Zero, ^RP04.HPEX)
  7577. Store (Zero, ^RP05.HPEX)
  7578. Store (Zero, ^RP06.HPEX)
  7579. Store (Zero, ^RP07.HPEX)
  7580. Store (Zero, ^RP08.HPEX)
  7581. Store (One, ^RP01.HPSX)
  7582. Store (One, ^RP02.HPSX)
  7583. Store (One, ^RP03.HPSX)
  7584. Store (One, ^RP04.HPSX)
  7585. Store (One, ^RP05.HPSX)
  7586. Store (One, ^RP06.HPSX)
  7587. Store (One, ^RP07.HPSX)
  7588. Store (One, ^RP08.HPSX)
  7589. }
  7590.  
  7591. Method (NPME, 0, Serialized)
  7592. {
  7593. Store (Zero, ^RP01.PMEX)
  7594. Store (Zero, ^RP02.PMEX)
  7595. Store (Zero, ^RP03.PMEX)
  7596. Store (Zero, ^RP04.PMEX)
  7597. Store (Zero, ^RP05.PMEX)
  7598. Store (Zero, ^RP06.PMEX)
  7599. Store (Zero, ^RP07.PMEX)
  7600. Store (Zero, ^RP08.PMEX)
  7601. Store (One, ^RP01.PMSX)
  7602. Store (One, ^RP02.PMSX)
  7603. Store (One, ^RP03.PMSX)
  7604. Store (One, ^RP04.PMSX)
  7605. Store (One, ^RP05.PMSX)
  7606. Store (One, ^RP06.PMSX)
  7607. Store (One, ^RP07.PMSX)
  7608. Store (One, ^RP08.PMSX)
  7609. }
  7610. }
  7611.  
  7612. Scope (\)
  7613. {
  7614. Name (PICM, Zero)
  7615. Name (PRWP, Package (0x02)
  7616. {
  7617. Zero,
  7618. Zero
  7619. })
  7620. Method (GPRW, 2, NotSerialized)
  7621. {
  7622. Store (Arg0, Index (PRWP, Zero))
  7623. Store (ShiftLeft (SS1, One), Local0)
  7624. Or (Local0, ShiftLeft (SS2, 0x02), Local0)
  7625. Or (Local0, ShiftLeft (SS3, 0x03), Local0)
  7626. Or (Local0, ShiftLeft (SS4, 0x04), Local0)
  7627. If (And (ShiftLeft (One, Arg1), Local0))
  7628. {
  7629. Store (Arg1, Index (PRWP, One))
  7630. }
  7631. Else
  7632. {
  7633. ShiftRight (Local0, One, Local0)
  7634. FindSetLeftBit (Local0, Index (PRWP, One))
  7635. }
  7636.  
  7637. Return (PRWP)
  7638. }
  7639. }
  7640.  
  7641. Scope (_SB)
  7642. {
  7643. Name (OSCI, Zero)
  7644. Name (OSCO, Zero)
  7645. Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
  7646. {
  7647. CreateDWordField (Arg3, Zero, STS0)
  7648. CreateDWordField (Arg3, 0x04, CAP0)
  7649. If (LEqual (Arg0, Buffer (0x10)
  7650. {
  7651. /* 0000 */ 0x6E, 0xB0, 0x11, 0x08, 0x27, 0x4A, 0xF9, 0x44,
  7652. /* 0008 */ 0x8D, 0x60, 0x3C, 0xBB, 0xC2, 0x2E, 0x7B, 0x48
  7653. }))
  7654. {
  7655. If (LEqual (Arg1, One))
  7656. {
  7657. If (And (CAP0, 0x04))
  7658. {
  7659. Store (0x04, OSCO)
  7660. If (LNotEqual (And (SGMD, 0x0F), 0x02))
  7661. {
  7662. If (LEqual (RTD3, Zero))
  7663. {
  7664. And (CAP0, 0x3B, CAP0)
  7665. Or (STS0, 0x10, STS0)
  7666. }
  7667. }
  7668. }
  7669.  
  7670. If (And (CAP0, 0x20))
  7671. {
  7672. If (CondRefOf (\_SB.PCCD.PENB))
  7673. {
  7674. If (LEqual (^PCCD.PENB, Zero))
  7675. {
  7676. And (CAP0, 0x1F, CAP0)
  7677. Or (STS0, 0x10, STS0)
  7678. }
  7679. }
  7680. Else
  7681. {
  7682. And (CAP0, 0x1F, CAP0)
  7683. Or (STS0, 0x10, STS0)
  7684. }
  7685. }
  7686. }
  7687. Else
  7688. {
  7689. And (STS0, 0xFFFFFF00, STS0)
  7690. Or (STS0, 0x0A, STS0)
  7691. }
  7692. }
  7693. Else
  7694. {
  7695. And (STS0, 0xFFFFFF00, STS0)
  7696. Or (STS0, 0x06, STS0)
  7697. }
  7698.  
  7699. Return (Arg3)
  7700. }
  7701.  
  7702. Device (PEPD)
  7703. {
  7704. Name (_HID, "INT33A1") // _HID: Hardware ID
  7705. Name (_CID, EisaId ("PNP0D80")) // _CID: Compatible ID
  7706. Name (_UID, One) // _UID: Unique ID
  7707. Name (PEPP, Zero)
  7708. Name (DEVS, Package (0x03)
  7709. {
  7710. 0x02,
  7711. Package (0x01)
  7712. {
  7713. "\\_SB.PCI0.GFX0"
  7714. },
  7715.  
  7716. Package (0x01)
  7717. {
  7718. "\\_SB.PCI0.SAT0.PRT1"
  7719. }
  7720. })
  7721. Name (DEVX, Package (0x08)
  7722. {
  7723. Package (0x02)
  7724. {
  7725. "\\_SB.PCI0.GFX0",
  7726. 0xFFFFFFFF
  7727. },
  7728.  
  7729. Package (0x02)
  7730. {
  7731. "\\_SB.PCI0.SAT0.PRT1",
  7732. 0xFFFFFFFF
  7733. },
  7734.  
  7735. Package (0x02)
  7736. {
  7737. "\\_SB.PCI0.UA01",
  7738. 0xFFFFFFFF
  7739. },
  7740.  
  7741. Package (0x02)
  7742. {
  7743. "\\_SB.PCI0.SDHC",
  7744. 0xFFFFFFFF
  7745. },
  7746.  
  7747. Package (0x02)
  7748. {
  7749. "\\_SB.PCI0.I2C0",
  7750. 0xFFFFFFFF
  7751. },
  7752.  
  7753. Package (0x02)
  7754. {
  7755. "\\_SB.PCI0.I2C1",
  7756. 0xFFFFFFFF
  7757. },
  7758.  
  7759. Package (0x02)
  7760. {
  7761. "\\_SB.PCI0.XHC",
  7762. 0xFFFFFFFF
  7763. },
  7764.  
  7765. Package (0x02)
  7766. {
  7767. "HDAUDIO\\FUNC_01&VEN_10EC&DEV_0282&SUBSYS_00000000&REV_1000\\4&a02b74b&0&0001",
  7768. 0xFFFFFFFF
  7769. }
  7770. })
  7771. Name (DEVY, Package (0x12)
  7772. {
  7773. Package (0x03)
  7774. {
  7775. "\\_PR.CPU0",
  7776. One,
  7777. Package (0x02)
  7778. {
  7779. Zero,
  7780. Package (0x02)
  7781. {
  7782. 0xFF,
  7783. Zero
  7784. }
  7785. }
  7786. },
  7787.  
  7788. Package (0x03)
  7789. {
  7790. "\\_PR.CPU1",
  7791. One,
  7792. Package (0x02)
  7793. {
  7794. Zero,
  7795. Package (0x02)
  7796. {
  7797. 0xFF,
  7798. Zero
  7799. }
  7800. }
  7801. },
  7802.  
  7803. Package (0x03)
  7804. {
  7805. "\\_PR.CPU2",
  7806. One,
  7807. Package (0x02)
  7808. {
  7809. Zero,
  7810. Package (0x02)
  7811. {
  7812. 0xFF,
  7813. Zero
  7814. }
  7815. }
  7816. },
  7817.  
  7818. Package (0x03)
  7819. {
  7820. "\\_PR.CPU3",
  7821. One,
  7822. Package (0x02)
  7823. {
  7824. Zero,
  7825. Package (0x02)
  7826. {
  7827. 0xFF,
  7828. Zero
  7829. }
  7830. }
  7831. },
  7832.  
  7833. Package (0x03)
  7834. {
  7835. "\\_SB.PCI0.GFX0",
  7836. One,
  7837. Package (0x02)
  7838. {
  7839. Zero,
  7840. Package (0x02)
  7841. {
  7842. 0xFF,
  7843. 0x03
  7844. }
  7845. }
  7846. },
  7847.  
  7848. Package (0x03)
  7849. {
  7850. "\\_SB.PCI0.SAT0",
  7851. One,
  7852. Package (0x02)
  7853. {
  7854. Zero,
  7855. Package (0x02)
  7856. {
  7857. 0xFF,
  7858. 0x03
  7859. }
  7860. }
  7861. },
  7862.  
  7863. Package (0x03)
  7864. {
  7865. "\\_SB.PCI0.SAT0.PRT0",
  7866. One,
  7867. Package (0x02)
  7868. {
  7869. Zero,
  7870. Package (0x03)
  7871. {
  7872. 0xFF,
  7873. Zero,
  7874. 0x81
  7875. }
  7876. }
  7877. },
  7878.  
  7879. Package (0x03)
  7880. {
  7881. "\\_SB.PCI0.SAT0.PRT1",
  7882. One,
  7883. Package (0x02)
  7884. {
  7885. Zero,
  7886. Package (0x03)
  7887. {
  7888. 0xFF,
  7889. Zero,
  7890. 0x81
  7891. }
  7892. }
  7893. },
  7894.  
  7895. Package (0x03)
  7896. {
  7897. "\\_SB.PCI0.SAT0.PRT2",
  7898. One,
  7899. Package (0x02)
  7900. {
  7901. Zero,
  7902. Package (0x03)
  7903. {
  7904. 0xFF,
  7905. Zero,
  7906. 0x81
  7907. }
  7908. }
  7909. },
  7910.  
  7911. Package (0x03)
  7912. {
  7913. "\\_SB.PCI0.SAT0.PRT3",
  7914. One,
  7915. Package (0x02)
  7916. {
  7917. Zero,
  7918. Package (0x03)
  7919. {
  7920. 0xFF,
  7921. Zero,
  7922. 0x81
  7923. }
  7924. }
  7925. },
  7926.  
  7927. Package (0x03)
  7928. {
  7929. "\\_SB.PCI0.UA00",
  7930. One,
  7931. Package (0x02)
  7932. {
  7933. Zero,
  7934. Package (0x02)
  7935. {
  7936. 0xFF,
  7937. 0x03
  7938. }
  7939. }
  7940. },
  7941.  
  7942. Package (0x03)
  7943. {
  7944. "\\_SB.PCI0.UA01",
  7945. One,
  7946. Package (0x02)
  7947. {
  7948. Zero,
  7949. Package (0x02)
  7950. {
  7951. 0xFF,
  7952. 0x03
  7953. }
  7954. }
  7955. },
  7956.  
  7957. Package (0x03)
  7958. {
  7959. "\\_SB.PCI0.SDHC",
  7960. One,
  7961. Package (0x02)
  7962. {
  7963. Zero,
  7964. Package (0x02)
  7965. {
  7966. 0xFF,
  7967. 0x03
  7968. }
  7969. }
  7970. },
  7971.  
  7972. Package (0x03)
  7973. {
  7974. "\\_SB.PCI0.I2C0",
  7975. One,
  7976. Package (0x02)
  7977. {
  7978. Zero,
  7979. Package (0x02)
  7980. {
  7981. 0xFF,
  7982. 0x03
  7983. }
  7984. }
  7985. },
  7986.  
  7987. Package (0x03)
  7988. {
  7989. "\\_SB.PCI0.I2C1",
  7990. One,
  7991. Package (0x02)
  7992. {
  7993. Zero,
  7994. Package (0x02)
  7995. {
  7996. 0xFF,
  7997. 0x03
  7998. }
  7999. }
  8000. },
  8001.  
  8002. Package (0x03)
  8003. {
  8004. "\\_SB.PCI0.XHC",
  8005. One,
  8006. Package (0x02)
  8007. {
  8008. Zero,
  8009. Package (0x02)
  8010. {
  8011. 0xFF,
  8012. 0x03
  8013. }
  8014. }
  8015. },
  8016.  
  8017. Package (0x03)
  8018. {
  8019. "HDAUDIO\\FUNC_01&VEN_10EC&DEV_0282*",
  8020. One,
  8021. Package (0x03)
  8022. {
  8023. Zero,
  8024. Package (0x02)
  8025. {
  8026. Zero,
  8027. Zero
  8028. },
  8029.  
  8030. Package (0x02)
  8031. {
  8032. One,
  8033. 0x03
  8034. }
  8035. }
  8036. },
  8037.  
  8038. Package (0x03)
  8039. {
  8040. "\\_SB.PCI0.ADSP",
  8041. One,
  8042. Package (0x03)
  8043. {
  8044. Zero,
  8045. Package (0x02)
  8046. {
  8047. Zero,
  8048. Zero
  8049. },
  8050.  
  8051. Package (0x02)
  8052. {
  8053. One,
  8054. 0x03
  8055. }
  8056. }
  8057. }
  8058. })
  8059. Name (BCCD, Package (0x05)
  8060. {
  8061. Package (0x02)
  8062. {
  8063. "\\_SB.PCI0.SAT0",
  8064. Package (0x01)
  8065. {
  8066. Package (0x03)
  8067. {
  8068. Package (0x05)
  8069. {
  8070. One,
  8071. 0x08,
  8072. Zero,
  8073. One,
  8074. 0xB2
  8075. },
  8076.  
  8077. Package (0x03)
  8078. {
  8079. Zero,
  8080. 0xCD,
  8081. One
  8082. },
  8083.  
  8084. 0x3E80
  8085. }
  8086. }
  8087. },
  8088.  
  8089. Package (0x02)
  8090. {
  8091. "\\_SB.PCI0.SAT0.PRT0",
  8092. Package (0x01)
  8093. {
  8094. Package (0x03)
  8095. {
  8096. Package (0x05)
  8097. {
  8098. One,
  8099. 0x08,
  8100. Zero,
  8101. One,
  8102. 0xB2
  8103. },
  8104.  
  8105. Package (0x03)
  8106. {
  8107. Zero,
  8108. 0xCD,
  8109. One
  8110. },
  8111.  
  8112. 0x3E80
  8113. }
  8114. }
  8115. },
  8116.  
  8117. Package (0x02)
  8118. {
  8119. "\\_SB.PCI0.SAT0.PRT1",
  8120. Package (0x01)
  8121. {
  8122. Package (0x03)
  8123. {
  8124. Package (0x05)
  8125. {
  8126. One,
  8127. 0x08,
  8128. Zero,
  8129. One,
  8130. 0xB2
  8131. },
  8132.  
  8133. Package (0x03)
  8134. {
  8135. Zero,
  8136. 0xCD,
  8137. One
  8138. },
  8139.  
  8140. 0x3E80
  8141. }
  8142. }
  8143. },
  8144.  
  8145. Package (0x02)
  8146. {
  8147. "\\_SB.PCI0.SAT0.PRT2",
  8148. Package (0x01)
  8149. {
  8150. Package (0x03)
  8151. {
  8152. Package (0x05)
  8153. {
  8154. One,
  8155. 0x08,
  8156. Zero,
  8157. One,
  8158. 0xB2
  8159. },
  8160.  
  8161. Package (0x03)
  8162. {
  8163. Zero,
  8164. 0xCD,
  8165. One
  8166. },
  8167.  
  8168. 0x3E80
  8169. }
  8170. }
  8171. },
  8172.  
  8173. Package (0x02)
  8174. {
  8175. "\\_SB.PCI0.SAT0.PRT3",
  8176. Package (0x01)
  8177. {
  8178. Package (0x03)
  8179. {
  8180. Package (0x05)
  8181. {
  8182. One,
  8183. 0x08,
  8184. Zero,
  8185. One,
  8186. 0xB2
  8187. },
  8188.  
  8189. Package (0x03)
  8190. {
  8191. Zero,
  8192. 0xCD,
  8193. One
  8194. },
  8195.  
  8196. 0x3E80
  8197. }
  8198. }
  8199. }
  8200. })
  8201. Method (_STA, 0, NotSerialized) // _STA: Status
  8202. {
  8203. If (LGreaterEqual (OSYS, 0x07DC))
  8204. {
  8205. If (LEqual (And (CDID, 0xF000), 0x9000))
  8206. {
  8207. If (LEqual (S0ID, One))
  8208. {
  8209. Return (0x0F)
  8210. }
  8211. }
  8212. }
  8213.  
  8214. Return (Zero)
  8215. }
  8216.  
  8217. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  8218. {
  8219. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  8220. If (LEqual (Arg0, Buffer (0x10)
  8221. {
  8222. /* 0000 */ 0xE0, 0xBF, 0xFE, 0xB8, 0xF8, 0xBA, 0x4B, 0x45,
  8223. /* 0008 */ 0xAE, 0xCD, 0x49, 0xFB, 0x91, 0x13, 0x7B, 0x21
  8224. }))
  8225. {
  8226. If (LEqual (Arg2, Zero))
  8227. {
  8228. Return (Buffer (One)
  8229. {
  8230. 0x07
  8231. })
  8232. }
  8233.  
  8234. If (LEqual (Arg2, One))
  8235. {
  8236. Store (One, PEPP)
  8237. Return (0x0F)
  8238. }
  8239.  
  8240. If (LEqual (Arg2, 0x02))
  8241. {
  8242. If (LEqual (Arg1, Zero))
  8243. {
  8244. While (One)
  8245. {
  8246. Store (PEPY, _T_0)
  8247. If (LEqual (_T_0, One))
  8248. {
  8249. Return (Package (0x02)
  8250. {
  8251. One,
  8252. Package (0x01)
  8253. {
  8254. "\\_SB.PCI0.GFX0"
  8255. }
  8256. })
  8257. }
  8258. Else
  8259. {
  8260. If (LEqual (_T_0, 0x02))
  8261. {
  8262. Return (Package (0x02)
  8263. {
  8264. One,
  8265. Package (0x01)
  8266. {
  8267. "\\_SB.PCI0.SAT0.PRT1"
  8268. }
  8269. })
  8270. }
  8271. Else
  8272. {
  8273. If (LEqual (_T_0, 0x03))
  8274. {
  8275. Return (DEVS)
  8276. }
  8277. Else
  8278. {
  8279. Return (Package (0x01)
  8280. {
  8281. Zero
  8282. })
  8283. }
  8284. }
  8285. }
  8286.  
  8287. Break
  8288. }
  8289. }
  8290.  
  8291. If (LEqual (Arg1, One))
  8292. {
  8293. If (LNot (And (PEPY, One)))
  8294. {
  8295. Store (Zero, Index (DerefOf (Index (DEVX, Zero)), One))
  8296. }
  8297.  
  8298. If (LNot (And (PEPY, 0x02)))
  8299. {
  8300. Store (Zero, Index (DerefOf (Index (DEVX, One)), One))
  8301. }
  8302.  
  8303. If (LNot (And (PEPY, 0x04)))
  8304. {
  8305. Store (Zero, Index (DerefOf (Index (DEVX, 0x02)), One))
  8306. }
  8307.  
  8308. If (LNot (And (PEPY, 0x08)))
  8309. {
  8310. Store (Zero, Index (DerefOf (Index (DEVX, 0x03)), One))
  8311. }
  8312.  
  8313. If (LNot (And (PEPY, 0x10)))
  8314. {
  8315. Store (Zero, Index (DerefOf (Index (DEVX, 0x04)), One))
  8316. }
  8317.  
  8318. If (LNot (And (PEPY, 0x20)))
  8319. {
  8320. Store (Zero, Index (DerefOf (Index (DEVX, 0x05)), One))
  8321. }
  8322.  
  8323. If (LNot (And (PEPY, 0x40)))
  8324. {
  8325. Store (Zero, Index (DerefOf (Index (DEVX, 0x06)), One))
  8326. }
  8327.  
  8328. If (LNot (And (PEPY, 0x80)))
  8329. {
  8330. Store (Zero, Index (DerefOf (Index (DEVX, 0x07)), One))
  8331. }
  8332.  
  8333. Return (DEVX)
  8334. }
  8335. }
  8336. }
  8337.  
  8338. If (LEqual (Arg0, Buffer (0x10)
  8339. {
  8340. /* 0000 */ 0xA0, 0x40, 0xEB, 0xC4, 0xD2, 0x6C, 0xE2, 0x11,
  8341. /* 0008 */ 0xBC, 0xFD, 0x08, 0x00, 0x20, 0x0C, 0x9A, 0x66
  8342. }))
  8343. {
  8344. If (LEqual (Arg2, Zero))
  8345. {
  8346. Return (Buffer (One)
  8347. {
  8348. 0x07
  8349. })
  8350. }
  8351.  
  8352. If (LEqual (Arg2, One))
  8353. {
  8354. If (LNotEqual (And (PEPC, 0x03), One))
  8355. {
  8356. Store (Zero, Index (DerefOf (Index (DEVY, 0x06)), One))
  8357. Store (Zero, Index (DerefOf (Index (DEVY, 0x07)), One))
  8358. Store (Zero, Index (DerefOf (Index (DEVY, 0x08)), One))
  8359. Store (Zero, Index (DerefOf (Index (DEVY, 0x09)), One))
  8360. }
  8361.  
  8362. If (LNotEqual (And (PEPC, 0x03), 0x02))
  8363. {
  8364. Store (Zero, Index (DerefOf (Index (DEVY, 0x05)), One))
  8365. If (LNot (And (SPST, One)))
  8366. {
  8367. Store (Zero, Index (DerefOf (Index (DEVY, 0x06)), One))
  8368. }
  8369.  
  8370. If (LNot (And (SPST, 0x02)))
  8371. {
  8372. Store (Zero, Index (DerefOf (Index (DEVY, 0x07)), One))
  8373. }
  8374.  
  8375. If (LNot (And (SPST, 0x04)))
  8376. {
  8377. Store (Zero, Index (DerefOf (Index (DEVY, 0x08)), One))
  8378. }
  8379.  
  8380. If (LNot (And (SPST, 0x08)))
  8381. {
  8382. Store (Zero, Index (DerefOf (Index (DEVY, 0x09)), One))
  8383. }
  8384. }
  8385.  
  8386. If (LEqual (And (PEPC, 0x04), Zero))
  8387. {
  8388. Store (Zero, Index (DerefOf (Index (DEVY, 0x0A)), One))
  8389. }
  8390.  
  8391. If (LEqual (And (PEPC, 0x08), Zero))
  8392. {
  8393. Store (Zero, Index (DerefOf (Index (DEVY, 0x0B)), One))
  8394. }
  8395.  
  8396. If (LEqual (And (PEPC, 0x10), Zero))
  8397. {
  8398. Store (Zero, Index (DerefOf (Index (DEVY, 0x0C)), One))
  8399. }
  8400.  
  8401. If (LEqual (And (PEPC, 0x20), Zero))
  8402. {
  8403. Store (Zero, Index (DerefOf (Index (DEVY, 0x0D)), One))
  8404. }
  8405.  
  8406. If (LEqual (And (PEPC, 0x40), Zero))
  8407. {
  8408. Store (Zero, Index (DerefOf (Index (DEVY, 0x0E)), One))
  8409. }
  8410.  
  8411. If (LEqual (And (PEPC, 0x80), Zero))
  8412. {
  8413. Store (Zero, Index (DerefOf (Index (DEVY, 0x0F)), One))
  8414. }
  8415.  
  8416. If (LEqual (And (PEPC, 0x0100), Zero))
  8417. {
  8418. Store (Zero, Index (DerefOf (Index (DEVY, 0x10)), One))
  8419. }
  8420.  
  8421. If (LEqual (And (PEPC, 0x0200), Zero))
  8422. {
  8423. Store (Zero, Index (DerefOf (Index (DEVY, 0x11)), One))
  8424. }
  8425.  
  8426. Return (DEVY)
  8427. }
  8428.  
  8429. If (LEqual (Arg2, 0x02))
  8430. {
  8431. Return (BCCD)
  8432. }
  8433. }
  8434.  
  8435. Return (One)
  8436. }
  8437. }
  8438. }
  8439.  
  8440. Scope (_SB)
  8441. {
  8442. Device (BTKL)
  8443. {
  8444. Name (_HID, "INT3420") // _HID: Hardware ID
  8445. Method (_STA, 0, NotSerialized) // _STA: Status
  8446. {
  8447. If (_OSI ("Windows 2012"))
  8448. {
  8449. If (LEqual (BID, BW2C))
  8450. {
  8451. Return (0x0F)
  8452. }
  8453. }
  8454.  
  8455. Return (Zero)
  8456. }
  8457.  
  8458. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  8459. {
  8460. And (GL0A, 0x7F, GL0A)
  8461. }
  8462.  
  8463. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  8464. {
  8465. Or (GL0A, 0x80, GL0A)
  8466. }
  8467.  
  8468. Method (PSTS, 0, NotSerialized)
  8469. {
  8470. Return (RDGP (0x57))
  8471. }
  8472. }
  8473. }
  8474.  
  8475. Scope (_SB.PCI0)
  8476. {
  8477. Device (PDRC)
  8478. {
  8479. Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
  8480. Name (_UID, One) // _UID: Unique ID
  8481. Name (BUF0, ResourceTemplate ()
  8482. {
  8483. Memory32Fixed (ReadWrite,
  8484. 0x00000000, // Address Base
  8485. 0x00004000, // Address Length
  8486. _Y3B)
  8487. Memory32Fixed (ReadWrite,
  8488. 0x00000000, // Address Base
  8489. 0x00008000, // Address Length
  8490. _Y3E)
  8491. Memory32Fixed (ReadWrite,
  8492. 0x00000000, // Address Base
  8493. 0x00001000, // Address Length
  8494. _Y3F)
  8495. Memory32Fixed (ReadWrite,
  8496. 0x00000000, // Address Base
  8497. 0x00001000, // Address Length
  8498. _Y40)
  8499. Memory32Fixed (ReadWrite,
  8500. 0x00000000, // Address Base
  8501. 0x00000000, // Address Length
  8502. _Y41)
  8503. Memory32Fixed (ReadWrite,
  8504. 0xFED20000, // Address Base
  8505. 0x00020000, // Address Length
  8506. )
  8507. Memory32Fixed (ReadOnly,
  8508. 0xFED90000, // Address Base
  8509. 0x00004000, // Address Length
  8510. )
  8511. Memory32Fixed (ReadWrite,
  8512. 0xFED45000, // Address Base
  8513. 0x0004B000, // Address Length
  8514. )
  8515. Memory32Fixed (ReadOnly,
  8516. 0xFF000000, // Address Base
  8517. 0x01000000, // Address Length
  8518. )
  8519. Memory32Fixed (ReadOnly,
  8520. 0xFEE00000, // Address Base
  8521. 0x00100000, // Address Length
  8522. )
  8523. Memory32Fixed (ReadWrite,
  8524. 0x00000000, // Address Base
  8525. 0x00001000, // Address Length
  8526. _Y3C)
  8527. Memory32Fixed (ReadWrite,
  8528. 0x00000000, // Address Base
  8529. 0x00010000, // Address Length
  8530. _Y3D)
  8531. })
  8532. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  8533. {
  8534. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y3B._BAS, RBR0) // _BAS: Base Address
  8535. ShiftLeft (^^LPCB.RCBA, 0x0E, RBR0)
  8536. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y3C._BAS, TBR0) // _BAS: Base Address
  8537. Store (TBAB, TBR0)
  8538. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y3C._LEN, TBLN) // _LEN: Length
  8539. If (LEqual (TBAB, Zero))
  8540. {
  8541. Store (Zero, TBLN)
  8542. }
  8543.  
  8544. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y3D._BAS, SNR0) // _BAS: Base Address
  8545. Store (SRMB, SNR0)
  8546. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y3E._BAS, MBR0) // _BAS: Base Address
  8547. ShiftLeft (MHBR, 0x0F, MBR0)
  8548. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y3F._BAS, DBR0) // _BAS: Base Address
  8549. ShiftLeft (DIBR, 0x0C, DBR0)
  8550. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y40._BAS, EBR0) // _BAS: Base Address
  8551. ShiftLeft (EPBR, 0x0C, EBR0)
  8552. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y41._BAS, XBR0) // _BAS: Base Address
  8553. ShiftLeft (PXBR, 0x1A, XBR0)
  8554. CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y41._LEN, XSZ0) // _LEN: Length
  8555. ShiftRight (0x10000000, PXSZ, XSZ0)
  8556. Return (BUF0)
  8557. }
  8558. }
  8559. }
  8560.  
  8561. Method (BRTN, 1, Serialized)
  8562. {
  8563. If (LEqual (And (DIDX, 0x0F00), 0x0400))
  8564. {
  8565. Notify (\_SB.PCI0.GFX0.DD1F, Arg0)
  8566. }
  8567. }
  8568.  
  8569. Scope (_GPE)
  8570. {
  8571. Method (_L69, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  8572. {
  8573. If (LAnd (LEqual (RP1D, Zero), LEqual (\_SB.PCI0.RP01.RPAV, One)))
  8574. {
  8575. \_SB.PCI0.RP01.HPME ()
  8576. Notify (\_SB.PCI0.RP01, 0x02)
  8577. }
  8578.  
  8579. If (LAnd (LEqual (RP2D, Zero), LEqual (\_SB.PCI0.RP02.RPAV, One)))
  8580. {
  8581. \_SB.PCI0.RP02.HPME ()
  8582. Notify (\_SB.PCI0.RP02, 0x02)
  8583. }
  8584.  
  8585. If (LAnd (LEqual (RP3D, Zero), LEqual (\_SB.PCI0.RP03.RPAV, One)))
  8586. {
  8587. \_SB.PCI0.RP03.HPME ()
  8588. Notify (\_SB.PCI0.RP03, 0x02)
  8589. }
  8590.  
  8591. If (LAnd (LEqual (RP4D, Zero), LEqual (\_SB.PCI0.RP04.RPAV, One)))
  8592. {
  8593. \_SB.PCI0.RP04.HPME ()
  8594. Notify (\_SB.PCI0.RP04, 0x02)
  8595. }
  8596.  
  8597. If (LAnd (LEqual (RP5D, Zero), LEqual (\_SB.PCI0.RP05.RPAV, One)))
  8598. {
  8599. \_SB.PCI0.RP05.HPME ()
  8600. Notify (\_SB.PCI0.RP05, 0x02)
  8601. }
  8602.  
  8603. If (LAnd (LEqual (RP6D, Zero), LEqual (\_SB.PCI0.RP06.RPAV, One)))
  8604. {
  8605. \_SB.PCI0.RP06.HPME ()
  8606. Notify (\_SB.PCI0.RP06, 0x02)
  8607. }
  8608.  
  8609. If (LAnd (LEqual (RP7D, Zero), LEqual (\_SB.PCI0.RP07.RPAV, One)))
  8610. {
  8611. \_SB.PCI0.RP07.HPME ()
  8612. Notify (\_SB.PCI0.RP07, 0x02)
  8613. }
  8614.  
  8615. If (LAnd (LEqual (RP8D, Zero), LEqual (\_SB.PCI0.RP08.RPAV, One)))
  8616. {
  8617. \_SB.PCI0.RP08.HPME ()
  8618. Notify (\_SB.PCI0.RP08, 0x02)
  8619. }
  8620.  
  8621. If (LEqual (\_SB.PCI0.D1F0, One))
  8622. {
  8623. \_SB.PCI0.PEG0.HPME ()
  8624. Notify (\_SB.PCI0.PEG0, 0x02)
  8625. Notify (\_SB.PCI0.PEG0.PEGP, 0x02)
  8626. }
  8627.  
  8628. If (LEqual (\_SB.PCI0.D1F1, One))
  8629. {
  8630. \_SB.PCI0.PEG1.HPME ()
  8631. Notify (\_SB.PCI0.PEG1, 0x02)
  8632. }
  8633.  
  8634. If (LEqual (\_SB.PCI0.D1F2, One))
  8635. {
  8636. \_SB.PCI0.PEG2.HPME ()
  8637. Notify (\_SB.PCI0.PEG2, 0x02)
  8638. }
  8639. }
  8640.  
  8641. Method (_L6D, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  8642. {
  8643. If (LAnd (\_SB.PCI0.EHC1.PMEE, \_SB.PCI0.EHC1.PMES))
  8644. {
  8645. Notify (\_SB.PCI0.EHC1, 0x02)
  8646. }
  8647.  
  8648. If (LAnd (\_SB.PCI0.EHC2.PMEE, \_SB.PCI0.EHC2.PMES))
  8649. {
  8650. Notify (\_SB.PCI0.EHC2, 0x02)
  8651. }
  8652.  
  8653. If (LAnd (\_SB.PCI0.XHC.PMEE, \_SB.PCI0.XHC.PMES))
  8654. {
  8655. Notify (\_SB.PCI0.XHC, 0x02)
  8656. }
  8657.  
  8658. If (LAnd (\_SB.PCI0.HDEF.PMEE, \_SB.PCI0.HDEF.PMES))
  8659. {
  8660. Notify (\_SB.PCI0.HDEF, 0x02)
  8661. }
  8662.  
  8663. Notify (\_SB.PCI0.GLAN, 0x02)
  8664. }
  8665.  
  8666. Method (_L61, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  8667. {
  8668. Add (L01C, One, L01C)
  8669. P8XH (Zero, One)
  8670. P8XH (One, L01C)
  8671. If (LAnd (LEqual (RP1D, Zero), \_SB.PCI0.RP01.HPSX))
  8672. {
  8673. Sleep (0x64)
  8674. If (\_SB.PCI0.RP01.PDCX)
  8675. {
  8676. Store (One, \_SB.PCI0.RP01.PDCX)
  8677. Store (One, \_SB.PCI0.RP01.HPSX)
  8678. If (LNot (\_SB.PCI0.RP01.PDSX))
  8679. {
  8680. Store (Zero, \_SB.PCI0.RP01.L0SE)
  8681. }
  8682.  
  8683. Notify (\_SB.PCI0.RP01, Zero)
  8684. }
  8685. Else
  8686. {
  8687. Store (One, \_SB.PCI0.RP01.HPSX)
  8688. }
  8689. }
  8690.  
  8691. If (LAnd (LEqual (RP2D, Zero), \_SB.PCI0.RP02.HPSX))
  8692. {
  8693. Sleep (0x64)
  8694. If (\_SB.PCI0.RP02.PDCX)
  8695. {
  8696. Store (One, \_SB.PCI0.RP02.PDCX)
  8697. Store (One, \_SB.PCI0.RP02.HPSX)
  8698. If (LNot (\_SB.PCI0.RP02.PDSX))
  8699. {
  8700. Store (Zero, \_SB.PCI0.RP02.L0SE)
  8701. }
  8702.  
  8703. Notify (\_SB.PCI0.RP02, Zero)
  8704. }
  8705. Else
  8706. {
  8707. Store (One, \_SB.PCI0.RP02.HPSX)
  8708. }
  8709. }
  8710.  
  8711. If (LAnd (LEqual (RP3D, Zero), \_SB.PCI0.RP03.HPSX))
  8712. {
  8713. If (LAnd (LNotEqual (BID, BICO), LNotEqual (BID, BICC)))
  8714. {
  8715. Sleep (0x64)
  8716. }
  8717.  
  8718. If (\_SB.PCI0.RP03.PDCX)
  8719. {
  8720. Store (One, \_SB.PCI0.RP03.PDCX)
  8721. Store (One, \_SB.PCI0.RP03.HPSX)
  8722. If (LNot (\_SB.PCI0.RP03.PDSX))
  8723. {
  8724. Store (Zero, \_SB.PCI0.RP03.L0SE)
  8725. }
  8726.  
  8727. If (LAnd (LNotEqual (BID, BICO), LNotEqual (BID, BICC)))
  8728. {
  8729. Notify (\_SB.PCI0.RP03, Zero)
  8730. }
  8731. }
  8732. Else
  8733. {
  8734. Store (One, \_SB.PCI0.RP03.HPSX)
  8735. }
  8736. }
  8737.  
  8738. If (LAnd (LEqual (RP4D, Zero), \_SB.PCI0.RP04.HPSX))
  8739. {
  8740. Sleep (0x64)
  8741. If (\_SB.PCI0.RP04.PDCX)
  8742. {
  8743. Store (One, \_SB.PCI0.RP04.PDCX)
  8744. Store (One, \_SB.PCI0.RP04.HPSX)
  8745. If (LNot (\_SB.PCI0.RP04.PDSX))
  8746. {
  8747. Store (Zero, \_SB.PCI0.RP04.L0SE)
  8748. }
  8749.  
  8750. Notify (\_SB.PCI0.RP04, Zero)
  8751. }
  8752. Else
  8753. {
  8754. Store (One, \_SB.PCI0.RP04.HPSX)
  8755. }
  8756. }
  8757.  
  8758. If (LAnd (LEqual (RP5D, Zero), \_SB.PCI0.RP05.HPSX))
  8759. {
  8760. If (LAnd (LNotEqual (BID, BICO), LNotEqual (BID, BICC)))
  8761. {
  8762. Sleep (0x64)
  8763. }
  8764.  
  8765. If (\_SB.PCI0.RP05.PDCX)
  8766. {
  8767. Store (One, \_SB.PCI0.RP05.PDCX)
  8768. Store (One, \_SB.PCI0.RP05.HPSX)
  8769. If (LNot (\_SB.PCI0.RP05.PDSX))
  8770. {
  8771. Store (Zero, \_SB.PCI0.RP05.L0SE)
  8772. }
  8773.  
  8774. If (LAnd (LNotEqual (BID, BICO), LNotEqual (BID, BICC)))
  8775. {
  8776. Notify (\_SB.PCI0.RP05, Zero)
  8777. }
  8778. }
  8779. Else
  8780. {
  8781. Store (One, \_SB.PCI0.RP05.HPSX)
  8782. }
  8783. }
  8784.  
  8785. If (LAnd (LEqual (RP6D, Zero), \_SB.PCI0.RP06.HPSX))
  8786. {
  8787. Sleep (0x64)
  8788. If (\_SB.PCI0.RP06.PDCX)
  8789. {
  8790. Store (One, \_SB.PCI0.RP06.PDCX)
  8791. Store (One, \_SB.PCI0.RP06.HPSX)
  8792. If (LNot (\_SB.PCI0.RP06.PDSX))
  8793. {
  8794. Store (Zero, \_SB.PCI0.RP06.L0SE)
  8795. }
  8796.  
  8797. Notify (\_SB.PCI0.RP06, Zero)
  8798. }
  8799. Else
  8800. {
  8801. Store (One, \_SB.PCI0.RP06.HPSX)
  8802. }
  8803. }
  8804.  
  8805. If (LAnd (LEqual (RP7D, Zero), \_SB.PCI0.RP07.HPSX))
  8806. {
  8807. Sleep (0x64)
  8808. If (\_SB.PCI0.RP07.PDCX)
  8809. {
  8810. Store (One, \_SB.PCI0.RP07.PDCX)
  8811. Store (One, \_SB.PCI0.RP07.HPSX)
  8812. If (LNot (\_SB.PCI0.RP07.PDSX))
  8813. {
  8814. Store (Zero, \_SB.PCI0.RP07.L0SE)
  8815. }
  8816.  
  8817. If (LEqual (PFLV, FDTP))
  8818. {
  8819. Notify (\_SB.PCI0.RP07, Zero)
  8820. }
  8821. Else
  8822. {
  8823. If (ECON)
  8824. {
  8825. If (LEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.DOCK)), Zero))
  8826. {
  8827. Notify (\_SB.PCI0.RP07, Zero)
  8828. }
  8829. }
  8830. }
  8831. }
  8832. Else
  8833. {
  8834. Store (One, \_SB.PCI0.RP07.HPSX)
  8835. }
  8836. }
  8837.  
  8838. If (LAnd (LEqual (RP8D, Zero), \_SB.PCI0.RP08.HPSX))
  8839. {
  8840. Sleep (0x64)
  8841. If (\_SB.PCI0.RP08.PDCX)
  8842. {
  8843. Store (One, \_SB.PCI0.RP08.PDCX)
  8844. Store (One, \_SB.PCI0.RP08.HPSX)
  8845. If (LNot (\_SB.PCI0.RP08.PDSX))
  8846. {
  8847. Store (Zero, \_SB.PCI0.RP08.L0SE)
  8848. }
  8849.  
  8850. If (LEqual (PFLV, FDTP))
  8851. {
  8852. Notify (\_SB.PCI0.RP08, Zero)
  8853. }
  8854. Else
  8855. {
  8856. If (ECON)
  8857. {
  8858. If (LEqual (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.DOCK)), Zero))
  8859. {
  8860. Notify (\_SB.PCI0.RP08, Zero)
  8861. }
  8862. }
  8863. }
  8864. }
  8865. Else
  8866. {
  8867. Store (One, \_SB.PCI0.RP08.HPSX)
  8868. }
  8869. }
  8870. }
  8871.  
  8872. Method (_L62, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  8873. {
  8874. Store (Zero, GPEC)
  8875. If (CondRefOf (DTSE))
  8876. {
  8877. If (LGreaterEqual (DTSE, One))
  8878. {
  8879. Notify (\_TZ.TZ00, 0x80)
  8880. Notify (\_TZ.TZ01, 0x80)
  8881. }
  8882. }
  8883.  
  8884. If (CondRefOf (\_SB.PCCD.PENB))
  8885. {
  8886. If (LEqual (\_SB.PCCD.PENB, One))
  8887. {
  8888. Notify (\_SB.PCCD, 0x80)
  8889. }
  8890. }
  8891. }
  8892.  
  8893. Method (_L66, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  8894. {
  8895. If (LAnd (\_SB.PCI0.GFX0.GSSE, LNot (GSMI)))
  8896. {
  8897. \_SB.PCI0.GFX0.GSCI ()
  8898. }
  8899. }
  8900.  
  8901. Method (_L67, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  8902. {
  8903. Store (0x20, \_SB.PCI0.SBUS.HSTS)
  8904. }
  8905.  
  8906. Method (_L1B, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  8907. {
  8908. If (LEqual (ECON, Zero))
  8909. {
  8910. Return (Zero)
  8911. }
  8912.  
  8913. If (LNotEqual (LIDS (), \_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.LSTE))))
  8914. {
  8915. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.LSTE)), LIDS)
  8916. If (IGDS)
  8917. {
  8918. If (\_SB.PCI0.GFX0.GLID (LIDS ()))
  8919. {
  8920. Or (0x80000000, \_SB.PCI0.GFX0.CLID, \_SB.PCI0.GFX0.CLID)
  8921. }
  8922. }
  8923.  
  8924. Notify (\_SB.LID0, 0x80)
  8925. }
  8926. Else
  8927. {
  8928. If (LEqual (BNUM, Zero))
  8929. {
  8930. If (LNotEqual (PWRS, \_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.VPWR))))
  8931. {
  8932. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.VPWR)), PWRS)
  8933. PNOT ()
  8934. }
  8935. }
  8936.  
  8937. Notify (\_SB.PWRB, 0x02)
  8938. }
  8939.  
  8940. Return (Zero)
  8941. }
  8942.  
  8943. Method (_L00, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  8944. {
  8945. If (LEqual (BID, BRH))
  8946. {
  8947. ADBG ("Rotation Lock")
  8948. Sleep (0x03E8)
  8949. \_SB.PCI0.GFX0.IUEH (0x04)
  8950. }
  8951. }
  8952. }
  8953.  
  8954. Scope (_TZ)
  8955. {
  8956. Name (ETMD, One)
  8957. Name (THLD, 0x78)
  8958. Name (YBT4, 0x37)
  8959. Name (YBT3, 0x40)
  8960. Name (YBT2, 0x49)
  8961. Name (YBT1, 0x50)
  8962. Name (YBT0, 0x5B)
  8963. PowerResource (FN00, 0x00, 0x0000)
  8964. {
  8965. Method (_STA, 0, Serialized) // _STA: Status
  8966. {
  8967. Return (VFN0)
  8968. }
  8969.  
  8970. Method (_ON, 0, Serialized) // _ON_: Power On
  8971. {
  8972. Store (One, VFN0)
  8973. If (LAnd (ECON, ETMD))
  8974. {
  8975. \_SB.PCI0.LPCB.H_EC.ECWT (AC0F, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  8976. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  8977. }
  8978. }
  8979.  
  8980. Method (_OFF, 0, Serialized) // _OFF: Power Off
  8981. {
  8982. Store (Zero, VFN0)
  8983. If (LAnd (ECON, ETMD))
  8984. {
  8985. If (LNotEqual (VFN1, Zero))
  8986. {
  8987. \_SB.PCI0.LPCB.H_EC.ECWT (AC1F, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  8988. }
  8989. Else
  8990. {
  8991. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  8992. }
  8993.  
  8994. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  8995. }
  8996. }
  8997. }
  8998.  
  8999. Device (FAN0)
  9000. {
  9001. Name (_HID, EisaId ("PNP0C0B")) // _HID: Hardware ID
  9002. Name (_UID, Zero) // _UID: Unique ID
  9003. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  9004. {
  9005. FN00
  9006. })
  9007. }
  9008.  
  9009. PowerResource (FN01, 0x00, 0x0000)
  9010. {
  9011. Method (_STA, 0, Serialized) // _STA: Status
  9012. {
  9013. Return (VFN1)
  9014. }
  9015.  
  9016. Method (_ON, 0, Serialized) // _ON_: Power On
  9017. {
  9018. Store (One, VFN1)
  9019. If (LAnd (ECON, ETMD))
  9020. {
  9021. If (LEqual (VFN0, Zero))
  9022. {
  9023. \_SB.PCI0.LPCB.H_EC.ECWT (AC1F, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9024. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  9025. }
  9026. }
  9027. }
  9028.  
  9029. Method (_OFF, 0, Serialized) // _OFF: Power Off
  9030. {
  9031. Store (Zero, VFN1)
  9032. If (LAnd (ECON, ETMD))
  9033. {
  9034. If (LNotEqual (VFN2, Zero))
  9035. {
  9036. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9037. }
  9038. Else
  9039. {
  9040. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9041. }
  9042.  
  9043. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  9044. }
  9045. }
  9046. }
  9047.  
  9048. Device (FAN1)
  9049. {
  9050. Name (_HID, EisaId ("PNP0C0B")) // _HID: Hardware ID
  9051. Name (_UID, One) // _UID: Unique ID
  9052. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  9053. {
  9054. FN01
  9055. })
  9056. }
  9057.  
  9058. PowerResource (FN02, 0x00, 0x0000)
  9059. {
  9060. Method (_STA, 0, Serialized) // _STA: Status
  9061. {
  9062. Return (VFN2)
  9063. }
  9064.  
  9065. Method (_ON, 0, Serialized) // _ON_: Power On
  9066. {
  9067. Store (One, VFN2)
  9068. If (LAnd (ECON, ETMD))
  9069. {
  9070. If (LEqual (VFN1, Zero))
  9071. {
  9072. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9073. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  9074. }
  9075. }
  9076. }
  9077.  
  9078. Method (_OFF, 0, Serialized) // _OFF: Power Off
  9079. {
  9080. Store (Zero, VFN2)
  9081. If (LAnd (ECON, ETMD))
  9082. {
  9083. If (LNotEqual (VFN3, Zero))
  9084. {
  9085. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9086. }
  9087. Else
  9088. {
  9089. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9090. }
  9091.  
  9092. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  9093. }
  9094. }
  9095. }
  9096.  
  9097. Device (FAN2)
  9098. {
  9099. Name (_HID, EisaId ("PNP0C0B")) // _HID: Hardware ID
  9100. Name (_UID, 0x02) // _UID: Unique ID
  9101. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  9102. {
  9103. FN02
  9104. })
  9105. }
  9106.  
  9107. PowerResource (FN03, 0x00, 0x0000)
  9108. {
  9109. Method (_STA, 0, Serialized) // _STA: Status
  9110. {
  9111. Return (VFN3)
  9112. }
  9113.  
  9114. Method (_ON, 0, Serialized) // _ON_: Power On
  9115. {
  9116. Store (One, VFN3)
  9117. If (LAnd (ECON, ETMD))
  9118. {
  9119. If (LEqual (VFN2, Zero))
  9120. {
  9121. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9122. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  9123. }
  9124. }
  9125. }
  9126.  
  9127. Method (_OFF, 0, Serialized) // _OFF: Power Off
  9128. {
  9129. Store (Zero, VFN3)
  9130. If (LAnd (ECON, ETMD))
  9131. {
  9132. If (LNotEqual (VFN4, Zero))
  9133. {
  9134. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9135. }
  9136. Else
  9137. {
  9138. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9139. }
  9140.  
  9141. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  9142. }
  9143. }
  9144. }
  9145.  
  9146. Device (FAN3)
  9147. {
  9148. Name (_HID, EisaId ("PNP0C0B")) // _HID: Hardware ID
  9149. Name (_UID, 0x03) // _UID: Unique ID
  9150. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  9151. {
  9152. FN03
  9153. })
  9154. }
  9155.  
  9156. PowerResource (FN04, 0x00, 0x0000)
  9157. {
  9158. Method (_STA, 0, Serialized) // _STA: Status
  9159. {
  9160. Return (VFN4)
  9161. }
  9162.  
  9163. Method (_ON, 0, Serialized) // _ON_: Power On
  9164. {
  9165. Store (One, VFN4)
  9166. If (LAnd (ECON, ETMD))
  9167. {
  9168. If (LEqual (VFN3, Zero))
  9169. {
  9170. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9171. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  9172. }
  9173. }
  9174. }
  9175.  
  9176. Method (_OFF, 0, Serialized) // _OFF: Power Off
  9177. {
  9178. Store (Zero, VFN4)
  9179. If (LAnd (ECON, ETMD))
  9180. {
  9181. \_SB.PCI0.LPCB.H_EC.ECWT (Zero, RefOf (\_SB.PCI0.LPCB.H_EC.PENV))
  9182. \_SB.PCI0.LPCB.H_EC.ECMD (0x1A)
  9183. }
  9184. }
  9185. }
  9186.  
  9187. Device (FAN4)
  9188. {
  9189. Name (_HID, EisaId ("PNP0C0B")) // _HID: Hardware ID
  9190. Name (_UID, 0x04) // _UID: Unique ID
  9191. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  9192. {
  9193. FN04
  9194. })
  9195. }
  9196.  
  9197. ThermalZone (TZ00)
  9198. {
  9199. Name (PTMP, 0x0BB8)
  9200. Method (_SCP, 1, Serialized) // _SCP: Set Cooling Policy
  9201. {
  9202. Store (Arg0, CTYP)
  9203. }
  9204.  
  9205. Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
  9206. {
  9207. If (CondRefOf (\_PR.ACRT))
  9208. {
  9209. If (LNotEqual (\_PR.ACRT, Zero))
  9210. {
  9211. Return (Add (0x0AAC, Multiply (\_PR.ACRT, 0x0A)))
  9212. }
  9213. }
  9214.  
  9215. Return (Add (0x0AAC, Multiply (CRTT, 0x0A)))
  9216. }
  9217.  
  9218. Method (_AC0, 0, Serialized) // _ACx: Active Cooling
  9219. {
  9220. If (CondRefOf (\_PR.AAC0))
  9221. {
  9222. If (LNotEqual (\_PR.AAC0, Zero))
  9223. {
  9224. Return (Add (0x0AAC, Multiply (\_PR.AAC0, 0x0A)))
  9225. }
  9226. }
  9227.  
  9228. Return (Add (0x0AAC, Multiply (ACTT, 0x0A)))
  9229. }
  9230.  
  9231. Method (_AC1, 0, Serialized) // _ACx: Active Cooling
  9232. {
  9233. Return (Add (0x0AAC, Multiply (ACT1, 0x0A)))
  9234. }
  9235.  
  9236. Method (_AC2, 0, Serialized) // _ACx: Active Cooling
  9237. {
  9238. Return (0x0AAC)
  9239. }
  9240.  
  9241. Method (_AC3, 0, Serialized) // _ACx: Active Cooling
  9242. {
  9243. Return (0x0AAC)
  9244. }
  9245.  
  9246. Method (_AC4, 0, Serialized) // _ACx: Active Cooling
  9247. {
  9248. Return (0x0AAC)
  9249. }
  9250.  
  9251. Name (_AL0, Package (0x01) // _ALx: Active List
  9252. {
  9253. FAN0
  9254. })
  9255. Name (_AL1, Package (0x01) // _ALx: Active List
  9256. {
  9257. FAN1
  9258. })
  9259. Name (_AL2, Package (0x01) // _ALx: Active List
  9260. {
  9261. FAN2
  9262. })
  9263. Name (_AL3, Package (0x01) // _ALx: Active List
  9264. {
  9265. FAN3
  9266. })
  9267. Name (_AL4, Package (0x01) // _ALx: Active List
  9268. {
  9269. FAN4
  9270. })
  9271. Method (_TMP, 0, Serialized) // _TMP: Temperature
  9272. {
  9273. If (LNot (ETMD))
  9274. {
  9275. Return (0x0BB8)
  9276. }
  9277.  
  9278. If (LEqual (DTSE, 0x03))
  9279. {
  9280. Return (Add (0x0B10, Multiply (CRTT, 0x0A)))
  9281. }
  9282.  
  9283. If (LEqual (DTSE, One))
  9284. {
  9285. If (LEqual (PKGA, One))
  9286. {
  9287. Store (PDTS, Local0)
  9288. Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  9289. }
  9290.  
  9291. Store (DTS1, Local0)
  9292. If (LGreater (DTS2, Local0))
  9293. {
  9294. Store (DTS2, Local0)
  9295. }
  9296.  
  9297. If (LGreater (DTS3, Local0))
  9298. {
  9299. Store (DTS3, Local0)
  9300. }
  9301.  
  9302. If (LGreater (DTS4, Local0))
  9303. {
  9304. Store (DTS4, Local0)
  9305. }
  9306.  
  9307. Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  9308. }
  9309.  
  9310. If (ECON)
  9311. {
  9312. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.PLMX)), Local0)
  9313. Add (0x0AAC, Multiply (Local0, 0x0A), Local0)
  9314. Store (Local0, PTMP)
  9315. Return (Local0)
  9316. }
  9317.  
  9318. Return (0x0BC2)
  9319. }
  9320. }
  9321.  
  9322. ThermalZone (TZ01)
  9323. {
  9324. Name (PTMP, 0x0BB8)
  9325. Method (_SCP, 1, Serialized) // _SCP: Set Cooling Policy
  9326. {
  9327. Store (Arg0, CTYP)
  9328. }
  9329.  
  9330. Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
  9331. {
  9332. If (CondRefOf (\_PR.ACRT))
  9333. {
  9334. If (LNotEqual (\_PR.ACRT, Zero))
  9335. {
  9336. Return (Add (0x0AAC, Multiply (\_PR.ACRT, 0x0A)))
  9337. }
  9338. }
  9339.  
  9340. Return (Add (0x0AAC, Multiply (CRTT, 0x0A)))
  9341. }
  9342.  
  9343. Method (_TMP, 0, Serialized) // _TMP: Temperature
  9344. {
  9345. If (LNot (ETMD))
  9346. {
  9347. Return (0x0BCC)
  9348. }
  9349.  
  9350. If (LEqual (DTSE, 0x03))
  9351. {
  9352. Return (Add (0x0B10, Multiply (CRTT, 0x0A)))
  9353. }
  9354.  
  9355. If (LEqual (DTSE, One))
  9356. {
  9357. If (LEqual (PKGA, One))
  9358. {
  9359. Store (PDTS, Local0)
  9360. Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  9361. }
  9362.  
  9363. Store (DTS1, Local0)
  9364. If (LGreater (DTS2, Local0))
  9365. {
  9366. Store (DTS2, Local0)
  9367. }
  9368.  
  9369. If (LGreater (DTS3, Local0))
  9370. {
  9371. Store (DTS3, Local0)
  9372. }
  9373.  
  9374. If (LGreater (DTS4, Local0))
  9375. {
  9376. Store (DTS4, Local0)
  9377. }
  9378.  
  9379. Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  9380. }
  9381.  
  9382. If (ECON)
  9383. {
  9384. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.PECH)), Local0)
  9385. Multiply (Local0, 0x0A, Local0)
  9386. Store (\_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.PECL)), Local1)
  9387. ShiftRight (Local1, 0x02, Local1)
  9388. Store (Divide (Multiply (Local1, 0x0A), 0x40, ), Local1)
  9389. Add (Local0, Local1, Local0)
  9390. Add (0x0AAC, Local0, Local0)
  9391. Store (Local0, PTMP)
  9392. Return (Local0)
  9393. }
  9394.  
  9395. Return (0x0BD6)
  9396. }
  9397.  
  9398. Method (_PSL, 0, Serialized) // _PSL: Passive List
  9399. {
  9400. If (LEqual (TCNT, 0x08))
  9401. {
  9402. Return (Package (0x08)
  9403. {
  9404. \_PR.CPU0,
  9405. \_PR.CPU1,
  9406. \_PR.CPU2,
  9407. \_PR.CPU3,
  9408. \_PR.CPU4,
  9409. \_PR.CPU5,
  9410. \_PR.CPU6,
  9411. \_PR.CPU7
  9412. })
  9413. }
  9414.  
  9415. If (LEqual (TCNT, 0x04))
  9416. {
  9417. Return (Package (0x04)
  9418. {
  9419. \_PR.CPU0,
  9420. \_PR.CPU1,
  9421. \_PR.CPU2,
  9422. \_PR.CPU3
  9423. })
  9424. }
  9425.  
  9426. If (LEqual (TCNT, 0x02))
  9427. {
  9428. Return (Package (0x02)
  9429. {
  9430. \_PR.CPU0,
  9431. \_PR.CPU1
  9432. })
  9433. }
  9434.  
  9435. Return (Package (0x01)
  9436. {
  9437. \_PR.CPU0
  9438. })
  9439. }
  9440.  
  9441. Method (_PSV, 0, Serialized) // _PSV: Passive Temperature
  9442. {
  9443. If (CondRefOf (\_PR.APSV))
  9444. {
  9445. If (LNotEqual (\_PR.APSV, Zero))
  9446. {
  9447. Return (Add (0x0AAC, Multiply (\_PR.APSV, 0x0A)))
  9448. }
  9449. }
  9450.  
  9451. Return (Add (0x0AAC, Multiply (PSVT, 0x0A)))
  9452. }
  9453.  
  9454. Method (_TC1, 0, Serialized) // _TC1: Thermal Constant 1
  9455. {
  9456. Return (TC1V)
  9457. }
  9458.  
  9459. Method (_TC2, 0, Serialized) // _TC2: Thermal Constant 2
  9460. {
  9461. Return (TC2V)
  9462. }
  9463.  
  9464. Method (_TSP, 0, Serialized) // _TSP: Thermal Sampling Period
  9465. {
  9466. Return (TSPV)
  9467. }
  9468. }
  9469. }
  9470.  
  9471. Device (WCAM)
  9472. {
  9473. Name (_ADR, 0x05) // _ADR: Address
  9474. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  9475. {
  9476. Name (UPCP, Package (0x04)
  9477. {
  9478. Zero,
  9479. 0xFF,
  9480. Zero,
  9481. Zero
  9482. })
  9483. Return (UPCP)
  9484. }
  9485.  
  9486. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  9487. {
  9488. Name (PLDP, Package (0x01)
  9489. {
  9490. Buffer (0x14)
  9491. {
  9492. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  9493. /* 0008 */ 0x24, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  9494. /* 0010 */ 0xC8, 0x00, 0xA0, 0x00
  9495. }
  9496. })
  9497. Return (PLDP)
  9498. }
  9499. }
  9500.  
  9501. Device (_SB.PCI0.LPCB.TPM)
  9502. {
  9503. Method (_HID, 0, NotSerialized) // _HID: Hardware ID
  9504. {
  9505. If (TCMF) {}
  9506. Else
  9507. {
  9508. Return (0x310CD041)
  9509. }
  9510. }
  9511.  
  9512. Name (_STR, Unicode ("TPM 1.2 Device")) // _STR: Description String
  9513. Name (_UID, One) // _UID: Unique ID
  9514. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  9515. {
  9516. Memory32Fixed (ReadOnly,
  9517. 0xFED40000, // Address Base
  9518. 0x00005000, // Address Length
  9519. )
  9520. })
  9521. OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x5000)
  9522. Field (TMMB, ByteAcc, Lock, Preserve)
  9523. {
  9524. ACCS, 8,
  9525. Offset (0x18),
  9526. TSTA, 8,
  9527. TBCA, 8,
  9528. Offset (0xF00),
  9529. TVID, 16,
  9530. TDID, 16
  9531. }
  9532.  
  9533. Method (_STA, 0, NotSerialized) // _STA: Status
  9534. {
  9535. If (TPMF)
  9536. {
  9537. Return (0x0F)
  9538. }
  9539.  
  9540. Return (Zero)
  9541. }
  9542. }
  9543.  
  9544. Scope (_SB.PCI0.LPCB.TPM)
  9545. {
  9546. OperationRegion (ASMI, SystemIO, SMIA, One)
  9547. Field (ASMI, ByteAcc, NoLock, Preserve)
  9548. {
  9549. INQ, 8
  9550. }
  9551.  
  9552. OperationRegion (BSMI, SystemIO, SMIB, One)
  9553. Field (BSMI, ByteAcc, NoLock, Preserve)
  9554. {
  9555. DAT, 8
  9556. }
  9557.  
  9558. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  9559. {
  9560. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  9561. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  9562. If (LEqual (Arg0, Buffer (0x10)
  9563. {
  9564. /* 0000 */ 0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E,
  9565. /* 0008 */ 0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53
  9566. }))
  9567. {
  9568. While (One)
  9569. {
  9570. Store (ToInteger (Arg2), _T_0)
  9571. If (LEqual (_T_0, Zero))
  9572. {
  9573. Return (Buffer (0x02)
  9574. {
  9575. 0xFF, 0x01
  9576. })
  9577. }
  9578. Else
  9579. {
  9580. If (LEqual (_T_0, One))
  9581. {
  9582. Return ("1.2")
  9583. }
  9584. Else
  9585. {
  9586. If (LEqual (_T_0, 0x02))
  9587. {
  9588. ToInteger (DerefOf (Index (Arg3, Zero)), TMF2)
  9589. Store (0x12, TMF1)
  9590. Store (TMF1, DAT)
  9591. Store (OFST, INQ)
  9592. If (LEqual (DAT, 0xFF))
  9593. {
  9594. Return (0x02)
  9595. }
  9596.  
  9597. Store (TMF2, DAT)
  9598. Store (OFST, INQ)
  9599. If (LEqual (DAT, 0xFF))
  9600. {
  9601. Return (0x02)
  9602. }
  9603.  
  9604. If (LEqual (DAT, 0xF1))
  9605. {
  9606. Return (One)
  9607. }
  9608.  
  9609. Return (Zero)
  9610. }
  9611. Else
  9612. {
  9613. If (LEqual (_T_0, 0x03))
  9614. {
  9615. Name (PPI1, Package (0x02)
  9616. {
  9617. Zero,
  9618. Zero
  9619. })
  9620. Store (0x11, DAT)
  9621. Store (OFST, INQ)
  9622. If (LEqual (DAT, 0xFF))
  9623. {
  9624. Return (One)
  9625. }
  9626.  
  9627. Store (DAT, Index (PPI1, One))
  9628. Return (PPI1)
  9629. }
  9630. Else
  9631. {
  9632. If (LEqual (_T_0, 0x04))
  9633. {
  9634. Return (TRST)
  9635. }
  9636. Else
  9637. {
  9638. If (LEqual (_T_0, 0x05))
  9639. {
  9640. Name (PPI2, Package (0x03)
  9641. {
  9642. Zero,
  9643. Zero,
  9644. Zero
  9645. })
  9646. Store (0x21, DAT)
  9647. Store (OFST, INQ)
  9648. Store (DAT, Index (PPI2, One))
  9649. If (LEqual (DAT, 0xFF))
  9650. {
  9651. Return (0x02)
  9652. }
  9653.  
  9654. Store (0x31, DAT)
  9655. Store (OFST, INQ)
  9656. If (LEqual (DAT, 0xFF))
  9657. {
  9658. Return (0x02)
  9659. }
  9660.  
  9661. If (LEqual (DAT, 0xF0))
  9662. {
  9663. Store (0x51, DAT)
  9664. Store (OFST, INQ)
  9665. If (LEqual (DAT, 0xFF))
  9666. {
  9667. Store (0xFFFFFFF0, Index (PPI2, 0x02))
  9668. Return (PPI2)
  9669. }
  9670. }
  9671. Else
  9672. {
  9673. If (LEqual (DAT, 0xF1))
  9674. {
  9675. Store (0x51, DAT)
  9676. Store (OFST, INQ)
  9677. If (LEqual (DAT, 0xFF))
  9678. {
  9679. Store (0xFFFFFFF1, Index (PPI2, 0x02))
  9680. Return (PPI2)
  9681. }
  9682. }
  9683. Else
  9684. {
  9685. Store (DAT, Index (PPI2, 0x02))
  9686. }
  9687. }
  9688.  
  9689. Return (PPI2)
  9690. }
  9691. Else
  9692. {
  9693. If (LEqual (_T_0, 0x06))
  9694. {
  9695. Return (0x03)
  9696. }
  9697. Else
  9698. {
  9699. If (LEqual (_T_0, 0x07))
  9700. {
  9701. ToInteger (DerefOf (Index (Arg3, Zero)), TMF2)
  9702. Store (0x12, TMF1)
  9703. Store (TMF1, DAT)
  9704. Store (OFST, INQ)
  9705. If (LEqual (DAT, 0xFF))
  9706. {
  9707. Return (0x02)
  9708. }
  9709.  
  9710. Store (TMF2, DAT)
  9711. Store (OFST, INQ)
  9712. If (LEqual (DAT, 0xFF))
  9713. {
  9714. Return (0x02)
  9715. }
  9716.  
  9717. If (LEqual (DAT, 0xF1))
  9718. {
  9719. Return (One)
  9720. }
  9721.  
  9722. Return (Zero)
  9723. }
  9724. Else
  9725. {
  9726. If (LEqual (_T_0, 0x08))
  9727. {
  9728. ToInteger (DerefOf (Index (Arg3, Zero)), TMF2)
  9729. Store (0x43, TMF1)
  9730. Store (TMF1, DAT)
  9731. Store (OFST, INQ)
  9732. Store (TMF2, DAT)
  9733. Store (OFST, INQ)
  9734. Return (DAT)
  9735. }
  9736. Else
  9737. {
  9738. }
  9739. }
  9740. }
  9741. }
  9742. }
  9743. }
  9744. }
  9745. }
  9746. }
  9747.  
  9748. Break
  9749. }
  9750. }
  9751. Else
  9752. {
  9753. If (LEqual (Arg0, Buffer (0x10)
  9754. {
  9755. /* 0000 */ 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46,
  9756. /* 0008 */ 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D
  9757. }))
  9758. {
  9759. While (One)
  9760. {
  9761. Store (ToInteger (Arg2), _T_1)
  9762. If (LEqual (_T_1, Zero))
  9763. {
  9764. Return (Buffer (One)
  9765. {
  9766. 0x03
  9767. })
  9768. }
  9769. Else
  9770. {
  9771. If (LEqual (_T_1, One))
  9772. {
  9773. Store (0x22, TMF1)
  9774. Store (TMF1, DAT)
  9775. Store (OFST, INQ)
  9776. If (LEqual (DAT, 0xFF))
  9777. {
  9778. Return (0x02)
  9779. }
  9780.  
  9781. ToInteger (DerefOf (Index (Arg3, Zero)), TMF1)
  9782. Store (TMF1, DAT)
  9783. Store (OFST, INQ)
  9784. If (LEqual (DAT, 0xFF))
  9785. {
  9786. Return (0x02)
  9787. }
  9788.  
  9789. Return (Zero)
  9790. }
  9791. Else
  9792. {
  9793. }
  9794. }
  9795.  
  9796. Break
  9797. }
  9798. }
  9799. }
  9800.  
  9801. Return (Buffer (One)
  9802. {
  9803. 0x00
  9804. })
  9805. }
  9806. }
  9807.  
  9808. Name (TSAD, 0x12)
  9809. Name (TMIN, 0x7E)
  9810. Name (TMAX, 0x7E)
  9811. Name (TCRT, 0x7E)
  9812. Name (THOT, 0x7E)
  9813. Name (TSP, 0x0A)
  9814. Name (TC1, 0x02)
  9815. Name (TC2, 0x0A)
  9816. Scope (_TZ)
  9817. {
  9818. Method (KELV, 1, NotSerialized)
  9819. {
  9820. And (Arg0, 0xFF, Local0)
  9821. Multiply (Local0, 0x0A, Local0)
  9822. Add (Local0, 0x0AAC, Local0)
  9823. Return (Local0)
  9824. }
  9825.  
  9826. Name (PLCY, Zero)
  9827. ThermalZone (THRM)
  9828. {
  9829. Method (_CRT, 0, NotSerialized) // _CRT: Critical Temperature
  9830. {
  9831. Return (KELV (TCRT))
  9832. }
  9833.  
  9834. Method (_HOT, 0, NotSerialized) // _HOT: Hot Temperature
  9835. {
  9836. Return (KELV (THOT))
  9837. }
  9838.  
  9839. Method (_TMP, 0, NotSerialized) // _TMP: Temperature
  9840. {
  9841. Return (KELV (RTMP ()))
  9842. }
  9843.  
  9844. Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period
  9845. {
  9846. Multiply (TSP, 0x0A, Local0)
  9847. Return (Local0)
  9848. }
  9849.  
  9850. Method (_TC1, 0, NotSerialized) // _TC1: Thermal Constant 1
  9851. {
  9852. Return (TC1)
  9853. }
  9854.  
  9855. Method (_TC2, 0, NotSerialized) // _TC2: Thermal Constant 2
  9856. {
  9857. Return (TC2)
  9858. }
  9859.  
  9860. Method (_PSV, 0, NotSerialized) // _PSV: Passive Temperature
  9861. {
  9862. If (PLCY)
  9863. {
  9864. Return (KELV (TMIN))
  9865. }
  9866. Else
  9867. {
  9868. Return (KELV (TMAX))
  9869. }
  9870. }
  9871.  
  9872. Method (_SCP, 1, NotSerialized) // _SCP: Set Cooling Policy
  9873. {
  9874. Store (Arg0, PLCY)
  9875. TCHG ()
  9876. Notify (THRM, 0x81)
  9877. }
  9878. }
  9879.  
  9880. Method (TRMS, 1, NotSerialized)
  9881. {
  9882. Noop
  9883. }
  9884.  
  9885. Method (TRMW, 1, NotSerialized)
  9886. {
  9887. If (LGreater (Arg0, One))
  9888. {
  9889. TCHG ()
  9890. }
  9891.  
  9892. If (LGreater (^THRM._TMP (), TCRT))
  9893. {
  9894. Store (0x02, Local0)
  9895. }
  9896.  
  9897. Notify (THRM, 0x80)
  9898. }
  9899. }
  9900.  
  9901. Scope (_GPE)
  9902. {
  9903. Method (_L0A, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  9904. {
  9905. Store (One, OVTF)
  9906. \_TZ.THDL ()
  9907. Notify (\_TZ.THRM, 0x80)
  9908. }
  9909. }
  9910.  
  9911. Scope (_TZ)
  9912. {
  9913. OperationRegion (HWMT, SystemIO, ASTS, 0x02)
  9914. Field (HWMT, ByteAcc, NoLock, Preserve)
  9915. {
  9916. HWMI, 8,
  9917. HWMD, 8
  9918. }
  9919.  
  9920. IndexField (HWMI, HWMD, ByteAcc, NoLock, Preserve)
  9921. {
  9922. Offset (0x11),
  9923. TMP, 8,
  9924. Offset (0x4E),
  9925. TBNK, 8
  9926. }
  9927.  
  9928. Method (TCHG, 0, NotSerialized)
  9929. {
  9930. Notify (THRM, 0x81)
  9931. }
  9932.  
  9933. Method (SCFG, 1, NotSerialized)
  9934. {
  9935. }
  9936.  
  9937. Method (STOS, 1, NotSerialized)
  9938. {
  9939. }
  9940.  
  9941. Method (STHY, 1, NotSerialized)
  9942. {
  9943. }
  9944.  
  9945. Method (RTMP, 0, NotSerialized)
  9946. {
  9947. If (LEqual (OVTF, Zero))
  9948. {
  9949. Return (0x1E)
  9950. }
  9951.  
  9952. Store (0x80, TBNK)
  9953. Store (TMP, DBG8)
  9954. Return (TMP)
  9955. }
  9956.  
  9957. Method (THDL, 0, NotSerialized)
  9958. {
  9959. }
  9960. }
  9961.  
  9962. Scope (_GPE)
  9963. {
  9964. Method (_L18, 0, Serialized) // _Lxx: Level-Triggered GPE
  9965. {
  9966. Notify (\_SB.AC, 0x80)
  9967. Notify (\_SB.BAT0, 0x80)
  9968. }
  9969. }
  9970.  
  9971. Name (SBCP, 0x20)
  9972. Name (RECH, 0x10)
  9973. Name (RECP, 0x12)
  9974. Name (FCCP, 0x14)
  9975. Name (DSCP, 0x16)
  9976. Name (BSTA, 0x20)
  9977. Name (KSAC, One)
  9978. Name (KSNB, 0x02)
  9979. Name (KSBC, 0x04)
  9980. Name (BSER, 0x40)
  9981. Name (BOEM, 0x50)
  9982. Name (BDEV, 0x60)
  9983. Name (BCHM, 0x70)
  9984. Mutex (SMBM, 0x00)
  9985. Method (BIRB, 1, NotSerialized)
  9986. {
  9987. Store (Zero, Local0)
  9988. Acquire (SMBM, 0x01F4)
  9989. Store (\_SB.PCI0.SBUS.SRDB (SBCP, Arg0), Local0)
  9990. Release (SMBM)
  9991. Return (Local0)
  9992. }
  9993.  
  9994. Method (BIRW, 1, NotSerialized)
  9995. {
  9996. Store (Zero, Local0)
  9997. Acquire (SMBM, 0x01F4)
  9998. Store (Arg0, Local0)
  9999. Store (\_SB.PCI0.SBUS.SRDB (SBCP, Local0), Local1)
  10000. Add (Local0, One, Local0)
  10001. Store (\_SB.PCI0.SBUS.SRDB (SBCP, Local0), Local2)
  10002. Multiply (Local2, 0x64, Local0)
  10003. Add (Local0, Local1, Local0)
  10004. Release (SMBM)
  10005. Return (Local0)
  10006. }
  10007.  
  10008. Method (BIRS, 1, NotSerialized)
  10009. {
  10010. Name (BSTR, Buffer (0x10) {})
  10011. Store (Zero, BSTR)
  10012. Store (Zero, Local0)
  10013. Store (Zero, Local1)
  10014. Store (Zero, Local2)
  10015. Store (0x10, Local0)
  10016. While (LLess (Local1, Local0))
  10017. {
  10018. Add (Arg0, Local1, Local3)
  10019. Store (BIRB (Local3), Local4)
  10020. If (LEqual (Local4, Zero))
  10021. {
  10022. Break
  10023. }
  10024.  
  10025. Store (Local4, Index (BSTR, Local2))
  10026. Increment (Local1)
  10027. Increment (Local2)
  10028. }
  10029.  
  10030. Return (BSTR)
  10031. }
  10032.  
  10033. Method (BISR, 0, NotSerialized)
  10034. {
  10035. Store (One, Local1)
  10036. Store (BIRB (Zero), Local0)
  10037. If (LNotEqual (Local0, 0x49))
  10038. {
  10039. Store (Zero, Local1)
  10040. }
  10041. Else
  10042. {
  10043. Store (BIRB (One), Local0)
  10044. If (LNotEqual (Local0, 0x42))
  10045. {
  10046. Store (Zero, Local1)
  10047. }
  10048. }
  10049.  
  10050. Return (Local1)
  10051. }
  10052.  
  10053. Scope (_SB)
  10054. {
  10055. Device (BAT0)
  10056. {
  10057. Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID
  10058. Name (_PCL, Package (0x01) // _PCL: Power Consumer List
  10059. {
  10060. _SB
  10061. })
  10062. Method (_STA, 0, NotSerialized) // _STA: Status
  10063. {
  10064. If (LEqual (BISR (), Zero))
  10065. {
  10066. Return (One)
  10067. }
  10068.  
  10069. Store (Zero, Local0)
  10070. Store (BIRW (RECH), Local0)
  10071. If (LGreater (Local0, 0x64))
  10072. {
  10073. Return (0x0F)
  10074. }
  10075. Else
  10076. {
  10077. If (LEqual (Local0, Zero))
  10078. {
  10079. Return (0x0F)
  10080. }
  10081. Else
  10082. {
  10083. Return (0x1F)
  10084. }
  10085. }
  10086. }
  10087.  
  10088. Name (BIFF, Package (0x0D)
  10089. {
  10090. One,
  10091. 0xFFFFFFFF,
  10092. 0xFFFFFFFF,
  10093. One,
  10094. 0x3138,
  10095. Zero,
  10096. Zero,
  10097. 0x5A,
  10098. 0x5A,
  10099. "LI2020A17",
  10100. "",
  10101. "Lion",
  10102. "IBASE"
  10103. })
  10104. Method (_BIF, 0, NotSerialized) // _BIF: Battery Information
  10105. {
  10106. If (LEqual (BISR (), Zero))
  10107. {
  10108. Return (BIFF)
  10109. }
  10110.  
  10111. Store (Zero, Local0)
  10112. Store (BIRW (DSCP), Local0)
  10113. If (LEqual (Local0, Zero))
  10114. {
  10115. Notify (BAT0, 0x81)
  10116. }
  10117. Else
  10118. {
  10119. If (LEqual (Local0, 0xFFFF))
  10120. {
  10121. Notify (BAT0, 0x81)
  10122. }
  10123. Else
  10124. {
  10125. Store (Local0, Index (BIFF, One))
  10126. Store (BIRW (FCCP), Local0)
  10127. Store (Local0, Index (BIFF, 0x02))
  10128. Store (BIRS (BDEV), Index (BIFF, 0x09))
  10129. Store (BIRS (BSER), Index (BIFF, 0x0A))
  10130. Store (BIRS (BCHM), Index (BIFF, 0x0B))
  10131. Store (BIRS (BOEM), Index (BIFF, 0x0C))
  10132. }
  10133. }
  10134.  
  10135. Return (BIFF)
  10136. }
  10137.  
  10138. Name (BSTF, Package (0x04)
  10139. {
  10140. One,
  10141. Zero,
  10142. 0x0970,
  10143. 0x3130
  10144. })
  10145. Method (_BST, 0, NotSerialized) // _BST: Battery Status
  10146. {
  10147. If (LEqual (BISR (), Zero))
  10148. {
  10149. Return (BSTF)
  10150. }
  10151.  
  10152. Store (Zero, Local0)
  10153. Store (BIRW (RECP), Local0)
  10154. Store (Local0, Index (BSTF, 0x02))
  10155. Store (Zero, Local0)
  10156. Store (BIRB (BSTA), Local0)
  10157. Store (BIRB (BSTA), Local1)
  10158. And (Local0, KSBC, Local0)
  10159. And (Local1, KSAC, Local1)
  10160. If (LEqual (Local1, Zero))
  10161. {
  10162. Store (One, Index (BSTF, Zero))
  10163. }
  10164. Else
  10165. {
  10166. If (LEqual (Local0, Zero))
  10167. {
  10168. Store (Zero, Index (BSTF, Zero))
  10169. }
  10170. Else
  10171. {
  10172. Store (0x02, Index (BSTF, Zero))
  10173. }
  10174. }
  10175.  
  10176. Return (BSTF)
  10177. }
  10178. }
  10179.  
  10180. Device (AC)
  10181. {
  10182. Name (_HID, "ACPI0003") // _HID: Hardware ID
  10183. Name (_PCL, Package (0x01) // _PCL: Power Consumer List
  10184. {
  10185. _SB
  10186. })
  10187. Method (_PSR, 0, NotSerialized) // _PSR: Power Source
  10188. {
  10189. If (LEqual (BISR (), Zero))
  10190. {
  10191. Return (One)
  10192. }
  10193.  
  10194. Sleep (0x0A)
  10195. Store (Zero, Local0)
  10196. Store (BIRB (BSTA), Local0)
  10197. And (Local0, KSAC, Local0)
  10198. If (LEqual (Local0, Zero))
  10199. {
  10200. Return (Zero)
  10201. }
  10202. Else
  10203. {
  10204. Return (One)
  10205. }
  10206. }
  10207. }
  10208. }
  10209.  
  10210. Scope (_SB.PCI0.LPCB)
  10211. {
  10212. Device (H_EC)
  10213. {
  10214. Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID
  10215. Name (_UID, One) // _UID: Unique ID
  10216. Method (_STA, 0, NotSerialized) // _STA: Status
  10217. {
  10218. Store (0x03, ^^^GFX0.CLID)
  10219. Return (Zero)
  10220. }
  10221.  
  10222. Name (B1CC, Zero)
  10223. Name (B1ST, Zero)
  10224. Name (B2CC, Zero)
  10225. Name (B2ST, Zero)
  10226. Name (CFAN, Zero)
  10227. Name (CMDR, Zero)
  10228. Name (DOCK, Zero)
  10229. Name (EJET, Zero)
  10230. Name (MCAP, Zero)
  10231. Name (PLMX, Zero)
  10232. Name (PECH, Zero)
  10233. Name (PECL, Zero)
  10234. Name (PENV, Zero)
  10235. Name (PINV, Zero)
  10236. Name (PPSH, Zero)
  10237. Name (PPSL, Zero)
  10238. Name (PSTP, Zero)
  10239. Name (RPWR, Zero)
  10240. Name (LIDS, Zero)
  10241. Name (LSTE, Zero)
  10242. Name (SLPC, Zero)
  10243. Name (VPWR, Zero)
  10244. Name (WTMS, Zero)
  10245. Name (AWT2, Zero)
  10246. Name (AWT1, Zero)
  10247. Name (AWT0, Zero)
  10248. Name (DLED, Zero)
  10249. Name (IBT1, Zero)
  10250. Name (ECAV, Zero)
  10251. Name (SPT2, Zero)
  10252. Name (PB10, Zero)
  10253. Method (ECRD, 1, Serialized)
  10254. {
  10255. Return (DerefOf (Arg0))
  10256. }
  10257.  
  10258. Method (ECWT, 2, Serialized)
  10259. {
  10260. Store (Arg0, Arg1)
  10261. }
  10262.  
  10263. Method (ECMD, 1, Serialized)
  10264. {
  10265. If (ECON)
  10266. {
  10267. While (CMDR)
  10268. {
  10269. Stall (0x14)
  10270. }
  10271.  
  10272. Store (Arg0, CMDR)
  10273. }
  10274. }
  10275.  
  10276. Device (BAT0)
  10277. {
  10278. Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID
  10279. Name (_UID, Zero) // _UID: Unique ID
  10280. Method (_STA, 0, NotSerialized) // _STA: Status
  10281. {
  10282. Return (Zero)
  10283. }
  10284. }
  10285.  
  10286. Scope (\)
  10287. {
  10288. Field (GNVS, AnyAcc, Lock, Preserve)
  10289. {
  10290. Offset (0x1E),
  10291. BNUM, 8,
  10292. Offset (0x20),
  10293. B1SC, 8,
  10294. Offset (0x23),
  10295. B1SS, 8
  10296. }
  10297. }
  10298.  
  10299. Device (BAT1)
  10300. {
  10301. Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID
  10302. Name (_UID, One) // _UID: Unique ID
  10303. Method (_STA, 0, NotSerialized) // _STA: Status
  10304. {
  10305. Return (Zero)
  10306. }
  10307. }
  10308.  
  10309. Scope (\)
  10310. {
  10311. Field (GNVS, AnyAcc, Lock, Preserve)
  10312. {
  10313. Offset (0x21),
  10314. B2SC, 8,
  10315. Offset (0x24),
  10316. B2SS, 8
  10317. }
  10318. }
  10319.  
  10320. Device (BAT2)
  10321. {
  10322. Name (_HID, EisaId ("PNP0C0A")) // _HID: Hardware ID
  10323. Name (_UID, 0x02) // _UID: Unique ID
  10324. Method (_STA, 0, NotSerialized) // _STA: Status
  10325. {
  10326. Return (Zero)
  10327. }
  10328. }
  10329. }
  10330. }
  10331.  
  10332. Device (_SB.PCI0.DOCK)
  10333. {
  10334. Name (_HID, "ABCD0000") // _HID: Hardware ID
  10335. Name (_CID, EisaId ("PNP0C15")) // _CID: Compatible ID
  10336. Name (_UID, 0x02) // _UID: Unique ID
  10337. Method (_STA, 0, NotSerialized) // _STA: Status
  10338. {
  10339. Return (Zero)
  10340. }
  10341. }
  10342.  
  10343. Scope (_SB)
  10344. {
  10345. Device (LID0)
  10346. {
  10347. Name (_HID, EisaId ("PNP0C0D")) // _HID: Hardware ID
  10348. Method (_STA, 0, NotSerialized) // _STA: Status
  10349. {
  10350. Return (Zero)
  10351. }
  10352. }
  10353. }
  10354.  
  10355. Name (_S0, Package (0x04) // _S0_: S0 System State
  10356. {
  10357. Zero,
  10358. Zero,
  10359. Zero,
  10360. Zero
  10361. })
  10362. If (SS1)
  10363. {
  10364. Name (_S1, Package (0x04) // _S1_: S1 System State
  10365. {
  10366. One,
  10367. Zero,
  10368. Zero,
  10369. Zero
  10370. })
  10371. }
  10372.  
  10373. If (SS3)
  10374. {
  10375. Name (_S3, Package (0x04) // _S3_: S3 System State
  10376. {
  10377. 0x05,
  10378. Zero,
  10379. Zero,
  10380. Zero
  10381. })
  10382. }
  10383.  
  10384. If (SS4)
  10385. {
  10386. Name (_S4, Package (0x04) // _S4_: S4 System State
  10387. {
  10388. 0x06,
  10389. Zero,
  10390. Zero,
  10391. Zero
  10392. })
  10393. }
  10394.  
  10395. Name (_S5, Package (0x04) // _S5_: S5 System State
  10396. {
  10397. 0x07,
  10398. Zero,
  10399. Zero,
  10400. Zero
  10401. })
  10402. Method (PTS, 1, NotSerialized)
  10403. {
  10404. If (Arg0)
  10405. {
  10406. \_SB.PCI0.LPCB.SPTS (Arg0)
  10407. \_SB.PCI0.NPTS (Arg0)
  10408. \_SB.PCI0.LPCB.SIOS (Arg0)
  10409. }
  10410. }
  10411.  
  10412. Method (WAK, 1, NotSerialized)
  10413. {
  10414. \_SB.PCI0.LPCB.SWAK (Arg0)
  10415. \_SB.PCI0.NWAK (Arg0)
  10416. \_SB.PCI0.LPCB.SIOW (Arg0)
  10417. }
  10418.  
  10419. Method (OSCM, 4, NotSerialized)
  10420. {
  10421. Return (Zero)
  10422. }
  10423.  
  10424. Method (PINI, 0, NotSerialized)
  10425. {
  10426. }
  10427. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement