Advertisement
Guest User

Untitled

a guest
Oct 10th, 2017
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 247.67 KB | None | 0 0
  1. /*
  2. * Intel ACPI Component Architecture
  3. * AML Disassembler version 20140214-64 [Mar 29 2014]
  4. * Copyright (c) 2000 - 2014 Intel Corporation
  5. *
  6. * Disassembly of ./out/dsdt.dat, Thu Dec 8 15:23:16 2016
  7. *
  8. * Original Table Header:
  9. * Signature "DSDT"
  10. * Length 0x0000FBFB (64507)
  11. * Revision 0x02
  12. * Checksum 0x07
  13. * OEM ID "ALASKA"
  14. * OEM Table ID "A M I"
  15. * OEM Revision 0x00000030 (48)
  16. * Compiler ID "INTL"
  17. * Compiler Version 0x20120711 (538052369)
  18. */
  19. DefinitionBlock ("./out/dsdt.aml", "DSDT", 2, "ALASKA", "A M I", 0x00000030)
  20. {
  21. /*
  22. * iASL Warning: There were 14 external control methods found during
  23. * disassembly, but additional ACPI tables to resolve these externals
  24. * were not specified. This resulting disassembler output file may not
  25. * compile because the disassembler did not know how many arguments
  26. * to assign to these methods. To specify the tables needed to resolve
  27. * external control method references, the -e option can be used to
  28. * specify the filenames. Example iASL invocations:
  29. * iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
  30. * iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
  31. * iasl -e ssdt*.aml -d dsdt.aml
  32. *
  33. * In addition, the -fe option can be used to specify a file containing
  34. * control method external declarations with the associated method
  35. * argument counts. Each line of the file must be of the form:
  36. * External (<method pathname>, MethodObj, <argument count>)
  37. */
  38. External (_SB_.PCI0.GFX0.GLID, MethodObj) // Warning: Unresolved Method, guessing 1 arguments (may be incorrect, see warning above)
  39. External (_SB_.PCI0.GFX0.GSCI, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  40. External (_SB_.PCI0.GFX0.IUEH, MethodObj) // Warning: Unresolved Method, guessing 1 arguments (may be incorrect, see warning above)
  41. External (_SB_.PCI0.PAUD.PUAM, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  42. External (_SB_.PCI0.PEG0.HPME, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  43. External (_SB_.PCI0.PEG0.PEGP.EPON, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  44. External (_SB_.PCI0.PEG1.HPME, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  45. External (_SB_.PCI0.PEG2.HPME, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  46. External (_SB_.PCI0.RP05.PEGP.EPON, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  47. External (_SB_.PCI0.XHC_.DUAM, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  48. External (_SB_.TPM_.PTS_, MethodObj) // Warning: Unresolved Method, guessing 1 arguments (may be incorrect, see warning above)
  49. External (LIDS, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  50. External (PS0X, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  51. External (PS3X, MethodObj) // Warning: Unresolved Method, guessing 0 arguments (may be incorrect, see warning above)
  52.  
  53. External (_PR_.AAC0)
  54. External (_PR_.ACRT)
  55. External (_PR_.APSV)
  56. External (_PR_.CFGD)
  57. External (_PR_.CPU0._PPC)
  58. External (_PR_.CPU0._PSS)
  59. External (_SB_.IAOE.ECTM)
  60. External (_SB_.IAOE.FFSE)
  61. External (_SB_.IAOE.IBT1)
  62. External (_SB_.IAOE.ITMR)
  63. External (_SB_.IAOE.PTSL)
  64. External (_SB_.IAOE.RCTM)
  65. External (_SB_.IAOE.WKRS)
  66. External (_SB_.IETM)
  67. External (_SB_.IFFS.FFSS)
  68. External (_SB_.PCCD)
  69. External (_SB_.PCCD.PENB)
  70. External (_SB_.PCI0.B0D3.ABAR, IntObj)
  71. External (_SB_.PCI0.B0D3.BARA)
  72. External (_SB_.PCI0.GFX0.CLID)
  73. External (_SB_.PCI0.GFX0.DD1F)
  74. External (_SB_.PCI0.GFX0.GSSE)
  75. External (_SB_.PCI0.GFX0.STAT)
  76. External (_SB_.PCI0.GFX0.TCHE)
  77. External (_SB_.PCI0.PEG0)
  78. External (_SB_.PCI0.PEG0.PEGP)
  79. External (_SB_.PCI0.PEG1)
  80. External (_SB_.PCI0.PEG2)
  81. External (DIDX)
  82. External (GSMI)
  83. External (IGDS, IntObj)
  84. External (MDBG, IntObj)
  85. External (PDC0)
  86. External (PDC1)
  87. External (PDC2)
  88. External (PDC3)
  89. External (PDC4)
  90. External (PDC5)
  91. External (PDC6)
  92. External (PDC7)
  93. External (SGMD)
  94.  
  95. Name (SP1O, 0x4E)
  96. Name (IO2B, 0x0290)
  97. Name (IO2L, 0x10)
  98. Name (IO3B, 0x02A0)
  99. Name (IO3L, 0x10)
  100. Name (SMBS, 0x0580)
  101. Name (SMBL, 0x20)
  102. Name (PMBS, 0x1800)
  103. Name (GPBS, 0x1C00)
  104. Name (SMIP, 0xB2)
  105. Name (APCB, 0xFEC00000)
  106. Name (APCL, 0x1000)
  107. Name (SMCR, 0x1830)
  108. Name (HPTB, 0xFED00000)
  109. Name (HPTC, 0xFED1F404)
  110. Name (FLSZ, 0x00400000)
  111. Name (SRCB, 0xFED1C000)
  112. Name (RCLN, 0x4000)
  113. Name (PEBS, 0xF8000000)
  114. Name (PELN, 0x04000000)
  115. Name (LAPB, 0xFEE00000)
  116. Name (EGPB, 0xFED19000)
  117. Name (MCHB, 0xFED10000)
  118. Name (VTBS, 0xFED90000)
  119. Name (VTLN, 0x4000)
  120. Name (ACPH, 0xDE)
  121. Name (ASSB, Zero)
  122. Name (AOTB, Zero)
  123. Name (AAXB, Zero)
  124. Name (PEHP, One)
  125. Name (SHPC, One)
  126. Name (PEPM, One)
  127. Name (PEER, One)
  128. Name (PECS, One)
  129. Name (ITKE, Zero)
  130. Name (SRSI, 0xB2)
  131. Name (CSMI, 0x61)
  132. Name (FMBL, One)
  133. Name (FDTP, 0x02)
  134. Name (FUPS, 0x03)
  135. Name (FUWS, 0x04)
  136. Name (BGR, One)
  137. Name (BFR, 0x02)
  138. Name (BBR, 0x03)
  139. Name (BWC, 0x04)
  140. Name (BWT1, 0x20)
  141. Name (BFHC, 0x0100)
  142. Name (TRTP, One)
  143. Name (WDTE, One)
  144. Name (TRTD, 0x02)
  145. Name (TRTI, 0x03)
  146. Name (PFTI, 0x04)
  147. Name (GCDD, One)
  148. Name (DSTA, 0x0A)
  149. Name (DSLO, 0x0C)
  150. Name (DSLC, 0x0E)
  151. Name (PITS, 0x10)
  152. Name (SBCS, 0x12)
  153. Name (SALS, 0x13)
  154. Name (LSSS, 0x2A)
  155. Name (SOOT, 0x35)
  156. Name (PDBR, 0x4D)
  157. Name (BW1P, 0x21)
  158. Name (BW2C, 0x22)
  159. Name (BW2P, 0x23)
  160. Name (BSPC, 0x24)
  161. Name (BSPP, 0x25)
  162. Name (BICO, 0x27)
  163. Name (BICC, 0x28)
  164. Name (BHB, 0x30)
  165. Name (BFS2, 0x31)
  166. Name (BFS3, 0x32)
  167. Name (BFS4, 0x33)
  168. Name (BRH, 0x35)
  169. Name (DSSP, Zero)
  170. Name (FHPP, Zero)
  171. Name (SMIA, 0xB2)
  172. Name (SMIB, 0xB3)
  173. Name (OFST, 0x35)
  174. Name (TPMF, Zero)
  175. Name (TCMF, Zero)
  176. Name (TMF1, Zero)
  177. Name (TMF2, Zero)
  178. Name (TMF3, Zero)
  179. Name (OVTF, Zero)
  180. Name (SRFG, Zero)
  181. Name (SRBP, 0x0295)
  182. Name (ASTS, 0x0295)
  183. Name (TRST, 0x02)
  184. Name (HIDK, "MSFT0001")
  185. Name (HIDM, "MSFT0003")
  186. Name (CIDK, 0x0303D041)
  187. Name (CIDM, 0x030FD041)
  188. Name (MBEC, Zero)
  189. Name (PMLN, 0x0100)
  190. Name (GPLN, 0x0400)
  191. Name (SS1, Zero)
  192. Name (SS2, Zero)
  193. Name (SS3, One)
  194. Name (SS4, One)
  195. Name (IOST, 0x4403)
  196. Name (TOPM, 0x00000000)
  197. Name (ROMS, 0xFFE00000)
  198. Name (VGAF, One)
  199. OperationRegion (GNVS, SystemMemory, 0x799DDC18, 0x02B2)
  200. Field (GNVS, AnyAcc, Lock, Preserve)
  201. {
  202. OSYS, 16,
  203. SMIF, 8,
  204. PRM0, 8,
  205. PRM1, 8,
  206. SCIF, 8,
  207. PRM2, 8,
  208. PRM3, 8,
  209. LCKF, 8,
  210. PRM4, 8,
  211. PRM5, 8,
  212. P80D, 32,
  213. PWRS, 8,
  214. DBGS, 8,
  215. THOF, 8,
  216. ACT1, 8,
  217. ACTT, 8,
  218. PSVT, 8,
  219. TC1V, 8,
  220. TC2V, 8,
  221. TSPV, 8,
  222. CRTT, 8,
  223. DTSE, 8,
  224. DTS1, 8,
  225. DTS2, 8,
  226. DTSF, 8,
  227. Offset (0x1E),
  228. Offset (0x25),
  229. REVN, 8,
  230. Offset (0x28),
  231. APIC, 8,
  232. TCNT, 8,
  233. PCP0, 8,
  234. PCP1, 8,
  235. PPCM, 8,
  236. PPMF, 32,
  237. C67L, 8,
  238. NATP, 8,
  239. CMAP, 8,
  240. CMBP, 8,
  241. LPTP, 8,
  242. FDCP, 8,
  243. CMCP, 8,
  244. CIRP, 8,
  245. SMSC, 8,
  246. W381, 8,
  247. SMC1, 8,
  248. EMAE, 8,
  249. EMAP, 16,
  250. EMAL, 16,
  251. Offset (0x42),
  252. MEFE, 8,
  253. DSTS, 8,
  254. Offset (0x48),
  255. MORD, 8,
  256. TCGP, 8,
  257. PPRP, 32,
  258. PPRQ, 8,
  259. LPPR, 8,
  260. GTF0, 56,
  261. GTF2, 56,
  262. IDEM, 8,
  263. GTF1, 56,
  264. BID, 16,
  265. PLID, 8,
  266. ECTG, 8,
  267. Offset (0x70),
  268. OSCC, 8,
  269. NEXP, 8,
  270. SBV1, 8,
  271. SBV2, 8,
  272. Offset (0x7A),
  273. DSEN, 8,
  274. ECON, 8,
  275. GPIC, 8,
  276. CTYP, 8,
  277. L01C, 8,
  278. VFN0, 8,
  279. VFN1, 8,
  280. VFN2, 8,
  281. VFN3, 8,
  282. VFN4, 8,
  283. VFN5, 8,
  284. VFN6, 8,
  285. VFN7, 8,
  286. VFN8, 8,
  287. VFN9, 8,
  288. Offset (0x8F),
  289. ATMC, 8,
  290. PTMC, 8,
  291. ATRA, 8,
  292. PTRA, 8,
  293. PNHM, 32,
  294. TBAB, 32,
  295. TBAH, 32,
  296. RTIP, 8,
  297. TSOD, 8,
  298. ATPC, 8,
  299. PTPC, 8,
  300. PFLV, 8,
  301. BREV, 8,
  302. PDTS, 8,
  303. PKGA, 8,
  304. PAMT, 8,
  305. AC0F, 8,
  306. AC1F, 8,
  307. DTS3, 8,
  308. DTS4, 8,
  309. Offset (0xB0),
  310. LTR1, 8,
  311. LTR2, 8,
  312. LTR3, 8,
  313. LTR4, 8,
  314. LTR5, 8,
  315. LTR6, 8,
  316. LTR7, 8,
  317. LTR8, 8,
  318. OBF1, 8,
  319. OBF2, 8,
  320. OBF3, 8,
  321. OBF4, 8,
  322. OBF5, 8,
  323. OBF6, 8,
  324. OBF7, 8,
  325. OBF8, 8,
  326. XHCI, 8,
  327. XTUB, 32,
  328. XTUS, 32,
  329. XMPB, 32,
  330. DDRF, 8,
  331. RTD3, 8,
  332. PEP0, 8,
  333. PEP3, 8,
  334. DPTF, 8,
  335. SADE, 8,
  336. SACR, 8,
  337. SAHT, 8,
  338. PCHD, 8,
  339. PCHC, 8,
  340. PCHH, 8,
  341. CTDP, 8,
  342. LPMP, 8,
  343. LPMV, 8,
  344. ECEU, 8,
  345. TGFG, 16,
  346. MEMD, 8,
  347. MEMC, 8,
  348. MEMH, 8,
  349. FND1, 8,
  350. FND2, 8,
  351. AMBD, 8,
  352. AMAT, 8,
  353. AMPT, 8,
  354. AMCT, 8,
  355. AMHT, 8,
  356. SKDE, 8,
  357. SKAT, 8,
  358. SKPT, 8,
  359. SKCT, 8,
  360. SKHT, 8,
  361. EFDE, 8,
  362. EFAT, 8,
  363. EFPT, 8,
  364. EFCT, 8,
  365. EFHT, 8,
  366. VRDE, 8,
  367. VRAT, 8,
  368. VRPT, 8,
  369. VRCT, 8,
  370. VRHT, 8,
  371. DPAP, 8,
  372. DPPP, 8,
  373. DPCP, 8,
  374. DCMP, 8,
  375. TRTV, 8,
  376. LPOE, 8,
  377. LPOP, 8,
  378. LPOS, 8,
  379. LPOW, 8,
  380. LPER, 8,
  381. PPSZ, 32,
  382. DISE, 8,
  383. PFMA, 64,
  384. PFMS, 8,
  385. PFIA, 16,
  386. ICNF, 8,
  387. DSP0, 32,
  388. DSP1, 32,
  389. NFCE, 8,
  390. CODS, 8,
  391. SNHE, 8,
  392. S0ID, 8,
  393. CTDB, 8,
  394. Offset (0x207),
  395. PWRE, 8,
  396. PWRP, 8,
  397. XHPR, 8,
  398. SDS0, 8,
  399. SDS1, 16,
  400. SDS2, 8,
  401. SDS3, 8,
  402. SDS4, 8,
  403. SDS5, 8,
  404. Offset (0x212),
  405. RIC0, 8,
  406. PEPY, 8,
  407. DVS0, 8,
  408. DVS1, 8,
  409. DVS2, 8,
  410. DVS3, 8,
  411. GBSX, 8,
  412. IUBE, 8,
  413. IUCE, 8,
  414. IUDE, 8,
  415. ECNO, 8,
  416. AUDD, 16,
  417. DSPD, 16,
  418. IC0D, 16,
  419. IC1D, 16,
  420. IC1S, 16,
  421. VRRD, 16,
  422. PSCP, 8,
  423. RWAG, 8,
  424. I20D, 16,
  425. I21D, 16,
  426. Offset (0x231),
  427. RCG0, 8,
  428. ECDB, 8,
  429. P2ME, 8,
  430. SSH0, 16,
  431. SSL0, 16,
  432. SSD0, 16,
  433. FMH0, 16,
  434. FML0, 16,
  435. FMD0, 16,
  436. FPH0, 16,
  437. FPL0, 16,
  438. FPD0, 16,
  439. SSH1, 16,
  440. SSL1, 16,
  441. SSD1, 16,
  442. FMH1, 16,
  443. FML1, 16,
  444. FMD1, 16,
  445. FPH1, 16,
  446. FPL1, 16,
  447. FPD1, 16,
  448. M0C0, 16,
  449. M1C0, 16,
  450. M2C0, 16,
  451. M0C1, 16,
  452. M1C1, 16,
  453. M2C1, 16,
  454. M0C2, 16,
  455. M1C2, 16,
  456. M0C3, 16,
  457. M1C3, 16,
  458. M0C4, 16,
  459. M1C4, 16,
  460. M0C5, 16,
  461. M1C5, 16,
  462. TBSF, 8,
  463. GIRQ, 32,
  464. DMTP, 8,
  465. DMTD, 8,
  466. DMSH, 8,
  467. LANP, 8,
  468. Offset (0x27E),
  469. SHSB, 8,
  470. PLCS, 8,
  471. PLVL, 16,
  472. GN1E, 8,
  473. G1AT, 8,
  474. G1PT, 8,
  475. G1CT, 8,
  476. G1HT, 8,
  477. GN2E, 8,
  478. G2AT, 8,
  479. G2PT, 8,
  480. G2CT, 8,
  481. G2HT, 8,
  482. WWSD, 8,
  483. CVSD, 8,
  484. SSDD, 8,
  485. INLD, 8,
  486. IFAT, 8,
  487. IFPT, 8,
  488. IFCT, 8,
  489. IFHT, 8,
  490. DOSD, 8,
  491. USBH, 8,
  492. BCV4, 8,
  493. WTV0, 8,
  494. WTV1, 8,
  495. APFU, 8,
  496. SOHP, 8,
  497. NOHP, 8,
  498. TBSE, 8,
  499. WKFN, 8,
  500. PEPC, 16,
  501. VRSD, 16,
  502. PB1E, 8,
  503. WAND, 8,
  504. WWAT, 8,
  505. WWPT, 8,
  506. WWCT, 8,
  507. WWHT, 8,
  508. Offset (0x2AD),
  509. MPLT, 16,
  510. GR13, 8,
  511. SPST, 8,
  512. ECLP, 8
  513. }
  514.  
  515. Scope (_SB)
  516. {
  517. Name (PR00, Package (0x20)
  518. {
  519. Package (0x04)
  520. {
  521. 0x001FFFFF,
  522. Zero,
  523. LNKF,
  524. Zero
  525. },
  526.  
  527. Package (0x04)
  528. {
  529. 0x001FFFFF,
  530. One,
  531. LNKD,
  532. Zero
  533. },
  534.  
  535. Package (0x04)
  536. {
  537. 0x001FFFFF,
  538. 0x02,
  539. LNKC,
  540. Zero
  541. },
  542.  
  543. Package (0x04)
  544. {
  545. 0x001FFFFF,
  546. 0x03,
  547. LNKA,
  548. Zero
  549. },
  550.  
  551. Package (0x04)
  552. {
  553. 0x0014FFFF,
  554. Zero,
  555. LNKA,
  556. Zero
  557. },
  558.  
  559. Package (0x04)
  560. {
  561. 0x001DFFFF,
  562. Zero,
  563. LNKH,
  564. Zero
  565. },
  566.  
  567. Package (0x04)
  568. {
  569. 0x001AFFFF,
  570. Zero,
  571. LNKA,
  572. Zero
  573. },
  574.  
  575. Package (0x04)
  576. {
  577. 0x001BFFFF,
  578. Zero,
  579. LNKG,
  580. Zero
  581. },
  582.  
  583. Package (0x04)
  584. {
  585. 0x0019FFFF,
  586. Zero,
  587. LNKE,
  588. Zero
  589. },
  590.  
  591. Package (0x04)
  592. {
  593. 0x0016FFFF,
  594. Zero,
  595. LNKA,
  596. Zero
  597. },
  598.  
  599. Package (0x04)
  600. {
  601. 0x0016FFFF,
  602. One,
  603. LNKD,
  604. Zero
  605. },
  606.  
  607. Package (0x04)
  608. {
  609. 0x0016FFFF,
  610. 0x02,
  611. LNKC,
  612. Zero
  613. },
  614.  
  615. Package (0x04)
  616. {
  617. 0x0016FFFF,
  618. 0x03,
  619. LNKB,
  620. Zero
  621. },
  622.  
  623. Package (0x04)
  624. {
  625. 0x001CFFFF,
  626. Zero,
  627. LNKA,
  628. Zero
  629. },
  630.  
  631. Package (0x04)
  632. {
  633. 0x001CFFFF,
  634. One,
  635. LNKB,
  636. Zero
  637. },
  638.  
  639. Package (0x04)
  640. {
  641. 0x001CFFFF,
  642. 0x02,
  643. LNKC,
  644. Zero
  645. },
  646.  
  647. Package (0x04)
  648. {
  649. 0x001CFFFF,
  650. 0x03,
  651. LNKD,
  652. Zero
  653. },
  654.  
  655. Package (0x04)
  656. {
  657. 0x0015FFFF,
  658. One,
  659. LNKE,
  660. Zero
  661. },
  662.  
  663. Package (0x04)
  664. {
  665. 0x0015FFFF,
  666. 0x02,
  667. LNKF,
  668. Zero
  669. },
  670.  
  671. Package (0x04)
  672. {
  673. 0x0015FFFF,
  674. 0x03,
  675. LNKF,
  676. Zero
  677. },
  678.  
  679. Package (0x04)
  680. {
  681. 0x0017FFFF,
  682. Zero,
  683. LNKG,
  684. Zero
  685. },
  686.  
  687. Package (0x04)
  688. {
  689. 0x0013FFFF,
  690. Zero,
  691. LNKH,
  692. Zero
  693. },
  694.  
  695. Package (0x04)
  696. {
  697. 0x0001FFFF,
  698. Zero,
  699. LNKA,
  700. Zero
  701. },
  702.  
  703. Package (0x04)
  704. {
  705. 0x0001FFFF,
  706. One,
  707. LNKB,
  708. Zero
  709. },
  710.  
  711. Package (0x04)
  712. {
  713. 0x0001FFFF,
  714. 0x02,
  715. LNKC,
  716. Zero
  717. },
  718.  
  719. Package (0x04)
  720. {
  721. 0x0001FFFF,
  722. 0x03,
  723. LNKD,
  724. Zero
  725. },
  726.  
  727. Package (0x04)
  728. {
  729. 0x0003FFFF,
  730. Zero,
  731. LNKA,
  732. Zero
  733. },
  734.  
  735. Package (0x04)
  736. {
  737. 0x0004FFFF,
  738. Zero,
  739. LNKA,
  740. Zero
  741. },
  742.  
  743. Package (0x04)
  744. {
  745. 0x0004FFFF,
  746. One,
  747. LNKB,
  748. Zero
  749. },
  750.  
  751. Package (0x04)
  752. {
  753. 0x0004FFFF,
  754. 0x02,
  755. LNKC,
  756. Zero
  757. },
  758.  
  759. Package (0x04)
  760. {
  761. 0x0004FFFF,
  762. 0x03,
  763. LNKD,
  764. Zero
  765. },
  766.  
  767. Package (0x04)
  768. {
  769. 0x0002FFFF,
  770. Zero,
  771. LNKA,
  772. Zero
  773. }
  774. })
  775. Name (AR00, Package (0x20)
  776. {
  777. Package (0x04)
  778. {
  779. 0x001FFFFF,
  780. Zero,
  781. Zero,
  782. 0x15
  783. },
  784.  
  785. Package (0x04)
  786. {
  787. 0x001FFFFF,
  788. One,
  789. Zero,
  790. 0x13
  791. },
  792.  
  793. Package (0x04)
  794. {
  795. 0x001FFFFF,
  796. 0x02,
  797. Zero,
  798. 0x12
  799. },
  800.  
  801. Package (0x04)
  802. {
  803. 0x001FFFFF,
  804. 0x03,
  805. Zero,
  806. 0x10
  807. },
  808.  
  809. Package (0x04)
  810. {
  811. 0x0014FFFF,
  812. Zero,
  813. Zero,
  814. 0x10
  815. },
  816.  
  817. Package (0x04)
  818. {
  819. 0x001DFFFF,
  820. Zero,
  821. Zero,
  822. 0x17
  823. },
  824.  
  825. Package (0x04)
  826. {
  827. 0x001AFFFF,
  828. Zero,
  829. Zero,
  830. 0x10
  831. },
  832.  
  833. Package (0x04)
  834. {
  835. 0x001BFFFF,
  836. Zero,
  837. Zero,
  838. 0x16
  839. },
  840.  
  841. Package (0x04)
  842. {
  843. 0x0019FFFF,
  844. Zero,
  845. Zero,
  846. 0x14
  847. },
  848.  
  849. Package (0x04)
  850. {
  851. 0x0016FFFF,
  852. Zero,
  853. Zero,
  854. 0x10
  855. },
  856.  
  857. Package (0x04)
  858. {
  859. 0x0016FFFF,
  860. One,
  861. Zero,
  862. 0x13
  863. },
  864.  
  865. Package (0x04)
  866. {
  867. 0x0016FFFF,
  868. 0x02,
  869. Zero,
  870. 0x12
  871. },
  872.  
  873. Package (0x04)
  874. {
  875. 0x0016FFFF,
  876. 0x03,
  877. Zero,
  878. 0x11
  879. },
  880.  
  881. Package (0x04)
  882. {
  883. 0x001CFFFF,
  884. Zero,
  885. Zero,
  886. 0x10
  887. },
  888.  
  889. Package (0x04)
  890. {
  891. 0x001CFFFF,
  892. One,
  893. Zero,
  894. 0x11
  895. },
  896.  
  897. Package (0x04)
  898. {
  899. 0x001CFFFF,
  900. 0x02,
  901. Zero,
  902. 0x12
  903. },
  904.  
  905. Package (0x04)
  906. {
  907. 0x001CFFFF,
  908. 0x03,
  909. Zero,
  910. 0x13
  911. },
  912.  
  913. Package (0x04)
  914. {
  915. 0x0015FFFF,
  916. One,
  917. Zero,
  918. 0x14
  919. },
  920.  
  921. Package (0x04)
  922. {
  923. 0x0015FFFF,
  924. 0x02,
  925. Zero,
  926. 0x15
  927. },
  928.  
  929. Package (0x04)
  930. {
  931. 0x0015FFFF,
  932. 0x03,
  933. Zero,
  934. 0x15
  935. },
  936.  
  937. Package (0x04)
  938. {
  939. 0x0017FFFF,
  940. Zero,
  941. Zero,
  942. 0x16
  943. },
  944.  
  945. Package (0x04)
  946. {
  947. 0x0013FFFF,
  948. Zero,
  949. Zero,
  950. 0x17
  951. },
  952.  
  953. Package (0x04)
  954. {
  955. 0x0001FFFF,
  956. Zero,
  957. Zero,
  958. 0x10
  959. },
  960.  
  961. Package (0x04)
  962. {
  963. 0x0001FFFF,
  964. One,
  965. Zero,
  966. 0x11
  967. },
  968.  
  969. Package (0x04)
  970. {
  971. 0x0001FFFF,
  972. 0x02,
  973. Zero,
  974. 0x12
  975. },
  976.  
  977. Package (0x04)
  978. {
  979. 0x0001FFFF,
  980. 0x03,
  981. Zero,
  982. 0x13
  983. },
  984.  
  985. Package (0x04)
  986. {
  987. 0x0003FFFF,
  988. Zero,
  989. Zero,
  990. 0x10
  991. },
  992.  
  993. Package (0x04)
  994. {
  995. 0x0004FFFF,
  996. Zero,
  997. Zero,
  998. 0x10
  999. },
  1000.  
  1001. Package (0x04)
  1002. {
  1003. 0x0004FFFF,
  1004. One,
  1005. Zero,
  1006. 0x11
  1007. },
  1008.  
  1009. Package (0x04)
  1010. {
  1011. 0x0004FFFF,
  1012. 0x02,
  1013. Zero,
  1014. 0x12
  1015. },
  1016.  
  1017. Package (0x04)
  1018. {
  1019. 0x0004FFFF,
  1020. 0x03,
  1021. Zero,
  1022. 0x13
  1023. },
  1024.  
  1025. Package (0x04)
  1026. {
  1027. 0x0002FFFF,
  1028. Zero,
  1029. Zero,
  1030. 0x10
  1031. }
  1032. })
  1033. Name (PR04, Package (0x04)
  1034. {
  1035. Package (0x04)
  1036. {
  1037. 0xFFFF,
  1038. Zero,
  1039. LNKA,
  1040. Zero
  1041. },
  1042.  
  1043. Package (0x04)
  1044. {
  1045. 0xFFFF,
  1046. One,
  1047. LNKB,
  1048. Zero
  1049. },
  1050.  
  1051. Package (0x04)
  1052. {
  1053. 0xFFFF,
  1054. 0x02,
  1055. LNKC,
  1056. Zero
  1057. },
  1058.  
  1059. Package (0x04)
  1060. {
  1061. 0xFFFF,
  1062. 0x03,
  1063. LNKD,
  1064. Zero
  1065. }
  1066. })
  1067. Name (AR04, Package (0x04)
  1068. {
  1069. Package (0x04)
  1070. {
  1071. 0xFFFF,
  1072. Zero,
  1073. Zero,
  1074. 0x10
  1075. },
  1076.  
  1077. Package (0x04)
  1078. {
  1079. 0xFFFF,
  1080. One,
  1081. Zero,
  1082. 0x11
  1083. },
  1084.  
  1085. Package (0x04)
  1086. {
  1087. 0xFFFF,
  1088. 0x02,
  1089. Zero,
  1090. 0x12
  1091. },
  1092.  
  1093. Package (0x04)
  1094. {
  1095. 0xFFFF,
  1096. 0x03,
  1097. Zero,
  1098. 0x13
  1099. }
  1100. })
  1101. Name (PR05, Package (0x04)
  1102. {
  1103. Package (0x04)
  1104. {
  1105. 0xFFFF,
  1106. Zero,
  1107. LNKB,
  1108. Zero
  1109. },
  1110.  
  1111. Package (0x04)
  1112. {
  1113. 0xFFFF,
  1114. One,
  1115. LNKC,
  1116. Zero
  1117. },
  1118.  
  1119. Package (0x04)
  1120. {
  1121. 0xFFFF,
  1122. 0x02,
  1123. LNKD,
  1124. Zero
  1125. },
  1126.  
  1127. Package (0x04)
  1128. {
  1129. 0xFFFF,
  1130. 0x03,
  1131. LNKA,
  1132. Zero
  1133. }
  1134. })
  1135. Name (AR05, Package (0x04)
  1136. {
  1137. Package (0x04)
  1138. {
  1139. 0xFFFF,
  1140. Zero,
  1141. Zero,
  1142. 0x11
  1143. },
  1144.  
  1145. Package (0x04)
  1146. {
  1147. 0xFFFF,
  1148. One,
  1149. Zero,
  1150. 0x12
  1151. },
  1152.  
  1153. Package (0x04)
  1154. {
  1155. 0xFFFF,
  1156. 0x02,
  1157. Zero,
  1158. 0x13
  1159. },
  1160.  
  1161. Package (0x04)
  1162. {
  1163. 0xFFFF,
  1164. 0x03,
  1165. Zero,
  1166. 0x10
  1167. }
  1168. })
  1169. Name (PR06, Package (0x04)
  1170. {
  1171. Package (0x04)
  1172. {
  1173. 0xFFFF,
  1174. Zero,
  1175. LNKC,
  1176. Zero
  1177. },
  1178.  
  1179. Package (0x04)
  1180. {
  1181. 0xFFFF,
  1182. One,
  1183. LNKD,
  1184. Zero
  1185. },
  1186.  
  1187. Package (0x04)
  1188. {
  1189. 0xFFFF,
  1190. 0x02,
  1191. LNKA,
  1192. Zero
  1193. },
  1194.  
  1195. Package (0x04)
  1196. {
  1197. 0xFFFF,
  1198. 0x03,
  1199. LNKB,
  1200. Zero
  1201. }
  1202. })
  1203. Name (AR06, Package (0x04)
  1204. {
  1205. Package (0x04)
  1206. {
  1207. 0xFFFF,
  1208. Zero,
  1209. Zero,
  1210. 0x12
  1211. },
  1212.  
  1213. Package (0x04)
  1214. {
  1215. 0xFFFF,
  1216. One,
  1217. Zero,
  1218. 0x13
  1219. },
  1220.  
  1221. Package (0x04)
  1222. {
  1223. 0xFFFF,
  1224. 0x02,
  1225. Zero,
  1226. 0x10
  1227. },
  1228.  
  1229. Package (0x04)
  1230. {
  1231. 0xFFFF,
  1232. 0x03,
  1233. Zero,
  1234. 0x11
  1235. }
  1236. })
  1237. Name (PR07, Package (0x04)
  1238. {
  1239. Package (0x04)
  1240. {
  1241. 0xFFFF,
  1242. Zero,
  1243. LNKD,
  1244. Zero
  1245. },
  1246.  
  1247. Package (0x04)
  1248. {
  1249. 0xFFFF,
  1250. One,
  1251. LNKA,
  1252. Zero
  1253. },
  1254.  
  1255. Package (0x04)
  1256. {
  1257. 0xFFFF,
  1258. 0x02,
  1259. LNKB,
  1260. Zero
  1261. },
  1262.  
  1263. Package (0x04)
  1264. {
  1265. 0xFFFF,
  1266. 0x03,
  1267. LNKC,
  1268. Zero
  1269. }
  1270. })
  1271. Name (AR07, Package (0x04)
  1272. {
  1273. Package (0x04)
  1274. {
  1275. 0xFFFF,
  1276. Zero,
  1277. Zero,
  1278. 0x13
  1279. },
  1280.  
  1281. Package (0x04)
  1282. {
  1283. 0xFFFF,
  1284. One,
  1285. Zero,
  1286. 0x10
  1287. },
  1288.  
  1289. Package (0x04)
  1290. {
  1291. 0xFFFF,
  1292. 0x02,
  1293. Zero,
  1294. 0x11
  1295. },
  1296.  
  1297. Package (0x04)
  1298. {
  1299. 0xFFFF,
  1300. 0x03,
  1301. Zero,
  1302. 0x12
  1303. }
  1304. })
  1305. Name (PR08, Package (0x04)
  1306. {
  1307. Package (0x04)
  1308. {
  1309. 0xFFFF,
  1310. Zero,
  1311. LNKA,
  1312. Zero
  1313. },
  1314.  
  1315. Package (0x04)
  1316. {
  1317. 0xFFFF,
  1318. One,
  1319. LNKB,
  1320. Zero
  1321. },
  1322.  
  1323. Package (0x04)
  1324. {
  1325. 0xFFFF,
  1326. 0x02,
  1327. LNKC,
  1328. Zero
  1329. },
  1330.  
  1331. Package (0x04)
  1332. {
  1333. 0xFFFF,
  1334. 0x03,
  1335. LNKD,
  1336. Zero
  1337. }
  1338. })
  1339. Name (AR08, Package (0x04)
  1340. {
  1341. Package (0x04)
  1342. {
  1343. 0xFFFF,
  1344. Zero,
  1345. Zero,
  1346. 0x10
  1347. },
  1348.  
  1349. Package (0x04)
  1350. {
  1351. 0xFFFF,
  1352. One,
  1353. Zero,
  1354. 0x11
  1355. },
  1356.  
  1357. Package (0x04)
  1358. {
  1359. 0xFFFF,
  1360. 0x02,
  1361. Zero,
  1362. 0x12
  1363. },
  1364.  
  1365. Package (0x04)
  1366. {
  1367. 0xFFFF,
  1368. 0x03,
  1369. Zero,
  1370. 0x13
  1371. }
  1372. })
  1373. Name (PR09, Package (0x04)
  1374. {
  1375. Package (0x04)
  1376. {
  1377. 0xFFFF,
  1378. Zero,
  1379. LNKB,
  1380. Zero
  1381. },
  1382.  
  1383. Package (0x04)
  1384. {
  1385. 0xFFFF,
  1386. One,
  1387. LNKC,
  1388. Zero
  1389. },
  1390.  
  1391. Package (0x04)
  1392. {
  1393. 0xFFFF,
  1394. 0x02,
  1395. LNKD,
  1396. Zero
  1397. },
  1398.  
  1399. Package (0x04)
  1400. {
  1401. 0xFFFF,
  1402. 0x03,
  1403. LNKA,
  1404. Zero
  1405. }
  1406. })
  1407. Name (AR09, Package (0x04)
  1408. {
  1409. Package (0x04)
  1410. {
  1411. 0xFFFF,
  1412. Zero,
  1413. Zero,
  1414. 0x11
  1415. },
  1416.  
  1417. Package (0x04)
  1418. {
  1419. 0xFFFF,
  1420. One,
  1421. Zero,
  1422. 0x12
  1423. },
  1424.  
  1425. Package (0x04)
  1426. {
  1427. 0xFFFF,
  1428. 0x02,
  1429. Zero,
  1430. 0x13
  1431. },
  1432.  
  1433. Package (0x04)
  1434. {
  1435. 0xFFFF,
  1436. 0x03,
  1437. Zero,
  1438. 0x10
  1439. }
  1440. })
  1441. Name (PR0E, Package (0x04)
  1442. {
  1443. Package (0x04)
  1444. {
  1445. 0xFFFF,
  1446. Zero,
  1447. LNKC,
  1448. Zero
  1449. },
  1450.  
  1451. Package (0x04)
  1452. {
  1453. 0xFFFF,
  1454. One,
  1455. LNKD,
  1456. Zero
  1457. },
  1458.  
  1459. Package (0x04)
  1460. {
  1461. 0xFFFF,
  1462. 0x02,
  1463. LNKA,
  1464. Zero
  1465. },
  1466.  
  1467. Package (0x04)
  1468. {
  1469. 0xFFFF,
  1470. 0x03,
  1471. LNKB,
  1472. Zero
  1473. }
  1474. })
  1475. Name (AR0E, Package (0x04)
  1476. {
  1477. Package (0x04)
  1478. {
  1479. 0xFFFF,
  1480. Zero,
  1481. Zero,
  1482. 0x12
  1483. },
  1484.  
  1485. Package (0x04)
  1486. {
  1487. 0xFFFF,
  1488. One,
  1489. Zero,
  1490. 0x13
  1491. },
  1492.  
  1493. Package (0x04)
  1494. {
  1495. 0xFFFF,
  1496. 0x02,
  1497. Zero,
  1498. 0x10
  1499. },
  1500.  
  1501. Package (0x04)
  1502. {
  1503. 0xFFFF,
  1504. 0x03,
  1505. Zero,
  1506. 0x11
  1507. }
  1508. })
  1509. Name (PR0F, Package (0x04)
  1510. {
  1511. Package (0x04)
  1512. {
  1513. 0xFFFF,
  1514. Zero,
  1515. LNKD,
  1516. Zero
  1517. },
  1518.  
  1519. Package (0x04)
  1520. {
  1521. 0xFFFF,
  1522. One,
  1523. LNKA,
  1524. Zero
  1525. },
  1526.  
  1527. Package (0x04)
  1528. {
  1529. 0xFFFF,
  1530. 0x02,
  1531. LNKB,
  1532. Zero
  1533. },
  1534.  
  1535. Package (0x04)
  1536. {
  1537. 0xFFFF,
  1538. 0x03,
  1539. LNKC,
  1540. Zero
  1541. }
  1542. })
  1543. Name (AR0F, Package (0x04)
  1544. {
  1545. Package (0x04)
  1546. {
  1547. 0xFFFF,
  1548. Zero,
  1549. Zero,
  1550. 0x13
  1551. },
  1552.  
  1553. Package (0x04)
  1554. {
  1555. 0xFFFF,
  1556. One,
  1557. Zero,
  1558. 0x10
  1559. },
  1560.  
  1561. Package (0x04)
  1562. {
  1563. 0xFFFF,
  1564. 0x02,
  1565. Zero,
  1566. 0x11
  1567. },
  1568.  
  1569. Package (0x04)
  1570. {
  1571. 0xFFFF,
  1572. 0x03,
  1573. Zero,
  1574. 0x12
  1575. }
  1576. })
  1577. Name (PR02, Package (0x04)
  1578. {
  1579. Package (0x04)
  1580. {
  1581. 0xFFFF,
  1582. Zero,
  1583. LNKA,
  1584. Zero
  1585. },
  1586.  
  1587. Package (0x04)
  1588. {
  1589. 0xFFFF,
  1590. One,
  1591. LNKB,
  1592. Zero
  1593. },
  1594.  
  1595. Package (0x04)
  1596. {
  1597. 0xFFFF,
  1598. 0x02,
  1599. LNKC,
  1600. Zero
  1601. },
  1602.  
  1603. Package (0x04)
  1604. {
  1605. 0xFFFF,
  1606. 0x03,
  1607. LNKD,
  1608. Zero
  1609. }
  1610. })
  1611. Name (AR02, Package (0x04)
  1612. {
  1613. Package (0x04)
  1614. {
  1615. 0xFFFF,
  1616. Zero,
  1617. Zero,
  1618. 0x10
  1619. },
  1620.  
  1621. Package (0x04)
  1622. {
  1623. 0xFFFF,
  1624. One,
  1625. Zero,
  1626. 0x11
  1627. },
  1628.  
  1629. Package (0x04)
  1630. {
  1631. 0xFFFF,
  1632. 0x02,
  1633. Zero,
  1634. 0x12
  1635. },
  1636.  
  1637. Package (0x04)
  1638. {
  1639. 0xFFFF,
  1640. 0x03,
  1641. Zero,
  1642. 0x13
  1643. }
  1644. })
  1645. Name (PR0A, Package (0x04)
  1646. {
  1647. Package (0x04)
  1648. {
  1649. 0xFFFF,
  1650. Zero,
  1651. LNKB,
  1652. Zero
  1653. },
  1654.  
  1655. Package (0x04)
  1656. {
  1657. 0xFFFF,
  1658. One,
  1659. LNKC,
  1660. Zero
  1661. },
  1662.  
  1663. Package (0x04)
  1664. {
  1665. 0xFFFF,
  1666. 0x02,
  1667. LNKD,
  1668. Zero
  1669. },
  1670.  
  1671. Package (0x04)
  1672. {
  1673. 0xFFFF,
  1674. 0x03,
  1675. LNKA,
  1676. Zero
  1677. }
  1678. })
  1679. Name (AR0A, Package (0x04)
  1680. {
  1681. Package (0x04)
  1682. {
  1683. 0xFFFF,
  1684. Zero,
  1685. Zero,
  1686. 0x11
  1687. },
  1688.  
  1689. Package (0x04)
  1690. {
  1691. 0xFFFF,
  1692. One,
  1693. Zero,
  1694. 0x12
  1695. },
  1696.  
  1697. Package (0x04)
  1698. {
  1699. 0xFFFF,
  1700. 0x02,
  1701. Zero,
  1702. 0x13
  1703. },
  1704.  
  1705. Package (0x04)
  1706. {
  1707. 0xFFFF,
  1708. 0x03,
  1709. Zero,
  1710. 0x10
  1711. }
  1712. })
  1713. Name (PR0B, Package (0x04)
  1714. {
  1715. Package (0x04)
  1716. {
  1717. 0xFFFF,
  1718. Zero,
  1719. LNKC,
  1720. Zero
  1721. },
  1722.  
  1723. Package (0x04)
  1724. {
  1725. 0xFFFF,
  1726. One,
  1727. LNKD,
  1728. Zero
  1729. },
  1730.  
  1731. Package (0x04)
  1732. {
  1733. 0xFFFF,
  1734. 0x02,
  1735. LNKA,
  1736. Zero
  1737. },
  1738.  
  1739. Package (0x04)
  1740. {
  1741. 0xFFFF,
  1742. 0x03,
  1743. LNKB,
  1744. Zero
  1745. }
  1746. })
  1747. Name (AR0B, Package (0x04)
  1748. {
  1749. Package (0x04)
  1750. {
  1751. 0xFFFF,
  1752. Zero,
  1753. Zero,
  1754. 0x12
  1755. },
  1756.  
  1757. Package (0x04)
  1758. {
  1759. 0xFFFF,
  1760. One,
  1761. Zero,
  1762. 0x13
  1763. },
  1764.  
  1765. Package (0x04)
  1766. {
  1767. 0xFFFF,
  1768. 0x02,
  1769. Zero,
  1770. 0x10
  1771. },
  1772.  
  1773. Package (0x04)
  1774. {
  1775. 0xFFFF,
  1776. 0x03,
  1777. Zero,
  1778. 0x11
  1779. }
  1780. })
  1781. Name (PRSA, ResourceTemplate ()
  1782. {
  1783. IRQ (Level, ActiveLow, Shared, )
  1784. {3,4,5,6,10,11,12,14,15}
  1785. })
  1786. Alias (PRSA, PRSB)
  1787. Alias (PRSA, PRSC)
  1788. Alias (PRSA, PRSD)
  1789. Alias (PRSA, PRSE)
  1790. Alias (PRSA, PRSF)
  1791. Alias (PRSA, PRSG)
  1792. Alias (PRSA, PRSH)
  1793. Device (PCI0)
  1794. {
  1795. Name (_HID, EisaId ("PNP0A08")) // _HID: Hardware ID
  1796. Name (_CID, EisaId ("PNP0A03")) // _CID: Compatible ID
  1797. Name (_ADR, Zero) // _ADR: Address
  1798. Method (^BN00, 0, NotSerialized)
  1799. {
  1800. Return (Zero)
  1801. }
  1802.  
  1803. Method (_BBN, 0, NotSerialized) // _BBN: BIOS Bus Number
  1804. {
  1805. Return (BN00 ())
  1806. }
  1807.  
  1808. Name (_UID, Zero) // _UID: Unique ID
  1809. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  1810. {
  1811. If (PICM)
  1812. {
  1813. Return (AR00 ())
  1814. }
  1815.  
  1816. Return (PR00 ())
  1817. }
  1818.  
  1819. OperationRegion (HBUS, PCI_Config, Zero, 0x0100)
  1820. Field (HBUS, DWordAcc, NoLock, Preserve)
  1821. {
  1822. Offset (0x40),
  1823. EPEN, 1,
  1824. , 11,
  1825. EPBR, 20,
  1826. Offset (0x48),
  1827. MHEN, 1,
  1828. , 14,
  1829. MHBR, 17,
  1830. Offset (0x50),
  1831. GCLK, 1,
  1832. Offset (0x54),
  1833. D0EN, 1,
  1834. D1F2, 1,
  1835. D1F1, 1,
  1836. D1F0, 1,
  1837. Offset (0x60),
  1838. PXEN, 1,
  1839. PXSZ, 2,
  1840. , 23,
  1841. PXBR, 6,
  1842. Offset (0x68),
  1843. DIEN, 1,
  1844. , 11,
  1845. DIBR, 20,
  1846. Offset (0x70),
  1847. , 20,
  1848. MEBR, 12,
  1849. Offset (0x80),
  1850. , 4,
  1851. PM0H, 2,
  1852. Offset (0x81),
  1853. PM1L, 2,
  1854. , 2,
  1855. PM1H, 2,
  1856. Offset (0x82),
  1857. PM2L, 2,
  1858. , 2,
  1859. PM2H, 2,
  1860. Offset (0x83),
  1861. PM3L, 2,
  1862. , 2,
  1863. PM3H, 2,
  1864. Offset (0x84),
  1865. PM4L, 2,
  1866. , 2,
  1867. PM4H, 2,
  1868. Offset (0x85),
  1869. PM5L, 2,
  1870. , 2,
  1871. PM5H, 2,
  1872. Offset (0x86),
  1873. PM6L, 2,
  1874. , 2,
  1875. PM6H, 2,
  1876. Offset (0x87),
  1877. Offset (0xA8),
  1878. , 20,
  1879. TUUD, 19,
  1880. Offset (0xBC),
  1881. , 20,
  1882. TLUD, 12,
  1883. Offset (0xC8),
  1884. , 7,
  1885. HTSE, 1
  1886. }
  1887.  
  1888. OperationRegion (MCHT, SystemMemory, 0xFED10000, 0x1100)
  1889. Name (BUF0, ResourceTemplate ()
  1890. {
  1891. WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
  1892. 0x0000, // Granularity
  1893. 0x0000, // Range Minimum
  1894. 0x00FF, // Range Maximum
  1895. 0x0000, // Translation Offset
  1896. 0x0100, // Length
  1897. ,, _Y00)
  1898. DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  1899. 0x00000000, // Granularity
  1900. 0x00000000, // Range Minimum
  1901. 0x00000CF7, // Range Maximum
  1902. 0x00000000, // Translation Offset
  1903. 0x00000CF8, // Length
  1904. ,, , TypeStatic)
  1905. IO (Decode16,
  1906. 0x0CF8, // Range Minimum
  1907. 0x0CF8, // Range Maximum
  1908. 0x01, // Alignment
  1909. 0x08, // Length
  1910. )
  1911. DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  1912. 0x00000000, // Granularity
  1913. 0x00000D00, // Range Minimum
  1914. 0x0000FFFF, // Range Maximum
  1915. 0x00000000, // Translation Offset
  1916. 0x0000F300, // Length
  1917. ,, , TypeStatic)
  1918. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1919. 0x00000000, // Granularity
  1920. 0x000A0000, // Range Minimum
  1921. 0x000BFFFF, // Range Maximum
  1922. 0x00000000, // Translation Offset
  1923. 0x00020000, // Length
  1924. ,, , AddressRangeMemory, TypeStatic)
  1925. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1926. 0x00000000, // Granularity
  1927. 0x000C0000, // Range Minimum
  1928. 0x000C3FFF, // Range Maximum
  1929. 0x00000000, // Translation Offset
  1930. 0x00004000, // Length
  1931. ,, _Y01, AddressRangeMemory, TypeStatic)
  1932. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1933. 0x00000000, // Granularity
  1934. 0x000C4000, // Range Minimum
  1935. 0x000C7FFF, // Range Maximum
  1936. 0x00000000, // Translation Offset
  1937. 0x00004000, // Length
  1938. ,, _Y02, AddressRangeMemory, TypeStatic)
  1939. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1940. 0x00000000, // Granularity
  1941. 0x000C8000, // Range Minimum
  1942. 0x000CBFFF, // Range Maximum
  1943. 0x00000000, // Translation Offset
  1944. 0x00004000, // Length
  1945. ,, _Y03, AddressRangeMemory, TypeStatic)
  1946. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1947. 0x00000000, // Granularity
  1948. 0x000CC000, // Range Minimum
  1949. 0x000CFFFF, // Range Maximum
  1950. 0x00000000, // Translation Offset
  1951. 0x00004000, // Length
  1952. ,, _Y04, AddressRangeMemory, TypeStatic)
  1953. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1954. 0x00000000, // Granularity
  1955. 0x000D0000, // Range Minimum
  1956. 0x000D3FFF, // Range Maximum
  1957. 0x00000000, // Translation Offset
  1958. 0x00004000, // Length
  1959. ,, _Y05, AddressRangeMemory, TypeStatic)
  1960. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1961. 0x00000000, // Granularity
  1962. 0x000D4000, // Range Minimum
  1963. 0x000D7FFF, // Range Maximum
  1964. 0x00000000, // Translation Offset
  1965. 0x00004000, // Length
  1966. ,, _Y06, AddressRangeMemory, TypeStatic)
  1967. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1968. 0x00000000, // Granularity
  1969. 0x000D8000, // Range Minimum
  1970. 0x000DBFFF, // Range Maximum
  1971. 0x00000000, // Translation Offset
  1972. 0x00004000, // Length
  1973. ,, _Y07, AddressRangeMemory, TypeStatic)
  1974. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1975. 0x00000000, // Granularity
  1976. 0x000DC000, // Range Minimum
  1977. 0x000DFFFF, // Range Maximum
  1978. 0x00000000, // Translation Offset
  1979. 0x00004000, // Length
  1980. ,, _Y08, AddressRangeMemory, TypeStatic)
  1981. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1982. 0x00000000, // Granularity
  1983. 0x000E0000, // Range Minimum
  1984. 0x000E3FFF, // Range Maximum
  1985. 0x00000000, // Translation Offset
  1986. 0x00004000, // Length
  1987. ,, _Y09, AddressRangeMemory, TypeStatic)
  1988. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1989. 0x00000000, // Granularity
  1990. 0x000E4000, // Range Minimum
  1991. 0x000E7FFF, // Range Maximum
  1992. 0x00000000, // Translation Offset
  1993. 0x00004000, // Length
  1994. ,, _Y0A, AddressRangeMemory, TypeStatic)
  1995. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1996. 0x00000000, // Granularity
  1997. 0x000E8000, // Range Minimum
  1998. 0x000EBFFF, // Range Maximum
  1999. 0x00000000, // Translation Offset
  2000. 0x00004000, // Length
  2001. ,, _Y0B, AddressRangeMemory, TypeStatic)
  2002. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2003. 0x00000000, // Granularity
  2004. 0x000EC000, // Range Minimum
  2005. 0x000EFFFF, // Range Maximum
  2006. 0x00000000, // Translation Offset
  2007. 0x00004000, // Length
  2008. ,, _Y0C, AddressRangeMemory, TypeStatic)
  2009. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2010. 0x00000000, // Granularity
  2011. 0x000F0000, // Range Minimum
  2012. 0x000FFFFF, // Range Maximum
  2013. 0x00000000, // Translation Offset
  2014. 0x00010000, // Length
  2015. ,, _Y0D, AddressRangeMemory, TypeStatic)
  2016. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2017. 0x00000000, // Granularity
  2018. 0x00000000, // Range Minimum
  2019. 0xFEAFFFFF, // Range Maximum
  2020. 0x00000000, // Translation Offset
  2021. 0xFEB00000, // Length
  2022. ,, _Y0E, AddressRangeMemory, TypeStatic)
  2023. })
  2024. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2025. {
  2026. CreateWordField (BUF0, \_SB.PCI0._Y00._MAX, PBMX) // _MAX: Maximum Base Address
  2027. Store (Subtract (ShiftRight (PELN, 0x14), 0x02), PBMX)
  2028. CreateWordField (BUF0, \_SB.PCI0._Y00._LEN, PBLN) // _LEN: Length
  2029. Store (Subtract (ShiftRight (PELN, 0x14), One), PBLN)
  2030. If (PM1L)
  2031. {
  2032. CreateDWordField (BUF0, \_SB.PCI0._Y01._LEN, C0LN) // _LEN: Length
  2033. Store (Zero, C0LN)
  2034. }
  2035.  
  2036. If (LEqual (PM1L, One))
  2037. {
  2038. CreateBitField (BUF0, \_SB.PCI0._Y01._RW, C0RW) // _RW_: Read-Write Status
  2039. Store (Zero, C0RW)
  2040. }
  2041.  
  2042. If (PM1H)
  2043. {
  2044. CreateDWordField (BUF0, \_SB.PCI0._Y02._LEN, C4LN) // _LEN: Length
  2045. Store (Zero, C4LN)
  2046. }
  2047.  
  2048. If (LEqual (PM1H, One))
  2049. {
  2050. CreateBitField (BUF0, \_SB.PCI0._Y02._RW, C4RW) // _RW_: Read-Write Status
  2051. Store (Zero, C4RW)
  2052. }
  2053.  
  2054. If (PM2L)
  2055. {
  2056. CreateDWordField (BUF0, \_SB.PCI0._Y03._LEN, C8LN) // _LEN: Length
  2057. Store (Zero, C8LN)
  2058. }
  2059.  
  2060. If (LEqual (PM2L, One))
  2061. {
  2062. CreateBitField (BUF0, \_SB.PCI0._Y03._RW, C8RW) // _RW_: Read-Write Status
  2063. Store (Zero, C8RW)
  2064. }
  2065.  
  2066. If (PM2H)
  2067. {
  2068. CreateDWordField (BUF0, \_SB.PCI0._Y04._LEN, CCLN) // _LEN: Length
  2069. Store (Zero, CCLN)
  2070. }
  2071.  
  2072. If (LEqual (PM2H, One))
  2073. {
  2074. CreateBitField (BUF0, \_SB.PCI0._Y04._RW, CCRW) // _RW_: Read-Write Status
  2075. Store (Zero, CCRW)
  2076. }
  2077.  
  2078. If (PM3L)
  2079. {
  2080. CreateDWordField (BUF0, \_SB.PCI0._Y05._LEN, D0LN) // _LEN: Length
  2081. Store (Zero, D0LN)
  2082. }
  2083.  
  2084. If (LEqual (PM3L, One))
  2085. {
  2086. CreateBitField (BUF0, \_SB.PCI0._Y05._RW, D0RW) // _RW_: Read-Write Status
  2087. Store (Zero, D0RW)
  2088. }
  2089.  
  2090. If (PM3H)
  2091. {
  2092. CreateDWordField (BUF0, \_SB.PCI0._Y06._LEN, D4LN) // _LEN: Length
  2093. Store (Zero, D4LN)
  2094. }
  2095.  
  2096. If (LEqual (PM3H, One))
  2097. {
  2098. CreateBitField (BUF0, \_SB.PCI0._Y06._RW, D4RW) // _RW_: Read-Write Status
  2099. Store (Zero, D4RW)
  2100. }
  2101.  
  2102. If (PM4L)
  2103. {
  2104. CreateDWordField (BUF0, \_SB.PCI0._Y07._LEN, D8LN) // _LEN: Length
  2105. Store (Zero, D8LN)
  2106. }
  2107.  
  2108. If (LEqual (PM4L, One))
  2109. {
  2110. CreateBitField (BUF0, \_SB.PCI0._Y07._RW, D8RW) // _RW_: Read-Write Status
  2111. Store (Zero, D8RW)
  2112. }
  2113.  
  2114. If (PM4H)
  2115. {
  2116. CreateDWordField (BUF0, \_SB.PCI0._Y08._LEN, DCLN) // _LEN: Length
  2117. Store (Zero, DCLN)
  2118. }
  2119.  
  2120. If (LEqual (PM4H, One))
  2121. {
  2122. CreateBitField (BUF0, \_SB.PCI0._Y08._RW, DCRW) // _RW_: Read-Write Status
  2123. Store (Zero, DCRW)
  2124. }
  2125.  
  2126. If (PM5L)
  2127. {
  2128. CreateDWordField (BUF0, \_SB.PCI0._Y09._LEN, E0LN) // _LEN: Length
  2129. Store (Zero, E0LN)
  2130. }
  2131.  
  2132. If (LEqual (PM5L, One))
  2133. {
  2134. CreateBitField (BUF0, \_SB.PCI0._Y09._RW, E0RW) // _RW_: Read-Write Status
  2135. Store (Zero, E0RW)
  2136. }
  2137.  
  2138. If (PM5H)
  2139. {
  2140. CreateDWordField (BUF0, \_SB.PCI0._Y0A._LEN, E4LN) // _LEN: Length
  2141. Store (Zero, E4LN)
  2142. }
  2143.  
  2144. If (LEqual (PM5H, One))
  2145. {
  2146. CreateBitField (BUF0, \_SB.PCI0._Y0A._RW, E4RW) // _RW_: Read-Write Status
  2147. Store (Zero, E4RW)
  2148. }
  2149.  
  2150. If (PM6L)
  2151. {
  2152. CreateDWordField (BUF0, \_SB.PCI0._Y0B._LEN, E8LN) // _LEN: Length
  2153. Store (Zero, E8LN)
  2154. }
  2155.  
  2156. If (LEqual (PM6L, One))
  2157. {
  2158. CreateBitField (BUF0, \_SB.PCI0._Y0B._RW, E8RW) // _RW_: Read-Write Status
  2159. Store (Zero, E8RW)
  2160. }
  2161.  
  2162. If (PM6H)
  2163. {
  2164. CreateDWordField (BUF0, \_SB.PCI0._Y0C._LEN, ECLN) // _LEN: Length
  2165. Store (Zero, ECLN)
  2166. }
  2167.  
  2168. If (LEqual (PM6H, One))
  2169. {
  2170. CreateBitField (BUF0, \_SB.PCI0._Y0C._RW, ECRW) // _RW_: Read-Write Status
  2171. Store (Zero, ECRW)
  2172. }
  2173.  
  2174. If (PM0H)
  2175. {
  2176. CreateDWordField (BUF0, \_SB.PCI0._Y0D._LEN, F0LN) // _LEN: Length
  2177. Store (Zero, F0LN)
  2178. }
  2179.  
  2180. If (LEqual (PM0H, One))
  2181. {
  2182. CreateBitField (BUF0, \_SB.PCI0._Y0D._RW, F0RW) // _RW_: Read-Write Status
  2183. Store (Zero, F0RW)
  2184. }
  2185.  
  2186. CreateDWordField (BUF0, \_SB.PCI0._Y0E._MIN, M1MN) // _MIN: Minimum Base Address
  2187. CreateDWordField (BUF0, \_SB.PCI0._Y0E._MAX, M1MX) // _MAX: Maximum Base Address
  2188. CreateDWordField (BUF0, \_SB.PCI0._Y0E._LEN, M1LN) // _LEN: Length
  2189. ShiftLeft (TLUD, 0x14, M1MN)
  2190. Add (Subtract (M1MX, M1MN), One, M1LN)
  2191. Return (BUF0)
  2192. }
  2193.  
  2194. Name (GUID, Buffer (0x10)
  2195. {
  2196. /* 0000 */ 0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40,
  2197. /* 0008 */ 0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66
  2198. })
  2199. Name (SUPP, Zero)
  2200. Name (CTRL, Zero)
  2201. Name (XCNT, Zero)
  2202. Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
  2203. {
  2204. Store (Arg3, Local0)
  2205. CreateDWordField (Local0, Zero, CDW1)
  2206. CreateDWordField (Local0, 0x04, CDW2)
  2207. CreateDWordField (Local0, 0x08, CDW3)
  2208. If (^XHC.CUID (Arg0))
  2209. {
  2210. Return (^XHC.POSC (Arg1, Arg2, Arg3))
  2211. }
  2212. Else
  2213. {
  2214. If (LGreaterEqual (OSYS, 0x07DC))
  2215. {
  2216. If (LEqual (XCNT, Zero))
  2217. {
  2218. ^XHC.XSEL ()
  2219. Increment (XCNT)
  2220. }
  2221. }
  2222. }
  2223.  
  2224. If (LEqual (Arg0, GUID))
  2225. {
  2226. Store (CDW2, SUPP)
  2227. Store (CDW3, CTRL)
  2228. If (LEqual (NEXP, Zero))
  2229. {
  2230. And (CTRL, 0xFFFFFFF8, CTRL)
  2231. }
  2232.  
  2233. If (NEXP)
  2234. {
  2235. If (Not (And (CDW1, One)))
  2236. {
  2237. If (And (CTRL, One))
  2238. {
  2239. NHPG ()
  2240. }
  2241.  
  2242. If (And (CTRL, 0x04))
  2243. {
  2244. NPME ()
  2245. }
  2246. }
  2247. }
  2248.  
  2249. If (LNotEqual (Arg1, One))
  2250. {
  2251. Or (CDW1, 0x08, CDW1)
  2252. }
  2253.  
  2254. If (LNotEqual (CDW3, CTRL))
  2255. {
  2256. Or (CDW1, 0x10, CDW1)
  2257. }
  2258.  
  2259. Store (CTRL, CDW3)
  2260. Store (CTRL, OSCC)
  2261. Return (Local0)
  2262. }
  2263. Else
  2264. {
  2265. Or (CDW1, 0x04, CDW1)
  2266. Return (Local0)
  2267. }
  2268. }
  2269.  
  2270. Scope (\_SB.PCI0)
  2271. {
  2272. Method (AR00, 0, NotSerialized)
  2273. {
  2274. Return (^^AR00)
  2275. }
  2276.  
  2277. Method (PR00, 0, NotSerialized)
  2278. {
  2279. Return (^^PR00)
  2280. }
  2281.  
  2282. Method (AR02, 0, NotSerialized)
  2283. {
  2284. Return (^^AR02)
  2285. }
  2286.  
  2287. Method (PR02, 0, NotSerialized)
  2288. {
  2289. Return (^^PR02)
  2290. }
  2291.  
  2292. Method (AR04, 0, NotSerialized)
  2293. {
  2294. Return (^^AR04)
  2295. }
  2296.  
  2297. Method (PR04, 0, NotSerialized)
  2298. {
  2299. Return (^^PR04)
  2300. }
  2301.  
  2302. Method (AR05, 0, NotSerialized)
  2303. {
  2304. Return (^^AR05)
  2305. }
  2306.  
  2307. Method (PR05, 0, NotSerialized)
  2308. {
  2309. Return (^^PR05)
  2310. }
  2311.  
  2312. Method (AR06, 0, NotSerialized)
  2313. {
  2314. Return (^^AR06)
  2315. }
  2316.  
  2317. Method (PR06, 0, NotSerialized)
  2318. {
  2319. Return (^^PR06)
  2320. }
  2321.  
  2322. Method (AR07, 0, NotSerialized)
  2323. {
  2324. Return (^^AR07)
  2325. }
  2326.  
  2327. Method (PR07, 0, NotSerialized)
  2328. {
  2329. Return (^^PR07)
  2330. }
  2331.  
  2332. Method (AR08, 0, NotSerialized)
  2333. {
  2334. Return (^^AR08)
  2335. }
  2336.  
  2337. Method (PR08, 0, NotSerialized)
  2338. {
  2339. Return (^^PR08)
  2340. }
  2341.  
  2342. Method (AR09, 0, NotSerialized)
  2343. {
  2344. Return (^^AR09)
  2345. }
  2346.  
  2347. Method (PR09, 0, NotSerialized)
  2348. {
  2349. Return (^^PR09)
  2350. }
  2351.  
  2352. Method (AR0E, 0, NotSerialized)
  2353. {
  2354. Return (^^AR0E)
  2355. }
  2356.  
  2357. Method (PR0E, 0, NotSerialized)
  2358. {
  2359. Return (^^PR0E)
  2360. }
  2361.  
  2362. Method (AR0F, 0, NotSerialized)
  2363. {
  2364. Return (^^AR0F)
  2365. }
  2366.  
  2367. Method (PR0F, 0, NotSerialized)
  2368. {
  2369. Return (^^PR0F)
  2370. }
  2371.  
  2372. Method (AR0A, 0, NotSerialized)
  2373. {
  2374. Return (^^AR0A)
  2375. }
  2376.  
  2377. Method (PR0A, 0, NotSerialized)
  2378. {
  2379. Return (^^PR0A)
  2380. }
  2381.  
  2382. Method (AR0B, 0, NotSerialized)
  2383. {
  2384. Return (^^AR0B)
  2385. }
  2386.  
  2387. Method (PR0B, 0, NotSerialized)
  2388. {
  2389. Return (^^PR0B)
  2390. }
  2391. }
  2392.  
  2393. Device (TPMX)
  2394. {
  2395. Name (_HID, EisaId ("PNP0C01")) // _HID: Hardware ID
  2396. Name (_UID, One) // _UID: Unique ID
  2397. Name (CRS, ResourceTemplate ()
  2398. {
  2399. Memory32Fixed (ReadOnly,
  2400. 0xFED40000, // Address Base
  2401. 0x00005000, // Address Length
  2402. )
  2403. })
  2404. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  2405. {
  2406. Return (CRS)
  2407. }
  2408.  
  2409. Method (_STA, 0, NotSerialized) // _STA: Status
  2410. {
  2411. If (TPMF)
  2412. {
  2413. Return (Zero)
  2414. }
  2415.  
  2416. Return (0x0F)
  2417. }
  2418. }
  2419.  
  2420. Device (LPCB)
  2421. {
  2422. Name (_ADR, 0x001F0000) // _ADR: Address
  2423. Scope (\_SB)
  2424. {
  2425. OperationRegion (PCI0.LPCB.LPC1, PCI_Config, Zero, 0x0100)
  2426. Field (PCI0.LPCB.LPC1, AnyAcc, NoLock, Preserve)
  2427. {
  2428. Offset (0x02),
  2429. CDID, 16,
  2430. Offset (0x08),
  2431. CRID, 8,
  2432. Offset (0x60),
  2433. PARC, 8,
  2434. PBRC, 8,
  2435. PCRC, 8,
  2436. PDRC, 8,
  2437. Offset (0x68),
  2438. PERC, 8,
  2439. PFRC, 8,
  2440. PGRC, 8,
  2441. PHRC, 8,
  2442. Offset (0xAC),
  2443. Offset (0xAD),
  2444. Offset (0xAE),
  2445. XUSB, 1
  2446. }
  2447.  
  2448. Device (LNKA)
  2449. {
  2450. Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
  2451. Name (_UID, One) // _UID: Unique ID
  2452. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2453. {
  2454. Or (PARC, 0x80, PARC)
  2455. }
  2456.  
  2457. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2458. {
  2459. Return (PRSA)
  2460. }
  2461.  
  2462. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2463. {
  2464. Name (RTLA, ResourceTemplate ()
  2465. {
  2466. IRQ (Level, ActiveLow, Shared, )
  2467. {}
  2468. })
  2469. CreateWordField (RTLA, One, IRQ0)
  2470. Store (Zero, IRQ0)
  2471. ShiftLeft (One, And (PARC, 0x0F), IRQ0)
  2472. Return (RTLA)
  2473. }
  2474.  
  2475. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2476. {
  2477. CreateWordField (Arg0, One, IRQ0)
  2478. FindSetRightBit (IRQ0, Local0)
  2479. Decrement (Local0)
  2480. Store (Local0, PARC)
  2481. }
  2482.  
  2483. Method (_STA, 0, Serialized) // _STA: Status
  2484. {
  2485. If (And (PARC, 0x80))
  2486. {
  2487. Return (0x09)
  2488. }
  2489. Else
  2490. {
  2491. Return (0x0B)
  2492. }
  2493. }
  2494. }
  2495.  
  2496. Device (LNKB)
  2497. {
  2498. Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
  2499. Name (_UID, 0x02) // _UID: Unique ID
  2500. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2501. {
  2502. Or (PBRC, 0x80, PBRC)
  2503. }
  2504.  
  2505. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2506. {
  2507. Return (PRSB)
  2508. }
  2509.  
  2510. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2511. {
  2512. Name (RTLB, ResourceTemplate ()
  2513. {
  2514. IRQ (Level, ActiveLow, Shared, )
  2515. {}
  2516. })
  2517. CreateWordField (RTLB, One, IRQ0)
  2518. Store (Zero, IRQ0)
  2519. ShiftLeft (One, And (PBRC, 0x0F), IRQ0)
  2520. Return (RTLB)
  2521. }
  2522.  
  2523. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2524. {
  2525. CreateWordField (Arg0, One, IRQ0)
  2526. FindSetRightBit (IRQ0, Local0)
  2527. Decrement (Local0)
  2528. Store (Local0, PBRC)
  2529. }
  2530.  
  2531. Method (_STA, 0, Serialized) // _STA: Status
  2532. {
  2533. If (And (PBRC, 0x80))
  2534. {
  2535. Return (0x09)
  2536. }
  2537. Else
  2538. {
  2539. Return (0x0B)
  2540. }
  2541. }
  2542. }
  2543.  
  2544. Device (LNKC)
  2545. {
  2546. Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
  2547. Name (_UID, 0x03) // _UID: Unique ID
  2548. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2549. {
  2550. Or (PCRC, 0x80, PCRC)
  2551. }
  2552.  
  2553. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2554. {
  2555. Return (PRSC)
  2556. }
  2557.  
  2558. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2559. {
  2560. Name (RTLC, ResourceTemplate ()
  2561. {
  2562. IRQ (Level, ActiveLow, Shared, )
  2563. {}
  2564. })
  2565. CreateWordField (RTLC, One, IRQ0)
  2566. Store (Zero, IRQ0)
  2567. ShiftLeft (One, And (PCRC, 0x0F), IRQ0)
  2568. Return (RTLC)
  2569. }
  2570.  
  2571. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2572. {
  2573. CreateWordField (Arg0, One, IRQ0)
  2574. FindSetRightBit (IRQ0, Local0)
  2575. Decrement (Local0)
  2576. Store (Local0, PCRC)
  2577. }
  2578.  
  2579. Method (_STA, 0, Serialized) // _STA: Status
  2580. {
  2581. If (And (PCRC, 0x80))
  2582. {
  2583. Return (0x09)
  2584. }
  2585. Else
  2586. {
  2587. Return (0x0B)
  2588. }
  2589. }
  2590. }
  2591.  
  2592. Device (LNKD)
  2593. {
  2594. Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
  2595. Name (_UID, 0x04) // _UID: Unique ID
  2596. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2597. {
  2598. Or (PDRC, 0x80, PDRC)
  2599. }
  2600.  
  2601. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2602. {
  2603. Return (PRSD)
  2604. }
  2605.  
  2606. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2607. {
  2608. Name (RTLD, ResourceTemplate ()
  2609. {
  2610. IRQ (Level, ActiveLow, Shared, )
  2611. {}
  2612. })
  2613. CreateWordField (RTLD, One, IRQ0)
  2614. Store (Zero, IRQ0)
  2615. ShiftLeft (One, And (PDRC, 0x0F), IRQ0)
  2616. Return (RTLD)
  2617. }
  2618.  
  2619. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2620. {
  2621. CreateWordField (Arg0, One, IRQ0)
  2622. FindSetRightBit (IRQ0, Local0)
  2623. Decrement (Local0)
  2624. Store (Local0, PDRC)
  2625. }
  2626.  
  2627. Method (_STA, 0, Serialized) // _STA: Status
  2628. {
  2629. If (And (PDRC, 0x80))
  2630. {
  2631. Return (0x09)
  2632. }
  2633. Else
  2634. {
  2635. Return (0x0B)
  2636. }
  2637. }
  2638. }
  2639.  
  2640. Device (LNKE)
  2641. {
  2642. Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
  2643. Name (_UID, 0x05) // _UID: Unique ID
  2644. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2645. {
  2646. Or (PERC, 0x80, PERC)
  2647. }
  2648.  
  2649. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2650. {
  2651. Return (PRSE)
  2652. }
  2653.  
  2654. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2655. {
  2656. Name (RTLE, ResourceTemplate ()
  2657. {
  2658. IRQ (Level, ActiveLow, Shared, )
  2659. {}
  2660. })
  2661. CreateWordField (RTLE, One, IRQ0)
  2662. Store (Zero, IRQ0)
  2663. ShiftLeft (One, And (PERC, 0x0F), IRQ0)
  2664. Return (RTLE)
  2665. }
  2666.  
  2667. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2668. {
  2669. CreateWordField (Arg0, One, IRQ0)
  2670. FindSetRightBit (IRQ0, Local0)
  2671. Decrement (Local0)
  2672. Store (Local0, PERC)
  2673. }
  2674.  
  2675. Method (_STA, 0, Serialized) // _STA: Status
  2676. {
  2677. If (And (PERC, 0x80))
  2678. {
  2679. Return (0x09)
  2680. }
  2681. Else
  2682. {
  2683. Return (0x0B)
  2684. }
  2685. }
  2686. }
  2687.  
  2688. Device (LNKF)
  2689. {
  2690. Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
  2691. Name (_UID, 0x06) // _UID: Unique ID
  2692. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2693. {
  2694. Or (PFRC, 0x80, PFRC)
  2695. }
  2696.  
  2697. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2698. {
  2699. Return (PRSF)
  2700. }
  2701.  
  2702. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2703. {
  2704. Name (RTLF, ResourceTemplate ()
  2705. {
  2706. IRQ (Level, ActiveLow, Shared, )
  2707. {}
  2708. })
  2709. CreateWordField (RTLF, One, IRQ0)
  2710. Store (Zero, IRQ0)
  2711. ShiftLeft (One, And (PFRC, 0x0F), IRQ0)
  2712. Return (RTLF)
  2713. }
  2714.  
  2715. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2716. {
  2717. CreateWordField (Arg0, One, IRQ0)
  2718. FindSetRightBit (IRQ0, Local0)
  2719. Decrement (Local0)
  2720. Store (Local0, PFRC)
  2721. }
  2722.  
  2723. Method (_STA, 0, Serialized) // _STA: Status
  2724. {
  2725. If (And (PFRC, 0x80))
  2726. {
  2727. Return (0x09)
  2728. }
  2729. Else
  2730. {
  2731. Return (0x0B)
  2732. }
  2733. }
  2734. }
  2735.  
  2736. Device (LNKG)
  2737. {
  2738. Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
  2739. Name (_UID, 0x07) // _UID: Unique ID
  2740. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2741. {
  2742. Or (PGRC, 0x80, PGRC)
  2743. }
  2744.  
  2745. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2746. {
  2747. Return (PRSG)
  2748. }
  2749.  
  2750. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2751. {
  2752. Name (RTLG, ResourceTemplate ()
  2753. {
  2754. IRQ (Level, ActiveLow, Shared, )
  2755. {}
  2756. })
  2757. CreateWordField (RTLG, One, IRQ0)
  2758. Store (Zero, IRQ0)
  2759. ShiftLeft (One, And (PGRC, 0x0F), IRQ0)
  2760. Return (RTLG)
  2761. }
  2762.  
  2763. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2764. {
  2765. CreateWordField (Arg0, One, IRQ0)
  2766. FindSetRightBit (IRQ0, Local0)
  2767. Decrement (Local0)
  2768. Store (Local0, PGRC)
  2769. }
  2770.  
  2771. Method (_STA, 0, Serialized) // _STA: Status
  2772. {
  2773. If (And (PGRC, 0x80))
  2774. {
  2775. Return (0x09)
  2776. }
  2777. Else
  2778. {
  2779. Return (0x0B)
  2780. }
  2781. }
  2782. }
  2783.  
  2784. Device (LNKH)
  2785. {
  2786. Name (_HID, EisaId ("PNP0C0F")) // _HID: Hardware ID
  2787. Name (_UID, 0x08) // _UID: Unique ID
  2788. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2789. {
  2790. Or (PHRC, 0x80, PHRC)
  2791. }
  2792.  
  2793. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2794. {
  2795. Return (PRSH)
  2796. }
  2797.  
  2798. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2799. {
  2800. Name (RTLH, ResourceTemplate ()
  2801. {
  2802. IRQ (Level, ActiveLow, Shared, )
  2803. {}
  2804. })
  2805. CreateWordField (RTLH, One, IRQ0)
  2806. Store (Zero, IRQ0)
  2807. ShiftLeft (One, And (PHRC, 0x0F), IRQ0)
  2808. Return (RTLH)
  2809. }
  2810.  
  2811. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2812. {
  2813. CreateWordField (Arg0, One, IRQ0)
  2814. FindSetRightBit (IRQ0, Local0)
  2815. Decrement (Local0)
  2816. Store (Local0, PHRC)
  2817. }
  2818.  
  2819. Method (_STA, 0, Serialized) // _STA: Status
  2820. {
  2821. If (And (PHRC, 0x80))
  2822. {
  2823. Return (0x09)
  2824. }
  2825. Else
  2826. {
  2827. Return (0x0B)
  2828. }
  2829. }
  2830. }
  2831. }
  2832.  
  2833. OperationRegion (LPC0, PCI_Config, 0x40, 0xC0)
  2834. Field (LPC0, AnyAcc, NoLock, Preserve)
  2835. {
  2836. Offset (0x40),
  2837. IOD0, 8,
  2838. IOD1, 8,
  2839. Offset (0x78),
  2840. , 6,
  2841. GR03, 2,
  2842. Offset (0x7A),
  2843. GR08, 2,
  2844. GR09, 2,
  2845. GR0A, 2,
  2846. GR0B, 2,
  2847. Offset (0x7C),
  2848. , 2,
  2849. GR19, 2,
  2850. Offset (0x80),
  2851. Offset (0xB0),
  2852. RAEN, 1,
  2853. , 13,
  2854. RCBA, 18
  2855. }
  2856.  
  2857. Device (DMAC)
  2858. {
  2859. Name (_HID, EisaId ("PNP0200")) // _HID: Hardware ID
  2860. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2861. {
  2862. IO (Decode16,
  2863. 0x0000, // Range Minimum
  2864. 0x0000, // Range Maximum
  2865. 0x01, // Alignment
  2866. 0x20, // Length
  2867. )
  2868. IO (Decode16,
  2869. 0x0081, // Range Minimum
  2870. 0x0081, // Range Maximum
  2871. 0x01, // Alignment
  2872. 0x11, // Length
  2873. )
  2874. IO (Decode16,
  2875. 0x0093, // Range Minimum
  2876. 0x0093, // Range Maximum
  2877. 0x01, // Alignment
  2878. 0x0D, // Length
  2879. )
  2880. IO (Decode16,
  2881. 0x00C0, // Range Minimum
  2882. 0x00C0, // Range Maximum
  2883. 0x01, // Alignment
  2884. 0x20, // Length
  2885. )
  2886. DMA (Compatibility, NotBusMaster, Transfer8_16, )
  2887. {4}
  2888. })
  2889. }
  2890.  
  2891. Device (FWHD)
  2892. {
  2893. Name (_HID, EisaId ("INT0800")) // _HID: Hardware ID
  2894. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2895. {
  2896. Memory32Fixed (ReadOnly,
  2897. 0xFF000000, // Address Base
  2898. 0x01000000, // Address Length
  2899. )
  2900. })
  2901. }
  2902.  
  2903. Device (HPET)
  2904. {
  2905. Name (_HID, EisaId ("PNP0103")) // _HID: Hardware ID
  2906. Name (_UID, Zero) // _UID: Unique ID
  2907. Name (BUF0, ResourceTemplate ()
  2908. {
  2909. Memory32Fixed (ReadWrite,
  2910. 0xFED00000, // Address Base
  2911. 0x00000400, // Address Length
  2912. _Y0F)
  2913. })
  2914. Method (_STA, 0, NotSerialized) // _STA: Status
  2915. {
  2916. If (LGreaterEqual (OSYS, 0x07D1))
  2917. {
  2918. If (HPAE)
  2919. {
  2920. Return (0x0F)
  2921. }
  2922. }
  2923. Else
  2924. {
  2925. If (HPAE)
  2926. {
  2927. Return (0x0B)
  2928. }
  2929. }
  2930.  
  2931. Return (Zero)
  2932. }
  2933.  
  2934. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2935. {
  2936. If (HPAE)
  2937. {
  2938. CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y0F._BAS, HPT0) // _BAS: Base Address
  2939. If (LEqual (HPAS, One))
  2940. {
  2941. Store (0xFED01000, HPT0)
  2942. }
  2943.  
  2944. If (LEqual (HPAS, 0x02))
  2945. {
  2946. Store (0xFED02000, HPT0)
  2947. }
  2948.  
  2949. If (LEqual (HPAS, 0x03))
  2950. {
  2951. Store (0xFED03000, HPT0)
  2952. }
  2953. }
  2954.  
  2955. Return (BUF0)
  2956. }
  2957. }
  2958.  
  2959. Device (IPIC)
  2960. {
  2961. Name (_HID, EisaId ("PNP0000")) // _HID: Hardware ID
  2962. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2963. {
  2964. IO (Decode16,
  2965. 0x0020, // Range Minimum
  2966. 0x0020, // Range Maximum
  2967. 0x01, // Alignment
  2968. 0x02, // Length
  2969. )
  2970. IO (Decode16,
  2971. 0x0024, // Range Minimum
  2972. 0x0024, // Range Maximum
  2973. 0x01, // Alignment
  2974. 0x02, // Length
  2975. )
  2976. IO (Decode16,
  2977. 0x0028, // Range Minimum
  2978. 0x0028, // Range Maximum
  2979. 0x01, // Alignment
  2980. 0x02, // Length
  2981. )
  2982. IO (Decode16,
  2983. 0x002C, // Range Minimum
  2984. 0x002C, // Range Maximum
  2985. 0x01, // Alignment
  2986. 0x02, // Length
  2987. )
  2988. IO (Decode16,
  2989. 0x0030, // Range Minimum
  2990. 0x0030, // Range Maximum
  2991. 0x01, // Alignment
  2992. 0x02, // Length
  2993. )
  2994. IO (Decode16,
  2995. 0x0034, // Range Minimum
  2996. 0x0034, // Range Maximum
  2997. 0x01, // Alignment
  2998. 0x02, // Length
  2999. )
  3000. IO (Decode16,
  3001. 0x0038, // Range Minimum
  3002. 0x0038, // Range Maximum
  3003. 0x01, // Alignment
  3004. 0x02, // Length
  3005. )
  3006. IO (Decode16,
  3007. 0x003C, // Range Minimum
  3008. 0x003C, // Range Maximum
  3009. 0x01, // Alignment
  3010. 0x02, // Length
  3011. )
  3012. IO (Decode16,
  3013. 0x00A0, // Range Minimum
  3014. 0x00A0, // Range Maximum
  3015. 0x01, // Alignment
  3016. 0x02, // Length
  3017. )
  3018. IO (Decode16,
  3019. 0x00A4, // Range Minimum
  3020. 0x00A4, // Range Maximum
  3021. 0x01, // Alignment
  3022. 0x02, // Length
  3023. )
  3024. IO (Decode16,
  3025. 0x00A8, // Range Minimum
  3026. 0x00A8, // Range Maximum
  3027. 0x01, // Alignment
  3028. 0x02, // Length
  3029. )
  3030. IO (Decode16,
  3031. 0x00AC, // Range Minimum
  3032. 0x00AC, // Range Maximum
  3033. 0x01, // Alignment
  3034. 0x02, // Length
  3035. )
  3036. IO (Decode16,
  3037. 0x00B0, // Range Minimum
  3038. 0x00B0, // Range Maximum
  3039. 0x01, // Alignment
  3040. 0x02, // Length
  3041. )
  3042. IO (Decode16,
  3043. 0x00B4, // Range Minimum
  3044. 0x00B4, // Range Maximum
  3045. 0x01, // Alignment
  3046. 0x02, // Length
  3047. )
  3048. IO (Decode16,
  3049. 0x00B8, // Range Minimum
  3050. 0x00B8, // Range Maximum
  3051. 0x01, // Alignment
  3052. 0x02, // Length
  3053. )
  3054. IO (Decode16,
  3055. 0x00BC, // Range Minimum
  3056. 0x00BC, // Range Maximum
  3057. 0x01, // Alignment
  3058. 0x02, // Length
  3059. )
  3060. IO (Decode16,
  3061. 0x04D0, // Range Minimum
  3062. 0x04D0, // Range Maximum
  3063. 0x01, // Alignment
  3064. 0x02, // Length
  3065. )
  3066. IRQNoFlags ()
  3067. {2}
  3068. })
  3069. }
  3070.  
  3071. Device (MATH)
  3072. {
  3073. Name (_HID, EisaId ("PNP0C04")) // _HID: Hardware ID
  3074. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3075. {
  3076. IO (Decode16,
  3077. 0x00F0, // Range Minimum
  3078. 0x00F0, // Range Maximum
  3079. 0x01, // Alignment
  3080. 0x01, // Length
  3081. )
  3082. IRQNoFlags ()
  3083. {13}
  3084. })
  3085. Method (_STA, 0, NotSerialized) // _STA: Status
  3086. {
  3087. If (LEqual (And (CDID, 0xF000), 0x8000))
  3088. {
  3089. Return (0x1F)
  3090. }
  3091. Else
  3092. {
  3093. Return (Zero)
  3094. }
  3095. }
  3096. }
  3097.  
  3098. Device (LDRC)
  3099. {
  3100. Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
  3101. Name (_UID, 0x02) // _UID: Unique ID
  3102. Name (BUF0, ResourceTemplate ()
  3103. {
  3104. IO (Decode16,
  3105. 0x002E, // Range Minimum
  3106. 0x002E, // Range Maximum
  3107. 0x01, // Alignment
  3108. 0x02, // Length
  3109. )
  3110. IO (Decode16,
  3111. 0x004E, // Range Minimum
  3112. 0x004E, // Range Maximum
  3113. 0x01, // Alignment
  3114. 0x02, // Length
  3115. )
  3116. IO (Decode16,
  3117. 0x0061, // Range Minimum
  3118. 0x0061, // Range Maximum
  3119. 0x01, // Alignment
  3120. 0x01, // Length
  3121. )
  3122. IO (Decode16,
  3123. 0x0063, // Range Minimum
  3124. 0x0063, // Range Maximum
  3125. 0x01, // Alignment
  3126. 0x01, // Length
  3127. )
  3128. IO (Decode16,
  3129. 0x0065, // Range Minimum
  3130. 0x0065, // Range Maximum
  3131. 0x01, // Alignment
  3132. 0x01, // Length
  3133. )
  3134. IO (Decode16,
  3135. 0x0067, // Range Minimum
  3136. 0x0067, // Range Maximum
  3137. 0x01, // Alignment
  3138. 0x01, // Length
  3139. )
  3140. IO (Decode16,
  3141. 0x0070, // Range Minimum
  3142. 0x0070, // Range Maximum
  3143. 0x01, // Alignment
  3144. 0x01, // Length
  3145. )
  3146. IO (Decode16,
  3147. 0x0080, // Range Minimum
  3148. 0x0080, // Range Maximum
  3149. 0x01, // Alignment
  3150. 0x01, // Length
  3151. )
  3152. IO (Decode16,
  3153. 0x0092, // Range Minimum
  3154. 0x0092, // Range Maximum
  3155. 0x01, // Alignment
  3156. 0x01, // Length
  3157. )
  3158. IO (Decode16,
  3159. 0x00B2, // Range Minimum
  3160. 0x00B2, // Range Maximum
  3161. 0x01, // Alignment
  3162. 0x02, // Length
  3163. )
  3164. IO (Decode16,
  3165. 0x0680, // Range Minimum
  3166. 0x0680, // Range Maximum
  3167. 0x01, // Alignment
  3168. 0x20, // Length
  3169. )
  3170. IO (Decode16,
  3171. 0xFFFF, // Range Minimum
  3172. 0xFFFF, // Range Maximum
  3173. 0x01, // Alignment
  3174. 0x01, // Length
  3175. )
  3176. IO (Decode16,
  3177. 0xFFFF, // Range Minimum
  3178. 0xFFFF, // Range Maximum
  3179. 0x01, // Alignment
  3180. 0x01, // Length
  3181. )
  3182. IO (Decode16,
  3183. 0xFFFF, // Range Minimum
  3184. 0xFFFF, // Range Maximum
  3185. 0x01, // Alignment
  3186. 0x01, // Length
  3187. )
  3188. IO (Decode16,
  3189. 0x0800, // Range Minimum
  3190. 0x0800, // Range Maximum
  3191. 0x01, // Alignment
  3192. 0xFF, // Length
  3193. _Y10)
  3194. IO (Decode16,
  3195. 0x0900, // Range Minimum
  3196. 0x0900, // Range Maximum
  3197. 0x01, // Alignment
  3198. 0xFF, // Length
  3199. _Y11)
  3200. IO (Decode16,
  3201. 0x0A00, // Range Minimum
  3202. 0x0A00, // Range Maximum
  3203. 0x01, // Alignment
  3204. 0xFF, // Length
  3205. _Y12)
  3206. IO (Decode16,
  3207. 0x0B00, // Range Minimum
  3208. 0x0B00, // Range Maximum
  3209. 0x01, // Alignment
  3210. 0xFF, // Length
  3211. _Y13)
  3212. IO (Decode16,
  3213. 0x1800, // Range Minimum
  3214. 0x1800, // Range Maximum
  3215. 0x01, // Alignment
  3216. 0xFF, // Length
  3217. )
  3218. IO (Decode16,
  3219. 0x164E, // Range Minimum
  3220. 0x164E, // Range Maximum
  3221. 0x01, // Alignment
  3222. 0x02, // Length
  3223. )
  3224. })
  3225. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3226. {
  3227. CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y10._MIN, IO0M) // _MIN: Minimum Base Address
  3228. CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y10._MAX, IO0X) // _MAX: Maximum Base Address
  3229. Store (GPBS, IO0M)
  3230. Store (GPBS, IO0X)
  3231. CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y11._MIN, IO1M) // _MIN: Minimum Base Address
  3232. CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y11._MAX, IO1X) // _MAX: Maximum Base Address
  3233. Store (Add (GPBS, 0x0100), IO1M)
  3234. Store (Add (GPBS, 0x0100), IO1X)
  3235. CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y12._MIN, IO2M) // _MIN: Minimum Base Address
  3236. CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y12._MAX, IO2X) // _MAX: Maximum Base Address
  3237. Store (Add (GPBS, 0x0200), IO2M)
  3238. Store (Add (GPBS, 0x0200), IO2X)
  3239. CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y13._MIN, IO3M) // _MIN: Minimum Base Address
  3240. CreateWordField (BUF0, \_SB.PCI0.LPCB.LDRC._Y13._MAX, IO3X) // _MAX: Maximum Base Address
  3241. Store (Add (GPBS, 0x0300), IO3M)
  3242. Store (Add (GPBS, 0x0300), IO3X)
  3243. Return (BUF0)
  3244. }
  3245. }
  3246.  
  3247. Device (RTC)
  3248. {
  3249. Name (_HID, EisaId ("PNP0B00")) // _HID: Hardware ID
  3250. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3251. {
  3252. IO (Decode16,
  3253. 0x0070, // Range Minimum
  3254. 0x0070, // Range Maximum
  3255. 0x01, // Alignment
  3256. 0x08, // Length
  3257. )
  3258. IRQNoFlags ()
  3259. {8}
  3260. })
  3261. }
  3262.  
  3263. Device (TIMR)
  3264. {
  3265. Name (_HID, EisaId ("PNP0100")) // _HID: Hardware ID
  3266. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3267. {
  3268. IO (Decode16,
  3269. 0x0040, // Range Minimum
  3270. 0x0040, // Range Maximum
  3271. 0x01, // Alignment
  3272. 0x04, // Length
  3273. )
  3274. IO (Decode16,
  3275. 0x0050, // Range Minimum
  3276. 0x0050, // Range Maximum
  3277. 0x10, // Alignment
  3278. 0x04, // Length
  3279. )
  3280. IRQNoFlags ()
  3281. {0}
  3282. })
  3283. }
  3284.  
  3285. Device (CWDT)
  3286. {
  3287. Name (_HID, EisaId ("INT3F0D")) // _HID: Hardware ID
  3288. Name (_CID, EisaId ("PNP0C02")) // _CID: Compatible ID
  3289. Name (BUF0, ResourceTemplate ()
  3290. {
  3291. IO (Decode16,
  3292. 0x1854, // Range Minimum
  3293. 0x1854, // Range Maximum
  3294. 0x04, // Alignment
  3295. 0x04, // Length
  3296. )
  3297. })
  3298. Method (_STA, 0, Serialized) // _STA: Status
  3299. {
  3300. If (LEqual (WDTE, One))
  3301. {
  3302. Return (0x0F)
  3303. }
  3304. Else
  3305. {
  3306. Return (Zero)
  3307. }
  3308. }
  3309.  
  3310. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  3311. {
  3312. Return (BUF0)
  3313. }
  3314. }
  3315.  
  3316. Device (SIO1)
  3317. {
  3318. Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
  3319. Name (_UID, 0x0111) // _UID: Unique ID
  3320. Name (CRS, ResourceTemplate ()
  3321. {
  3322. IO (Decode16,
  3323. 0x0000, // Range Minimum
  3324. 0x0000, // Range Maximum
  3325. 0x00, // Alignment
  3326. 0x00, // Length
  3327. _Y14)
  3328. IO (Decode16,
  3329. 0x0000, // Range Minimum
  3330. 0x0000, // Range Maximum
  3331. 0x00, // Alignment
  3332. 0x00, // Length
  3333. _Y15)
  3334. IO (Decode16,
  3335. 0x0000, // Range Minimum
  3336. 0x0000, // Range Maximum
  3337. 0x00, // Alignment
  3338. 0x00, // Length
  3339. _Y16)
  3340. })
  3341. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3342. {
  3343. If (LAnd (LLess (SP1O, 0x03F0), LGreater (SP1O, 0xF0)))
  3344. {
  3345. CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y14._MIN, GPI0) // _MIN: Minimum Base Address
  3346. CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y14._MAX, GPI1) // _MAX: Maximum Base Address
  3347. CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y14._LEN, GPIL) // _LEN: Length
  3348. Store (SP1O, GPI0)
  3349. Store (SP1O, GPI1)
  3350. Store (0x02, GPIL)
  3351. }
  3352.  
  3353. If (IO2B)
  3354. {
  3355. CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y15._MIN, GP20) // _MIN: Minimum Base Address
  3356. CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y15._MAX, GP21) // _MAX: Maximum Base Address
  3357. CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y15._LEN, GPL2) // _LEN: Length
  3358. Store (IO2B, GP20)
  3359. Store (IO2B, GP21)
  3360. Store (IO2L, GPL2)
  3361. }
  3362.  
  3363. If (IO3B)
  3364. {
  3365. CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y16._MIN, GP30) // _MIN: Minimum Base Address
  3366. CreateWordField (CRS, \_SB.PCI0.LPCB.SIO1._Y16._MAX, GP31) // _MAX: Maximum Base Address
  3367. CreateByteField (CRS, \_SB.PCI0.LPCB.SIO1._Y16._LEN, GPL3) // _LEN: Length
  3368. Store (IO3B, GP30)
  3369. Store (IO3B, GP31)
  3370. Store (IO3L, GPL3)
  3371. }
  3372.  
  3373. Return (CRS)
  3374. }
  3375.  
  3376. Name (DCAT, Package (0x15)
  3377. {
  3378. 0x02,
  3379. 0x03,
  3380. One,
  3381. Zero,
  3382. 0xFF,
  3383. 0xFF,
  3384. 0xFF,
  3385. 0xFF,
  3386. 0xFF,
  3387. 0xFF,
  3388. 0x05,
  3389. 0xFF,
  3390. 0xFF,
  3391. 0xFF,
  3392. 0x05,
  3393. 0xFF,
  3394. 0x06,
  3395. 0xFF,
  3396. 0xFF,
  3397. 0xFF,
  3398. 0xFF
  3399. })
  3400. Mutex (MUT0, 0x00)
  3401. Method (ENFG, 1, NotSerialized)
  3402. {
  3403. Acquire (MUT0, 0x0FFF)
  3404. Store (0x87, INDX)
  3405. Store (0x87, INDX)
  3406. Store (Arg0, LDN)
  3407. }
  3408.  
  3409. Method (EXFG, 0, NotSerialized)
  3410. {
  3411. Store (0xAA, INDX)
  3412. Release (MUT0)
  3413. }
  3414.  
  3415. Method (LPTM, 1, NotSerialized)
  3416. {
  3417. ENFG (CGLD (Arg0))
  3418. And (OPT0, 0x02, Local0)
  3419. EXFG ()
  3420. Return (Local0)
  3421. }
  3422.  
  3423. OperationRegion (IOID, SystemIO, SP1O, 0x02)
  3424. Field (IOID, ByteAcc, NoLock, Preserve)
  3425. {
  3426. INDX, 8,
  3427. DATA, 8
  3428. }
  3429.  
  3430. IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
  3431. {
  3432. Offset (0x07),
  3433. LDN, 8,
  3434. Offset (0x13),
  3435. IRQP, 16,
  3436. Offset (0x26),
  3437. , 4,
  3438. SLEN, 1,
  3439. Offset (0x30),
  3440. ACTR, 8,
  3441. Offset (0x60),
  3442. IOAH, 8,
  3443. IOAL, 8,
  3444. IOH2, 8,
  3445. IOL2, 8,
  3446. Offset (0x70),
  3447. INTR, 4,
  3448. INTT, 4,
  3449. Offset (0x74),
  3450. DMCH, 8,
  3451. Offset (0xE0),
  3452. RGE0, 8,
  3453. RGE1, 8,
  3454. RGE2, 8,
  3455. RGE3, 8,
  3456. RGE4, 8,
  3457. RGE5, 8,
  3458. RGE6, 8,
  3459. RGE7, 8,
  3460. RGE8, 8,
  3461. RGE9, 8,
  3462. Offset (0xF0),
  3463. OPT0, 8,
  3464. OPT1, 8,
  3465. OPT2, 8,
  3466. OPT3, 8,
  3467. OPT4, 8,
  3468. OPT5, 8,
  3469. OPT6, 8,
  3470. OPT7, 8,
  3471. OPT8, 8,
  3472. OPT9, 8
  3473. }
  3474.  
  3475. Method (CGLD, 1, NotSerialized)
  3476. {
  3477. Return (DerefOf (Index (DCAT, Arg0)))
  3478. }
  3479.  
  3480. Method (DSTA, 1, NotSerialized)
  3481. {
  3482. ENFG (CGLD (Arg0))
  3483. Store (ACTR, Local0)
  3484. If (LEqual (Local0, 0xFF))
  3485. {
  3486. Return (Zero)
  3487. }
  3488.  
  3489. And (Local0, One, Local0)
  3490. If (LLess (Arg0, 0x10))
  3491. {
  3492. Or (IOST, ShiftLeft (Local0, Arg0), IOST)
  3493. }
  3494.  
  3495. If (Local0)
  3496. {
  3497. Return (0x0F)
  3498. }
  3499. Else
  3500. {
  3501. If (LLess (Arg0, 0x10))
  3502. {
  3503. If (And (ShiftLeft (One, Arg0), IOST))
  3504. {
  3505. Return (0x0D)
  3506. }
  3507. Else
  3508. {
  3509. Return (Zero)
  3510. }
  3511. }
  3512. Else
  3513. {
  3514. Or (ShiftLeft (IOAH, 0x08), IOAL, Local0)
  3515. If (Local0)
  3516. {
  3517. Return (0x0D)
  3518. }
  3519.  
  3520. Return (Zero)
  3521. }
  3522. }
  3523.  
  3524. EXFG ()
  3525. }
  3526.  
  3527. Method (DCNT, 2, NotSerialized)
  3528. {
  3529. ENFG (CGLD (Arg0))
  3530. If (LAnd (LLess (DMCH, 0x04), LNotEqual (And (DMCH, 0x03,
  3531. Local1), Zero)))
  3532. {
  3533. RDMA (Arg0, Arg1, Increment (Local1))
  3534. }
  3535.  
  3536. Store (Arg1, ACTR)
  3537. ShiftLeft (IOAH, 0x08, Local1)
  3538. Or (IOAL, Local1, Local1)
  3539. RRIO (Arg0, Arg1, Local1, 0x08)
  3540. EXFG ()
  3541. }
  3542.  
  3543. Name (CRS1, ResourceTemplate ()
  3544. {
  3545. IO (Decode16,
  3546. 0x0000, // Range Minimum
  3547. 0x0000, // Range Maximum
  3548. 0x01, // Alignment
  3549. 0x00, // Length
  3550. _Y19)
  3551. IRQNoFlags (_Y17)
  3552. {}
  3553. DMA (Compatibility, NotBusMaster, Transfer8, _Y18)
  3554. {}
  3555. })
  3556. CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y17._INT, IRQM) // _INT: Interrupts
  3557. CreateByteField (CRS1, \_SB.PCI0.LPCB.SIO1._Y18._DMA, DMAM) // _DMA: Direct Memory Access
  3558. CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y19._MIN, IO11) // _MIN: Minimum Base Address
  3559. CreateWordField (CRS1, \_SB.PCI0.LPCB.SIO1._Y19._MAX, IO12) // _MAX: Maximum Base Address
  3560. CreateByteField (CRS1, \_SB.PCI0.LPCB.SIO1._Y19._LEN, LEN1) // _LEN: Length
  3561. Name (CRS2, ResourceTemplate ()
  3562. {
  3563. IO (Decode16,
  3564. 0x0000, // Range Minimum
  3565. 0x0000, // Range Maximum
  3566. 0x01, // Alignment
  3567. 0x00, // Length
  3568. _Y1C)
  3569. IO (Decode16,
  3570. 0x0000, // Range Minimum
  3571. 0x0000, // Range Maximum
  3572. 0x01, // Alignment
  3573. 0x00, // Length
  3574. _Y1D)
  3575. IRQNoFlags (_Y1A)
  3576. {}
  3577. DMA (Compatibility, NotBusMaster, Transfer8, _Y1B)
  3578. {}
  3579. })
  3580. CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1A._INT, IRQE) // _INT: Interrupts
  3581. CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1B._DMA, DMAE) // _DMA: Direct Memory Access
  3582. CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1C._MIN, IO21) // _MIN: Minimum Base Address
  3583. CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1C._MAX, IO22) // _MAX: Maximum Base Address
  3584. CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1C._LEN, LEN2) // _LEN: Length
  3585. CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1D._MIN, IO31) // _MIN: Minimum Base Address
  3586. CreateWordField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1D._MAX, IO32) // _MAX: Maximum Base Address
  3587. CreateByteField (CRS2, \_SB.PCI0.LPCB.SIO1._Y1D._LEN, LEN3) // _LEN: Length
  3588. Name (CRS3, ResourceTemplate ()
  3589. {
  3590. IO (Decode16,
  3591. 0x0000, // Range Minimum
  3592. 0x0000, // Range Maximum
  3593. 0x01, // Alignment
  3594. 0x00, // Length
  3595. _Y20)
  3596. IRQ (Level, ActiveLow, Shared, _Y1E)
  3597. {}
  3598. DMA (Compatibility, NotBusMaster, Transfer8, _Y1F)
  3599. {}
  3600. })
  3601. CreateWordField (CRS3, \_SB.PCI0.LPCB.SIO1._Y1E._INT, IRQT) // _INT: Interrupts
  3602. CreateByteField (CRS3, \_SB.PCI0.LPCB.SIO1._Y1E._HE, IRQS) // _HE_: High-Edge
  3603. CreateByteField (CRS3, \_SB.PCI0.LPCB.SIO1._Y1F._DMA, DMAT) // _DMA: Direct Memory Access
  3604. CreateWordField (CRS3, \_SB.PCI0.LPCB.SIO1._Y20._MIN, IO41) // _MIN: Minimum Base Address
  3605. CreateWordField (CRS3, \_SB.PCI0.LPCB.SIO1._Y20._MAX, IO42) // _MAX: Maximum Base Address
  3606. CreateByteField (CRS3, \_SB.PCI0.LPCB.SIO1._Y20._LEN, LEN4) // _LEN: Length
  3607. Method (DCRS, 2, NotSerialized)
  3608. {
  3609. ENFG (CGLD (Arg0))
  3610. ShiftLeft (IOAH, 0x08, IO11)
  3611. Or (IOAL, IO11, IO11)
  3612. Store (IO11, IO12)
  3613. Store (0x08, LEN1)
  3614. If (INTR)
  3615. {
  3616. ShiftLeft (One, INTR, IRQM)
  3617. }
  3618. Else
  3619. {
  3620. Store (Zero, IRQM)
  3621. }
  3622.  
  3623. If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero)))
  3624. {
  3625. Store (Zero, DMAM)
  3626. }
  3627. Else
  3628. {
  3629. And (DMCH, 0x03, Local1)
  3630. ShiftLeft (One, Local1, DMAM)
  3631. }
  3632.  
  3633. EXFG ()
  3634. Return (CRS1)
  3635. }
  3636.  
  3637. Method (DCR2, 2, NotSerialized)
  3638. {
  3639. ENFG (CGLD (Arg0))
  3640. ShiftLeft (IOAH, 0x08, IO21)
  3641. Or (IOAL, IO21, IO21)
  3642. Store (IO21, IO22)
  3643. Store (0x08, LEN2)
  3644. ShiftLeft (IOH2, 0x08, IO31)
  3645. Or (IOL2, IO31, IO31)
  3646. Store (IO31, IO32)
  3647. Store (0x08, LEN3)
  3648. If (INTR)
  3649. {
  3650. ShiftLeft (One, INTR, IRQE)
  3651. }
  3652. Else
  3653. {
  3654. Store (Zero, IRQE)
  3655. }
  3656.  
  3657. If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero)))
  3658. {
  3659. Store (Zero, DMAE)
  3660. }
  3661. Else
  3662. {
  3663. And (DMCH, 0x03, Local1)
  3664. ShiftLeft (One, Local1, DMAE)
  3665. }
  3666.  
  3667. EXFG ()
  3668. Return (CRS2)
  3669. }
  3670.  
  3671. Method (DCR3, 2, NotSerialized)
  3672. {
  3673. ENFG (CGLD (Arg0))
  3674. ShiftLeft (IOAH, 0x08, IO41)
  3675. Or (IOAL, IO41, IO41)
  3676. Store (IO41, IO42)
  3677. Store (0x08, LEN4)
  3678. If (INTR)
  3679. {
  3680. ShiftLeft (One, INTR, IRQT)
  3681. }
  3682. Else
  3683. {
  3684. Store (Zero, IRQT)
  3685. }
  3686.  
  3687. If (LOr (LGreater (DMCH, 0x03), LEqual (Arg1, Zero)))
  3688. {
  3689. Store (Zero, DMAT)
  3690. }
  3691. Else
  3692. {
  3693. And (DMCH, 0x03, Local1)
  3694. ShiftLeft (One, Local1, DMAT)
  3695. }
  3696.  
  3697. EXFG ()
  3698. Return (CRS3)
  3699. }
  3700.  
  3701. Method (DSRS, 2, NotSerialized)
  3702. {
  3703. If (And (LEqual (Arg1, 0x02), LPTM (Arg1)))
  3704. {
  3705. DSR2 (Arg0, Arg1)
  3706. }
  3707. Else
  3708. {
  3709. CreateWordField (Arg0, 0x09, IRQM)
  3710. CreateByteField (Arg0, 0x0C, DMAM)
  3711. CreateWordField (Arg0, 0x02, IO11)
  3712. ENFG (CGLD (Arg1))
  3713. And (IO11, 0xFF, IOAL)
  3714. ShiftRight (IO11, 0x08, IOAH)
  3715. If (IRQM)
  3716. {
  3717. FindSetRightBit (IRQM, Local0)
  3718. Subtract (Local0, One, INTR)
  3719. }
  3720. Else
  3721. {
  3722. Store (Zero, INTR)
  3723. }
  3724.  
  3725. If (DMAM)
  3726. {
  3727. FindSetRightBit (DMAM, Local0)
  3728. Subtract (Local0, One, DMCH)
  3729. }
  3730. Else
  3731. {
  3732. Store (0x04, DMCH)
  3733. }
  3734.  
  3735. EXFG ()
  3736. DCNT (Arg1, One)
  3737. Store (Arg1, Local2)
  3738. If (LGreater (Local2, Zero))
  3739. {
  3740. Subtract (Local2, One, Local2)
  3741. }
  3742. }
  3743. }
  3744.  
  3745. Method (DSR2, 2, NotSerialized)
  3746. {
  3747. CreateWordField (Arg0, 0x11, IRQE)
  3748. CreateByteField (Arg0, 0x14, DMAE)
  3749. CreateWordField (Arg0, 0x02, IO21)
  3750. CreateWordField (Arg0, 0x0A, IO31)
  3751. ENFG (CGLD (Arg1))
  3752. And (IO21, 0xFF, IOAL)
  3753. ShiftRight (IO21, 0x08, IOAH)
  3754. And (IO31, 0xFF, IOL2)
  3755. ShiftRight (IO31, 0x08, IOH2)
  3756. If (IRQE)
  3757. {
  3758. FindSetRightBit (IRQE, Local0)
  3759. Subtract (Local0, One, INTR)
  3760. }
  3761. Else
  3762. {
  3763. Store (Zero, INTR)
  3764. }
  3765.  
  3766. If (DMAE)
  3767. {
  3768. FindSetRightBit (DMAE, Local0)
  3769. Subtract (Local0, One, DMCH)
  3770. }
  3771. Else
  3772. {
  3773. Store (0x04, DMCH)
  3774. }
  3775.  
  3776. EXFG ()
  3777. DCNT (Arg1, One)
  3778. Store (Arg1, Local2)
  3779. If (LGreater (Local2, Zero))
  3780. {
  3781. Subtract (Local2, One, Local2)
  3782. }
  3783. }
  3784.  
  3785. Method (DSR3, 2, NotSerialized)
  3786. {
  3787. CreateWordField (Arg0, 0x02, IO41)
  3788. CreateWordField (Arg0, 0x09, IRQT)
  3789. CreateByteField (Arg0, 0x0D, DMAT)
  3790. ENFG (CGLD (Arg1))
  3791. And (IO41, 0xFF, IOAL)
  3792. ShiftRight (IO41, 0x08, IOAH)
  3793. If (IRQT)
  3794. {
  3795. FindSetRightBit (IRQT, Local0)
  3796. Subtract (Local0, One, INTR)
  3797. And (OPT0, 0xBF, OPT0)
  3798. }
  3799. Else
  3800. {
  3801. Store (Zero, INTR)
  3802. }
  3803.  
  3804. If (DMAT)
  3805. {
  3806. FindSetRightBit (DMAT, Local0)
  3807. Subtract (Local0, One, DMCH)
  3808. }
  3809. Else
  3810. {
  3811. Store (0x04, DMCH)
  3812. }
  3813.  
  3814. EXFG ()
  3815. DCNT (Arg1, One)
  3816. Store (Arg1, Local2)
  3817. If (LGreater (Local2, Zero))
  3818. {
  3819. Subtract (Local2, One, Local2)
  3820. }
  3821. }
  3822. }
  3823.  
  3824. Name (PMFG, Zero)
  3825. Method (SIOS, 1, NotSerialized)
  3826. {
  3827. Store ("SIOS", Debug)
  3828. If (LNotEqual (0x05, Arg0))
  3829. {
  3830. ^SIO1.ENFG (0x0A)
  3831. Store (Zero, ^SIO1.OPT5)
  3832. Store (Zero, ^SIO1.OPT6)
  3833. Store (Zero, ^SIO1.OPT7)
  3834. If (KBFG)
  3835. {
  3836. Or (^SIO1.OPT6, 0x10, ^SIO1.OPT6)
  3837. }
  3838. Else
  3839. {
  3840. And (^SIO1.OPT6, 0xEF, ^SIO1.OPT6)
  3841. }
  3842.  
  3843. If (MSFG)
  3844. {
  3845. Or (^SIO1.OPT6, 0x20, ^SIO1.OPT6)
  3846. }
  3847. Else
  3848. {
  3849. And (^SIO1.OPT6, 0xDF, ^SIO1.OPT6)
  3850. }
  3851.  
  3852. Store (0xFF, ^SIO1.OPT1)
  3853. Store (0xFF, ^SIO1.OPT3)
  3854. Store (0xFF, ^SIO1.OPT4)
  3855. Or (One, ^SIO1.OPT2, Local0)
  3856. Store (Local0, ^SIO1.OPT2)
  3857. ^SIO1.EXFG ()
  3858. }
  3859. }
  3860.  
  3861. Method (SIOW, 1, NotSerialized)
  3862. {
  3863. Store ("SIOW", Debug)
  3864. ^SIO1.ENFG (0x0A)
  3865. Store (^SIO1.OPT3, PMFG)
  3866. Store (0xFF, ^SIO1.OPT3)
  3867. And (^SIO1.OPT6, 0xCF, ^SIO1.OPT6)
  3868. And (^SIO1.OPT2, 0xFE, ^SIO1.OPT2)
  3869. ^SIO1.EXFG ()
  3870. }
  3871.  
  3872. Method (SIOH, 0, NotSerialized)
  3873. {
  3874. If (And (PMFG, 0x08))
  3875. {
  3876. Notify (PS2K, 0x02)
  3877. }
  3878.  
  3879. If (And (PMFG, 0x10))
  3880. {
  3881. Notify (PS2M, 0x02)
  3882. }
  3883. }
  3884.  
  3885. Device (PS2K)
  3886. {
  3887. Method (_HID, 0, NotSerialized) // _HID: Hardware ID
  3888. {
  3889. Return (HIDK)
  3890. }
  3891.  
  3892. Method (_CID, 0, NotSerialized) // _CID: Compatible ID
  3893. {
  3894. Return (CIDK)
  3895. }
  3896.  
  3897. Method (_STA, 0, NotSerialized) // _STA: Status
  3898. {
  3899. If (And (IOST, 0x0400))
  3900. {
  3901. Return (0x0F)
  3902. }
  3903. Else
  3904. {
  3905. Return (Zero)
  3906. }
  3907. }
  3908.  
  3909. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3910. {
  3911. IO (Decode16,
  3912. 0x0060, // Range Minimum
  3913. 0x0060, // Range Maximum
  3914. 0x00, // Alignment
  3915. 0x01, // Length
  3916. )
  3917. IO (Decode16,
  3918. 0x0064, // Range Minimum
  3919. 0x0064, // Range Maximum
  3920. 0x00, // Alignment
  3921. 0x01, // Length
  3922. )
  3923. IRQNoFlags ()
  3924. {1}
  3925. })
  3926. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  3927. {
  3928. StartDependentFn (0x00, 0x00)
  3929. {
  3930. IO (Decode16,
  3931. 0x0060, // Range Minimum
  3932. 0x0060, // Range Maximum
  3933. 0x00, // Alignment
  3934. 0x01, // Length
  3935. )
  3936. IO (Decode16,
  3937. 0x0064, // Range Minimum
  3938. 0x0064, // Range Maximum
  3939. 0x00, // Alignment
  3940. 0x01, // Length
  3941. )
  3942. IRQNoFlags ()
  3943. {1}
  3944. }
  3945. EndDependentFn ()
  3946. })
  3947. Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
  3948. {
  3949. Store (Arg0, KBFG)
  3950. }
  3951. }
  3952.  
  3953. Scope (\)
  3954. {
  3955. Name (KBFG, One)
  3956. }
  3957.  
  3958. Method (PS2K._PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  3959. {
  3960. Return (GPRW (0x1D, 0x03))
  3961. }
  3962.  
  3963. Device (PS2M)
  3964. {
  3965. Method (_HID, 0, NotSerialized) // _HID: Hardware ID
  3966. {
  3967. Return (HIDM)
  3968. }
  3969.  
  3970. Method (_CID, 0, NotSerialized) // _CID: Compatible ID
  3971. {
  3972. Return (CIDM)
  3973. }
  3974.  
  3975. Method (_STA, 0, NotSerialized) // _STA: Status
  3976. {
  3977. If (And (IOST, 0x4000))
  3978. {
  3979. Return (0x0F)
  3980. }
  3981. Else
  3982. {
  3983. Return (Zero)
  3984. }
  3985. }
  3986.  
  3987. Name (CRS1, ResourceTemplate ()
  3988. {
  3989. IRQNoFlags ()
  3990. {12}
  3991. })
  3992. Name (CRS2, ResourceTemplate ()
  3993. {
  3994. IO (Decode16,
  3995. 0x0060, // Range Minimum
  3996. 0x0060, // Range Maximum
  3997. 0x00, // Alignment
  3998. 0x01, // Length
  3999. )
  4000. IO (Decode16,
  4001. 0x0064, // Range Minimum
  4002. 0x0064, // Range Maximum
  4003. 0x00, // Alignment
  4004. 0x01, // Length
  4005. )
  4006. IRQNoFlags ()
  4007. {12}
  4008. })
  4009. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4010. {
  4011. If (And (IOST, 0x0400))
  4012. {
  4013. Return (CRS1)
  4014. }
  4015. Else
  4016. {
  4017. Return (CRS2)
  4018. }
  4019. }
  4020.  
  4021. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  4022. {
  4023. StartDependentFn (0x00, 0x00)
  4024. {
  4025. IRQNoFlags ()
  4026. {12}
  4027. }
  4028. EndDependentFn ()
  4029. })
  4030. Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
  4031. {
  4032. Store (Arg0, MSFG)
  4033. }
  4034. }
  4035.  
  4036. Scope (\)
  4037. {
  4038. Name (MSFG, One)
  4039. }
  4040.  
  4041. Method (PS2M._PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  4042. {
  4043. Return (GPRW (0x1D, 0x03))
  4044. }
  4045.  
  4046. Device (UAR1)
  4047. {
  4048. Name (_HID, EisaId ("PNP0501")) // _HID: Hardware ID
  4049. Name (_UID, One) // _UID: Unique ID
  4050. Method (_STA, 0, NotSerialized) // _STA: Status
  4051. {
  4052. Return (^^SIO1.DSTA (Zero))
  4053. }
  4054.  
  4055. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  4056. {
  4057. ^^SIO1.DCNT (Zero, Zero)
  4058. }
  4059.  
  4060. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4061. {
  4062. Return (^^SIO1.DCR3 (Zero, Zero))
  4063. }
  4064.  
  4065. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  4066. {
  4067. ^^SIO1.DSR3 (Arg0, Zero)
  4068. }
  4069.  
  4070. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  4071. {
  4072. StartDependentFn (0x00, 0x00)
  4073. {
  4074. IO (Decode16,
  4075. 0x03F8, // Range Minimum
  4076. 0x03F8, // Range Maximum
  4077. 0x01, // Alignment
  4078. 0x08, // Length
  4079. )
  4080. IRQ (Level, ActiveHigh, Shared, )
  4081. {4}
  4082. DMA (Compatibility, NotBusMaster, Transfer8, )
  4083. {}
  4084. }
  4085. StartDependentFnNoPri ()
  4086. {
  4087. IO (Decode16,
  4088. 0x03F8, // Range Minimum
  4089. 0x03F8, // Range Maximum
  4090. 0x01, // Alignment
  4091. 0x08, // Length
  4092. )
  4093. IRQ (Level, ActiveHigh, Shared, )
  4094. {3,4,5,6,7,10,11,12}
  4095. DMA (Compatibility, NotBusMaster, Transfer8, )
  4096. {}
  4097. }
  4098. StartDependentFnNoPri ()
  4099. {
  4100. IO (Decode16,
  4101. 0x02F8, // Range Minimum
  4102. 0x02F8, // Range Maximum
  4103. 0x01, // Alignment
  4104. 0x08, // Length
  4105. )
  4106. IRQ (Level, ActiveHigh, Shared, )
  4107. {3,4,5,6,7,10,11,12}
  4108. DMA (Compatibility, NotBusMaster, Transfer8, )
  4109. {}
  4110. }
  4111. StartDependentFnNoPri ()
  4112. {
  4113. IO (Decode16,
  4114. 0x03E8, // Range Minimum
  4115. 0x03E8, // Range Maximum
  4116. 0x01, // Alignment
  4117. 0x08, // Length
  4118. )
  4119. IRQ (Level, ActiveHigh, Shared, )
  4120. {3,4,5,6,7,10,11,12}
  4121. DMA (Compatibility, NotBusMaster, Transfer8, )
  4122. {}
  4123. }
  4124. StartDependentFnNoPri ()
  4125. {
  4126. IO (Decode16,
  4127. 0x02E8, // Range Minimum
  4128. 0x02E8, // Range Maximum
  4129. 0x01, // Alignment
  4130. 0x08, // Length
  4131. )
  4132. IRQ (Level, ActiveHigh, Shared, )
  4133. {3,4,5,6,7,10,11,12}
  4134. DMA (Compatibility, NotBusMaster, Transfer8, )
  4135. {}
  4136. }
  4137. EndDependentFn ()
  4138. })
  4139. }
  4140.  
  4141. Device (UAR2)
  4142. {
  4143. Name (_HID, EisaId ("PNP0501")) // _HID: Hardware ID
  4144. Name (_UID, 0x02) // _UID: Unique ID
  4145. Method (_STA, 0, NotSerialized) // _STA: Status
  4146. {
  4147. Return (^^SIO1.DSTA (One))
  4148. }
  4149.  
  4150. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  4151. {
  4152. ^^SIO1.DCNT (One, Zero)
  4153. }
  4154.  
  4155. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4156. {
  4157. Return (^^SIO1.DCR3 (One, Zero))
  4158. }
  4159.  
  4160. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  4161. {
  4162. ^^SIO1.DSR3 (Arg0, One)
  4163. }
  4164.  
  4165. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  4166. {
  4167. StartDependentFn (0x00, 0x00)
  4168. {
  4169. IO (Decode16,
  4170. 0x02F8, // Range Minimum
  4171. 0x02F8, // Range Maximum
  4172. 0x01, // Alignment
  4173. 0x08, // Length
  4174. )
  4175. IRQ (Level, ActiveHigh, Shared, )
  4176. {3}
  4177. DMA (Compatibility, NotBusMaster, Transfer8, )
  4178. {}
  4179. }
  4180. StartDependentFnNoPri ()
  4181. {
  4182. IO (Decode16,
  4183. 0x03F8, // Range Minimum
  4184. 0x03F8, // Range Maximum
  4185. 0x01, // Alignment
  4186. 0x08, // Length
  4187. )
  4188. IRQ (Level, ActiveHigh, Shared, )
  4189. {3,4,5,6,7,10,11,12}
  4190. DMA (Compatibility, NotBusMaster, Transfer8, )
  4191. {}
  4192. }
  4193. StartDependentFnNoPri ()
  4194. {
  4195. IO (Decode16,
  4196. 0x02F8, // Range Minimum
  4197. 0x02F8, // Range Maximum
  4198. 0x01, // Alignment
  4199. 0x08, // Length
  4200. )
  4201. IRQ (Level, ActiveHigh, Shared, )
  4202. {3,4,5,6,7,10,11,12}
  4203. DMA (Compatibility, NotBusMaster, Transfer8, )
  4204. {}
  4205. }
  4206. StartDependentFnNoPri ()
  4207. {
  4208. IO (Decode16,
  4209. 0x03E8, // Range Minimum
  4210. 0x03E8, // Range Maximum
  4211. 0x01, // Alignment
  4212. 0x08, // Length
  4213. )
  4214. IRQ (Level, ActiveHigh, Shared, )
  4215. {3,4,5,6,7,10,11,12}
  4216. DMA (Compatibility, NotBusMaster, Transfer8, )
  4217. {}
  4218. }
  4219. StartDependentFnNoPri ()
  4220. {
  4221. IO (Decode16,
  4222. 0x02E8, // Range Minimum
  4223. 0x02E8, // Range Maximum
  4224. 0x01, // Alignment
  4225. 0x08, // Length
  4226. )
  4227. IRQ (Level, ActiveHigh, Shared, )
  4228. {3,4,5,6,7,10,11,12}
  4229. DMA (Compatibility, NotBusMaster, Transfer8, )
  4230. {}
  4231. }
  4232. EndDependentFn ()
  4233. })
  4234. }
  4235.  
  4236. Device (RMSC)
  4237. {
  4238. Name (_HID, EisaId ("PNP0C02")) // _HID: Hardware ID
  4239. Name (_UID, 0x10) // _UID: Unique ID
  4240. Name (CRS1, ResourceTemplate ()
  4241. {
  4242. IO (Decode16,
  4243. 0x0010, // Range Minimum
  4244. 0x0010, // Range Maximum
  4245. 0x00, // Alignment
  4246. 0x10, // Length
  4247. )
  4248. IO (Decode16,
  4249. 0x0022, // Range Minimum
  4250. 0x0022, // Range Maximum
  4251. 0x00, // Alignment
  4252. 0x1E, // Length
  4253. )
  4254. IO (Decode16,
  4255. 0x0044, // Range Minimum
  4256. 0x0044, // Range Maximum
  4257. 0x00, // Alignment
  4258. 0x1C, // Length
  4259. )
  4260. IO (Decode16,
  4261. 0x0062, // Range Minimum
  4262. 0x0062, // Range Maximum
  4263. 0x00, // Alignment
  4264. 0x02, // Length
  4265. )
  4266. IO (Decode16,
  4267. 0x0065, // Range Minimum
  4268. 0x0065, // Range Maximum
  4269. 0x00, // Alignment
  4270. 0x0B, // Length
  4271. )
  4272. IO (Decode16,
  4273. 0x0072, // Range Minimum
  4274. 0x0072, // Range Maximum
  4275. 0x00, // Alignment
  4276. 0x0E, // Length
  4277. )
  4278. IO (Decode16,
  4279. 0x0080, // Range Minimum
  4280. 0x0080, // Range Maximum
  4281. 0x00, // Alignment
  4282. 0x01, // Length
  4283. )
  4284. IO (Decode16,
  4285. 0x0084, // Range Minimum
  4286. 0x0084, // Range Maximum
  4287. 0x00, // Alignment
  4288. 0x03, // Length
  4289. )
  4290. IO (Decode16,
  4291. 0x0088, // Range Minimum
  4292. 0x0088, // Range Maximum
  4293. 0x00, // Alignment
  4294. 0x01, // Length
  4295. )
  4296. IO (Decode16,
  4297. 0x008C, // Range Minimum
  4298. 0x008C, // Range Maximum
  4299. 0x00, // Alignment
  4300. 0x03, // Length
  4301. )
  4302. IO (Decode16,
  4303. 0x0090, // Range Minimum
  4304. 0x0090, // Range Maximum
  4305. 0x00, // Alignment
  4306. 0x10, // Length
  4307. )
  4308. IO (Decode16,
  4309. 0x00A2, // Range Minimum
  4310. 0x00A2, // Range Maximum
  4311. 0x00, // Alignment
  4312. 0x1E, // Length
  4313. )
  4314. IO (Decode16,
  4315. 0x00E0, // Range Minimum
  4316. 0x00E0, // Range Maximum
  4317. 0x00, // Alignment
  4318. 0x10, // Length
  4319. )
  4320. IO (Decode16,
  4321. 0x04D0, // Range Minimum
  4322. 0x04D0, // Range Maximum
  4323. 0x00, // Alignment
  4324. 0x02, // Length
  4325. )
  4326. })
  4327. Name (CRS2, ResourceTemplate ()
  4328. {
  4329. IO (Decode16,
  4330. 0x0010, // Range Minimum
  4331. 0x0010, // Range Maximum
  4332. 0x00, // Alignment
  4333. 0x10, // Length
  4334. )
  4335. IO (Decode16,
  4336. 0x0022, // Range Minimum
  4337. 0x0022, // Range Maximum
  4338. 0x00, // Alignment
  4339. 0x1E, // Length
  4340. )
  4341. IO (Decode16,
  4342. 0x0044, // Range Minimum
  4343. 0x0044, // Range Maximum
  4344. 0x00, // Alignment
  4345. 0x1C, // Length
  4346. )
  4347. IO (Decode16,
  4348. 0x0072, // Range Minimum
  4349. 0x0072, // Range Maximum
  4350. 0x00, // Alignment
  4351. 0x0E, // Length
  4352. )
  4353. IO (Decode16,
  4354. 0x0080, // Range Minimum
  4355. 0x0080, // Range Maximum
  4356. 0x00, // Alignment
  4357. 0x01, // Length
  4358. )
  4359. IO (Decode16,
  4360. 0x0084, // Range Minimum
  4361. 0x0084, // Range Maximum
  4362. 0x00, // Alignment
  4363. 0x03, // Length
  4364. )
  4365. IO (Decode16,
  4366. 0x0088, // Range Minimum
  4367. 0x0088, // Range Maximum
  4368. 0x00, // Alignment
  4369. 0x01, // Length
  4370. )
  4371. IO (Decode16,
  4372. 0x008C, // Range Minimum
  4373. 0x008C, // Range Maximum
  4374. 0x00, // Alignment
  4375. 0x03, // Length
  4376. )
  4377. IO (Decode16,
  4378. 0x0090, // Range Minimum
  4379. 0x0090, // Range Maximum
  4380. 0x00, // Alignment
  4381. 0x10, // Length
  4382. )
  4383. IO (Decode16,
  4384. 0x00A2, // Range Minimum
  4385. 0x00A2, // Range Maximum
  4386. 0x00, // Alignment
  4387. 0x1E, // Length
  4388. )
  4389. IO (Decode16,
  4390. 0x00E0, // Range Minimum
  4391. 0x00E0, // Range Maximum
  4392. 0x00, // Alignment
  4393. 0x10, // Length
  4394. )
  4395. IO (Decode16,
  4396. 0x04D0, // Range Minimum
  4397. 0x04D0, // Range Maximum
  4398. 0x00, // Alignment
  4399. 0x02, // Length
  4400. )
  4401. })
  4402. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  4403. {
  4404. If (And (MBEC, 0xFFFF))
  4405. {
  4406. Return (CRS1)
  4407. }
  4408. Else
  4409. {
  4410. Return (CRS2)
  4411. }
  4412. }
  4413. }
  4414. }
  4415.  
  4416. Device (RP01)
  4417. {
  4418. Name (_ADR, 0x001C0000) // _ADR: Address
  4419. OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
  4420. Field (PXCS, AnyAcc, NoLock, Preserve)
  4421. {
  4422. VDID, 32,
  4423. Offset (0x50),
  4424. L0SE, 1,
  4425. , 3,
  4426. LDIS, 1,
  4427. Offset (0x51),
  4428. Offset (0x52),
  4429. , 13,
  4430. LASX, 1,
  4431. Offset (0x54),
  4432. , 6,
  4433. HPCE, 1,
  4434. Offset (0x5A),
  4435. ABPX, 1,
  4436. , 2,
  4437. PDCX, 1,
  4438. , 2,
  4439. PDSX, 1,
  4440. Offset (0x5B),
  4441. Offset (0x60),
  4442. Offset (0x62),
  4443. PSPX, 1,
  4444. PMEP, 1,
  4445. Offset (0xA4),
  4446. D3HT, 2,
  4447. Offset (0xD8),
  4448. , 30,
  4449. HPEX, 1,
  4450. PMEX, 1,
  4451. Offset (0xE2),
  4452. , 2,
  4453. L23E, 1,
  4454. L23R, 1,
  4455. Offset (0x324),
  4456. , 3,
  4457. LEDM, 1
  4458. }
  4459.  
  4460. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  4461. {
  4462. Offset (0xDC),
  4463. , 30,
  4464. HPSX, 1,
  4465. PMSX, 1
  4466. }
  4467.  
  4468. Method (_STA, 0, NotSerialized) // _STA: Status
  4469. {
  4470. If (LEqual (VDID, 0xFFFFFFFF))
  4471. {
  4472. Return (Zero)
  4473. }
  4474. Else
  4475. {
  4476. Return (0x0F)
  4477. }
  4478. }
  4479.  
  4480. Name (LTRV, Package (0x04)
  4481. {
  4482. Zero,
  4483. Zero,
  4484. Zero,
  4485. Zero
  4486. })
  4487. Name (OPTS, Zero)
  4488. Name (RPAV, Zero)
  4489. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  4490. {
  4491. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  4492. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  4493. While (One)
  4494. {
  4495. Store (ToInteger (Arg0), _T_0)
  4496. If (LEqual (_T_0, Buffer (0x10)
  4497. {
  4498. /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
  4499. /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
  4500. }))
  4501. {
  4502. While (One)
  4503. {
  4504. Store (ToInteger (Arg2), _T_1)
  4505. If (LEqual (_T_1, Zero))
  4506. {
  4507. If (LEqual (Arg1, 0x02))
  4508. {
  4509. Store (One, OPTS)
  4510. If (LTRE)
  4511. {
  4512. Or (OPTS, 0x40, OPTS)
  4513. }
  4514.  
  4515. If (OBFF)
  4516. {
  4517. Or (OPTS, 0x10, OPTS)
  4518. }
  4519.  
  4520. Return (OPTS)
  4521. }
  4522. Else
  4523. {
  4524. Return (Zero)
  4525. }
  4526. }
  4527. Else
  4528. {
  4529. If (LEqual (_T_1, 0x04))
  4530. {
  4531. If (LEqual (Arg1, 0x02))
  4532. {
  4533. If (OBFF)
  4534. {
  4535. Return (Buffer (0x10)
  4536. {
  4537. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  4538. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
  4539. })
  4540. }
  4541. Else
  4542. {
  4543. Return (Buffer (0x10)
  4544. {
  4545. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  4546. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  4547. })
  4548. }
  4549. }
  4550. }
  4551. Else
  4552. {
  4553. If (LEqual (_T_1, 0x06))
  4554. {
  4555. If (LEqual (Arg1, 0x02))
  4556. {
  4557. If (LTRE)
  4558. {
  4559. If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF)))
  4560. {
  4561. If (LEqual (PCHS, One))
  4562. {
  4563. Store (0x0846, LMSL)
  4564. Store (0x0846, LNSL)
  4565. }
  4566. Else
  4567. {
  4568. If (LEqual (PCHS, 0x02))
  4569. {
  4570. Store (0x1003, LMSL)
  4571. Store (0x1003, LNSL)
  4572. }
  4573. }
  4574. }
  4575.  
  4576. Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV,
  4577. Zero))
  4578. Store (And (LMSL, 0x03FF), Index (LTRV, One))
  4579. Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV,
  4580. 0x02))
  4581. Store (And (LNSL, 0x03FF), Index (LTRV, 0x03))
  4582. Return (LTRV)
  4583. }
  4584. Else
  4585. {
  4586. Return (Zero)
  4587. }
  4588. }
  4589. }
  4590. }
  4591. }
  4592.  
  4593. Break
  4594. }
  4595. }
  4596.  
  4597. Break
  4598. }
  4599.  
  4600. Return (Buffer (One)
  4601. {
  4602. 0x00
  4603. })
  4604. }
  4605.  
  4606. Device (PXSX)
  4607. {
  4608. Name (_ADR, Zero) // _ADR: Address
  4609. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  4610. {
  4611. Return (GPRW (0x69, 0x04))
  4612. }
  4613.  
  4614. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  4615. {
  4616. Return (HPCE)
  4617. }
  4618. }
  4619.  
  4620. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  4621. {
  4622. If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One)))
  4623. {
  4624. Store (One, RPAV)
  4625. }
  4626. }
  4627.  
  4628. Method (HPME, 0, Serialized)
  4629. {
  4630. If (LOr (PSPX, PMEP))
  4631. {
  4632. Store (PMEX, Local1)
  4633. Store (Zero, PMEX)
  4634. Sleep (0x32)
  4635. Store (One, PSPX)
  4636. Sleep (0x32)
  4637. If (PSPX)
  4638. {
  4639. Store (One, PSPX)
  4640. Sleep (0x32)
  4641. }
  4642.  
  4643. Store (Local1, PMEX)
  4644. }
  4645.  
  4646. If (PMSX)
  4647. {
  4648. Store (0xC8, Local0)
  4649. While (Local0)
  4650. {
  4651. Store (One, PMSX)
  4652. If (PMSX)
  4653. {
  4654. Decrement (Local0)
  4655. }
  4656. Else
  4657. {
  4658. Store (Zero, Local0)
  4659. }
  4660. }
  4661.  
  4662. Notify (PXSX, 0x02)
  4663. }
  4664. }
  4665.  
  4666. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  4667. {
  4668. If (PICM)
  4669. {
  4670. Return (AR04 ())
  4671. }
  4672.  
  4673. Return (PR04 ())
  4674. }
  4675. }
  4676.  
  4677. Device (RP02)
  4678. {
  4679. Name (_ADR, 0x001C0001) // _ADR: Address
  4680. OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
  4681. Field (PXCS, AnyAcc, NoLock, Preserve)
  4682. {
  4683. VDID, 32,
  4684. Offset (0x50),
  4685. L0SE, 1,
  4686. , 3,
  4687. LDIS, 1,
  4688. Offset (0x51),
  4689. Offset (0x52),
  4690. , 13,
  4691. LASX, 1,
  4692. Offset (0x54),
  4693. , 6,
  4694. HPCE, 1,
  4695. Offset (0x5A),
  4696. ABPX, 1,
  4697. , 2,
  4698. PDCX, 1,
  4699. , 2,
  4700. PDSX, 1,
  4701. Offset (0x5B),
  4702. Offset (0x60),
  4703. Offset (0x62),
  4704. PSPX, 1,
  4705. PMEP, 1,
  4706. Offset (0xA4),
  4707. D3HT, 2,
  4708. Offset (0xD8),
  4709. , 30,
  4710. HPEX, 1,
  4711. PMEX, 1,
  4712. Offset (0xE2),
  4713. , 2,
  4714. L23E, 1,
  4715. L23R, 1,
  4716. Offset (0x324),
  4717. , 3,
  4718. LEDM, 1
  4719. }
  4720.  
  4721. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  4722. {
  4723. Offset (0xDC),
  4724. , 30,
  4725. HPSX, 1,
  4726. PMSX, 1
  4727. }
  4728.  
  4729. Method (_STA, 0, NotSerialized) // _STA: Status
  4730. {
  4731. If (LEqual (VDID, 0xFFFFFFFF))
  4732. {
  4733. Return (Zero)
  4734. }
  4735. Else
  4736. {
  4737. Return (0x0F)
  4738. }
  4739. }
  4740.  
  4741. Name (LTRV, Package (0x04)
  4742. {
  4743. Zero,
  4744. Zero,
  4745. Zero,
  4746. Zero
  4747. })
  4748. Name (OPTS, Zero)
  4749. Name (RPAV, Zero)
  4750. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  4751. {
  4752. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  4753. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  4754. While (One)
  4755. {
  4756. Store (ToInteger (Arg0), _T_0)
  4757. If (LEqual (_T_0, Buffer (0x10)
  4758. {
  4759. /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
  4760. /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
  4761. }))
  4762. {
  4763. While (One)
  4764. {
  4765. Store (ToInteger (Arg2), _T_1)
  4766. If (LEqual (_T_1, Zero))
  4767. {
  4768. If (LEqual (Arg1, 0x02))
  4769. {
  4770. Store (One, OPTS)
  4771. If (LTRE)
  4772. {
  4773. Or (OPTS, 0x40, OPTS)
  4774. }
  4775.  
  4776. If (OBFF)
  4777. {
  4778. Or (OPTS, 0x10, OPTS)
  4779. }
  4780.  
  4781. Return (OPTS)
  4782. }
  4783. Else
  4784. {
  4785. Return (Zero)
  4786. }
  4787. }
  4788. Else
  4789. {
  4790. If (LEqual (_T_1, 0x04))
  4791. {
  4792. If (LEqual (Arg1, 0x02))
  4793. {
  4794. If (OBFF)
  4795. {
  4796. Return (Buffer (0x10)
  4797. {
  4798. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  4799. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
  4800. })
  4801. }
  4802. Else
  4803. {
  4804. Return (Buffer (0x10)
  4805. {
  4806. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  4807. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  4808. })
  4809. }
  4810. }
  4811. }
  4812. Else
  4813. {
  4814. If (LEqual (_T_1, 0x06))
  4815. {
  4816. If (LEqual (Arg1, 0x02))
  4817. {
  4818. If (LTRE)
  4819. {
  4820. If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF)))
  4821. {
  4822. If (LEqual (PCHS, One))
  4823. {
  4824. Store (0x0846, LMSL)
  4825. Store (0x0846, LNSL)
  4826. }
  4827. Else
  4828. {
  4829. If (LEqual (PCHS, 0x02))
  4830. {
  4831. Store (0x1003, LMSL)
  4832. Store (0x1003, LNSL)
  4833. }
  4834. }
  4835. }
  4836.  
  4837. Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV,
  4838. Zero))
  4839. Store (And (LMSL, 0x03FF), Index (LTRV, One))
  4840. Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV,
  4841. 0x02))
  4842. Store (And (LNSL, 0x03FF), Index (LTRV, 0x03))
  4843. Return (LTRV)
  4844. }
  4845. Else
  4846. {
  4847. Return (Zero)
  4848. }
  4849. }
  4850. }
  4851. }
  4852. }
  4853.  
  4854. Break
  4855. }
  4856. }
  4857.  
  4858. Break
  4859. }
  4860.  
  4861. Return (Buffer (One)
  4862. {
  4863. 0x00
  4864. })
  4865. }
  4866.  
  4867. Device (PXSX)
  4868. {
  4869. Name (_ADR, Zero) // _ADR: Address
  4870. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  4871. {
  4872. Return (GPRW (0x69, 0x04))
  4873. }
  4874.  
  4875. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  4876. {
  4877. Return (HPCE)
  4878. }
  4879. }
  4880.  
  4881. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  4882. {
  4883. If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One)))
  4884. {
  4885. Store (One, RPAV)
  4886. }
  4887. }
  4888.  
  4889. Method (HPME, 0, Serialized)
  4890. {
  4891. If (LOr (PSPX, PMEP))
  4892. {
  4893. Store (PMEX, Local1)
  4894. Store (Zero, PMEX)
  4895. Sleep (0x32)
  4896. Store (One, PSPX)
  4897. Sleep (0x32)
  4898. If (PSPX)
  4899. {
  4900. Store (One, PSPX)
  4901. Sleep (0x32)
  4902. }
  4903.  
  4904. Store (Local1, PMEX)
  4905. }
  4906.  
  4907. If (PMSX)
  4908. {
  4909. Store (0xC8, Local0)
  4910. While (Local0)
  4911. {
  4912. Store (One, PMSX)
  4913. If (PMSX)
  4914. {
  4915. Decrement (Local0)
  4916. }
  4917. Else
  4918. {
  4919. Store (Zero, Local0)
  4920. }
  4921. }
  4922.  
  4923. Notify (PXSX, 0x02)
  4924. }
  4925. }
  4926.  
  4927. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  4928. {
  4929. If (PICM)
  4930. {
  4931. Return (AR05 ())
  4932. }
  4933.  
  4934. Return (PR05 ())
  4935. }
  4936. }
  4937.  
  4938. Device (RP03)
  4939. {
  4940. Name (_ADR, 0x001C0002) // _ADR: Address
  4941. OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
  4942. Field (PXCS, AnyAcc, NoLock, Preserve)
  4943. {
  4944. VDID, 32,
  4945. Offset (0x50),
  4946. L0SE, 1,
  4947. , 3,
  4948. LDIS, 1,
  4949. Offset (0x51),
  4950. Offset (0x52),
  4951. , 13,
  4952. LASX, 1,
  4953. Offset (0x54),
  4954. , 6,
  4955. HPCE, 1,
  4956. Offset (0x5A),
  4957. ABPX, 1,
  4958. , 2,
  4959. PDCX, 1,
  4960. , 2,
  4961. PDSX, 1,
  4962. Offset (0x5B),
  4963. Offset (0x60),
  4964. Offset (0x62),
  4965. PSPX, 1,
  4966. PMEP, 1,
  4967. Offset (0xA4),
  4968. D3HT, 2,
  4969. Offset (0xD8),
  4970. , 30,
  4971. HPEX, 1,
  4972. PMEX, 1,
  4973. Offset (0xE2),
  4974. , 2,
  4975. L23E, 1,
  4976. L23R, 1,
  4977. Offset (0x324),
  4978. , 3,
  4979. LEDM, 1
  4980. }
  4981.  
  4982. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  4983. {
  4984. Offset (0xDC),
  4985. , 30,
  4986. HPSX, 1,
  4987. PMSX, 1
  4988. }
  4989.  
  4990. Method (_STA, 0, NotSerialized) // _STA: Status
  4991. {
  4992. If (LEqual (VDID, 0xFFFFFFFF))
  4993. {
  4994. Return (Zero)
  4995. }
  4996. Else
  4997. {
  4998. Return (0x0F)
  4999. }
  5000. }
  5001.  
  5002. Name (LTRV, Package (0x04)
  5003. {
  5004. Zero,
  5005. Zero,
  5006. Zero,
  5007. Zero
  5008. })
  5009. Name (OPTS, Zero)
  5010. Name (RPAV, Zero)
  5011. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  5012. {
  5013. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  5014. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  5015. While (One)
  5016. {
  5017. Store (ToInteger (Arg0), _T_0)
  5018. If (LEqual (_T_0, Buffer (0x10)
  5019. {
  5020. /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
  5021. /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
  5022. }))
  5023. {
  5024. While (One)
  5025. {
  5026. Store (ToInteger (Arg2), _T_1)
  5027. If (LEqual (_T_1, Zero))
  5028. {
  5029. If (LEqual (Arg1, 0x02))
  5030. {
  5031. Store (One, OPTS)
  5032. If (LTRE)
  5033. {
  5034. Or (OPTS, 0x40, OPTS)
  5035. }
  5036.  
  5037. If (OBFF)
  5038. {
  5039. Or (OPTS, 0x10, OPTS)
  5040. }
  5041.  
  5042. Return (OPTS)
  5043. }
  5044. Else
  5045. {
  5046. Return (Zero)
  5047. }
  5048. }
  5049. Else
  5050. {
  5051. If (LEqual (_T_1, 0x04))
  5052. {
  5053. If (LEqual (Arg1, 0x02))
  5054. {
  5055. If (OBFF)
  5056. {
  5057. Return (Buffer (0x10)
  5058. {
  5059. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  5060. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
  5061. })
  5062. }
  5063. Else
  5064. {
  5065. Return (Buffer (0x10)
  5066. {
  5067. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  5068. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  5069. })
  5070. }
  5071. }
  5072. }
  5073. Else
  5074. {
  5075. If (LEqual (_T_1, 0x06))
  5076. {
  5077. If (LEqual (Arg1, 0x02))
  5078. {
  5079. If (LTRE)
  5080. {
  5081. If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF)))
  5082. {
  5083. If (LEqual (PCHS, One))
  5084. {
  5085. Store (0x0846, LMSL)
  5086. Store (0x0846, LNSL)
  5087. }
  5088. Else
  5089. {
  5090. If (LEqual (PCHS, 0x02))
  5091. {
  5092. Store (0x1003, LMSL)
  5093. Store (0x1003, LNSL)
  5094. }
  5095. }
  5096. }
  5097.  
  5098. Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV,
  5099. Zero))
  5100. Store (And (LMSL, 0x03FF), Index (LTRV, One))
  5101. Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV,
  5102. 0x02))
  5103. Store (And (LNSL, 0x03FF), Index (LTRV, 0x03))
  5104. Return (LTRV)
  5105. }
  5106. Else
  5107. {
  5108. Return (Zero)
  5109. }
  5110. }
  5111. }
  5112. }
  5113. }
  5114.  
  5115. Break
  5116. }
  5117. }
  5118.  
  5119. Break
  5120. }
  5121.  
  5122. Return (Buffer (One)
  5123. {
  5124. 0x00
  5125. })
  5126. }
  5127.  
  5128. Device (PXSX)
  5129. {
  5130. Name (_ADR, Zero) // _ADR: Address
  5131. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  5132. {
  5133. Return (GPRW (0x69, 0x04))
  5134. }
  5135.  
  5136. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  5137. {
  5138. Return (HPCE)
  5139. }
  5140. }
  5141.  
  5142. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  5143. {
  5144. If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One)))
  5145. {
  5146. Store (One, RPAV)
  5147. }
  5148. }
  5149.  
  5150. Method (HPME, 0, Serialized)
  5151. {
  5152. If (LOr (PSPX, PMEP))
  5153. {
  5154. Store (PMEX, Local1)
  5155. Store (Zero, PMEX)
  5156. Sleep (0x32)
  5157. Store (One, PSPX)
  5158. Sleep (0x32)
  5159. If (PSPX)
  5160. {
  5161. Store (One, PSPX)
  5162. Sleep (0x32)
  5163. }
  5164.  
  5165. Store (Local1, PMEX)
  5166. }
  5167.  
  5168. If (PMSX)
  5169. {
  5170. Store (0xC8, Local0)
  5171. While (Local0)
  5172. {
  5173. Store (One, PMSX)
  5174. If (PMSX)
  5175. {
  5176. Decrement (Local0)
  5177. }
  5178. Else
  5179. {
  5180. Store (Zero, Local0)
  5181. }
  5182. }
  5183.  
  5184. Notify (PXSX, 0x02)
  5185. }
  5186. }
  5187.  
  5188. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  5189. {
  5190. If (PICM)
  5191. {
  5192. Return (AR06 ())
  5193. }
  5194.  
  5195. Return (PR06 ())
  5196. }
  5197. }
  5198.  
  5199. Device (RP04)
  5200. {
  5201. Name (_ADR, 0x001C0003) // _ADR: Address
  5202. OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
  5203. Field (PXCS, AnyAcc, NoLock, Preserve)
  5204. {
  5205. VDID, 32,
  5206. Offset (0x50),
  5207. L0SE, 1,
  5208. , 3,
  5209. LDIS, 1,
  5210. Offset (0x51),
  5211. Offset (0x52),
  5212. , 13,
  5213. LASX, 1,
  5214. Offset (0x54),
  5215. , 6,
  5216. HPCE, 1,
  5217. Offset (0x5A),
  5218. ABPX, 1,
  5219. , 2,
  5220. PDCX, 1,
  5221. , 2,
  5222. PDSX, 1,
  5223. Offset (0x5B),
  5224. Offset (0x60),
  5225. Offset (0x62),
  5226. PSPX, 1,
  5227. PMEP, 1,
  5228. Offset (0xA4),
  5229. D3HT, 2,
  5230. Offset (0xD8),
  5231. , 30,
  5232. HPEX, 1,
  5233. PMEX, 1,
  5234. Offset (0xE2),
  5235. , 2,
  5236. L23E, 1,
  5237. L23R, 1,
  5238. Offset (0x324),
  5239. , 3,
  5240. LEDM, 1
  5241. }
  5242.  
  5243. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  5244. {
  5245. Offset (0xDC),
  5246. , 30,
  5247. HPSX, 1,
  5248. PMSX, 1
  5249. }
  5250.  
  5251. Method (_STA, 0, NotSerialized) // _STA: Status
  5252. {
  5253. If (LEqual (VDID, 0xFFFFFFFF))
  5254. {
  5255. Return (Zero)
  5256. }
  5257. Else
  5258. {
  5259. Return (0x0F)
  5260. }
  5261. }
  5262.  
  5263. Name (LTRV, Package (0x04)
  5264. {
  5265. Zero,
  5266. Zero,
  5267. Zero,
  5268. Zero
  5269. })
  5270. Name (OPTS, Zero)
  5271. Name (RPAV, Zero)
  5272. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  5273. {
  5274. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  5275. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  5276. While (One)
  5277. {
  5278. Store (ToInteger (Arg0), _T_0)
  5279. If (LEqual (_T_0, Buffer (0x10)
  5280. {
  5281. /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
  5282. /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
  5283. }))
  5284. {
  5285. While (One)
  5286. {
  5287. Store (ToInteger (Arg2), _T_1)
  5288. If (LEqual (_T_1, Zero))
  5289. {
  5290. If (LEqual (Arg1, 0x02))
  5291. {
  5292. Store (One, OPTS)
  5293. If (LTRE)
  5294. {
  5295. Or (OPTS, 0x40, OPTS)
  5296. }
  5297.  
  5298. If (OBFF)
  5299. {
  5300. Or (OPTS, 0x10, OPTS)
  5301. }
  5302.  
  5303. Return (OPTS)
  5304. }
  5305. Else
  5306. {
  5307. Return (Zero)
  5308. }
  5309. }
  5310. Else
  5311. {
  5312. If (LEqual (_T_1, 0x04))
  5313. {
  5314. If (LEqual (Arg1, 0x02))
  5315. {
  5316. If (OBFF)
  5317. {
  5318. Return (Buffer (0x10)
  5319. {
  5320. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  5321. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
  5322. })
  5323. }
  5324. Else
  5325. {
  5326. Return (Buffer (0x10)
  5327. {
  5328. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  5329. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  5330. })
  5331. }
  5332. }
  5333. }
  5334. Else
  5335. {
  5336. If (LEqual (_T_1, 0x06))
  5337. {
  5338. If (LEqual (Arg1, 0x02))
  5339. {
  5340. If (LTRE)
  5341. {
  5342. If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF)))
  5343. {
  5344. If (LEqual (PCHS, One))
  5345. {
  5346. Store (0x0846, LMSL)
  5347. Store (0x0846, LNSL)
  5348. }
  5349. Else
  5350. {
  5351. If (LEqual (PCHS, 0x02))
  5352. {
  5353. Store (0x1003, LMSL)
  5354. Store (0x1003, LNSL)
  5355. }
  5356. }
  5357. }
  5358.  
  5359. Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV,
  5360. Zero))
  5361. Store (And (LMSL, 0x03FF), Index (LTRV, One))
  5362. Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV,
  5363. 0x02))
  5364. Store (And (LNSL, 0x03FF), Index (LTRV, 0x03))
  5365. Return (LTRV)
  5366. }
  5367. Else
  5368. {
  5369. Return (Zero)
  5370. }
  5371. }
  5372. }
  5373. }
  5374. }
  5375.  
  5376. Break
  5377. }
  5378. }
  5379.  
  5380. Break
  5381. }
  5382.  
  5383. Return (Buffer (One)
  5384. {
  5385. 0x00
  5386. })
  5387. }
  5388.  
  5389. Device (PXSX)
  5390. {
  5391. Name (_ADR, Zero) // _ADR: Address
  5392. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  5393. {
  5394. Return (GPRW (0x69, 0x04))
  5395. }
  5396.  
  5397. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  5398. {
  5399. Return (HPCE)
  5400. }
  5401. }
  5402.  
  5403. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  5404. {
  5405. If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One)))
  5406. {
  5407. Store (One, RPAV)
  5408. }
  5409. }
  5410.  
  5411. Method (HPME, 0, Serialized)
  5412. {
  5413. If (LOr (PSPX, PMEP))
  5414. {
  5415. Store (PMEX, Local1)
  5416. Store (Zero, PMEX)
  5417. Sleep (0x32)
  5418. Store (One, PSPX)
  5419. Sleep (0x32)
  5420. If (PSPX)
  5421. {
  5422. Store (One, PSPX)
  5423. Sleep (0x32)
  5424. }
  5425.  
  5426. Store (Local1, PMEX)
  5427. }
  5428.  
  5429. If (PMSX)
  5430. {
  5431. Store (0xC8, Local0)
  5432. While (Local0)
  5433. {
  5434. Store (One, PMSX)
  5435. If (PMSX)
  5436. {
  5437. Decrement (Local0)
  5438. }
  5439. Else
  5440. {
  5441. Store (Zero, Local0)
  5442. }
  5443. }
  5444.  
  5445. Notify (PXSX, 0x02)
  5446. }
  5447. }
  5448.  
  5449. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  5450. {
  5451. If (PICM)
  5452. {
  5453. Return (AR07 ())
  5454. }
  5455.  
  5456. Return (PR07 ())
  5457. }
  5458. }
  5459.  
  5460. Device (RP05)
  5461. {
  5462. Name (_ADR, 0x001C0004) // _ADR: Address
  5463. OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
  5464. Field (PXCS, AnyAcc, NoLock, Preserve)
  5465. {
  5466. VDID, 32,
  5467. Offset (0x50),
  5468. L0SE, 1,
  5469. , 3,
  5470. LDIS, 1,
  5471. Offset (0x51),
  5472. Offset (0x52),
  5473. , 13,
  5474. LASX, 1,
  5475. Offset (0x54),
  5476. , 6,
  5477. HPCE, 1,
  5478. Offset (0x5A),
  5479. ABPX, 1,
  5480. , 2,
  5481. PDCX, 1,
  5482. , 2,
  5483. PDSX, 1,
  5484. Offset (0x5B),
  5485. Offset (0x60),
  5486. Offset (0x62),
  5487. PSPX, 1,
  5488. PMEP, 1,
  5489. Offset (0xA4),
  5490. D3HT, 2,
  5491. Offset (0xD8),
  5492. , 30,
  5493. HPEX, 1,
  5494. PMEX, 1,
  5495. Offset (0xE2),
  5496. , 2,
  5497. L23E, 1,
  5498. L23R, 1,
  5499. Offset (0x324),
  5500. , 3,
  5501. LEDM, 1
  5502. }
  5503.  
  5504. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  5505. {
  5506. Offset (0xDC),
  5507. , 30,
  5508. HPSX, 1,
  5509. PMSX, 1
  5510. }
  5511.  
  5512. Method (_STA, 0, NotSerialized) // _STA: Status
  5513. {
  5514. If (LEqual (VDID, 0xFFFFFFFF))
  5515. {
  5516. Return (Zero)
  5517. }
  5518. Else
  5519. {
  5520. Return (0x0F)
  5521. }
  5522. }
  5523.  
  5524. Name (LTRV, Package (0x04)
  5525. {
  5526. Zero,
  5527. Zero,
  5528. Zero,
  5529. Zero
  5530. })
  5531. Name (OPTS, Zero)
  5532. Name (RPAV, Zero)
  5533. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  5534. {
  5535. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  5536. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  5537. While (One)
  5538. {
  5539. Store (ToInteger (Arg0), _T_0)
  5540. If (LEqual (_T_0, Buffer (0x10)
  5541. {
  5542. /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
  5543. /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
  5544. }))
  5545. {
  5546. While (One)
  5547. {
  5548. Store (ToInteger (Arg2), _T_1)
  5549. If (LEqual (_T_1, Zero))
  5550. {
  5551. If (LEqual (Arg1, 0x02))
  5552. {
  5553. Store (One, OPTS)
  5554. If (LTRE)
  5555. {
  5556. Or (OPTS, 0x40, OPTS)
  5557. }
  5558.  
  5559. If (OBFF)
  5560. {
  5561. Or (OPTS, 0x10, OPTS)
  5562. }
  5563.  
  5564. Return (OPTS)
  5565. }
  5566. Else
  5567. {
  5568. Return (Zero)
  5569. }
  5570. }
  5571. Else
  5572. {
  5573. If (LEqual (_T_1, 0x04))
  5574. {
  5575. If (LEqual (Arg1, 0x02))
  5576. {
  5577. If (OBFF)
  5578. {
  5579. Return (Buffer (0x10)
  5580. {
  5581. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  5582. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
  5583. })
  5584. }
  5585. Else
  5586. {
  5587. Return (Buffer (0x10)
  5588. {
  5589. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  5590. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  5591. })
  5592. }
  5593. }
  5594. }
  5595. Else
  5596. {
  5597. If (LEqual (_T_1, 0x06))
  5598. {
  5599. If (LEqual (Arg1, 0x02))
  5600. {
  5601. If (LTRE)
  5602. {
  5603. If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF)))
  5604. {
  5605. If (LEqual (PCHS, One))
  5606. {
  5607. Store (0x0846, LMSL)
  5608. Store (0x0846, LNSL)
  5609. }
  5610. Else
  5611. {
  5612. If (LEqual (PCHS, 0x02))
  5613. {
  5614. Store (0x1003, LMSL)
  5615. Store (0x1003, LNSL)
  5616. }
  5617. }
  5618. }
  5619.  
  5620. Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV,
  5621. Zero))
  5622. Store (And (LMSL, 0x03FF), Index (LTRV, One))
  5623. Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV,
  5624. 0x02))
  5625. Store (And (LNSL, 0x03FF), Index (LTRV, 0x03))
  5626. Return (LTRV)
  5627. }
  5628. Else
  5629. {
  5630. Return (Zero)
  5631. }
  5632. }
  5633. }
  5634. }
  5635. }
  5636.  
  5637. Break
  5638. }
  5639. }
  5640.  
  5641. Break
  5642. }
  5643.  
  5644. Return (Buffer (One)
  5645. {
  5646. 0x00
  5647. })
  5648. }
  5649.  
  5650. Device (PXSX)
  5651. {
  5652. Name (_ADR, Zero) // _ADR: Address
  5653. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  5654. {
  5655. Return (GPRW (0x69, 0x04))
  5656. }
  5657.  
  5658. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  5659. {
  5660. Return (HPCE)
  5661. }
  5662. }
  5663.  
  5664. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  5665. {
  5666. If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One)))
  5667. {
  5668. Store (One, RPAV)
  5669. }
  5670. }
  5671.  
  5672. Method (HPME, 0, Serialized)
  5673. {
  5674. If (LOr (PSPX, PMEP))
  5675. {
  5676. Store (PMEX, Local1)
  5677. Store (Zero, PMEX)
  5678. Sleep (0x32)
  5679. Store (One, PSPX)
  5680. Sleep (0x32)
  5681. If (PSPX)
  5682. {
  5683. Store (One, PSPX)
  5684. Sleep (0x32)
  5685. }
  5686.  
  5687. Store (Local1, PMEX)
  5688. }
  5689.  
  5690. If (PMSX)
  5691. {
  5692. Store (0xC8, Local0)
  5693. While (Local0)
  5694. {
  5695. Store (One, PMSX)
  5696. If (PMSX)
  5697. {
  5698. Decrement (Local0)
  5699. }
  5700. Else
  5701. {
  5702. Store (Zero, Local0)
  5703. }
  5704. }
  5705.  
  5706. Notify (PXSX, 0x02)
  5707. }
  5708. }
  5709.  
  5710. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  5711. {
  5712. If (PICM)
  5713. {
  5714. Return (AR08 ())
  5715. }
  5716.  
  5717. Return (PR08 ())
  5718. }
  5719. }
  5720.  
  5721. Device (RP06)
  5722. {
  5723. Name (_ADR, 0x001C0005) // _ADR: Address
  5724. OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
  5725. Field (PXCS, AnyAcc, NoLock, Preserve)
  5726. {
  5727. VDID, 32,
  5728. Offset (0x50),
  5729. L0SE, 1,
  5730. , 3,
  5731. LDIS, 1,
  5732. Offset (0x51),
  5733. Offset (0x52),
  5734. , 13,
  5735. LASX, 1,
  5736. Offset (0x54),
  5737. , 6,
  5738. HPCE, 1,
  5739. Offset (0x5A),
  5740. ABPX, 1,
  5741. , 2,
  5742. PDCX, 1,
  5743. , 2,
  5744. PDSX, 1,
  5745. Offset (0x5B),
  5746. Offset (0x60),
  5747. Offset (0x62),
  5748. PSPX, 1,
  5749. PMEP, 1,
  5750. Offset (0xA4),
  5751. D3HT, 2,
  5752. Offset (0xD8),
  5753. , 30,
  5754. HPEX, 1,
  5755. PMEX, 1,
  5756. Offset (0xE2),
  5757. , 2,
  5758. L23E, 1,
  5759. L23R, 1,
  5760. Offset (0x324),
  5761. , 3,
  5762. LEDM, 1
  5763. }
  5764.  
  5765. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  5766. {
  5767. Offset (0xDC),
  5768. , 30,
  5769. HPSX, 1,
  5770. PMSX, 1
  5771. }
  5772.  
  5773. Method (_STA, 0, NotSerialized) // _STA: Status
  5774. {
  5775. If (LEqual (VDID, 0xFFFFFFFF))
  5776. {
  5777. Return (Zero)
  5778. }
  5779. Else
  5780. {
  5781. Return (0x0F)
  5782. }
  5783. }
  5784.  
  5785. Name (LTRV, Package (0x04)
  5786. {
  5787. Zero,
  5788. Zero,
  5789. Zero,
  5790. Zero
  5791. })
  5792. Name (OPTS, Zero)
  5793. Name (RPAV, Zero)
  5794. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  5795. {
  5796. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  5797. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  5798. While (One)
  5799. {
  5800. Store (ToInteger (Arg0), _T_0)
  5801. If (LEqual (_T_0, Buffer (0x10)
  5802. {
  5803. /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
  5804. /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
  5805. }))
  5806. {
  5807. While (One)
  5808. {
  5809. Store (ToInteger (Arg2), _T_1)
  5810. If (LEqual (_T_1, Zero))
  5811. {
  5812. If (LEqual (Arg1, 0x02))
  5813. {
  5814. Store (One, OPTS)
  5815. If (LTRE)
  5816. {
  5817. Or (OPTS, 0x40, OPTS)
  5818. }
  5819.  
  5820. If (OBFF)
  5821. {
  5822. Or (OPTS, 0x10, OPTS)
  5823. }
  5824.  
  5825. Return (OPTS)
  5826. }
  5827. Else
  5828. {
  5829. Return (Zero)
  5830. }
  5831. }
  5832. Else
  5833. {
  5834. If (LEqual (_T_1, 0x04))
  5835. {
  5836. If (LEqual (Arg1, 0x02))
  5837. {
  5838. If (OBFF)
  5839. {
  5840. Return (Buffer (0x10)
  5841. {
  5842. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  5843. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
  5844. })
  5845. }
  5846. Else
  5847. {
  5848. Return (Buffer (0x10)
  5849. {
  5850. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  5851. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  5852. })
  5853. }
  5854. }
  5855. }
  5856. Else
  5857. {
  5858. If (LEqual (_T_1, 0x06))
  5859. {
  5860. If (LEqual (Arg1, 0x02))
  5861. {
  5862. If (LTRE)
  5863. {
  5864. If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF)))
  5865. {
  5866. If (LEqual (PCHS, One))
  5867. {
  5868. Store (0x0846, LMSL)
  5869. Store (0x0846, LNSL)
  5870. }
  5871. Else
  5872. {
  5873. If (LEqual (PCHS, 0x02))
  5874. {
  5875. Store (0x1003, LMSL)
  5876. Store (0x1003, LNSL)
  5877. }
  5878. }
  5879. }
  5880.  
  5881. Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV,
  5882. Zero))
  5883. Store (And (LMSL, 0x03FF), Index (LTRV, One))
  5884. Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV,
  5885. 0x02))
  5886. Store (And (LNSL, 0x03FF), Index (LTRV, 0x03))
  5887. Return (LTRV)
  5888. }
  5889. Else
  5890. {
  5891. Return (Zero)
  5892. }
  5893. }
  5894. }
  5895. }
  5896. }
  5897.  
  5898. Break
  5899. }
  5900. }
  5901.  
  5902. Break
  5903. }
  5904.  
  5905. Return (Buffer (One)
  5906. {
  5907. 0x00
  5908. })
  5909. }
  5910.  
  5911. Device (PXSX)
  5912. {
  5913. Name (_ADR, Zero) // _ADR: Address
  5914. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  5915. {
  5916. Return (GPRW (0x09, 0x04))
  5917. }
  5918.  
  5919. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  5920. {
  5921. Return (HPCE)
  5922. }
  5923. }
  5924.  
  5925. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  5926. {
  5927. If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One)))
  5928. {
  5929. Store (One, RPAV)
  5930. }
  5931. }
  5932.  
  5933. Method (HPME, 0, Serialized)
  5934. {
  5935. If (LOr (PSPX, PMEP))
  5936. {
  5937. Store (PMEX, Local1)
  5938. Store (Zero, PMEX)
  5939. Sleep (0x32)
  5940. Store (One, PSPX)
  5941. Sleep (0x32)
  5942. If (PSPX)
  5943. {
  5944. Store (One, PSPX)
  5945. Sleep (0x32)
  5946. }
  5947.  
  5948. Store (Local1, PMEX)
  5949. }
  5950.  
  5951. If (PMSX)
  5952. {
  5953. Store (0xC8, Local0)
  5954. While (Local0)
  5955. {
  5956. Store (One, PMSX)
  5957. If (PMSX)
  5958. {
  5959. Decrement (Local0)
  5960. }
  5961. Else
  5962. {
  5963. Store (Zero, Local0)
  5964. }
  5965. }
  5966.  
  5967. Notify (PXSX, 0x02)
  5968. }
  5969. }
  5970.  
  5971. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  5972. {
  5973. If (PICM)
  5974. {
  5975. Return (AR08 ())
  5976. }
  5977.  
  5978. Return (PR08 ())
  5979. }
  5980. }
  5981.  
  5982. Device (RP07)
  5983. {
  5984. Name (_ADR, 0x001C0006) // _ADR: Address
  5985. OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
  5986. Field (PXCS, AnyAcc, NoLock, Preserve)
  5987. {
  5988. VDID, 32,
  5989. Offset (0x50),
  5990. L0SE, 1,
  5991. , 3,
  5992. LDIS, 1,
  5993. Offset (0x51),
  5994. Offset (0x52),
  5995. , 13,
  5996. LASX, 1,
  5997. Offset (0x54),
  5998. , 6,
  5999. HPCE, 1,
  6000. Offset (0x5A),
  6001. ABPX, 1,
  6002. , 2,
  6003. PDCX, 1,
  6004. , 2,
  6005. PDSX, 1,
  6006. Offset (0x5B),
  6007. Offset (0x60),
  6008. Offset (0x62),
  6009. PSPX, 1,
  6010. PMEP, 1,
  6011. Offset (0xA4),
  6012. D3HT, 2,
  6013. Offset (0xD8),
  6014. , 30,
  6015. HPEX, 1,
  6016. PMEX, 1,
  6017. Offset (0xE2),
  6018. , 2,
  6019. L23E, 1,
  6020. L23R, 1,
  6021. Offset (0x324),
  6022. , 3,
  6023. LEDM, 1
  6024. }
  6025.  
  6026. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  6027. {
  6028. Offset (0xDC),
  6029. , 30,
  6030. HPSX, 1,
  6031. PMSX, 1
  6032. }
  6033.  
  6034. Method (_STA, 0, NotSerialized) // _STA: Status
  6035. {
  6036. If (LEqual (VDID, 0xFFFFFFFF))
  6037. {
  6038. Return (Zero)
  6039. }
  6040. Else
  6041. {
  6042. Return (0x0F)
  6043. }
  6044. }
  6045.  
  6046. Name (LTRV, Package (0x04)
  6047. {
  6048. Zero,
  6049. Zero,
  6050. Zero,
  6051. Zero
  6052. })
  6053. Name (OPTS, Zero)
  6054. Name (RPAV, Zero)
  6055. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  6056. {
  6057. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  6058. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  6059. While (One)
  6060. {
  6061. Store (ToInteger (Arg0), _T_0)
  6062. If (LEqual (_T_0, Buffer (0x10)
  6063. {
  6064. /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
  6065. /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
  6066. }))
  6067. {
  6068. While (One)
  6069. {
  6070. Store (ToInteger (Arg2), _T_1)
  6071. If (LEqual (_T_1, Zero))
  6072. {
  6073. If (LEqual (Arg1, 0x02))
  6074. {
  6075. Store (One, OPTS)
  6076. If (LTRE)
  6077. {
  6078. Or (OPTS, 0x40, OPTS)
  6079. }
  6080.  
  6081. If (OBFF)
  6082. {
  6083. Or (OPTS, 0x10, OPTS)
  6084. }
  6085.  
  6086. Return (OPTS)
  6087. }
  6088. Else
  6089. {
  6090. Return (Zero)
  6091. }
  6092. }
  6093. Else
  6094. {
  6095. If (LEqual (_T_1, 0x04))
  6096. {
  6097. If (LEqual (Arg1, 0x02))
  6098. {
  6099. If (OBFF)
  6100. {
  6101. Return (Buffer (0x10)
  6102. {
  6103. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  6104. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
  6105. })
  6106. }
  6107. Else
  6108. {
  6109. Return (Buffer (0x10)
  6110. {
  6111. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  6112. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  6113. })
  6114. }
  6115. }
  6116. }
  6117. Else
  6118. {
  6119. If (LEqual (_T_1, 0x06))
  6120. {
  6121. If (LEqual (Arg1, 0x02))
  6122. {
  6123. If (LTRE)
  6124. {
  6125. If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF)))
  6126. {
  6127. If (LEqual (PCHS, One))
  6128. {
  6129. Store (0x0846, LMSL)
  6130. Store (0x0846, LNSL)
  6131. }
  6132. Else
  6133. {
  6134. If (LEqual (PCHS, 0x02))
  6135. {
  6136. Store (0x1003, LMSL)
  6137. Store (0x1003, LNSL)
  6138. }
  6139. }
  6140. }
  6141.  
  6142. Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV,
  6143. Zero))
  6144. Store (And (LMSL, 0x03FF), Index (LTRV, One))
  6145. Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV,
  6146. 0x02))
  6147. Store (And (LNSL, 0x03FF), Index (LTRV, 0x03))
  6148. Return (LTRV)
  6149. }
  6150. Else
  6151. {
  6152. Return (Zero)
  6153. }
  6154. }
  6155. }
  6156. }
  6157. }
  6158.  
  6159. Break
  6160. }
  6161. }
  6162.  
  6163. Break
  6164. }
  6165.  
  6166. Return (Buffer (One)
  6167. {
  6168. 0x00
  6169. })
  6170. }
  6171.  
  6172. Device (PXSX)
  6173. {
  6174. Name (_ADR, Zero) // _ADR: Address
  6175. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6176. {
  6177. Return (GPRW (0x69, 0x04))
  6178. }
  6179.  
  6180. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  6181. {
  6182. Return (HPCE)
  6183. }
  6184. }
  6185.  
  6186. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  6187. {
  6188. If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One)))
  6189. {
  6190. Store (One, RPAV)
  6191. }
  6192. }
  6193.  
  6194. Method (HPME, 0, Serialized)
  6195. {
  6196. If (LOr (PSPX, PMEP))
  6197. {
  6198. Store (PMEX, Local1)
  6199. Store (Zero, PMEX)
  6200. Sleep (0x32)
  6201. Store (One, PSPX)
  6202. Sleep (0x32)
  6203. If (PSPX)
  6204. {
  6205. Store (One, PSPX)
  6206. Sleep (0x32)
  6207. }
  6208.  
  6209. Store (Local1, PMEX)
  6210. }
  6211.  
  6212. If (PMSX)
  6213. {
  6214. Store (0xC8, Local0)
  6215. While (Local0)
  6216. {
  6217. Store (One, PMSX)
  6218. If (PMSX)
  6219. {
  6220. Decrement (Local0)
  6221. }
  6222. Else
  6223. {
  6224. Store (Zero, Local0)
  6225. }
  6226. }
  6227.  
  6228. Notify (PXSX, 0x02)
  6229. }
  6230. }
  6231.  
  6232. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  6233. {
  6234. If (PICM)
  6235. {
  6236. Return (AR0E ())
  6237. }
  6238.  
  6239. Return (PR0E ())
  6240. }
  6241. }
  6242.  
  6243. Device (RP08)
  6244. {
  6245. Name (_ADR, 0x001C0007) // _ADR: Address
  6246. OperationRegion (PXCS, PCI_Config, Zero, 0x0380)
  6247. Field (PXCS, AnyAcc, NoLock, Preserve)
  6248. {
  6249. VDID, 32,
  6250. Offset (0x50),
  6251. L0SE, 1,
  6252. , 3,
  6253. LDIS, 1,
  6254. Offset (0x51),
  6255. Offset (0x52),
  6256. , 13,
  6257. LASX, 1,
  6258. Offset (0x54),
  6259. , 6,
  6260. HPCE, 1,
  6261. Offset (0x5A),
  6262. ABPX, 1,
  6263. , 2,
  6264. PDCX, 1,
  6265. , 2,
  6266. PDSX, 1,
  6267. Offset (0x5B),
  6268. Offset (0x60),
  6269. Offset (0x62),
  6270. PSPX, 1,
  6271. PMEP, 1,
  6272. Offset (0xA4),
  6273. D3HT, 2,
  6274. Offset (0xD8),
  6275. , 30,
  6276. HPEX, 1,
  6277. PMEX, 1,
  6278. Offset (0xE2),
  6279. , 2,
  6280. L23E, 1,
  6281. L23R, 1,
  6282. Offset (0x324),
  6283. , 3,
  6284. LEDM, 1
  6285. }
  6286.  
  6287. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  6288. {
  6289. Offset (0xDC),
  6290. , 30,
  6291. HPSX, 1,
  6292. PMSX, 1
  6293. }
  6294.  
  6295. Method (_STA, 0, NotSerialized) // _STA: Status
  6296. {
  6297. If (LEqual (VDID, 0xFFFFFFFF))
  6298. {
  6299. Return (Zero)
  6300. }
  6301. Else
  6302. {
  6303. Return (0x0F)
  6304. }
  6305. }
  6306.  
  6307. Name (LTRV, Package (0x04)
  6308. {
  6309. Zero,
  6310. Zero,
  6311. Zero,
  6312. Zero
  6313. })
  6314. Name (OPTS, Zero)
  6315. Name (RPAV, Zero)
  6316. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  6317. {
  6318. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  6319. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  6320. While (One)
  6321. {
  6322. Store (ToInteger (Arg0), _T_0)
  6323. If (LEqual (_T_0, Buffer (0x10)
  6324. {
  6325. /* 0000 */ 0xD0, 0x37, 0xC9, 0xE5, 0x53, 0x35, 0x7A, 0x4D,
  6326. /* 0008 */ 0x91, 0x17, 0xEA, 0x4D, 0x19, 0xC3, 0x43, 0x4D
  6327. }))
  6328. {
  6329. While (One)
  6330. {
  6331. Store (ToInteger (Arg2), _T_1)
  6332. If (LEqual (_T_1, Zero))
  6333. {
  6334. If (LEqual (Arg1, 0x02))
  6335. {
  6336. Store (One, OPTS)
  6337. If (LTRE)
  6338. {
  6339. Or (OPTS, 0x40, OPTS)
  6340. }
  6341.  
  6342. If (OBFF)
  6343. {
  6344. Or (OPTS, 0x10, OPTS)
  6345. }
  6346.  
  6347. Return (OPTS)
  6348. }
  6349. Else
  6350. {
  6351. Return (Zero)
  6352. }
  6353. }
  6354. Else
  6355. {
  6356. If (LEqual (_T_1, 0x04))
  6357. {
  6358. If (LEqual (Arg1, 0x02))
  6359. {
  6360. If (OBFF)
  6361. {
  6362. Return (Buffer (0x10)
  6363. {
  6364. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  6365. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00
  6366. })
  6367. }
  6368. Else
  6369. {
  6370. Return (Buffer (0x10)
  6371. {
  6372. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  6373. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  6374. })
  6375. }
  6376. }
  6377. }
  6378. Else
  6379. {
  6380. If (LEqual (_T_1, 0x06))
  6381. {
  6382. If (LEqual (Arg1, 0x02))
  6383. {
  6384. If (LTRE)
  6385. {
  6386. If (LOr (LEqual (LMSL, 0xFFFFFFFF), LEqual (LNSL, 0xFFFFFFFF)))
  6387. {
  6388. If (LEqual (PCHS, One))
  6389. {
  6390. Store (0x0846, LMSL)
  6391. Store (0x0846, LNSL)
  6392. }
  6393. Else
  6394. {
  6395. If (LEqual (PCHS, 0x02))
  6396. {
  6397. Store (0x1003, LMSL)
  6398. Store (0x1003, LNSL)
  6399. }
  6400. }
  6401. }
  6402.  
  6403. Store (And (ShiftRight (LMSL, 0x0A), 0x07), Index (LTRV,
  6404. Zero))
  6405. Store (And (LMSL, 0x03FF), Index (LTRV, One))
  6406. Store (And (ShiftRight (LNSL, 0x0A), 0x07), Index (LTRV,
  6407. 0x02))
  6408. Store (And (LNSL, 0x03FF), Index (LTRV, 0x03))
  6409. Return (LTRV)
  6410. }
  6411. Else
  6412. {
  6413. Return (Zero)
  6414. }
  6415. }
  6416. }
  6417. }
  6418. }
  6419.  
  6420. Break
  6421. }
  6422. }
  6423.  
  6424. Break
  6425. }
  6426.  
  6427. Return (Buffer (One)
  6428. {
  6429. 0x00
  6430. })
  6431. }
  6432.  
  6433. Device (PXSX)
  6434. {
  6435. Name (_ADR, Zero) // _ADR: Address
  6436. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6437. {
  6438. Return (GPRW (0x69, 0x04))
  6439. }
  6440.  
  6441. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  6442. {
  6443. Return (HPCE)
  6444. }
  6445. }
  6446.  
  6447. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  6448. {
  6449. If (LAnd (LEqual (Arg0, 0x02), LEqual (Arg1, One)))
  6450. {
  6451. Store (One, RPAV)
  6452. }
  6453. }
  6454.  
  6455. Method (HPME, 0, Serialized)
  6456. {
  6457. If (LOr (PSPX, PMEP))
  6458. {
  6459. Store (PMEX, Local1)
  6460. Store (Zero, PMEX)
  6461. Sleep (0x32)
  6462. Store (One, PSPX)
  6463. Sleep (0x32)
  6464. If (PSPX)
  6465. {
  6466. Store (One, PSPX)
  6467. Sleep (0x32)
  6468. }
  6469.  
  6470. Store (Local1, PMEX)
  6471. }
  6472.  
  6473. If (PMSX)
  6474. {
  6475. Store (0xC8, Local0)
  6476. While (Local0)
  6477. {
  6478. Store (One, PMSX)
  6479. If (PMSX)
  6480. {
  6481. Decrement (Local0)
  6482. }
  6483. Else
  6484. {
  6485. Store (Zero, Local0)
  6486. }
  6487. }
  6488.  
  6489. Notify (PXSX, 0x02)
  6490. }
  6491. }
  6492.  
  6493. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  6494. {
  6495. If (PICM)
  6496. {
  6497. Return (AR0F ())
  6498. }
  6499.  
  6500. Return (PR0F ())
  6501. }
  6502. }
  6503.  
  6504. Zero
  6505. Zero
  6506. Zero
  6507. Zero
  6508. Zero
  6509. Zero
  6510. Zero
  6511. Zero
  6512. Zero
  6513. Zero
  6514. Zero
  6515. Zero
  6516. Zero
  6517. Zero
  6518. Zero
  6519. Zero
  6520. Zero
  6521. Zero
  6522. Zero
  6523. Zero
  6524. Zero
  6525. Zero
  6526. Zero
  6527. Zero
  6528. Zero
  6529. Zero
  6530. Zero
  6531. Zero
  6532. Zero
  6533. Zero
  6534. Zero
  6535. Zero
  6536. Zero
  6537. Zero
  6538. Zero
  6539. Zero
  6540. Zero
  6541. Zero
  6542. Zero
  6543. Zero
  6544. Zero
  6545. Zero
  6546. Zero
  6547. Zero
  6548. Zero
  6549. Zero
  6550. Zero
  6551. Zero
  6552. Zero
  6553. Zero
  6554. Zero
  6555. Zero
  6556. Zero
  6557. Zero
  6558. Zero
  6559. Zero
  6560. Zero
  6561. Zero
  6562. Zero
  6563. Zero
  6564. Zero
  6565. Zero
  6566. Zero
  6567. Zero
  6568. Zero
  6569. Zero
  6570. Zero
  6571. Zero
  6572. Zero
  6573. Zero
  6574. Zero
  6575. Zero
  6576. Zero
  6577. Zero
  6578. Zero
  6579. Zero
  6580. Zero
  6581. Zero
  6582. Zero
  6583. Zero
  6584. Zero
  6585. Zero
  6586. Zero
  6587. Zero
  6588. Zero
  6589. Zero
  6590. Zero
  6591. Zero
  6592. Zero
  6593. Zero
  6594. Zero
  6595. Zero
  6596. Zero
  6597. Zero
  6598. Zero
  6599. Zero
  6600. Zero
  6601. Zero
  6602. Zero
  6603. Zero
  6604. Zero
  6605. Zero
  6606. Zero
  6607. Zero
  6608. Zero
  6609. Zero
  6610. Zero
  6611. Zero
  6612. Zero
  6613. Zero
  6614. Zero
  6615. Zero
  6616. Zero
  6617. Zero
  6618. Zero
  6619. Zero
  6620. Zero
  6621. Zero
  6622. Zero
  6623. Zero
  6624. Device (B0D4)
  6625. {
  6626. Name (_ADR, 0x00040000) // _ADR: Address
  6627. }
  6628. }
  6629.  
  6630. Scope (\_GPE)
  6631. {
  6632. Method (_L1D, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  6633. {
  6634. \_SB.PCI0.LPCB.SIOH ()
  6635. Notify (\_SB.PWRB, 0x02)
  6636. }
  6637. }
  6638.  
  6639. Device (PWRB)
  6640. {
  6641. Name (_HID, EisaId ("PNP0C0C")) // _HID: Hardware ID
  6642. Name (_UID, 0xAA) // _UID: Unique ID
  6643. Name (_STA, 0x0B) // _STA: Status
  6644. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  6645. {
  6646. Return (GPRW (0x1D, 0x03))
  6647. }
  6648. }
  6649. }
  6650.  
  6651. Name (RPA0, 0x001C0000)
  6652. Name (RPA1, 0x001C0001)
  6653. Name (RPA2, 0x001C0002)
  6654. Name (RPA3, 0x001C0003)
  6655. Name (RPA4, 0x001C0004)
  6656. Name (RPA5, 0x001C0005)
  6657. Name (RPA6, 0x001C0006)
  6658. Name (RPA7, 0x001C0007)
  6659. Name (PCHS, 0x00000002)
  6660. Name (SRMB, 0xF7FE0000)
  6661. Name (PML1, 0x00001003)
  6662. Name (PML2, 0x00001003)
  6663. Name (PML3, 0x00001003)
  6664. Name (PML4, 0x00001003)
  6665. Name (PML5, 0x00001003)
  6666. Name (PML6, 0x00001003)
  6667. Name (PML7, 0xFFFFFFFF)
  6668. Name (PML8, 0xFFFFFFFF)
  6669. Name (PNL1, 0x00001003)
  6670. Name (PNL2, 0x00001003)
  6671. Name (PNL3, 0x00001003)
  6672. Name (PNL4, 0x00001003)
  6673. Name (PNL5, 0x00001003)
  6674. Name (PNL6, 0x00001003)
  6675. Name (PNL7, 0xFFFFFFFF)
  6676. Name (PNL8, 0xFFFFFFFF)
  6677. Scope (\)
  6678. {
  6679. OperationRegion (IO_D, SystemIO, 0x0810, 0x04)
  6680. Field (IO_D, ByteAcc, NoLock, Preserve)
  6681. {
  6682. TRPD, 8
  6683. }
  6684.  
  6685. OperationRegion (IO_H, SystemIO, 0x1000, 0x04)
  6686. Field (IO_H, ByteAcc, NoLock, Preserve)
  6687. {
  6688. TRPH, 8
  6689. }
  6690.  
  6691. OperationRegion (PMIO, SystemIO, PMBS, 0x80)
  6692. Field (PMIO, ByteAcc, NoLock, Preserve)
  6693. {
  6694. Offset (0x28),
  6695. Offset (0x2A),
  6696. , 3,
  6697. GPE3, 1,
  6698. , 7,
  6699. GPEB, 1,
  6700. Offset (0x3C),
  6701. , 1,
  6702. UPRW, 1,
  6703. Offset (0x42),
  6704. , 1,
  6705. GPEC, 1
  6706. }
  6707.  
  6708. Field (PMIO, ByteAcc, NoLock, WriteAsZeros)
  6709. {
  6710. Offset (0x20),
  6711. Offset (0x22),
  6712. , 3,
  6713. GPS3, 1,
  6714. , 7,
  6715. GPSB, 1,
  6716. Offset (0x64),
  6717. , 9,
  6718. SCIS, 1,
  6719. Offset (0x66)
  6720. }
  6721.  
  6722. OperationRegion (PMLP, SystemIO, Add (PMBS, 0x80), 0x20)
  6723. Field (PMLP, ByteAcc, NoLock, Preserve)
  6724. {
  6725. Offset (0x10),
  6726. Offset (0x11),
  6727. GE08, 1,
  6728. , 8,
  6729. GE17, 1,
  6730. , 27,
  6731. GE45, 1,
  6732. , 5,
  6733. GE51, 1,
  6734. Offset (0x20)
  6735. }
  6736.  
  6737. Field (PMLP, ByteAcc, NoLock, WriteAsZeros)
  6738. {
  6739. Offset (0x01),
  6740. GS08, 1,
  6741. , 8,
  6742. GS17, 1,
  6743. , 27,
  6744. GS45, 1,
  6745. , 5,
  6746. GS51, 1,
  6747. Offset (0x10)
  6748. }
  6749.  
  6750. OperationRegion (GPR, SystemIO, GPBS, 0x0400)
  6751. Field (GPR, ByteAcc, NoLock, Preserve)
  6752. {
  6753. GU00, 8,
  6754. GU01, 8,
  6755. GU02, 8,
  6756. GU03, 8,
  6757. GIO0, 8,
  6758. GIO1, 8,
  6759. GIO2, 8,
  6760. GIO3, 8,
  6761. Offset (0x0C),
  6762. GL00, 8,
  6763. GL01, 8,
  6764. GL02, 8,
  6765. GP24, 1,
  6766. , 2,
  6767. GP27, 1,
  6768. GP28, 1,
  6769. Offset (0x10),
  6770. Offset (0x18),
  6771. GB00, 8,
  6772. GB01, 8,
  6773. GB02, 8,
  6774. GB03, 8,
  6775. Offset (0x2C),
  6776. GIV0, 8,
  6777. GIV1, 8,
  6778. GIV2, 8,
  6779. GIV3, 8,
  6780. GU04, 8,
  6781. GU05, 8,
  6782. GU06, 8,
  6783. GU07, 8,
  6784. GIO4, 8,
  6785. GIO5, 8,
  6786. GIO6, 8,
  6787. GIO7, 8,
  6788. GL04, 8,
  6789. GL05, 8,
  6790. GL06, 8,
  6791. GL07, 8,
  6792. Offset (0x40),
  6793. GU08, 8,
  6794. GU09, 8,
  6795. GU0A, 8,
  6796. GU0B, 8,
  6797. GIO8, 8,
  6798. GIO9, 8,
  6799. GIOA, 8,
  6800. GIOB, 8,
  6801. GL08, 8,
  6802. GL09, 8,
  6803. GL0A, 8,
  6804. GL0B, 8
  6805. }
  6806.  
  6807. OperationRegion (GPRL, SystemIO, GPBS, 0x40)
  6808. Field (GPRL, ByteAcc, NoLock, Preserve)
  6809. {
  6810. Offset (0x01),
  6811. GO08, 1,
  6812. GO09, 1,
  6813. , 3,
  6814. GO13, 1,
  6815. GO14, 1,
  6816. , 2,
  6817. GO17, 1,
  6818. , 27,
  6819. GO45, 1,
  6820. , 5,
  6821. GO51, 1,
  6822. Offset (0x10),
  6823. Offset (0x30),
  6824. GR00, 32,
  6825. GR01, 32,
  6826. GR02, 32
  6827. }
  6828.  
  6829. OperationRegion (RCRB, SystemMemory, SRCB, 0x4000)
  6830. Field (RCRB, DWordAcc, Lock, Preserve)
  6831. {
  6832. Offset (0x1000),
  6833. Offset (0x2330),
  6834. AFEA, 32,
  6835. AFED, 32,
  6836. AFES, 16,
  6837. AFER, 16,
  6838. Offset (0x3000),
  6839. Offset (0x331C),
  6840. Offset (0x331F),
  6841. PMFS, 1,
  6842. Offset (0x3320),
  6843. CKEN, 32,
  6844. Offset (0x3404),
  6845. HPAS, 2,
  6846. , 5,
  6847. HPAE, 1,
  6848. Offset (0x3418),
  6849. , 1,
  6850. ADSD, 1,
  6851. SATD, 1,
  6852. SMBD, 1,
  6853. HDAD, 1,
  6854. Offset (0x341A),
  6855. RP1D, 1,
  6856. RP2D, 1,
  6857. RP3D, 1,
  6858. RP4D, 1,
  6859. RP5D, 1,
  6860. RP6D, 1,
  6861. RP7D, 1,
  6862. RP8D, 1,
  6863. Offset (0x359C),
  6864. UP0D, 1,
  6865. UP1D, 1,
  6866. UP2D, 1,
  6867. UP3D, 1,
  6868. UP4D, 1,
  6869. UP5D, 1,
  6870. UP6D, 1,
  6871. UP7D, 1,
  6872. UP8D, 1,
  6873. UP9D, 1,
  6874. UPAD, 1,
  6875. UPBD, 1,
  6876. UPCD, 1,
  6877. UPDD, 1,
  6878. , 1,
  6879. Offset (0x359E)
  6880. }
  6881.  
  6882. OperationRegion (IO_P, SystemIO, 0x1000, 0x04)
  6883. Field (IO_P, ByteAcc, NoLock, Preserve)
  6884. {
  6885. TRPF, 8
  6886. }
  6887. }
  6888.  
  6889. Scope (_SB)
  6890. {
  6891. Method (RDGI, 1, Serialized)
  6892. {
  6893. If (LLessEqual (Arg0, 0x5E))
  6894. {
  6895. Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
  6896. ), Local0)
  6897. OperationRegion (LGPI, SystemIO, Local0, 0x04)
  6898. Field (LGPI, AnyAcc, NoLock, Preserve)
  6899. {
  6900. , 30,
  6901. TEMP, 1
  6902. }
  6903.  
  6904. Return (TEMP)
  6905. }
  6906.  
  6907. Return (Zero)
  6908. }
  6909.  
  6910. Method (RDGP, 1, Serialized)
  6911. {
  6912. If (LLessEqual (Arg0, 0x5E))
  6913. {
  6914. Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
  6915. ), Local0)
  6916. OperationRegion (LGPI, SystemIO, Local0, 0x04)
  6917. Field (LGPI, AnyAcc, NoLock, Preserve)
  6918. {
  6919. , 31,
  6920. TEMP, 1
  6921. }
  6922.  
  6923. Return (TEMP)
  6924. }
  6925.  
  6926. Return (Zero)
  6927. }
  6928.  
  6929. Method (WTGP, 2, Serialized)
  6930. {
  6931. If (LLessEqual (Arg0, 0x5E))
  6932. {
  6933. Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
  6934. ), Local0)
  6935. OperationRegion (LGPI, SystemIO, Local0, 0x04)
  6936. Field (LGPI, AnyAcc, NoLock, Preserve)
  6937. {
  6938. , 31,
  6939. TEMP, 1
  6940. }
  6941.  
  6942. Store (Arg1, TEMP)
  6943. }
  6944. }
  6945.  
  6946. Method (WTIN, 2, Serialized)
  6947. {
  6948. If (LLessEqual (Arg0, 0x5E))
  6949. {
  6950. Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
  6951. ), Local0)
  6952. OperationRegion (LGPI, SystemIO, Local0, 0x04)
  6953. Field (LGPI, ByteAcc, NoLock, Preserve)
  6954. {
  6955. , 3,
  6956. TEMP, 1
  6957. }
  6958.  
  6959. Store (Arg1, TEMP)
  6960. }
  6961. }
  6962.  
  6963. Method (WPGP, 2, Serialized)
  6964. {
  6965. If (LLessEqual (Arg0, 0x5E))
  6966. {
  6967. Store (Add (Add (GPBS, 0x0104), Multiply (Arg0, 0x08)
  6968. ), Local0)
  6969. OperationRegion (LGPI, SystemIO, Local0, 0x04)
  6970. Field (LGPI, AnyAcc, NoLock, Preserve)
  6971. {
  6972. TEMP, 2
  6973. }
  6974.  
  6975. Store (Arg1, TEMP)
  6976. }
  6977. }
  6978.  
  6979. Method (GP2N, 2, Serialized)
  6980. {
  6981. If (LLessEqual (Arg0, 0x5E))
  6982. {
  6983. Store (Add (Add (GPBS, 0x0100), Multiply (Arg0, 0x08)
  6984. ), Local0)
  6985. OperationRegion (LGPI, SystemIO, Local0, 0x04)
  6986. Field (LGPI, AnyAcc, NoLock, Preserve)
  6987. {
  6988. TEMP, 1
  6989. }
  6990.  
  6991. Store (Arg1, TEMP)
  6992. }
  6993. }
  6994.  
  6995. Method (GP2A, 2, Serialized)
  6996. {
  6997. If (LLessEqual (Arg0, 0x5E))
  6998. {
  6999. Store (Add (Add (GPBS, 0x0104), Multiply (Arg0, 0x08)
  7000. ), Local0)
  7001. OperationRegion (LGP2, SystemIO, Local0, 0x04)
  7002. Field (LGP2, AnyAcc, NoLock, Preserve)
  7003. {
  7004. GPWP, 2,
  7005. GPIS, 1
  7006. }
  7007.  
  7008. If (LEqual (Arg1, One))
  7009. {
  7010. Store (Zero, GPIS)
  7011. Store (Zero, GPWP)
  7012. }
  7013. Else
  7014. {
  7015. Store (0x02, GPWP)
  7016. Store (One, GPIS)
  7017. }
  7018.  
  7019. Store (Add (GPBS, 0x10), Local0)
  7020. OperationRegion (LGPI, SystemIO, Local0, 0x02)
  7021. Field (LGPI, AnyAcc, NoLock, Preserve)
  7022. {
  7023. TEMP, 16
  7024. }
  7025.  
  7026. If (LGreaterEqual (Arg0, 0x2D))
  7027. {
  7028. Subtract (Arg0, 0x28, Local1)
  7029. }
  7030. Else
  7031. {
  7032. If (LLessEqual (Arg0, 0x0A))
  7033. {
  7034. Subtract (Arg0, 0x08, Local1)
  7035. }
  7036. Else
  7037. {
  7038. Subtract (Arg0, 0x0A, Local1)
  7039. }
  7040. }
  7041.  
  7042. Store (ShiftLeft (One, Local1), Local2)
  7043. If (Arg1)
  7044. {
  7045. Or (TEMP, Local2, TEMP)
  7046. }
  7047. Else
  7048. {
  7049. And (TEMP, Not (Local2), TEMP)
  7050. }
  7051. }
  7052. }
  7053.  
  7054. Method (GP2B, 2, Serialized)
  7055. {
  7056. If (LLessEqual (Arg0, 0x5E))
  7057. {
  7058. Store (Add (GPBS, 0x10), Local0)
  7059. OperationRegion (LGPI, SystemIO, Local0, 0x02)
  7060. Field (LGPI, AnyAcc, NoLock, Preserve)
  7061. {
  7062. TEMP, 16
  7063. }
  7064.  
  7065. If (LGreaterEqual (Arg0, 0x2D))
  7066. {
  7067. Subtract (Arg0, 0x28, Local1)
  7068. }
  7069. Else
  7070. {
  7071. If (LLessEqual (Arg0, 0x0A))
  7072. {
  7073. Subtract (Arg0, 0x08, Local1)
  7074. }
  7075. Else
  7076. {
  7077. Subtract (Arg0, 0x0A, Local1)
  7078. }
  7079. }
  7080.  
  7081. Store (ShiftLeft (One, Local1), Local2)
  7082. If (Arg1)
  7083. {
  7084. Or (TEMP, Local2, TEMP)
  7085. }
  7086. Else
  7087. {
  7088. And (TEMP, Not (Local2), TEMP)
  7089. }
  7090. }
  7091. }
  7092. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement