Advertisement
Guest User

Untitled

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