Advertisement
potuzb

dsdt

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