Advertisement
Guest User

Untitled

a guest
Apr 13th, 2015
997
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 637.86 KB | None | 0 0
  1. /*
  2. * Intel ACPI Component Architecture
  3. * AML/ASL+ Disassembler version 20141107-64 [Dec 2 2014]
  4. * Copyright (c) 2000 - 2014 Intel Corporation
  5. *
  6. * Disassembling to symbolic ASL+ operators
  7. *
  8. * Disassembly of dsdt.dat, Wed Feb 18 14:06:14 2015
  9. *
  10. * Original Table Header:
  11. * Signature "DSDT"
  12. * Length 0x000133AB (78763)
  13. * Revision 0x01 **** 32-bit table (V1), no 64-bit math support
  14. * Checksum 0x56
  15. * OEM ID "LENOVO"
  16. * OEM Table ID "TP-GR "
  17. * OEM Revision 0x00001190 (4496)
  18. * Compiler ID "INTL"
  19. * Compiler Version 0x20120711 (538052369)
  20. */
  21. DefinitionBlock ("dsdt.aml", "DSDT", 1, "LENOVO", "TP-GR ", 0x00001190)
  22. {
  23. /*
  24. * iASL Warning: There were 8 external control methods found during
  25. * disassembly, but additional ACPI tables to resolve these externals
  26. * were not specified. This resulting disassembler output file may not
  27. * compile because the disassembler did not know how many arguments
  28. * to assign to these methods. To specify the tables needed to resolve
  29. * external control method references, the -e option can be used to
  30. * specify the filenames. Example iASL invocations:
  31. * iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
  32. * iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
  33. * iasl -e ssdt*.aml -d dsdt.aml
  34. *
  35. * In addition, the -fe option can be used to specify a file containing
  36. * control method external declarations with the associated method
  37. * argument counts. Each line of the file must be of the form:
  38. * External (<method pathname>, MethodObj, <argument count>)
  39. * Invocation:
  40. * iasl -fe refs.txt -d dsdt.aml
  41. *
  42. * The following methods were unresolved and many not compile properly
  43. * because the disassembler had to guess at the number of arguments
  44. * required for each:
  45. */
  46. External (_SB_.PCI0.VID_.AINT, MethodObj) // Warning: Unresolved method, guessing 2 arguments
  47. External (_SB_.PCI0.VID_.DRDY, MethodObj) // Warning: Unresolved method, guessing 6 arguments
  48. External (_SB_.PCI0.VID_.GLIS, MethodObj) // Warning: Unresolved method, guessing 2 arguments
  49. External (_SB_.PCI0.VID_.GSCI, MethodObj) // Warning: Unresolved method, guessing 0 arguments
  50. External (_SB_.PCI0.VID_.GSSE, MethodObj) // Warning: Unresolved method, guessing 1 arguments
  51. External (GDCK, MethodObj) // Warning: Unresolved method, guessing 1 arguments
  52. External (GHDS, MethodObj) // Warning: Unresolved method, guessing 1 arguments
  53. External (GNOT, MethodObj) // Warning: Unresolved method, guessing 2 arguments
  54.  
  55. External (_PR_.CLVL, IntObj)
  56. External (_PR_.CPU0._PSS, IntObj)
  57. External (_SB_.IAOE.GAOS, UnknownObj)
  58. External (_SB_.IAOE.GSWR, UnknownObj)
  59. External (_SB_.PCCD, UnknownObj)
  60. External (_SB_.PCCD.PENB, UnknownObj)
  61. External (_SB_.PCI0.SAT1.PRIM.GTME, UnknownObj)
  62. External (_SB_.PCI0.SAT1.PRT1, UnknownObj)
  63. External (_SB_.PCI0.SAT1.SCND.GTME, UnknownObj)
  64. External (_SB_.PCI0.SAT1.SCND.MSTR, UnknownObj)
  65. External (_SB_.PCI0.VID_.STAT, UnknownObj)
  66. External (_SB_.PCI0.VID_.TCHE, UnknownObj)
  67. External (CADL, UnknownObj)
  68. External (CAL2, UnknownObj)
  69. External (CAL3, UnknownObj)
  70. External (CAL4, UnknownObj)
  71. External (CAL5, UnknownObj)
  72. External (CAL6, UnknownObj)
  73. External (CAL7, UnknownObj)
  74. External (CAL8, UnknownObj)
  75. External (CLID, UnknownObj)
  76. External (CPDL, UnknownObj)
  77. External (CPL2, UnknownObj)
  78. External (CPL3, UnknownObj)
  79. External (CPL4, UnknownObj)
  80. External (CPL5, UnknownObj)
  81. External (CPL6, UnknownObj)
  82. External (CPL7, UnknownObj)
  83. External (CPL8, UnknownObj)
  84. External (DDL2, UnknownObj)
  85. External (DDL3, UnknownObj)
  86. External (DDL4, UnknownObj)
  87. External (DDL5, UnknownObj)
  88. External (DDL6, UnknownObj)
  89. External (DDL7, UnknownObj)
  90. External (DDL8, UnknownObj)
  91. External (DIDL, UnknownObj)
  92. External (NADL, UnknownObj)
  93. External (NDID, UnknownObj)
  94. External (NDL2, UnknownObj)
  95. External (NDL3, UnknownObj)
  96. External (NDL4, UnknownObj)
  97. External (NDL5, UnknownObj)
  98. External (NDL6, UnknownObj)
  99. External (NDL7, UnknownObj)
  100. External (NDL8, UnknownObj)
  101. External (PDC0, UnknownObj)
  102. External (PDC1, UnknownObj)
  103. External (PDC2, UnknownObj)
  104. External (PDC3, UnknownObj)
  105. External (PDC4, UnknownObj)
  106. External (PDC5, UnknownObj)
  107. External (PDC6, UnknownObj)
  108. External (PDC7, UnknownObj)
  109.  
  110. Scope (\_PR)
  111. {
  112. Processor (CPU0, 0x01, 0x00001810, 0x06) {}
  113. Processor (CPU1, 0x02, 0x00001810, 0x06) {}
  114. Processor (CPU2, 0x03, 0x00001810, 0x06) {}
  115. Processor (CPU3, 0x04, 0x00001810, 0x06) {}
  116. Processor (CPU4, 0x05, 0x00001810, 0x06) {}
  117. Processor (CPU5, 0x06, 0x00001810, 0x06) {}
  118. Processor (CPU6, 0x07, 0x00001810, 0x06) {}
  119. Processor (CPU7, 0x08, 0x00001810, 0x06) {}
  120. }
  121.  
  122. Scope (\)
  123. {
  124. Method (PNTF, 1, NotSerialized)
  125. {
  126. If (((Arg0 == 0x80) && !\OSPX))
  127. {
  128. If ((\PPMF & 0x01))
  129. {
  130. If (\CPPX)
  131. {
  132. Notify (\_SB.PCCD, 0x82) // Device-Specific Change
  133. }
  134. }
  135. }
  136. Else
  137. {
  138. If ((\PPMF & 0x0200))
  139. {
  140. If ((((PDC0 & 0x08) && ((Arg0 == 0x80) || (
  141. Arg0 == 0x82))) || ((PDC0 & 0x10) && (Arg0 == 0x81))))
  142. {
  143. Notify (\_PR.CPU0, Arg0)
  144. }
  145.  
  146. If ((((PDC1 & 0x08) && ((Arg0 == 0x80) || (
  147. Arg0 == 0x82))) || ((PDC1 & 0x10) && (Arg0 == 0x81))))
  148. {
  149. Notify (\_PR.CPU1, Arg0)
  150. }
  151.  
  152. If ((((PDC2 & 0x08) && ((Arg0 == 0x80) || (
  153. Arg0 == 0x82))) || ((PDC2 & 0x10) && (Arg0 == 0x81))))
  154. {
  155. Notify (\_PR.CPU2, Arg0)
  156. }
  157.  
  158. If ((((PDC3 & 0x08) && ((Arg0 == 0x80) || (
  159. Arg0 == 0x82))) || ((PDC3 & 0x10) && (Arg0 == 0x81))))
  160. {
  161. Notify (\_PR.CPU3, Arg0)
  162. }
  163.  
  164. If ((((PDC4 & 0x08) && ((Arg0 == 0x80) || (
  165. Arg0 == 0x82))) || ((PDC4 & 0x10) && (Arg0 == 0x81))))
  166. {
  167. Notify (\_PR.CPU4, Arg0)
  168. }
  169.  
  170. If ((((PDC5 & 0x08) && ((Arg0 == 0x80) || (
  171. Arg0 == 0x82))) || ((PDC5 & 0x10) && (Arg0 == 0x81))))
  172. {
  173. Notify (\_PR.CPU5, Arg0)
  174. }
  175.  
  176. If ((((PDC6 & 0x08) && ((Arg0 == 0x80) || (
  177. Arg0 == 0x82))) || ((PDC6 & 0x10) && (Arg0 == 0x81))))
  178. {
  179. Notify (\_PR.CPU6, Arg0)
  180. }
  181.  
  182. If ((((PDC7 & 0x08) && ((Arg0 == 0x80) || (
  183. Arg0 == 0x82))) || ((PDC7 & 0x10) && (Arg0 == 0x81))))
  184. {
  185. Notify (\_PR.CPU7, Arg0)
  186. }
  187. }
  188. Else
  189. {
  190. If (((Arg0 == 0x80) || ((Arg0 == 0x81) || (Arg0 == 0x82))))
  191. {
  192. Notify (\_PR.CPU0, Arg0)
  193. }
  194. }
  195. }
  196. }
  197. }
  198.  
  199. OperationRegion (MNVS, SystemMemory, 0xBCE7D018, 0x1000)
  200. Field (MNVS, DWordAcc, NoLock, Preserve)
  201. {
  202. Offset (0xD00),
  203. GAPA, 32,
  204. GAPL, 32,
  205. DCKI, 32,
  206. DCKS, 32,
  207. VCDL, 1,
  208. VCDC, 1,
  209. VCDT, 1,
  210. VCDD, 1,
  211. , 1,
  212. VCSS, 1,
  213. VCDB, 1,
  214. VCIN, 1,
  215. VVPO, 8,
  216. BRTN, 8,
  217. BRLV, 8,
  218. CDFL, 8,
  219. CDAH, 8,
  220. PMOD, 2,
  221. PDIR, 1,
  222. PDMA, 1,
  223. Offset (0xD17),
  224. LFDC, 1,
  225. Offset (0xD18),
  226. C2NA, 1,
  227. C3NA, 1,
  228. C4NA, 1,
  229. C6NA, 1,
  230. C7NA, 1,
  231. Offset (0xD19),
  232. Offset (0xD1A),
  233. , 2,
  234. , 1,
  235. NHPS, 1,
  236. NPME, 1,
  237. Offset (0xD1B),
  238. UOPT, 8,
  239. BTID, 32,
  240. DPP0, 1,
  241. DPP1, 1,
  242. DPP2, 1,
  243. DPP3, 1,
  244. DPP4, 1,
  245. DPP5, 1,
  246. Offset (0xD21),
  247. Offset (0xD22),
  248. TCRT, 16,
  249. TPSV, 16,
  250. TTC1, 16,
  251. TTC2, 16,
  252. TTSP, 16,
  253. SRAH, 8,
  254. SRHE, 8,
  255. SRE1, 8,
  256. SRE2, 8,
  257. SRE3, 8,
  258. SRE4, 8,
  259. SRE5, 8,
  260. SRE6, 8,
  261. SRU1, 8,
  262. SRU2, 8,
  263. SRU3, 8,
  264. SRU7, 8,
  265. SRU4, 8,
  266. SRU5, 8,
  267. SRU8, 8,
  268. SRPB, 8,
  269. SRLP, 8,
  270. SRSA, 8,
  271. SRSM, 8,
  272. CWAC, 1,
  273. CWAS, 1,
  274. CWUE, 1,
  275. CWUS, 1,
  276. Offset (0xD40),
  277. CWAP, 16,
  278. CWAT, 16,
  279. DBGC, 1,
  280. Offset (0xD45),
  281. FS1L, 16,
  282. FS1M, 16,
  283. FS1H, 16,
  284. FS2L, 16,
  285. FS2M, 16,
  286. FS2H, 16,
  287. FS3L, 16,
  288. FS3M, 16,
  289. FS3H, 16,
  290. TATC, 1,
  291. , 6,
  292. TATL, 1,
  293. TATW, 8,
  294. TNFT, 4,
  295. TNTT, 4,
  296. TDFA, 4,
  297. TDTA, 4,
  298. TDFD, 4,
  299. TDTD, 4,
  300. TCFA, 4,
  301. TCTA, 4,
  302. TCFD, 4,
  303. TCTD, 4,
  304. TSFT, 4,
  305. TSTT, 4,
  306. TIT0, 8,
  307. TCR0, 16,
  308. TPS0, 16,
  309. TIT1, 8,
  310. TCR1, 16,
  311. TPS1, 16,
  312. TIT2, 8,
  313. TCR2, 16,
  314. TPS2, 16,
  315. TIF0, 8,
  316. TIF1, 8,
  317. TIF2, 8,
  318. Offset (0xD78),
  319. BTHI, 1,
  320. Offset (0xD79),
  321. HDIR, 1,
  322. HDEH, 1,
  323. HDSP, 1,
  324. HDPP, 1,
  325. HDUB, 1,
  326. HDMC, 1,
  327. NFCF, 1,
  328. Offset (0xD7A),
  329. TPME, 8,
  330. BIDE, 4,
  331. IDET, 4,
  332. , 1,
  333. DTSE, 1,
  334. Offset (0xD7D),
  335. DTS0, 8,
  336. DTS1, 8,
  337. DT00, 1,
  338. DT01, 1,
  339. DT02, 1,
  340. DT03, 1,
  341. Offset (0xD80),
  342. LIDB, 1,
  343. C4WR, 1,
  344. C4AC, 1,
  345. ODDX, 1,
  346. CMPR, 1,
  347. ILNF, 1,
  348. PLUX, 1,
  349. Offset (0xD81),
  350. Offset (0xD8C),
  351. , 4,
  352. , 1,
  353. IDMM, 1,
  354. Offset (0xD8D),
  355. , 3,
  356. , 1,
  357. , 1,
  358. LIDS, 1,
  359. Offset (0xD8E),
  360. Offset (0xD8F),
  361. , 4,
  362. Offset (0xD90),
  363. TCG0, 1,
  364. TCG1, 1,
  365. Offset (0xD91),
  366. SWGP, 8,
  367. IPMS, 8,
  368. IPMB, 120,
  369. IPMR, 24,
  370. IPMO, 24,
  371. IPMA, 8,
  372. VIGD, 1,
  373. VDSC, 1,
  374. VMSH, 1,
  375. , 1,
  376. VDSP, 1,
  377. Offset (0xDAA),
  378. Offset (0xDAD),
  379. ASFT, 8,
  380. PL1L, 8,
  381. PL1M, 8,
  382. CHKC, 32,
  383. CHKE, 32,
  384. ATRB, 32,
  385. Offset (0xDBD),
  386. PPCR, 8,
  387. TPCR, 5,
  388. Offset (0xDBF),
  389. Offset (0xDCE),
  390. CTDP, 8,
  391. PPCA, 8,
  392. TPCA, 5,
  393. Offset (0xDD1),
  394. BFWB, 296,
  395. OSPX, 1,
  396. OSC4, 1,
  397. CPPX, 1,
  398. Offset (0xDF7),
  399. SPEN, 1,
  400. SCRM, 1,
  401. GFPL, 1,
  402. ETAU, 1,
  403. IHBC, 1,
  404. APMD, 1,
  405. APMF, 1,
  406. Offset (0xDF8),
  407. FTPS, 8,
  408. HIST, 8,
  409. LPST, 8,
  410. LWST, 8,
  411. Offset (0xDFF),
  412. MTAU, 8,
  413. Offset (0xE20),
  414. HPET, 32,
  415. PKLI, 16,
  416. VLCX, 16,
  417. VNIT, 8,
  418. VBD0, 8,
  419. VBDT, 128,
  420. VBPL, 16,
  421. VBPH, 16,
  422. VBML, 8,
  423. VBMH, 8,
  424. VEDI, 1024,
  425. PDCI, 16,
  426. ISCG, 32,
  427. ISSP, 1,
  428. ISWK, 2,
  429. Offset (0xEC7),
  430. SHA1, 160,
  431. FFDT, 1,
  432. Offset (0xEDC),
  433. LWCP, 1,
  434. LWEN, 1,
  435. IOCP, 1,
  436. IOEN, 1,
  437. IOST, 1,
  438. Offset (0xEDD),
  439. USBR, 1,
  440. Offset (0xEDE),
  441. Offset (0xEDF),
  442. Offset (0xEE1),
  443. BT2T, 1,
  444. Offset (0xEE2),
  445. TPPP, 8,
  446. TPPC, 8,
  447. WKRS, 8,
  448. FNWK, 8,
  449. USBC, 8,
  450. XHCC, 8,
  451. ADPC, 32
  452. }
  453.  
  454. Field (MNVS, ByteAcc, NoLock, Preserve)
  455. {
  456. Offset (0xB00),
  457. WITM, 8,
  458. WSEL, 8,
  459. WLS0, 8,
  460. WLS1, 8,
  461. WLS2, 8,
  462. WLS3, 8,
  463. WLS4, 8,
  464. WLS5, 8,
  465. WLS6, 8,
  466. WLS7, 8,
  467. WLS8, 8,
  468. WLS9, 8,
  469. WLSA, 8,
  470. WLSB, 8,
  471. WLSC, 8,
  472. WLSD, 8,
  473. WENC, 8,
  474. WKBD, 8,
  475. WPTY, 8,
  476. WPAS, 1032,
  477. WPNW, 1032,
  478. WSPM, 8,
  479. WSPS, 8,
  480. WSMN, 8,
  481. WSMX, 8,
  482. WSEN, 8,
  483. WSKB, 8,
  484. WASB, 8,
  485. WASI, 16,
  486. WASD, 8,
  487. WASS, 32
  488. }
  489.  
  490. Field (MNVS, ByteAcc, NoLock, Preserve)
  491. {
  492. Offset (0xA00),
  493. DBGS, 1024
  494. }
  495.  
  496. OperationRegion (GNVS, SystemMemory, 0xBCE4BC18, 0x02B0)
  497. Field (GNVS, AnyAcc, Lock, Preserve)
  498. {
  499. OSYS, 16,
  500. SMIF, 8,
  501. PRM0, 8,
  502. PRM1, 8,
  503. Offset (0x0F),
  504. PWRS, 8,
  505. Offset (0x1E),
  506. Offset (0x25),
  507. REVN, 8,
  508. IFFS, 8,
  509. Offset (0x28),
  510. APIC, 8,
  511. TCNT, 8,
  512. PCP0, 8,
  513. PCP1, 8,
  514. PPCM, 8,
  515. PPMF, 32,
  516. C67L, 8,
  517. Offset (0x47),
  518. TPMP, 8,
  519. MORD, 8,
  520. TCGP, 8,
  521. PPRP, 32,
  522. PPRQ, 8,
  523. LPPR, 8,
  524. GTF0, 56,
  525. GTF2, 56,
  526. IDEM, 8,
  527. GTF1, 56,
  528. BID, 16,
  529. PLID, 8,
  530. ECTG, 8,
  531. ISCT, 8,
  532. SLDR, 32,
  533. WAKR, 8,
  534. OSCC, 8,
  535. NEXP, 8,
  536. SBV1, 8,
  537. SBV2, 8,
  538. Offset (0x7A),
  539. DSEN, 8,
  540. ECON, 8,
  541. Offset (0x7D),
  542. CTYP, 8,
  543. L01C, 8,
  544. VFN0, 8,
  545. VFN1, 8,
  546. VFN2, 8,
  547. VFN3, 8,
  548. VFN4, 8,
  549. VFN5, 8,
  550. VFN6, 8,
  551. VFN7, 8,
  552. VFN8, 8,
  553. VFN9, 8,
  554. Offset (0x8F),
  555. ATMC, 8,
  556. PTMC, 8,
  557. ATRA, 8,
  558. PTRA, 8,
  559. PNHM, 32,
  560. TBAB, 32,
  561. TBAH, 32,
  562. RTIP, 8,
  563. TSOD, 8,
  564. ATPC, 8,
  565. PTPC, 8,
  566. PFLV, 8,
  567. BREV, 8,
  568. PDTS, 8,
  569. PKGA, 8,
  570. PAMT, 8,
  571. AC0F, 8,
  572. AC1F, 8,
  573. DTS3, 8,
  574. DTS4, 8,
  575. Offset (0xB0),
  576. LTR1, 8,
  577. LTR2, 8,
  578. LTR3, 8,
  579. LTR4, 8,
  580. LTR5, 8,
  581. LTR6, 8,
  582. LTR7, 8,
  583. LTR8, 8,
  584. OBF1, 8,
  585. OBF2, 8,
  586. OBF3, 8,
  587. OBF4, 8,
  588. OBF5, 8,
  589. OBF6, 8,
  590. OBF7, 8,
  591. OBF8, 8,
  592. XHCI, 8,
  593. XTUB, 32,
  594. XTUS, 32,
  595. XMPB, 32,
  596. DDRF, 8,
  597. RTD3, 8,
  598. PEP0, 8,
  599. PEP3, 8,
  600. DPTF, 8,
  601. SADE, 8,
  602. SACR, 8,
  603. SAHT, 8,
  604. PCHD, 8,
  605. PCHC, 8,
  606. PCHH, 8,
  607. Offset (0xDB),
  608. ECEU, 8,
  609. TGFG, 16,
  610. MEMD, 8,
  611. MEMC, 8,
  612. MEMH, 8,
  613. FND1, 8,
  614. FND2, 8,
  615. AMBD, 8,
  616. AMAT, 8,
  617. AMPT, 8,
  618. AMCT, 8,
  619. AMHT, 8,
  620. SKDE, 8,
  621. SKAT, 8,
  622. SKPT, 8,
  623. SKCT, 8,
  624. SKHT, 8,
  625. EFDE, 8,
  626. EFAT, 8,
  627. EFPT, 8,
  628. EFCT, 8,
  629. EFHT, 8,
  630. VRDE, 8,
  631. VRAT, 8,
  632. VRPT, 8,
  633. VRCT, 8,
  634. VRHT, 8,
  635. DPAP, 8,
  636. DPPP, 8,
  637. DPCP, 8,
  638. DCMP, 8,
  639. TRTV, 8,
  640. LPOE, 8,
  641. LPOP, 8,
  642. LPOS, 8,
  643. LPOW, 8,
  644. LPER, 8,
  645. PPSZ, 32,
  646. DISE, 8,
  647. PFMA, 64,
  648. PFMS, 8,
  649. PFIA, 16,
  650. ICNF, 8,
  651. DSP0, 32,
  652. DSP1, 32,
  653. NFCE, 8,
  654. CODS, 8,
  655. SNHE, 8,
  656. S0ID, 8,
  657. CTDB, 8,
  658. Offset (0x121),
  659. TBTE, 8,
  660. Offset (0x207),
  661. PWRE, 8,
  662. PWRP, 8,
  663. XHPR, 8,
  664. SDS0, 8,
  665. SDS1, 16,
  666. SDS2, 8,
  667. SDS3, 8,
  668. SDS4, 8,
  669. SDS5, 8,
  670. Offset (0x212),
  671. RIC0, 8,
  672. PEPY, 8,
  673. DVS0, 8,
  674. DVS1, 8,
  675. DVS2, 8,
  676. DVS3, 8,
  677. GBSX, 8,
  678. IUBE, 8,
  679. IUCE, 8,
  680. IUDE, 8,
  681. ECNO, 8,
  682. AUDD, 16,
  683. DSPD, 16,
  684. IC0D, 16,
  685. IC1D, 16,
  686. IC1S, 16,
  687. VRRD, 16,
  688. PSCP, 8,
  689. RWAG, 8,
  690. I20D, 16,
  691. I21D, 16,
  692. Offset (0x231),
  693. RCG0, 8,
  694. ECDB, 8,
  695. P2ME, 8,
  696. SSH0, 16,
  697. SSL0, 16,
  698. SSD0, 16,
  699. FMH0, 16,
  700. FML0, 16,
  701. FMD0, 16,
  702. FPH0, 16,
  703. FPL0, 16,
  704. FPD0, 16,
  705. SSH1, 16,
  706. SSL1, 16,
  707. SSD1, 16,
  708. FMH1, 16,
  709. FML1, 16,
  710. FMD1, 16,
  711. FPH1, 16,
  712. FPL1, 16,
  713. FPD1, 16,
  714. M0C0, 16,
  715. M1C0, 16,
  716. M2C0, 16,
  717. M0C1, 16,
  718. M1C1, 16,
  719. M2C1, 16,
  720. M0C2, 16,
  721. M1C2, 16,
  722. M0C3, 16,
  723. M1C3, 16,
  724. M0C4, 16,
  725. M1C4, 16,
  726. M0C5, 16,
  727. M1C5, 16,
  728. TBSF, 8,
  729. GIRQ, 32,
  730. DMTP, 8,
  731. DMTD, 8,
  732. DMSH, 8,
  733. LANP, 8,
  734. Offset (0x27E),
  735. SHSB, 8,
  736. PLCS, 8,
  737. PLVL, 16,
  738. GN1E, 8,
  739. G1AT, 8,
  740. G1PT, 8,
  741. G1CT, 8,
  742. G1HT, 8,
  743. GN2E, 8,
  744. G2AT, 8,
  745. G2PT, 8,
  746. G2CT, 8,
  747. G2HT, 8,
  748. WWSD, 8,
  749. CVSD, 8,
  750. SSDD, 8,
  751. INLD, 8,
  752. IFAT, 8,
  753. IFPT, 8,
  754. IFCT, 8,
  755. IFHT, 8,
  756. DOSD, 8,
  757. USBH, 8,
  758. BCV4, 8,
  759. WTV0, 8,
  760. WTV1, 8,
  761. APFU, 8,
  762. SOHP, 8,
  763. NOHP, 8,
  764. TBSE, 8,
  765. WKFN, 8,
  766. PEPC, 16,
  767. VRSD, 16,
  768. PB1E, 8,
  769. WAND, 8,
  770. WWAT, 8,
  771. WWPT, 8,
  772. WWCT, 8,
  773. WWHT, 8,
  774. Offset (0x2AD),
  775. MPLT, 16,
  776. GR13, 8
  777. }
  778.  
  779. Name (XWMB, 0xBFA00000)
  780. Scope (\_SB)
  781. {
  782. Method (_INI, 0, NotSerialized) // _INI: Initialize
  783. {
  784. If (CondRefOf (\_OSI, Local0))
  785. {
  786. If (\_OSI ("Windows 2001"))
  787. {
  788. \WNTF = 0x01
  789. \WXPF = 0x01
  790. \WSPV = 0x00
  791. OSYS = 0x07D1
  792. }
  793.  
  794. If (\_OSI ("Windows 2001 SP1"))
  795. {
  796. \WSPV = 0x01
  797. OSYS = 0x07D1
  798. }
  799.  
  800. If (\_OSI ("Windows 2001 SP2"))
  801. {
  802. \WSPV = 0x02
  803. OSYS = 0x07D2
  804. }
  805.  
  806. If (\_OSI ("Windows 2006"))
  807. {
  808. \WVIS = 0x01
  809. OSYS = 0x07D6
  810. }
  811.  
  812. If (\_OSI ("Windows 2009"))
  813. {
  814. \WIN7 = 0x01
  815. OSYS = 0x07D9
  816. }
  817.  
  818. If (\_OSI ("Windows 2012"))
  819. {
  820. \WIN8 = 0x01
  821. OSYS = 0x07DC
  822. }
  823.  
  824. If (\_OSI ("Windows 2013"))
  825. {
  826. \WIN8 = 0x01
  827. OSYS = 0x07DD
  828. }
  829.  
  830. If (\_OSI ("Linux"))
  831. {
  832. \LNUX = 0x01
  833. OSYS = 0x03E8
  834. }
  835.  
  836. If (\_OSI ("FreeBSD"))
  837. {
  838. \LNUX = 0x01
  839. OSYS = 0x03E8
  840. }
  841. }
  842. Else
  843. {
  844. If ((\SCMP (\_OS, "Microsoft Windows NT") == Zero))
  845. {
  846. \WNTF = 0x01
  847. }
  848. }
  849.  
  850. If ((\_REV >= 0x02))
  851. {
  852. \H8DR = 0x01
  853. }
  854.  
  855. \OSIF = 0x01
  856. \PWRS = \_SB.PCI0.LPC.EC.AC._PSR ()
  857. \_SB.PCI0.LPC.MOU.MHID ()
  858. If (\LNUX)
  859. {
  860. \_SB.PCI0.LPC.EC.SAUM (0x02)
  861. \UCMS (0x1C)
  862. }
  863.  
  864. \_SB.PCI0.RID = \SRAH
  865. If (VIGD)
  866. {
  867. \_SB.PCI0.VID.RID = \SRHE
  868. }
  869. Else
  870. {
  871. \_SB.PCI0.PEG.RID = \SRHE
  872. }
  873.  
  874. \_SB.PCI0.EXP1.RID = \SRE1
  875. \_SB.PCI0.EXP2.RID = \SRE2
  876. \_SB.PCI0.EXP3.RID = \SRE3
  877. \_SB.PCI0.EHC1.RID = \SRU7
  878. \_SB.PCI0.LPC.RID = \SRLP
  879. \_SB.PCI0.SAT1.RID = \SRSA
  880. \_SB.PCI0.SMBU.RID = \SRSM
  881. \UCMS (0x1D)
  882. }
  883.  
  884. Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
  885. {
  886. CreateDWordField (Arg3, 0x00, STS0)
  887. CreateDWordField (Arg3, 0x04, CAP0)
  888. If ((Arg0 == ToUUID ("0811b06e-4a27-44f9-8d60-3cbbc22e7b48") /* Platform-wide Capabilities */))
  889. {
  890. If ((Arg1 == One))
  891. {
  892. If ((CAP0 & 0x04))
  893. {
  894. If ((RTD3 == 0x00))
  895. {
  896. CAP0 &= 0x3B
  897. STS0 |= 0x10
  898. }
  899. }
  900.  
  901. If ((CAP0 & 0x20))
  902. {
  903. If (CondRefOf (\_SB.PCCD.PENB))
  904. {
  905. If ((\_SB.PCCD.PENB == 0x00))
  906. {
  907. CAP0 &= 0x1F
  908. STS0 |= 0x10
  909. }
  910.  
  911. If ((\_SB.PCCD.PENB == 0x01))
  912. {
  913. \CPPX = 0x01
  914. }
  915. }
  916. Else
  917. {
  918. CAP0 &= 0x1F
  919. STS0 |= 0x10
  920. }
  921. }
  922. }
  923. Else
  924. {
  925. STS0 &= 0xFFFFFF00
  926. STS0 |= 0x0A
  927. }
  928. }
  929. Else
  930. {
  931. STS0 &= 0xFFFFFF00
  932. STS0 |= 0x06
  933. }
  934.  
  935. Return (Arg3)
  936. }
  937.  
  938. Device (LNKA)
  939. {
  940. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  941. Name (_UID, 0x01) // _UID: Unique ID
  942. Method (_STA, 0, NotSerialized) // _STA: Status
  943. {
  944. If (!VPIR (\_SB.PCI0.LPC.PIRA))
  945. {
  946. Return (0x09)
  947. }
  948. Else
  949. {
  950. Return (0x0B)
  951. }
  952. }
  953.  
  954. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  955. {
  956. IRQ (Level, ActiveLow, Shared, )
  957. {3,4,5,6,7,9,10,11}
  958. })
  959. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  960. {
  961. \_SB.PCI0.LPC.PIRA |= 0x80
  962. }
  963.  
  964. Name (BUFA, ResourceTemplate ()
  965. {
  966. IRQ (Level, ActiveLow, Shared, _Y00)
  967. {}
  968. })
  969. CreateWordField (BUFA, \_SB.LNKA._Y00._INT, IRA1) // _INT: Interrupts
  970. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  971. {
  972. Local0 = (\_SB.PCI0.LPC.PIRA & 0x8F)
  973. If (VPIR (Local0))
  974. {
  975. IRA1 = (0x01 << Local0)
  976. }
  977. Else
  978. {
  979. IRA1 = 0x00
  980. }
  981.  
  982. Return (BUFA) /* \_SB_.LNKA.BUFA */
  983. }
  984.  
  985. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  986. {
  987. CreateWordField (Arg0, 0x01, IRA2)
  988. FindSetRightBit (IRA2, Local0)
  989. Local1 = (\_SB.PCI0.LPC.PIRA & 0x70)
  990. Local1 |= Local0--
  991. \_SB.PCI0.LPC.PIRA = Local1
  992. }
  993. }
  994.  
  995. Device (LNKB)
  996. {
  997. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  998. Name (_UID, 0x02) // _UID: Unique ID
  999. Method (_STA, 0, NotSerialized) // _STA: Status
  1000. {
  1001. If (!VPIR (\_SB.PCI0.LPC.PIRB))
  1002. {
  1003. Return (0x09)
  1004. }
  1005. Else
  1006. {
  1007. Return (0x0B)
  1008. }
  1009. }
  1010.  
  1011. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  1012. {
  1013. IRQ (Level, ActiveLow, Shared, )
  1014. {3,4,5,6,7,9,10,11}
  1015. })
  1016. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  1017. {
  1018. \_SB.PCI0.LPC.PIRB |= 0x80
  1019. }
  1020.  
  1021. Name (BUFB, ResourceTemplate ()
  1022. {
  1023. IRQ (Level, ActiveLow, Shared, _Y01)
  1024. {}
  1025. })
  1026. CreateWordField (BUFB, \_SB.LNKB._Y01._INT, IRB1) // _INT: Interrupts
  1027. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  1028. {
  1029. Local0 = (\_SB.PCI0.LPC.PIRB & 0x8F)
  1030. If (VPIR (Local0))
  1031. {
  1032. IRB1 = (0x01 << Local0)
  1033. }
  1034. Else
  1035. {
  1036. IRB1 = 0x00
  1037. }
  1038.  
  1039. Return (BUFB) /* \_SB_.LNKB.BUFB */
  1040. }
  1041.  
  1042. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  1043. {
  1044. CreateWordField (Arg0, 0x01, IRB2)
  1045. FindSetRightBit (IRB2, Local0)
  1046. Local1 = (\_SB.PCI0.LPC.PIRB & 0x70)
  1047. Local1 |= Local0--
  1048. \_SB.PCI0.LPC.PIRB = Local1
  1049. }
  1050. }
  1051.  
  1052. Device (LNKC)
  1053. {
  1054. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1055. Name (_UID, 0x03) // _UID: Unique ID
  1056. Method (_STA, 0, NotSerialized) // _STA: Status
  1057. {
  1058. If (!VPIR (\_SB.PCI0.LPC.PIRC))
  1059. {
  1060. Return (0x09)
  1061. }
  1062. Else
  1063. {
  1064. Return (0x0B)
  1065. }
  1066. }
  1067.  
  1068. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  1069. {
  1070. IRQ (Level, ActiveLow, Shared, )
  1071. {3,4,5,6,7,9,10,11}
  1072. })
  1073. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  1074. {
  1075. \_SB.PCI0.LPC.PIRC |= 0x80
  1076. }
  1077.  
  1078. Name (BUFC, ResourceTemplate ()
  1079. {
  1080. IRQ (Level, ActiveLow, Shared, _Y02)
  1081. {}
  1082. })
  1083. CreateWordField (BUFC, \_SB.LNKC._Y02._INT, IRC1) // _INT: Interrupts
  1084. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  1085. {
  1086. Local0 = (\_SB.PCI0.LPC.PIRC & 0x8F)
  1087. If (VPIR (Local0))
  1088. {
  1089. IRC1 = (0x01 << Local0)
  1090. }
  1091. Else
  1092. {
  1093. IRC1 = 0x00
  1094. }
  1095.  
  1096. Return (BUFC) /* \_SB_.LNKC.BUFC */
  1097. }
  1098.  
  1099. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  1100. {
  1101. CreateWordField (Arg0, 0x01, IRC2)
  1102. FindSetRightBit (IRC2, Local0)
  1103. Local1 = (\_SB.PCI0.LPC.PIRC & 0x70)
  1104. Local1 |= Local0--
  1105. \_SB.PCI0.LPC.PIRC = Local1
  1106. }
  1107. }
  1108.  
  1109. Device (LNKD)
  1110. {
  1111. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1112. Name (_UID, 0x04) // _UID: Unique ID
  1113. Method (_STA, 0, NotSerialized) // _STA: Status
  1114. {
  1115. If (!VPIR (\_SB.PCI0.LPC.PIRD))
  1116. {
  1117. Return (0x09)
  1118. }
  1119. Else
  1120. {
  1121. Return (0x0B)
  1122. }
  1123. }
  1124.  
  1125. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  1126. {
  1127. IRQ (Level, ActiveLow, Shared, )
  1128. {3,4,5,6,7,9,10,11}
  1129. })
  1130. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  1131. {
  1132. \_SB.PCI0.LPC.PIRD |= 0x80
  1133. }
  1134.  
  1135. Name (BUFD, ResourceTemplate ()
  1136. {
  1137. IRQ (Level, ActiveLow, Shared, _Y03)
  1138. {}
  1139. })
  1140. CreateWordField (BUFD, \_SB.LNKD._Y03._INT, IRD1) // _INT: Interrupts
  1141. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  1142. {
  1143. Local0 = (\_SB.PCI0.LPC.PIRD & 0x8F)
  1144. If (VPIR (Local0))
  1145. {
  1146. IRD1 = (0x01 << Local0)
  1147. }
  1148. Else
  1149. {
  1150. IRD1 = 0x00
  1151. }
  1152.  
  1153. Return (BUFD) /* \_SB_.LNKD.BUFD */
  1154. }
  1155.  
  1156. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  1157. {
  1158. CreateWordField (Arg0, 0x01, IRD2)
  1159. FindSetRightBit (IRD2, Local0)
  1160. Local1 = (\_SB.PCI0.LPC.PIRD & 0x70)
  1161. Local1 |= Local0--
  1162. \_SB.PCI0.LPC.PIRD = Local1
  1163. }
  1164. }
  1165.  
  1166. Device (LNKE)
  1167. {
  1168. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1169. Name (_UID, 0x05) // _UID: Unique ID
  1170. Method (_STA, 0, NotSerialized) // _STA: Status
  1171. {
  1172. If (!VPIR (\_SB.PCI0.LPC.PIRE))
  1173. {
  1174. Return (0x09)
  1175. }
  1176. Else
  1177. {
  1178. Return (0x0B)
  1179. }
  1180. }
  1181.  
  1182. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  1183. {
  1184. IRQ (Level, ActiveLow, Shared, )
  1185. {3,4,5,6,7,9,10,11}
  1186. })
  1187. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  1188. {
  1189. \_SB.PCI0.LPC.PIRE |= 0x80
  1190. }
  1191.  
  1192. Name (BUFE, ResourceTemplate ()
  1193. {
  1194. IRQ (Level, ActiveLow, Shared, _Y04)
  1195. {}
  1196. })
  1197. CreateWordField (BUFE, \_SB.LNKE._Y04._INT, IRE1) // _INT: Interrupts
  1198. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  1199. {
  1200. Local0 = (\_SB.PCI0.LPC.PIRE & 0x8F)
  1201. If (VPIR (Local0))
  1202. {
  1203. IRE1 = (0x01 << Local0)
  1204. }
  1205. Else
  1206. {
  1207. IRE1 = 0x00
  1208. }
  1209.  
  1210. Return (BUFE) /* \_SB_.LNKE.BUFE */
  1211. }
  1212.  
  1213. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  1214. {
  1215. CreateWordField (Arg0, 0x01, IRE2)
  1216. FindSetRightBit (IRE2, Local0)
  1217. Local1 = (\_SB.PCI0.LPC.PIRE & 0x70)
  1218. Local1 |= Local0--
  1219. \_SB.PCI0.LPC.PIRE = Local1
  1220. }
  1221. }
  1222.  
  1223. Device (LNKF)
  1224. {
  1225. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1226. Name (_UID, 0x06) // _UID: Unique ID
  1227. Method (_STA, 0, NotSerialized) // _STA: Status
  1228. {
  1229. If (!VPIR (\_SB.PCI0.LPC.PIRF))
  1230. {
  1231. Return (0x09)
  1232. }
  1233. Else
  1234. {
  1235. Return (0x0B)
  1236. }
  1237. }
  1238.  
  1239. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  1240. {
  1241. IRQ (Level, ActiveLow, Shared, )
  1242. {3,4,5,6,7,9,10,11}
  1243. })
  1244. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  1245. {
  1246. \_SB.PCI0.LPC.PIRF |= 0x80
  1247. }
  1248.  
  1249. Name (BUFF, ResourceTemplate ()
  1250. {
  1251. IRQ (Level, ActiveLow, Shared, _Y05)
  1252. {}
  1253. })
  1254. CreateWordField (BUFF, \_SB.LNKF._Y05._INT, IRF1) // _INT: Interrupts
  1255. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  1256. {
  1257. Local0 = (\_SB.PCI0.LPC.PIRF & 0x8F)
  1258. If (VPIR (Local0))
  1259. {
  1260. IRF1 = (0x01 << Local0)
  1261. }
  1262. Else
  1263. {
  1264. IRF1 = 0x00
  1265. }
  1266.  
  1267. Return (BUFF) /* \_SB_.LNKF.BUFF */
  1268. }
  1269.  
  1270. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  1271. {
  1272. CreateWordField (Arg0, 0x01, IRF2)
  1273. FindSetRightBit (IRF2, Local0)
  1274. Local1 = (\_SB.PCI0.LPC.PIRF & 0x70)
  1275. Local1 |= Local0--
  1276. \_SB.PCI0.LPC.PIRF = Local1
  1277. }
  1278. }
  1279.  
  1280. Device (LNKG)
  1281. {
  1282. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1283. Name (_UID, 0x07) // _UID: Unique ID
  1284. Method (_STA, 0, NotSerialized) // _STA: Status
  1285. {
  1286. If (!VPIR (\_SB.PCI0.LPC.PIRG))
  1287. {
  1288. Return (0x09)
  1289. }
  1290. Else
  1291. {
  1292. Return (0x0B)
  1293. }
  1294. }
  1295.  
  1296. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  1297. {
  1298. IRQ (Level, ActiveLow, Shared, )
  1299. {3,4,5,6,7,9,10,11}
  1300. })
  1301. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  1302. {
  1303. \_SB.PCI0.LPC.PIRG |= 0x80
  1304. }
  1305.  
  1306. Name (BUFG, ResourceTemplate ()
  1307. {
  1308. IRQ (Level, ActiveLow, Shared, _Y06)
  1309. {}
  1310. })
  1311. CreateWordField (BUFG, \_SB.LNKG._Y06._INT, IRG1) // _INT: Interrupts
  1312. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  1313. {
  1314. Local0 = (\_SB.PCI0.LPC.PIRG & 0x8F)
  1315. If (VPIR (Local0))
  1316. {
  1317. IRG1 = (0x01 << Local0)
  1318. }
  1319. Else
  1320. {
  1321. IRG1 = 0x00
  1322. }
  1323.  
  1324. Return (BUFG) /* \_SB_.LNKG.BUFG */
  1325. }
  1326.  
  1327. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  1328. {
  1329. CreateWordField (Arg0, 0x01, IRG2)
  1330. FindSetRightBit (IRG2, Local0)
  1331. Local1 = (\_SB.PCI0.LPC.PIRG & 0x70)
  1332. Local1 |= Local0--
  1333. \_SB.PCI0.LPC.PIRG = Local1
  1334. }
  1335. }
  1336.  
  1337. Device (LNKH)
  1338. {
  1339. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1340. Name (_UID, 0x08) // _UID: Unique ID
  1341. Method (_STA, 0, NotSerialized) // _STA: Status
  1342. {
  1343. If (!VPIR (\_SB.PCI0.LPC.PIRH))
  1344. {
  1345. Return (0x09)
  1346. }
  1347. Else
  1348. {
  1349. Return (0x0B)
  1350. }
  1351. }
  1352.  
  1353. Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
  1354. {
  1355. IRQ (Level, ActiveLow, Shared, )
  1356. {3,4,5,6,7,9,10,11}
  1357. })
  1358. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  1359. {
  1360. \_SB.PCI0.LPC.PIRH |= 0x80
  1361. }
  1362.  
  1363. Name (BUFH, ResourceTemplate ()
  1364. {
  1365. IRQ (Level, ActiveLow, Shared, _Y07)
  1366. {}
  1367. })
  1368. CreateWordField (BUFH, \_SB.LNKH._Y07._INT, IRH1) // _INT: Interrupts
  1369. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  1370. {
  1371. Local0 = (\_SB.PCI0.LPC.PIRH & 0x8F)
  1372. If (VPIR (Local0))
  1373. {
  1374. IRH1 = (0x01 << Local0)
  1375. }
  1376. Else
  1377. {
  1378. IRH1 = 0x00
  1379. }
  1380.  
  1381. Return (BUFH) /* \_SB_.LNKH.BUFH */
  1382. }
  1383.  
  1384. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  1385. {
  1386. CreateWordField (Arg0, 0x01, IRH2)
  1387. FindSetRightBit (IRH2, Local0)
  1388. Local1 = (\_SB.PCI0.LPC.PIRH & 0x70)
  1389. Local1 |= Local0--
  1390. \_SB.PCI0.LPC.PIRH = Local1
  1391. }
  1392. }
  1393.  
  1394. Method (VPIR, 1, NotSerialized)
  1395. {
  1396. Local0 = 0x01
  1397. If ((Arg0 & 0x80))
  1398. {
  1399. Local0 = 0x00
  1400. }
  1401. Else
  1402. {
  1403. Local1 = (Arg0 & 0x0F)
  1404. If ((Local1 < 0x03))
  1405. {
  1406. Local0 = 0x00
  1407. }
  1408. Else
  1409. {
  1410. If (((Local1 == 0x08) || (Local1 == 0x0D)))
  1411. {
  1412. Local0 = 0x00
  1413. }
  1414. }
  1415. }
  1416.  
  1417. Return (Local0)
  1418. }
  1419.  
  1420. Device (MEM)
  1421. {
  1422. Name (_HID, EisaId ("PNP0C01") /* System Board */) // _HID: Hardware ID
  1423. Name (MEMS, ResourceTemplate ()
  1424. {
  1425. Memory32Fixed (ReadWrite,
  1426. 0x00000000, // Address Base
  1427. 0x000A0000, // Address Length
  1428. )
  1429. Memory32Fixed (ReadOnly,
  1430. 0x000C0000, // Address Base
  1431. 0x00000000, // Address Length
  1432. _Y08)
  1433. Memory32Fixed (ReadOnly,
  1434. 0x000C4000, // Address Base
  1435. 0x00000000, // Address Length
  1436. _Y09)
  1437. Memory32Fixed (ReadOnly,
  1438. 0x000C8000, // Address Base
  1439. 0x00000000, // Address Length
  1440. _Y0A)
  1441. Memory32Fixed (ReadOnly,
  1442. 0x000CC000, // Address Base
  1443. 0x00000000, // Address Length
  1444. _Y0B)
  1445. Memory32Fixed (ReadOnly,
  1446. 0x000D0000, // Address Base
  1447. 0x00000000, // Address Length
  1448. _Y0C)
  1449. Memory32Fixed (ReadOnly,
  1450. 0x000D4000, // Address Base
  1451. 0x00000000, // Address Length
  1452. _Y0D)
  1453. Memory32Fixed (ReadOnly,
  1454. 0x000D8000, // Address Base
  1455. 0x00000000, // Address Length
  1456. _Y0E)
  1457. Memory32Fixed (ReadOnly,
  1458. 0x000DC000, // Address Base
  1459. 0x00000000, // Address Length
  1460. _Y0F)
  1461. Memory32Fixed (ReadOnly,
  1462. 0x000E0000, // Address Base
  1463. 0x00000000, // Address Length
  1464. _Y10)
  1465. Memory32Fixed (ReadOnly,
  1466. 0x000E4000, // Address Base
  1467. 0x00000000, // Address Length
  1468. _Y11)
  1469. Memory32Fixed (ReadOnly,
  1470. 0x000E8000, // Address Base
  1471. 0x00000000, // Address Length
  1472. _Y12)
  1473. Memory32Fixed (ReadOnly,
  1474. 0x000EC000, // Address Base
  1475. 0x00000000, // Address Length
  1476. _Y13)
  1477. Memory32Fixed (ReadOnly,
  1478. 0x000F0000, // Address Base
  1479. 0x00010000, // Address Length
  1480. )
  1481. Memory32Fixed (ReadWrite,
  1482. 0x00100000, // Address Base
  1483. 0x01EE0000, // Address Length
  1484. _Y14)
  1485. Memory32Fixed (ReadOnly,
  1486. 0xFEC00000, // Address Base
  1487. 0x00140000, // Address Length
  1488. _Y15)
  1489. Memory32Fixed (ReadOnly,
  1490. 0xFED4C000, // Address Base
  1491. 0x012B4000, // Address Length
  1492. _Y16)
  1493. })
  1494. CreateDWordField (MEMS, \_SB.MEM._Y08._LEN, MC0L) // _LEN: Length
  1495. CreateDWordField (MEMS, \_SB.MEM._Y09._LEN, MC4L) // _LEN: Length
  1496. CreateDWordField (MEMS, \_SB.MEM._Y0A._LEN, MC8L) // _LEN: Length
  1497. CreateDWordField (MEMS, \_SB.MEM._Y0B._LEN, MCCL) // _LEN: Length
  1498. CreateDWordField (MEMS, \_SB.MEM._Y0C._LEN, MD0L) // _LEN: Length
  1499. CreateDWordField (MEMS, \_SB.MEM._Y0D._LEN, MD4L) // _LEN: Length
  1500. CreateDWordField (MEMS, \_SB.MEM._Y0E._LEN, MD8L) // _LEN: Length
  1501. CreateDWordField (MEMS, \_SB.MEM._Y0F._LEN, MDCL) // _LEN: Length
  1502. CreateDWordField (MEMS, \_SB.MEM._Y10._LEN, ME0L) // _LEN: Length
  1503. CreateDWordField (MEMS, \_SB.MEM._Y11._LEN, ME4L) // _LEN: Length
  1504. CreateDWordField (MEMS, \_SB.MEM._Y12._LEN, ME8L) // _LEN: Length
  1505. CreateDWordField (MEMS, \_SB.MEM._Y13._LEN, MECL) // _LEN: Length
  1506. CreateBitField (MEMS, \_SB.MEM._Y08._RW, MC0W) // _RW_: Read-Write Status
  1507. CreateBitField (MEMS, \_SB.MEM._Y09._RW, MC4W) // _RW_: Read-Write Status
  1508. CreateBitField (MEMS, \_SB.MEM._Y0A._RW, MC8W) // _RW_: Read-Write Status
  1509. CreateBitField (MEMS, \_SB.MEM._Y0B._RW, MCCW) // _RW_: Read-Write Status
  1510. CreateBitField (MEMS, \_SB.MEM._Y0C._RW, MD0W) // _RW_: Read-Write Status
  1511. CreateBitField (MEMS, \_SB.MEM._Y0D._RW, MD4W) // _RW_: Read-Write Status
  1512. CreateBitField (MEMS, \_SB.MEM._Y0E._RW, MD8W) // _RW_: Read-Write Status
  1513. CreateBitField (MEMS, \_SB.MEM._Y0F._RW, MDCW) // _RW_: Read-Write Status
  1514. CreateBitField (MEMS, \_SB.MEM._Y10._RW, ME0W) // _RW_: Read-Write Status
  1515. CreateBitField (MEMS, \_SB.MEM._Y11._RW, ME4W) // _RW_: Read-Write Status
  1516. CreateBitField (MEMS, \_SB.MEM._Y12._RW, ME8W) // _RW_: Read-Write Status
  1517. CreateBitField (MEMS, \_SB.MEM._Y13._RW, MECW) // _RW_: Read-Write Status
  1518. CreateDWordField (MEMS, \_SB.MEM._Y14._BAS, MEB1) // _BAS: Base Address
  1519. CreateDWordField (MEMS, \_SB.MEM._Y14._LEN, MEL1) // _LEN: Length
  1520. CreateDWordField (MEMS, \_SB.MEM._Y15._LEN, MEL2) // _LEN: Length
  1521. CreateDWordField (MEMS, \_SB.MEM._Y16._LEN, MEL3) // _LEN: Length
  1522. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  1523. {
  1524. Local0 = (\_SB.PCI0.PAM1 & 0x03)
  1525. If (Local0)
  1526. {
  1527. MC0L = 0x4000
  1528. If ((Local0 & 0x02))
  1529. {
  1530. MC0W = 0x01
  1531. }
  1532. }
  1533.  
  1534. Local0 = (\_SB.PCI0.PAM1 & 0x30)
  1535. If (Local0)
  1536. {
  1537. MC4L = 0x4000
  1538. If ((Local0 & 0x20))
  1539. {
  1540. MC4W = 0x01
  1541. }
  1542. }
  1543.  
  1544. Local0 = (\_SB.PCI0.PAM2 & 0x03)
  1545. If (Local0)
  1546. {
  1547. MC8L = 0x4000
  1548. If ((Local0 & 0x02))
  1549. {
  1550. MC8W = 0x01
  1551. }
  1552. }
  1553.  
  1554. Local0 = (\_SB.PCI0.PAM2 & 0x30)
  1555. If (Local0)
  1556. {
  1557. MCCL = 0x4000
  1558. If ((Local0 & 0x20))
  1559. {
  1560. MCCW = 0x01
  1561. }
  1562. }
  1563.  
  1564. Local0 = (\_SB.PCI0.PAM3 & 0x03)
  1565. If (Local0)
  1566. {
  1567. MD0L = 0x4000
  1568. If ((Local0 & 0x02))
  1569. {
  1570. MD0W = 0x01
  1571. }
  1572. }
  1573.  
  1574. Local0 = (\_SB.PCI0.PAM3 & 0x30)
  1575. If (Local0)
  1576. {
  1577. MD4L = 0x4000
  1578. If ((Local0 & 0x20))
  1579. {
  1580. MD4W = 0x01
  1581. }
  1582. }
  1583.  
  1584. Local0 = (\_SB.PCI0.PAM4 & 0x03)
  1585. If (Local0)
  1586. {
  1587. MD8L = 0x4000
  1588. If ((Local0 & 0x02))
  1589. {
  1590. MD8W = 0x01
  1591. }
  1592. }
  1593.  
  1594. Local0 = (\_SB.PCI0.PAM4 & 0x30)
  1595. If (Local0)
  1596. {
  1597. MDCL = 0x4000
  1598. If ((Local0 & 0x20))
  1599. {
  1600. MDCW = 0x01
  1601. }
  1602. }
  1603.  
  1604. Local0 = (\_SB.PCI0.PAM5 & 0x03)
  1605. If (Local0)
  1606. {
  1607. ME0L = 0x4000
  1608. If ((Local0 & 0x02))
  1609. {
  1610. ME0W = 0x01
  1611. }
  1612. }
  1613.  
  1614. Local0 = (\_SB.PCI0.PAM5 & 0x30)
  1615. If (Local0)
  1616. {
  1617. ME4L = 0x4000
  1618. If ((Local0 & 0x20))
  1619. {
  1620. ME4W = 0x01
  1621. }
  1622. }
  1623.  
  1624. Local0 = (\_SB.PCI0.PAM6 & 0x03)
  1625. If (Local0)
  1626. {
  1627. ME8L = 0x4000
  1628. If ((Local0 & 0x02))
  1629. {
  1630. ME8W = 0x01
  1631. }
  1632. }
  1633.  
  1634. Local0 = (\_SB.PCI0.PAM6 & 0x30)
  1635. If (Local0)
  1636. {
  1637. MECL = 0x4000
  1638. If ((Local0 & 0x20))
  1639. {
  1640. MECW = 0x01
  1641. }
  1642. }
  1643.  
  1644. MEL1 = (\MEMX - MEB1) /* \_SB_.MEM_.MEB1 */
  1645. If ((\_SB.PCI0.LPC.TPM._STA () != 0x0F))
  1646. {
  1647. MEL2 = 0x01400000
  1648. MEL3 = 0x00
  1649. }
  1650.  
  1651. Return (MEMS) /* \_SB_.MEM_.MEMS */
  1652. }
  1653. }
  1654.  
  1655. Device (LID)
  1656. {
  1657. Name (_HID, EisaId ("PNP0C0D") /* Lid Device */) // _HID: Hardware ID
  1658. Method (_LID, 0, NotSerialized) // _LID: Lid Status
  1659. {
  1660. If (((\ILNF == 0x00) && (\PLUX == 0x00)))
  1661. {
  1662. If (\H8DR)
  1663. {
  1664. Return (\_SB.PCI0.LPC.EC.HPLD)
  1665. }
  1666. Else
  1667. {
  1668. If ((\RBEC (0x46) & 0x04))
  1669. {
  1670. Return (0x01)
  1671. }
  1672. Else
  1673. {
  1674. Return (0x00)
  1675. }
  1676. }
  1677. }
  1678. Else
  1679. {
  1680. Return (0x01)
  1681. }
  1682. }
  1683.  
  1684. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  1685. {
  1686. If (\LWCP)
  1687. {
  1688. Return (Package (0x02)
  1689. {
  1690. 0x0D,
  1691. 0x04
  1692. })
  1693. }
  1694. Else
  1695. {
  1696. Return (Package (0x02)
  1697. {
  1698. 0x0D,
  1699. 0x03
  1700. })
  1701. }
  1702. }
  1703.  
  1704. Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
  1705. {
  1706. If (\H8DR)
  1707. {
  1708. If (Arg0)
  1709. {
  1710. \_SB.PCI0.LPC.EC.HWLO = 0x01
  1711. }
  1712. Else
  1713. {
  1714. \_SB.PCI0.LPC.EC.HWLO = 0x00
  1715. }
  1716. }
  1717. Else
  1718. {
  1719. If (Arg0)
  1720. {
  1721. \MBEC (0x32, 0xFF, 0x04)
  1722. }
  1723. Else
  1724. {
  1725. \MBEC (0x32, 0xFB, 0x00)
  1726. }
  1727. }
  1728.  
  1729. If (\LWCP)
  1730. {
  1731. If (Arg0)
  1732. {
  1733. \LWEN = 0x01
  1734. }
  1735. Else
  1736. {
  1737. \LWEN = 0x00
  1738. }
  1739. }
  1740. }
  1741. }
  1742.  
  1743. Device (SLPB)
  1744. {
  1745. Name (_HID, EisaId ("PNP0C0E") /* Sleep Button Device */) // _HID: Hardware ID
  1746. Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
  1747. {
  1748. Return (Package (0x02)
  1749. {
  1750. 0x0D,
  1751. 0x03
  1752. })
  1753. }
  1754.  
  1755. Method (_PSW, 1, NotSerialized) // _PSW: Power State Wake
  1756. {
  1757. If (\H8DR)
  1758. {
  1759. If (Arg0)
  1760. {
  1761. \_SB.PCI0.LPC.EC.HWFN = 0x01
  1762. }
  1763. Else
  1764. {
  1765. \_SB.PCI0.LPC.EC.HWFN = 0x00
  1766. }
  1767. }
  1768. Else
  1769. {
  1770. If (Arg0)
  1771. {
  1772. \MBEC (0x32, 0xFF, 0x10)
  1773. }
  1774. Else
  1775. {
  1776. \MBEC (0x32, 0xEF, 0x00)
  1777. }
  1778. }
  1779. }
  1780. }
  1781.  
  1782. Scope (\)
  1783. {
  1784. Name (UPC0, Package (0x04)
  1785. {
  1786. 0xFF,
  1787. 0x00,
  1788. 0x00,
  1789. 0x00
  1790. })
  1791. Name (PLD0, Buffer (0x10)
  1792. {
  1793. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  1794. /* 0008 */ 0x99, 0x11, 0x80, 0x00, 0x03, 0x00, 0x00, 0x00 /* ........ */
  1795. })
  1796. Name (UPC1, Package (0x04)
  1797. {
  1798. 0xFF,
  1799. 0x00,
  1800. 0x00,
  1801. 0x00
  1802. })
  1803. Name (PLD1, Buffer (0x10)
  1804. {
  1805. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  1806. /* 0008 */ 0x91, 0x12, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00 /* ........ */
  1807. })
  1808. Name (UPC2, Package (0x04)
  1809. {
  1810. 0xFF,
  1811. 0x00,
  1812. 0x00,
  1813. 0x00
  1814. })
  1815. Name (PLD2, Buffer (0x10)
  1816. {
  1817. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  1818. /* 0008 */ 0x9B, 0x11, 0x80, 0x01, 0x03, 0x00, 0x00, 0x00 /* ........ */
  1819. })
  1820. Name (UPC3, Package (0x04)
  1821. {
  1822. 0x00,
  1823. 0x02,
  1824. 0x00,
  1825. 0x00
  1826. })
  1827. Name (PLD3, Buffer (0x10)
  1828. {
  1829. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  1830. /* 0008 */ 0x48, 0x1D, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00 /* H....... */
  1831. })
  1832. Name (UPC4, Package (0x04)
  1833. {
  1834. 0xFF,
  1835. 0xFF,
  1836. 0x00,
  1837. 0x00
  1838. })
  1839. Name (PLD4, Buffer (0x10)
  1840. {
  1841. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  1842. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 0....... */
  1843. })
  1844. Name (UPCI, Package (0x04)
  1845. {
  1846. 0x00,
  1847. 0xFF,
  1848. 0x00,
  1849. 0x00
  1850. })
  1851. Name (PLDI, Buffer (0x10)
  1852. {
  1853. /* 0000 */ 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  1854. /* 0008 */ 0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 0....... */
  1855. })
  1856. Name (PLDC, Buffer (0x14)
  1857. {
  1858. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  1859. /* 0008 */ 0x24, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* $....... */
  1860. /* 0010 */ 0xDD, 0x00, 0x95, 0x00 /* .... */
  1861. })
  1862. }
  1863.  
  1864. Name (XWMB, 0xFFFFFFFF)
  1865. Device (PCI0)
  1866. {
  1867. Name (_BBN, 0x00) // _BBN: BIOS Bus Number
  1868. Name (_ADR, 0x00) // _ADR: Address
  1869. Name (RID, 0x00)
  1870. Name (_S3D, 0x02) // _S3D: S3 Device State
  1871. Name (LRRT, Package (0x17)
  1872. {
  1873. Package (0x04)
  1874. {
  1875. 0x0001FFFF,
  1876. 0x00,
  1877. \_SB.LNKA,
  1878. 0x00
  1879. },
  1880.  
  1881. Package (0x04)
  1882. {
  1883. 0x0002FFFF,
  1884. 0x00,
  1885. \_SB.LNKA,
  1886. 0x00
  1887. },
  1888.  
  1889. Package (0x04)
  1890. {
  1891. 0x0003FFFF,
  1892. 0x00,
  1893. \_SB.LNKA,
  1894. 0x00
  1895. },
  1896.  
  1897. Package (0x04)
  1898. {
  1899. 0x0014FFFF,
  1900. 0x00,
  1901. \_SB.LNKA,
  1902. 0x00
  1903. },
  1904.  
  1905. Package (0x04)
  1906. {
  1907. 0x0016FFFF,
  1908. 0x00,
  1909. \_SB.LNKA,
  1910. 0x00
  1911. },
  1912.  
  1913. Package (0x04)
  1914. {
  1915. 0x0016FFFF,
  1916. 0x01,
  1917. \_SB.LNKD,
  1918. 0x00
  1919. },
  1920.  
  1921. Package (0x04)
  1922. {
  1923. 0x0016FFFF,
  1924. 0x02,
  1925. \_SB.LNKC,
  1926. 0x00
  1927. },
  1928.  
  1929. Package (0x04)
  1930. {
  1931. 0x0016FFFF,
  1932. 0x03,
  1933. \_SB.LNKB,
  1934. 0x00
  1935. },
  1936.  
  1937. Package (0x04)
  1938. {
  1939. 0x0019FFFF,
  1940. 0x00,
  1941. \_SB.LNKE,
  1942. 0x00
  1943. },
  1944.  
  1945. Package (0x04)
  1946. {
  1947. 0x001AFFFF,
  1948. 0x00,
  1949. \_SB.LNKA,
  1950. 0x00
  1951. },
  1952.  
  1953. Package (0x04)
  1954. {
  1955. 0x001BFFFF,
  1956. 0x00,
  1957. \_SB.LNKG,
  1958. 0x00
  1959. },
  1960.  
  1961. Package (0x04)
  1962. {
  1963. 0x001CFFFF,
  1964. 0x00,
  1965. \_SB.LNKA,
  1966. 0x00
  1967. },
  1968.  
  1969. Package (0x04)
  1970. {
  1971. 0x001CFFFF,
  1972. 0x01,
  1973. \_SB.LNKB,
  1974. 0x00
  1975. },
  1976.  
  1977. Package (0x04)
  1978. {
  1979. 0x001CFFFF,
  1980. 0x02,
  1981. \_SB.LNKC,
  1982. 0x00
  1983. },
  1984.  
  1985. Package (0x04)
  1986. {
  1987. 0x001CFFFF,
  1988. 0x03,
  1989. \_SB.LNKD,
  1990. 0x00
  1991. },
  1992.  
  1993. Package (0x04)
  1994. {
  1995. 0x001DFFFF,
  1996. 0x00,
  1997. \_SB.LNKH,
  1998. 0x00
  1999. },
  2000.  
  2001. Package (0x04)
  2002. {
  2003. 0x001DFFFF,
  2004. 0x01,
  2005. \_SB.LNKD,
  2006. 0x00
  2007. },
  2008.  
  2009. Package (0x04)
  2010. {
  2011. 0x001DFFFF,
  2012. 0x02,
  2013. \_SB.LNKA,
  2014. 0x00
  2015. },
  2016.  
  2017. Package (0x04)
  2018. {
  2019. 0x001DFFFF,
  2020. 0x03,
  2021. \_SB.LNKC,
  2022. 0x00
  2023. },
  2024.  
  2025. Package (0x04)
  2026. {
  2027. 0x001FFFFF,
  2028. 0x00,
  2029. \_SB.LNKF,
  2030. 0x00
  2031. },
  2032.  
  2033. Package (0x04)
  2034. {
  2035. 0x001FFFFF,
  2036. 0x01,
  2037. \_SB.LNKD,
  2038. 0x00
  2039. },
  2040.  
  2041. Package (0x04)
  2042. {
  2043. 0x001FFFFF,
  2044. 0x02,
  2045. \_SB.LNKC,
  2046. 0x00
  2047. },
  2048.  
  2049. Package (0x04)
  2050. {
  2051. 0x001FFFFF,
  2052. 0x03,
  2053. \_SB.LNKA,
  2054. 0x00
  2055. }
  2056. })
  2057. Name (ARRT, Package (0x17)
  2058. {
  2059. Package (0x04)
  2060. {
  2061. 0x0001FFFF,
  2062. 0x00,
  2063. 0x00,
  2064. 0x10
  2065. },
  2066.  
  2067. Package (0x04)
  2068. {
  2069. 0x0002FFFF,
  2070. 0x00,
  2071. 0x00,
  2072. 0x10
  2073. },
  2074.  
  2075. Package (0x04)
  2076. {
  2077. 0x0003FFFF,
  2078. 0x00,
  2079. 0x00,
  2080. 0x10
  2081. },
  2082.  
  2083. Package (0x04)
  2084. {
  2085. 0x0014FFFF,
  2086. 0x00,
  2087. 0x00,
  2088. 0x10
  2089. },
  2090.  
  2091. Package (0x04)
  2092. {
  2093. 0x0016FFFF,
  2094. 0x00,
  2095. 0x00,
  2096. 0x10
  2097. },
  2098.  
  2099. Package (0x04)
  2100. {
  2101. 0x0016FFFF,
  2102. 0x01,
  2103. 0x00,
  2104. 0x13
  2105. },
  2106.  
  2107. Package (0x04)
  2108. {
  2109. 0x0016FFFF,
  2110. 0x02,
  2111. 0x00,
  2112. 0x12
  2113. },
  2114.  
  2115. Package (0x04)
  2116. {
  2117. 0x0016FFFF,
  2118. 0x03,
  2119. 0x00,
  2120. 0x11
  2121. },
  2122.  
  2123. Package (0x04)
  2124. {
  2125. 0x0019FFFF,
  2126. 0x00,
  2127. 0x00,
  2128. 0x14
  2129. },
  2130.  
  2131. Package (0x04)
  2132. {
  2133. 0x001AFFFF,
  2134. 0x00,
  2135. 0x00,
  2136. 0x10
  2137. },
  2138.  
  2139. Package (0x04)
  2140. {
  2141. 0x001BFFFF,
  2142. 0x00,
  2143. 0x00,
  2144. 0x16
  2145. },
  2146.  
  2147. Package (0x04)
  2148. {
  2149. 0x001CFFFF,
  2150. 0x00,
  2151. 0x00,
  2152. 0x10
  2153. },
  2154.  
  2155. Package (0x04)
  2156. {
  2157. 0x001CFFFF,
  2158. 0x01,
  2159. 0x00,
  2160. 0x11
  2161. },
  2162.  
  2163. Package (0x04)
  2164. {
  2165. 0x001CFFFF,
  2166. 0x02,
  2167. 0x00,
  2168. 0x12
  2169. },
  2170.  
  2171. Package (0x04)
  2172. {
  2173. 0x001CFFFF,
  2174. 0x03,
  2175. 0x00,
  2176. 0x13
  2177. },
  2178.  
  2179. Package (0x04)
  2180. {
  2181. 0x001DFFFF,
  2182. 0x00,
  2183. 0x00,
  2184. 0x17
  2185. },
  2186.  
  2187. Package (0x04)
  2188. {
  2189. 0x001DFFFF,
  2190. 0x01,
  2191. 0x00,
  2192. 0x13
  2193. },
  2194.  
  2195. Package (0x04)
  2196. {
  2197. 0x001DFFFF,
  2198. 0x02,
  2199. 0x00,
  2200. 0x10
  2201. },
  2202.  
  2203. Package (0x04)
  2204. {
  2205. 0x001DFFFF,
  2206. 0x03,
  2207. 0x00,
  2208. 0x12
  2209. },
  2210.  
  2211. Package (0x04)
  2212. {
  2213. 0x001FFFFF,
  2214. 0x00,
  2215. 0x00,
  2216. 0x15
  2217. },
  2218.  
  2219. Package (0x04)
  2220. {
  2221. 0x001FFFFF,
  2222. 0x01,
  2223. 0x00,
  2224. 0x13
  2225. },
  2226.  
  2227. Package (0x04)
  2228. {
  2229. 0x001FFFFF,
  2230. 0x02,
  2231. 0x00,
  2232. 0x12
  2233. },
  2234.  
  2235. Package (0x04)
  2236. {
  2237. 0x001FFFFF,
  2238. 0x03,
  2239. 0x00,
  2240. 0x10
  2241. }
  2242. })
  2243. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  2244. {
  2245. If (\GPIC)
  2246. {
  2247. Return (ARRT) /* \_SB_.PCI0.ARRT */
  2248. }
  2249. Else
  2250. {
  2251. Return (LRRT) /* \_SB_.PCI0.LRRT */
  2252. }
  2253. }
  2254.  
  2255. Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */) // _HID: Hardware ID
  2256. Name (_CID, EisaId ("PNP0A03") /* PCI Bus */) // _CID: Compatible ID
  2257. OperationRegion (MHCS, PCI_Config, 0x40, 0xC0)
  2258. Field (MHCS, DWordAcc, NoLock, Preserve)
  2259. {
  2260. Offset (0x40),
  2261. PAM0, 8,
  2262. PAM1, 8,
  2263. PAM2, 8,
  2264. PAM3, 8,
  2265. PAM4, 8,
  2266. PAM5, 8,
  2267. PAM6, 8,
  2268. Offset (0x7C),
  2269. , 20,
  2270. TLUD, 12
  2271. }
  2272.  
  2273. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2274. {
  2275. WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
  2276. 0x0000, // Granularity
  2277. 0x0000, // Range Minimum
  2278. 0x00FF, // Range Maximum
  2279. 0x0000, // Translation Offset
  2280. 0x0100, // Length
  2281. ,, _Y25)
  2282. IO (Decode16,
  2283. 0x0CF8, // Range Minimum
  2284. 0x0CF8, // Range Maximum
  2285. 0x01, // Alignment
  2286. 0x08, // Length
  2287. )
  2288. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  2289. 0x0000, // Granularity
  2290. 0x0000, // Range Minimum
  2291. 0x0CF7, // Range Maximum
  2292. 0x0000, // Translation Offset
  2293. 0x0CF8, // Length
  2294. ,, , TypeStatic)
  2295. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  2296. 0x0000, // Granularity
  2297. 0x0D00, // Range Minimum
  2298. 0xFFFF, // Range Maximum
  2299. 0x0000, // Translation Offset
  2300. 0xF300, // Length
  2301. ,, , TypeStatic)
  2302. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2303. 0x00000000, // Granularity
  2304. 0x000A0000, // Range Minimum
  2305. 0x000BFFFF, // Range Maximum
  2306. 0x00000000, // Translation Offset
  2307. 0x00020000, // Length
  2308. ,, , AddressRangeMemory, TypeStatic)
  2309. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2310. 0x00000000, // Granularity
  2311. 0x000C0000, // Range Minimum
  2312. 0x000C3FFF, // Range Maximum
  2313. 0x00000000, // Translation Offset
  2314. 0x00004000, // Length
  2315. ,, _Y17, AddressRangeMemory, TypeStatic)
  2316. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2317. 0x00000000, // Granularity
  2318. 0x000C4000, // Range Minimum
  2319. 0x000C7FFF, // Range Maximum
  2320. 0x00000000, // Translation Offset
  2321. 0x00004000, // Length
  2322. ,, _Y18, AddressRangeMemory, TypeStatic)
  2323. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2324. 0x00000000, // Granularity
  2325. 0x000C8000, // Range Minimum
  2326. 0x000CBFFF, // Range Maximum
  2327. 0x00000000, // Translation Offset
  2328. 0x00004000, // Length
  2329. ,, _Y19, AddressRangeMemory, TypeStatic)
  2330. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2331. 0x00000000, // Granularity
  2332. 0x000CC000, // Range Minimum
  2333. 0x000CFFFF, // Range Maximum
  2334. 0x00000000, // Translation Offset
  2335. 0x00004000, // Length
  2336. ,, _Y1A, AddressRangeMemory, TypeStatic)
  2337. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2338. 0x00000000, // Granularity
  2339. 0x000D0000, // Range Minimum
  2340. 0x000D3FFF, // Range Maximum
  2341. 0x00000000, // Translation Offset
  2342. 0x00004000, // Length
  2343. ,, _Y1B, AddressRangeMemory, TypeStatic)
  2344. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2345. 0x00000000, // Granularity
  2346. 0x000D4000, // Range Minimum
  2347. 0x000D7FFF, // Range Maximum
  2348. 0x00000000, // Translation Offset
  2349. 0x00004000, // Length
  2350. ,, _Y1C, AddressRangeMemory, TypeStatic)
  2351. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2352. 0x00000000, // Granularity
  2353. 0x000D8000, // Range Minimum
  2354. 0x000DBFFF, // Range Maximum
  2355. 0x00000000, // Translation Offset
  2356. 0x00004000, // Length
  2357. ,, _Y1D, AddressRangeMemory, TypeStatic)
  2358. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2359. 0x00000000, // Granularity
  2360. 0x000DC000, // Range Minimum
  2361. 0x000DFFFF, // Range Maximum
  2362. 0x00000000, // Translation Offset
  2363. 0x00004000, // Length
  2364. ,, _Y1E, AddressRangeMemory, TypeStatic)
  2365. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2366. 0x00000000, // Granularity
  2367. 0x000E0000, // Range Minimum
  2368. 0x000E3FFF, // Range Maximum
  2369. 0x00000000, // Translation Offset
  2370. 0x00004000, // Length
  2371. ,, _Y1F, AddressRangeMemory, TypeStatic)
  2372. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2373. 0x00000000, // Granularity
  2374. 0x000E4000, // Range Minimum
  2375. 0x000E7FFF, // Range Maximum
  2376. 0x00000000, // Translation Offset
  2377. 0x00004000, // Length
  2378. ,, _Y20, AddressRangeMemory, TypeStatic)
  2379. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2380. 0x00000000, // Granularity
  2381. 0x000E8000, // Range Minimum
  2382. 0x000EBFFF, // Range Maximum
  2383. 0x00000000, // Translation Offset
  2384. 0x00004000, // Length
  2385. ,, _Y21, AddressRangeMemory, TypeStatic)
  2386. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2387. 0x00000000, // Granularity
  2388. 0x000EC000, // Range Minimum
  2389. 0x000EFFFF, // Range Maximum
  2390. 0x00000000, // Translation Offset
  2391. 0x00004000, // Length
  2392. ,, _Y22, AddressRangeMemory, TypeStatic)
  2393. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2394. 0x00000000, // Granularity
  2395. 0x00100000, // Range Minimum
  2396. 0xFEBFFFFF, // Range Maximum
  2397. 0x00000000, // Translation Offset
  2398. 0xFEB00000, // Length
  2399. ,, _Y23, AddressRangeMemory, TypeStatic)
  2400. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2401. 0x00000000, // Granularity
  2402. 0xFED40000, // Range Minimum
  2403. 0xFED4BFFF, // Range Maximum
  2404. 0x00000000, // Translation Offset
  2405. 0x0000C000, // Length
  2406. ,, _Y24, AddressRangeMemory, TypeStatic)
  2407. })
  2408. CreateDWordField (_CRS, \_SB.PCI0._Y17._LEN, C0LN) // _LEN: Length
  2409. CreateDWordField (_CRS, \_SB.PCI0._Y18._LEN, C4LN) // _LEN: Length
  2410. CreateDWordField (_CRS, \_SB.PCI0._Y19._LEN, C8LN) // _LEN: Length
  2411. CreateDWordField (_CRS, \_SB.PCI0._Y1A._LEN, CCLN) // _LEN: Length
  2412. CreateDWordField (_CRS, \_SB.PCI0._Y1B._LEN, D0LN) // _LEN: Length
  2413. CreateDWordField (_CRS, \_SB.PCI0._Y1C._LEN, D4LN) // _LEN: Length
  2414. CreateDWordField (_CRS, \_SB.PCI0._Y1D._LEN, D8LN) // _LEN: Length
  2415. CreateDWordField (_CRS, \_SB.PCI0._Y1E._LEN, DCLN) // _LEN: Length
  2416. CreateDWordField (_CRS, \_SB.PCI0._Y1F._LEN, E0LN) // _LEN: Length
  2417. CreateDWordField (_CRS, \_SB.PCI0._Y20._LEN, E4LN) // _LEN: Length
  2418. CreateDWordField (_CRS, \_SB.PCI0._Y21._LEN, E8LN) // _LEN: Length
  2419. CreateDWordField (_CRS, \_SB.PCI0._Y22._LEN, ECLN) // _LEN: Length
  2420. CreateDWordField (_CRS, \_SB.PCI0._Y23._MIN, XXMN) // _MIN: Minimum Base Address
  2421. CreateDWordField (_CRS, \_SB.PCI0._Y23._MAX, XXMX) // _MAX: Maximum Base Address
  2422. CreateDWordField (_CRS, \_SB.PCI0._Y23._LEN, XXLN) // _LEN: Length
  2423. CreateDWordField (_CRS, \_SB.PCI0._Y24._MIN, F4MN) // _MIN: Minimum Base Address
  2424. CreateDWordField (_CRS, \_SB.PCI0._Y24._MAX, F4MX) // _MAX: Maximum Base Address
  2425. CreateDWordField (_CRS, \_SB.PCI0._Y24._LEN, F4LN) // _LEN: Length
  2426. CreateWordField (_CRS, \_SB.PCI0._Y25._MAX, B0MX) // _MAX: Maximum Base Address
  2427. CreateWordField (_CRS, \_SB.PCI0._Y25._LEN, B0LN) // _LEN: Length
  2428. Method (_INI, 0, Serialized) // _INI: Initialize
  2429. {
  2430. B0MX = 0x3F
  2431. B0LN = (0x3F + 0x01)
  2432. If (!\OSIF)
  2433. {
  2434. \_SB._INI ()
  2435. }
  2436.  
  2437. Local0 = (TLUD << 0x14)
  2438. \MEMX = Local0
  2439. XXMN = Local0
  2440. XXLN = ((XXMX - XXMN) + 0x01)
  2441. If ((\TPMP == 0x00))
  2442. {
  2443. F4LN = 0x00
  2444. }
  2445.  
  2446. If ((PAM1 & 0x03))
  2447. {
  2448. C0LN = 0x00
  2449. }
  2450.  
  2451. If ((PAM1 & 0x30))
  2452. {
  2453. C4LN = 0x00
  2454. }
  2455.  
  2456. If ((PAM2 & 0x03))
  2457. {
  2458. C8LN = 0x00
  2459. }
  2460.  
  2461. If ((PAM2 & 0x30))
  2462. {
  2463. CCLN = 0x00
  2464. }
  2465.  
  2466. If ((PAM3 & 0x03))
  2467. {
  2468. D0LN = 0x00
  2469. }
  2470.  
  2471. If ((PAM3 & 0x30))
  2472. {
  2473. D4LN = 0x00
  2474. }
  2475.  
  2476. If ((PAM4 & 0x03))
  2477. {
  2478. D8LN = 0x00
  2479. }
  2480.  
  2481. If ((PAM4 & 0x30))
  2482. {
  2483. DCLN = 0x00
  2484. }
  2485.  
  2486. If ((PAM5 & 0x03))
  2487. {
  2488. E0LN = 0x00
  2489. }
  2490.  
  2491. If ((PAM5 & 0x30))
  2492. {
  2493. E4LN = 0x00
  2494. }
  2495.  
  2496. If ((PAM6 & 0x03))
  2497. {
  2498. E8LN = 0x00
  2499. }
  2500.  
  2501. If ((PAM6 & 0x30))
  2502. {
  2503. ECLN = 0x00
  2504. }
  2505. }
  2506.  
  2507. Name (SUPP, 0x00)
  2508. Name (CTRL, 0x00)
  2509. Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
  2510. {
  2511. CreateDWordField (Arg3, 0x00, CDW1)
  2512. CreateDWordField (Arg3, 0x04, CDW2)
  2513. CreateDWordField (Arg3, 0x08, CDW3)
  2514. If (\_SB.PCI0.XHCI.CUID (Arg0))
  2515. {
  2516. Return (\_SB.PCI0.XHCI.POSC (Arg1, Arg2, Arg3))
  2517. }
  2518.  
  2519. If ((Arg0 == ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */))
  2520. {
  2521. SUPP = CDW2 /* \_SB_.PCI0._OSC.CDW2 */
  2522. CTRL = CDW3 /* \_SB_.PCI0._OSC.CDW3 */
  2523. CTRL &= 0x0D
  2524. If (!(CDW1 & 0x01))
  2525. {
  2526. If ((CTRL & 0x01))
  2527. {
  2528. If (!\VIGD)
  2529. {
  2530. \_SB.PCI0.PEG.HPGP = 0x00
  2531. \_SB.PCI0.PEG.GMGP = 0x00
  2532. }
  2533.  
  2534. \NHPS = 0x01
  2535. }
  2536.  
  2537. If ((CTRL & 0x04))
  2538. {
  2539. If (!\VIGD)
  2540. {
  2541. \_SB.PCI0.PEG.PMGP = 0x00
  2542. \_SB.PCI0.PEG.GMGP = 0x00
  2543. }
  2544.  
  2545. If (\_SB.PCI0.EXP1.PMCE)
  2546. {
  2547. \_SB.PCI0.EXP1.PMCE = 0x00
  2548. \_SB.PCI0.EXP1.PMCS = 0x01
  2549. }
  2550.  
  2551. If (\_SB.PCI0.EXP2.PMCE)
  2552. {
  2553. \_SB.PCI0.EXP2.PMCE = 0x00
  2554. \_SB.PCI0.EXP2.PMCS = 0x01
  2555. }
  2556.  
  2557. If (\_SB.PCI0.EXP3.PMCE)
  2558. {
  2559. \_SB.PCI0.EXP3.PMCE = 0x00
  2560. \_SB.PCI0.EXP3.PMCS = 0x01
  2561. }
  2562.  
  2563. \_SB.PCI0.LPC.EXPE = 0x00
  2564. \NPME = 0x01
  2565. }
  2566. }
  2567.  
  2568. If ((Arg1 != 0x01))
  2569. {
  2570. CDW1 |= 0x0A
  2571. }
  2572.  
  2573. If ((CDW3 != CTRL))
  2574. {
  2575. CDW1 |= 0x10
  2576. }
  2577.  
  2578. CDW3 = CTRL /* \_SB_.PCI0.CTRL */
  2579. }
  2580. Else
  2581. {
  2582. CDW1 |= 0x06
  2583. }
  2584.  
  2585. Return (Arg3)
  2586. }
  2587.  
  2588. Mutex (MDGS, 0x07)
  2589. Name (VDEE, 0x01)
  2590. Name (VDDA, Buffer (0x02) {})
  2591. CreateBitField (VDDA, 0x00, VUPC)
  2592. CreateBitField (VDDA, 0x01, VQDL)
  2593. CreateBitField (VDDA, 0x02, VQDC)
  2594. CreateBitField (VDDA, 0x03, VQD0)
  2595. CreateBitField (VDDA, 0x04, VQD1)
  2596. CreateBitField (VDDA, 0x05, VQD2)
  2597. CreateBitField (VDDA, 0x06, VSDL)
  2598. CreateBitField (VDDA, 0x07, VSDC)
  2599. CreateBitField (VDDA, 0x08, VSD0)
  2600. CreateBitField (VDDA, 0x09, VSD1)
  2601. CreateBitField (VDDA, 0x0A, VSD2)
  2602. CreateBitField (VDDA, 0x0B, VSD3)
  2603. CreateBitField (VDDA, 0x0C, VSD4)
  2604. CreateBitField (VDDA, 0x0D, VSD5)
  2605. CreateBitField (VDDA, 0x0E, MSWT)
  2606. Device (VID)
  2607. {
  2608. Name (_ADR, 0x00020000) // _ADR: Address
  2609. Name (RID, 0x00)
  2610. OperationRegion (VPCG, PCI_Config, 0x00, 0x0100)
  2611. Field (VPCG, DWordAcc, NoLock, Preserve)
  2612. {
  2613. Offset (0x2C),
  2614. VSID, 32,
  2615. Offset (0xD4),
  2616. VPWR, 8
  2617. }
  2618.  
  2619. Name (MIDL, 0x0400)
  2620. Name (MIDC, 0x0100)
  2621. Name (MID0, 0x0300)
  2622. Name (MID1, 0x0301)
  2623. Name (MID2, 0x0302)
  2624. Name (MID3, 0x0303)
  2625. Name (MID4, 0x0304)
  2626. Name (MID5, 0x0305)
  2627. Name (_S3D, 0x03) // _S3D: S3 Device State
  2628. Method (_INI, 0, NotSerialized) // _INI: Initialize
  2629. {
  2630. CLID = \_SB.LID._LID ()
  2631. }
  2632.  
  2633. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  2634. {
  2635. Noop
  2636. }
  2637.  
  2638. Method (_PS1, 0, NotSerialized) // _PS1: Power State 1
  2639. {
  2640. Noop
  2641. }
  2642.  
  2643. Method (_PS2, 0, NotSerialized) // _PS2: Power State 2
  2644. {
  2645. Noop
  2646. }
  2647.  
  2648. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  2649. {
  2650. Noop
  2651. }
  2652.  
  2653. Method (VSWT, 0, NotSerialized)
  2654. {
  2655. GHDS (0x00)
  2656. }
  2657.  
  2658. Method (VLOC, 1, NotSerialized)
  2659. {
  2660. If ((Arg0 == \_SB.LID._LID ()))
  2661. {
  2662. \VSLD (Arg0)
  2663. If ((VPWR == 0x00))
  2664. {
  2665. CLID = Arg0
  2666. GNOT (0x02, 0x00)
  2667. }
  2668. }
  2669. }
  2670.  
  2671. Method (_DOS, 1, NotSerialized) // _DOS: Disable Output Switching
  2672. {
  2673. Arg0 &= 0x03
  2674. If ((Arg0 == 0x02))
  2675. {
  2676. Local0 = 0x14
  2677. While (Local0)
  2678. {
  2679. Local0--
  2680. Acquire (MDGS, 0xFFFF)
  2681. If ((0x00 == MSWT))
  2682. {
  2683. MSWT = 0x01
  2684. Local0 = 0x00
  2685. VDEE = Arg0
  2686. }
  2687.  
  2688. Release (MDGS)
  2689. Sleep (0xC8)
  2690. }
  2691. }
  2692. Else
  2693. {
  2694. Acquire (MDGS, 0xFFFF)
  2695. If ((VDEE == 0x02))
  2696. {
  2697. MSWT = 0x00
  2698. }
  2699.  
  2700. If ((Arg0 > 0x02))
  2701. {
  2702. VDEE = 0x01
  2703. }
  2704. Else
  2705. {
  2706. VDEE = Arg0
  2707. }
  2708.  
  2709. Release (MDGS)
  2710. }
  2711. }
  2712.  
  2713. Method (_DOD, 0, NotSerialized) // _DOD: Display Output Devices
  2714. {
  2715. NDID = 0x00
  2716. If ((DIDL != 0x00))
  2717. {
  2718. NDID++
  2719. }
  2720.  
  2721. If ((DDL2 != 0x00))
  2722. {
  2723. NDID++
  2724. }
  2725.  
  2726. If ((DDL3 != 0x00))
  2727. {
  2728. NDID++
  2729. }
  2730.  
  2731. If ((DDL4 != 0x00))
  2732. {
  2733. NDID++
  2734. }
  2735.  
  2736. If ((DDL5 != 0x00))
  2737. {
  2738. NDID++
  2739. }
  2740.  
  2741. If ((DDL6 != 0x00))
  2742. {
  2743. NDID++
  2744. }
  2745.  
  2746. If ((DDL7 != 0x00))
  2747. {
  2748. NDID++
  2749. }
  2750.  
  2751. If ((DDL8 != 0x00))
  2752. {
  2753. NDID++
  2754. }
  2755.  
  2756. If ((NDID == 0x01))
  2757. {
  2758. Name (TMP1, Package (0x01)
  2759. {
  2760. 0xFFFFFFFF
  2761. })
  2762. Index (TMP1, 0x00) = (0x80010000 | (0x0F0F & DIDL))
  2763. Return (TMP1) /* \_SB_.PCI0.VID_._DOD.TMP1 */
  2764. }
  2765.  
  2766. If ((NDID == 0x02))
  2767. {
  2768. Name (TMP2, Package (0x02)
  2769. {
  2770. 0xFFFFFFFF,
  2771. 0xFFFFFFFF
  2772. })
  2773. Index (TMP2, 0x00) = (0x80010000 | (0x0F0F & DIDL))
  2774. Index (TMP2, 0x01) = (0x80010000 | (0x0F0F & DDL2))
  2775. Return (TMP2) /* \_SB_.PCI0.VID_._DOD.TMP2 */
  2776. }
  2777.  
  2778. If ((NDID == 0x03))
  2779. {
  2780. Name (TMP3, Package (0x03)
  2781. {
  2782. 0xFFFFFFFF,
  2783. 0xFFFFFFFF,
  2784. 0xFFFFFFFF
  2785. })
  2786. Index (TMP3, 0x00) = (0x80010000 | (0x0F0F & DIDL))
  2787. Index (TMP3, 0x01) = (0x80010000 | (0x0F0F & DDL2))
  2788. Index (TMP3, 0x02) = (0x80010000 | (0x0F0F & DDL3))
  2789. Return (TMP3) /* \_SB_.PCI0.VID_._DOD.TMP3 */
  2790. }
  2791.  
  2792. If ((NDID == 0x04))
  2793. {
  2794. Name (TMP4, Package (0x04)
  2795. {
  2796. 0xFFFFFFFF,
  2797. 0xFFFFFFFF,
  2798. 0xFFFFFFFF,
  2799. 0xFFFFFFFF
  2800. })
  2801. Index (TMP4, 0x00) = (0x80010000 | (0x0F0F & DIDL))
  2802. Index (TMP4, 0x01) = (0x80010000 | (0x0F0F & DDL2))
  2803. Index (TMP4, 0x02) = (0x80010000 | (0x0F0F & DDL3))
  2804. Index (TMP4, 0x03) = (0x80010000 | (0x0F0F & DDL4))
  2805. Return (TMP4) /* \_SB_.PCI0.VID_._DOD.TMP4 */
  2806. }
  2807.  
  2808. If ((NDID == 0x05))
  2809. {
  2810. Name (TMP5, Package (0x05)
  2811. {
  2812. 0xFFFFFFFF,
  2813. 0xFFFFFFFF,
  2814. 0xFFFFFFFF,
  2815. 0xFFFFFFFF,
  2816. 0xFFFFFFFF
  2817. })
  2818. Index (TMP5, 0x00) = (0x80010000 | (0x0F0F & DIDL))
  2819. Index (TMP5, 0x01) = (0x80010000 | (0x0F0F & DDL2))
  2820. Index (TMP5, 0x02) = (0x80010000 | (0x0F0F & DDL3))
  2821. Index (TMP5, 0x03) = (0x80010000 | (0x0F0F & DDL4))
  2822. Index (TMP5, 0x04) = (0x80010000 | (0x0F0F & DDL5))
  2823. Return (TMP5) /* \_SB_.PCI0.VID_._DOD.TMP5 */
  2824. }
  2825.  
  2826. If ((NDID == 0x06))
  2827. {
  2828. Name (TMP6, Package (0x06)
  2829. {
  2830. 0xFFFFFFFF,
  2831. 0xFFFFFFFF,
  2832. 0xFFFFFFFF,
  2833. 0xFFFFFFFF,
  2834. 0xFFFFFFFF,
  2835. 0xFFFFFFFF
  2836. })
  2837. Index (TMP6, 0x00) = (0x80010000 | (0x0F0F & DIDL))
  2838. Index (TMP6, 0x01) = (0x80010000 | (0x0F0F & DDL2))
  2839. Index (TMP6, 0x02) = (0x80010000 | (0x0F0F & DDL3))
  2840. Index (TMP6, 0x03) = (0x80010000 | (0x0F0F & DDL4))
  2841. Index (TMP6, 0x04) = (0x80010000 | (0x0F0F & DDL5))
  2842. Index (TMP6, 0x05) = (0x80010000 | (0x0F0F & DDL6))
  2843. Return (TMP6) /* \_SB_.PCI0.VID_._DOD.TMP6 */
  2844. }
  2845.  
  2846. If ((NDID == 0x07))
  2847. {
  2848. Name (TMP7, Package (0x07)
  2849. {
  2850. 0xFFFFFFFF,
  2851. 0xFFFFFFFF,
  2852. 0xFFFFFFFF,
  2853. 0xFFFFFFFF,
  2854. 0xFFFFFFFF,
  2855. 0xFFFFFFFF,
  2856. 0xFFFFFFFF
  2857. })
  2858. Index (TMP7, 0x00) = (0x80010000 | (0x0F0F & DIDL))
  2859. Index (TMP7, 0x01) = (0x80010000 | (0x0F0F & DDL2))
  2860. Index (TMP7, 0x02) = (0x80010000 | (0x0F0F & DDL3))
  2861. Index (TMP7, 0x03) = (0x80010000 | (0x0F0F & DDL4))
  2862. Index (TMP7, 0x04) = (0x80010000 | (0x0F0F & DDL5))
  2863. Index (TMP7, 0x05) = (0x80010000 | (0x0F0F & DDL6))
  2864. Index (TMP7, 0x06) = (0x80010000 | (0x0F0F & DDL7))
  2865. Return (TMP7) /* \_SB_.PCI0.VID_._DOD.TMP7 */
  2866. }
  2867.  
  2868. If ((NDID > 0x07))
  2869. {
  2870. Name (TMP8, Package (0x08)
  2871. {
  2872. 0xFFFFFFFF,
  2873. 0xFFFFFFFF,
  2874. 0xFFFFFFFF,
  2875. 0xFFFFFFFF,
  2876. 0xFFFFFFFF,
  2877. 0xFFFFFFFF,
  2878. 0xFFFFFFFF,
  2879. 0xFFFFFFFF
  2880. })
  2881. Index (TMP8, 0x00) = (0x80010000 | (0x0F0F & DIDL))
  2882. Index (TMP8, 0x01) = (0x80010000 | (0x0F0F & DDL2))
  2883. Index (TMP8, 0x02) = (0x80010000 | (0x0F0F & DDL3))
  2884. Index (TMP8, 0x03) = (0x80010000 | (0x0F0F & DDL4))
  2885. Index (TMP8, 0x04) = (0x80010000 | (0x0F0F & DDL5))
  2886. Index (TMP8, 0x05) = (0x80010000 | (0x0F0F & DDL6))
  2887. Index (TMP8, 0x06) = (0x80010000 | (0x0F0F & DDL7))
  2888. Index (TMP8, 0x07) = (0x80010000 | (0x0F0F & DDL8))
  2889. Return (TMP8) /* \_SB_.PCI0.VID_._DOD.TMP8 */
  2890. }
  2891.  
  2892. Return (Package (0x01)
  2893. {
  2894. 0x0400
  2895. })
  2896. }
  2897.  
  2898. Method (VDSW, 1, NotSerialized)
  2899. {
  2900. If ((VPWR == 0x00))
  2901. {
  2902. GDCK (Arg0)
  2903. }
  2904. }
  2905.  
  2906. Method (VCAD, 1, NotSerialized)
  2907. {
  2908. Local0 = 0x00
  2909. If (((DIDL & 0x0F0F) == Arg0))
  2910. {
  2911. Local0 = 0x0D
  2912. }
  2913. Else
  2914. {
  2915. If (((DDL2 & 0x0F0F) == Arg0))
  2916. {
  2917. Local0 = 0x0D
  2918. }
  2919. Else
  2920. {
  2921. If (((DDL3 & 0x0F0F) == Arg0))
  2922. {
  2923. Local0 = 0x0D
  2924. }
  2925. Else
  2926. {
  2927. If (((DDL4 & 0x0F0F) == Arg0))
  2928. {
  2929. Local0 = 0x0D
  2930. }
  2931. Else
  2932. {
  2933. If (((DDL5 & 0x0F0F) == Arg0))
  2934. {
  2935. Local0 = 0x0D
  2936. }
  2937. Else
  2938. {
  2939. If (((DDL6 & 0x0F0F) == Arg0))
  2940. {
  2941. Local0 = 0x0D
  2942. }
  2943. Else
  2944. {
  2945. If (((DDL7 & 0x0F0F) == Arg0))
  2946. {
  2947. Local0 = 0x0D
  2948. }
  2949. Else
  2950. {
  2951. If (((DDL8 & 0x0F0F) == Arg0))
  2952. {
  2953. Local0 = 0x0D
  2954. }
  2955. }
  2956. }
  2957. }
  2958. }
  2959. }
  2960. }
  2961. }
  2962.  
  2963. If (((CPDL & 0x0F0F) == Arg0))
  2964. {
  2965. Local0 |= 0x10
  2966. }
  2967. Else
  2968. {
  2969. If (((CPL2 & 0x0F0F) == Arg0))
  2970. {
  2971. Local0 |= 0x10
  2972. }
  2973. Else
  2974. {
  2975. If (((CPL3 & 0x0F0F) == Arg0))
  2976. {
  2977. Local0 |= 0x10
  2978. }
  2979. Else
  2980. {
  2981. If (((CPL4 & 0x0F0F) == Arg0))
  2982. {
  2983. Local0 |= 0x10
  2984. }
  2985. Else
  2986. {
  2987. If (((CPL5 & 0x0F0F) == Arg0))
  2988. {
  2989. Local0 |= 0x10
  2990. }
  2991. Else
  2992. {
  2993. If (((CPL6 & 0x0F0F) == Arg0))
  2994. {
  2995. Local0 |= 0x10
  2996. }
  2997. Else
  2998. {
  2999. If (((CPL7 & 0x0F0F) == Arg0))
  3000. {
  3001. Local0 |= 0x10
  3002. }
  3003. Else
  3004. {
  3005. If (((CPL8 & 0x0F0F) == Arg0))
  3006. {
  3007. Local0 |= 0x10
  3008. }
  3009. }
  3010. }
  3011. }
  3012. }
  3013. }
  3014. }
  3015. }
  3016.  
  3017. If (((CADL & 0x0F0F) == Arg0))
  3018. {
  3019. Local0 |= 0x02
  3020. }
  3021. Else
  3022. {
  3023. If (((CAL2 & 0x0F0F) == Arg0))
  3024. {
  3025. Local0 |= 0x02
  3026. }
  3027. Else
  3028. {
  3029. If (((CAL3 & 0x0F0F) == Arg0))
  3030. {
  3031. Local0 |= 0x02
  3032. }
  3033. Else
  3034. {
  3035. If (((CAL4 & 0x0F0F) == Arg0))
  3036. {
  3037. Local0 |= 0x02
  3038. }
  3039. Else
  3040. {
  3041. If (((CAL5 & 0x0F0F) == Arg0))
  3042. {
  3043. Local0 |= 0x02
  3044. }
  3045. Else
  3046. {
  3047. If (((CAL6 & 0x0F0F) == Arg0))
  3048. {
  3049. Local0 |= 0x02
  3050. }
  3051. Else
  3052. {
  3053. If (((CAL7 & 0x0F0F) == Arg0))
  3054. {
  3055. Local0 |= 0x02
  3056. }
  3057. Else
  3058. {
  3059. If (((CAL8 & 0x0F0F) == Arg0))
  3060. {
  3061. Local0 |= 0x02
  3062. }
  3063. }
  3064. }
  3065. }
  3066. }
  3067. }
  3068. }
  3069. }
  3070.  
  3071. Return (Local0)
  3072. }
  3073.  
  3074. Method (NDDS, 1, NotSerialized)
  3075. {
  3076. If (((NADL & 0x0F0F) == Arg0))
  3077. {
  3078. Return (0x01)
  3079. }
  3080. Else
  3081. {
  3082. If (((NDL2 & 0x0F0F) == Arg0))
  3083. {
  3084. Return (0x01)
  3085. }
  3086. Else
  3087. {
  3088. If (((NDL3 & 0x0F0F) == Arg0))
  3089. {
  3090. Return (0x01)
  3091. }
  3092. Else
  3093. {
  3094. If (((NDL4 & 0x0F0F) == Arg0))
  3095. {
  3096. Return (0x01)
  3097. }
  3098. Else
  3099. {
  3100. If (((NDL5 & 0x0F0F) == Arg0))
  3101. {
  3102. Return (0x01)
  3103. }
  3104. Else
  3105. {
  3106. If (((NDL6 & 0x0F0F) == Arg0))
  3107. {
  3108. Return (0x01)
  3109. }
  3110. Else
  3111. {
  3112. If (((NDL7 & 0x0F0F) == Arg0))
  3113. {
  3114. Return (0x01)
  3115. }
  3116. Else
  3117. {
  3118. If (((NDL8 & 0x0F0F) == Arg0))
  3119. {
  3120. Return (0x01)
  3121. }
  3122. }
  3123. }
  3124. }
  3125. }
  3126. }
  3127. }
  3128. }
  3129.  
  3130. Return (0x00)
  3131. }
  3132.  
  3133. Device (LCD0)
  3134. {
  3135. Method (_ADR, 0, NotSerialized) // _ADR: Address
  3136. {
  3137. Return (0x0400)
  3138. }
  3139.  
  3140. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  3141. {
  3142. Return (VCAD (MIDL))
  3143. }
  3144.  
  3145. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  3146. {
  3147. Return (NDDS (MIDL))
  3148. }
  3149.  
  3150. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  3151. {
  3152. VSDL = (Arg0 & 0x01)
  3153. }
  3154.  
  3155. Method (_DDC, 1, NotSerialized) // _DDC: Display Data Current
  3156. {
  3157. If ((Arg0 == 0x01))
  3158. {
  3159. Return (\VEDI)
  3160. }
  3161. Else
  3162. {
  3163. If ((Arg0 == 0x02))
  3164. {
  3165. Return (\VEDI)
  3166. }
  3167. }
  3168.  
  3169. Return (0x00)
  3170. }
  3171. }
  3172.  
  3173. Device (CRT0)
  3174. {
  3175. Method (_ADR, 0, NotSerialized) // _ADR: Address
  3176. {
  3177. Return (0x0100)
  3178. }
  3179.  
  3180. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  3181. {
  3182. Return (VCAD (MIDC))
  3183. }
  3184.  
  3185. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  3186. {
  3187. Return (NDDS (MIDC))
  3188. }
  3189.  
  3190. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  3191. {
  3192. VSDC = (Arg0 & 0x01)
  3193. }
  3194. }
  3195.  
  3196. Device (DVI0)
  3197. {
  3198. Method (_ADR, 0, NotSerialized) // _ADR: Address
  3199. {
  3200. Return (0x0300)
  3201. }
  3202.  
  3203. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  3204. {
  3205. Return (VCAD (MID0))
  3206. }
  3207.  
  3208. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  3209. {
  3210. Return (NDDS (MID0))
  3211. }
  3212.  
  3213. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  3214. {
  3215. VSD0 = (Arg0 & 0x01)
  3216. }
  3217. }
  3218.  
  3219. Device (DVI1)
  3220. {
  3221. Method (_ADR, 0, NotSerialized) // _ADR: Address
  3222. {
  3223. Return (0x0301)
  3224. }
  3225.  
  3226. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  3227. {
  3228. Return (VCAD (MID1))
  3229. }
  3230.  
  3231. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  3232. {
  3233. Return (NDDS (MID1))
  3234. }
  3235.  
  3236. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  3237. {
  3238. VSD1 = (Arg0 & 0x01)
  3239. }
  3240. }
  3241.  
  3242. Device (DVI2)
  3243. {
  3244. Method (_ADR, 0, NotSerialized) // _ADR: Address
  3245. {
  3246. Return (0x0302)
  3247. }
  3248.  
  3249. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  3250. {
  3251. Return (VCAD (MID2))
  3252. }
  3253.  
  3254. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  3255. {
  3256. Return (NDDS (MID2))
  3257. }
  3258.  
  3259. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  3260. {
  3261. VSD2 = (Arg0 & 0x01)
  3262. }
  3263. }
  3264.  
  3265. Device (DVI3)
  3266. {
  3267. Method (_ADR, 0, NotSerialized) // _ADR: Address
  3268. {
  3269. Return (0x0303)
  3270. }
  3271.  
  3272. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  3273. {
  3274. Return (VCAD (MID3))
  3275. }
  3276.  
  3277. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  3278. {
  3279. Return (NDDS (MID3))
  3280. }
  3281.  
  3282. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  3283. {
  3284. VSD3 = (Arg0 & 0x01)
  3285. }
  3286. }
  3287.  
  3288. Device (DVI4)
  3289. {
  3290. Method (_ADR, 0, NotSerialized) // _ADR: Address
  3291. {
  3292. Return (0x0304)
  3293. }
  3294.  
  3295. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  3296. {
  3297. Return (VCAD (MID4))
  3298. }
  3299.  
  3300. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  3301. {
  3302. Return (NDDS (MID4))
  3303. }
  3304.  
  3305. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  3306. {
  3307. VSD4 = (Arg0 & 0x01)
  3308. }
  3309. }
  3310.  
  3311. Device (DVI5)
  3312. {
  3313. Method (_ADR, 0, NotSerialized) // _ADR: Address
  3314. {
  3315. Return (0x0305)
  3316. }
  3317.  
  3318. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  3319. {
  3320. Return (VCAD (MID5))
  3321. }
  3322.  
  3323. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  3324. {
  3325. Return (NDDS (MID5))
  3326. }
  3327.  
  3328. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  3329. {
  3330. VSD5 = (Arg0 & 0x01)
  3331. }
  3332. }
  3333. }
  3334.  
  3335. Device (LPC)
  3336. {
  3337. Name (_ADR, 0x001F0000) // _ADR: Address
  3338. Name (_S3D, 0x03) // _S3D: S3 Device State
  3339. Name (RID, 0x00)
  3340. Device (SIO)
  3341. {
  3342. Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
  3343. Name (_UID, 0x00) // _UID: Unique ID
  3344. Name (SCRS, ResourceTemplate ()
  3345. {
  3346. IO (Decode16,
  3347. 0x0010, // Range Minimum
  3348. 0x0010, // Range Maximum
  3349. 0x01, // Alignment
  3350. 0x10, // Length
  3351. )
  3352. IO (Decode16,
  3353. 0x0090, // Range Minimum
  3354. 0x0090, // Range Maximum
  3355. 0x01, // Alignment
  3356. 0x10, // Length
  3357. )
  3358. IO (Decode16,
  3359. 0x0024, // Range Minimum
  3360. 0x0024, // Range Maximum
  3361. 0x01, // Alignment
  3362. 0x02, // Length
  3363. )
  3364. IO (Decode16,
  3365. 0x0028, // Range Minimum
  3366. 0x0028, // Range Maximum
  3367. 0x01, // Alignment
  3368. 0x02, // Length
  3369. )
  3370. IO (Decode16,
  3371. 0x002C, // Range Minimum
  3372. 0x002C, // Range Maximum
  3373. 0x01, // Alignment
  3374. 0x02, // Length
  3375. )
  3376. IO (Decode16,
  3377. 0x0030, // Range Minimum
  3378. 0x0030, // Range Maximum
  3379. 0x01, // Alignment
  3380. 0x02, // Length
  3381. )
  3382. IO (Decode16,
  3383. 0x0034, // Range Minimum
  3384. 0x0034, // Range Maximum
  3385. 0x01, // Alignment
  3386. 0x02, // Length
  3387. )
  3388. IO (Decode16,
  3389. 0x0038, // Range Minimum
  3390. 0x0038, // Range Maximum
  3391. 0x01, // Alignment
  3392. 0x02, // Length
  3393. )
  3394. IO (Decode16,
  3395. 0x003C, // Range Minimum
  3396. 0x003C, // Range Maximum
  3397. 0x01, // Alignment
  3398. 0x02, // Length
  3399. )
  3400. IO (Decode16,
  3401. 0x00A4, // Range Minimum
  3402. 0x00A4, // Range Maximum
  3403. 0x01, // Alignment
  3404. 0x02, // Length
  3405. )
  3406. IO (Decode16,
  3407. 0x00A8, // Range Minimum
  3408. 0x00A8, // Range Maximum
  3409. 0x01, // Alignment
  3410. 0x02, // Length
  3411. )
  3412. IO (Decode16,
  3413. 0x00AC, // Range Minimum
  3414. 0x00AC, // Range Maximum
  3415. 0x01, // Alignment
  3416. 0x02, // Length
  3417. )
  3418. IO (Decode16,
  3419. 0x00B0, // Range Minimum
  3420. 0x00B0, // Range Maximum
  3421. 0x01, // Alignment
  3422. 0x06, // Length
  3423. )
  3424. IO (Decode16,
  3425. 0x00B8, // Range Minimum
  3426. 0x00B8, // Range Maximum
  3427. 0x01, // Alignment
  3428. 0x02, // Length
  3429. )
  3430. IO (Decode16,
  3431. 0x00BC, // Range Minimum
  3432. 0x00BC, // Range Maximum
  3433. 0x01, // Alignment
  3434. 0x02, // Length
  3435. )
  3436. IO (Decode16,
  3437. 0x0050, // Range Minimum
  3438. 0x0050, // Range Maximum
  3439. 0x01, // Alignment
  3440. 0x04, // Length
  3441. )
  3442. IO (Decode16,
  3443. 0x0072, // Range Minimum
  3444. 0x0072, // Range Maximum
  3445. 0x01, // Alignment
  3446. 0x06, // Length
  3447. )
  3448. IO (Decode16,
  3449. 0x1800, // Range Minimum
  3450. 0x1800, // Range Maximum
  3451. 0x01, // Alignment
  3452. 0xA0, // Length
  3453. )
  3454. IO (Decode16,
  3455. 0x0800, // Range Minimum
  3456. 0x0800, // Range Maximum
  3457. 0x01, // Alignment
  3458. 0x80, // Length
  3459. )
  3460. IO (Decode16,
  3461. 0x0880, // Range Minimum
  3462. 0x0880, // Range Maximum
  3463. 0x01, // Alignment
  3464. 0x80, // Length
  3465. )
  3466. IO (Decode16,
  3467. 0x0900, // Range Minimum
  3468. 0x0900, // Range Maximum
  3469. 0x01, // Alignment
  3470. 0x80, // Length
  3471. )
  3472. IO (Decode16,
  3473. 0x0980, // Range Minimum
  3474. 0x0980, // Range Maximum
  3475. 0x01, // Alignment
  3476. 0x80, // Length
  3477. )
  3478. IO (Decode16,
  3479. 0x0A00, // Range Minimum
  3480. 0x0A00, // Range Maximum
  3481. 0x01, // Alignment
  3482. 0x80, // Length
  3483. )
  3484. IO (Decode16,
  3485. 0x0A80, // Range Minimum
  3486. 0x0A80, // Range Maximum
  3487. 0x01, // Alignment
  3488. 0x80, // Length
  3489. )
  3490. IO (Decode16,
  3491. 0x0B00, // Range Minimum
  3492. 0x0B00, // Range Maximum
  3493. 0x01, // Alignment
  3494. 0x80, // Length
  3495. )
  3496. IO (Decode16,
  3497. 0x0B80, // Range Minimum
  3498. 0x0B80, // Range Maximum
  3499. 0x01, // Alignment
  3500. 0x80, // Length
  3501. )
  3502. IO (Decode16,
  3503. 0x15E0, // Range Minimum
  3504. 0x15E0, // Range Maximum
  3505. 0x01, // Alignment
  3506. 0x10, // Length
  3507. )
  3508. IO (Decode16,
  3509. 0x1600, // Range Minimum
  3510. 0x1600, // Range Maximum
  3511. 0x01, // Alignment
  3512. 0x80, // Length
  3513. )
  3514. IO (Decode16,
  3515. 0x1640, // Range Minimum
  3516. 0x1640, // Range Maximum
  3517. 0x01, // Alignment
  3518. 0x20, // Length
  3519. )
  3520. Memory32Fixed (ReadWrite,
  3521. 0xF8000000, // Address Base
  3522. 0x04000000, // Address Length
  3523. )
  3524. Memory32Fixed (ReadWrite,
  3525. 0x00000000, // Address Base
  3526. 0x00001000, // Address Length
  3527. _Y26)
  3528. Memory32Fixed (ReadWrite,
  3529. 0xFED1C000, // Address Base
  3530. 0x00004000, // Address Length
  3531. )
  3532. Memory32Fixed (ReadWrite,
  3533. 0xFED10000, // Address Base
  3534. 0x00004000, // Address Length
  3535. )
  3536. Memory32Fixed (ReadWrite,
  3537. 0xFED18000, // Address Base
  3538. 0x00001000, // Address Length
  3539. )
  3540. Memory32Fixed (ReadWrite,
  3541. 0xFED19000, // Address Base
  3542. 0x00001000, // Address Length
  3543. )
  3544. Memory32Fixed (ReadWrite,
  3545. 0xFED45000, // Address Base
  3546. 0x00007000, // Address Length
  3547. )
  3548. })
  3549. CreateDWordField (SCRS, \_SB.PCI0.LPC.SIO._Y26._BAS, TRMB) // _BAS: Base Address
  3550. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3551. {
  3552. TRMB = \TBAB
  3553. If ((\_SB.PCI0.LPC.TPM._STA () == 0x0F))
  3554. {
  3555. Return (SCRS) /* \_SB_.PCI0.LPC_.SIO_.SCRS */
  3556. }
  3557. Else
  3558. {
  3559. Local0 = (SizeOf (SCRS) - 0x02)
  3560. Name (BUF0, Buffer (Local0) {})
  3561. Local0 += SizeOf (\_SB.PCI0.LPC.TPM.BUF1)
  3562. Name (BUF1, Buffer (Local0) {})
  3563. BUF0 = SCRS /* \_SB_.PCI0.LPC_.SIO_.SCRS */
  3564. Concatenate (BUF0, \_SB.PCI0.LPC.TPM.BUF1, BUF1) /* \_SB_.PCI0.LPC_.SIO_._CRS.BUF1 */
  3565. Return (BUF1) /* \_SB_.PCI0.LPC_.SIO_._CRS.BUF1 */
  3566. }
  3567. }
  3568. }
  3569.  
  3570. OperationRegion (LPCS, PCI_Config, 0x00, 0x0100)
  3571. Field (LPCS, AnyAcc, NoLock, Preserve)
  3572. {
  3573. Offset (0x60),
  3574. PIRA, 8,
  3575. PIRB, 8,
  3576. PIRC, 8,
  3577. PIRD, 8,
  3578. SERQ, 8,
  3579. Offset (0x68),
  3580. PIRE, 8,
  3581. PIRF, 8,
  3582. PIRG, 8,
  3583. PIRH, 8,
  3584. Offset (0x80),
  3585. XU1A, 3,
  3586. , 1,
  3587. XU2A, 3,
  3588. Offset (0x81),
  3589. XPA, 2,
  3590. , 2,
  3591. XFA, 1,
  3592. Offset (0x82),
  3593. XU1E, 1,
  3594. XU2E, 1,
  3595. XPE, 1,
  3596. XFE, 1,
  3597. Offset (0x84),
  3598. XG1E, 1,
  3599. , 1,
  3600. XG1A, 14,
  3601. Offset (0x88),
  3602. XG2E, 1,
  3603. , 1,
  3604. XG2A, 14,
  3605. Offset (0xA0),
  3606. , 2,
  3607. CLKR, 1,
  3608. , 7,
  3609. EXPE, 1,
  3610. Offset (0xA2),
  3611. Offset (0xAC),
  3612. Offset (0xAD),
  3613. Offset (0xAE),
  3614. XUSB, 1,
  3615. Offset (0xB8),
  3616. GR00, 2,
  3617. , 10,
  3618. GR06, 2
  3619. }
  3620.  
  3621. OperationRegion (LPIO, SystemIO, 0x0800, 0x0400)
  3622. Field (LPIO, DWordAcc, NoLock, Preserve)
  3623. {
  3624. Offset (0x100),
  3625. , 30,
  3626. DOI0, 1,
  3627. Offset (0x108),
  3628. , 30,
  3629. DOI1, 1,
  3630. Offset (0x110),
  3631. , 30,
  3632. DOI2, 1,
  3633. Offset (0x118),
  3634. , 30,
  3635. DOI3, 1,
  3636. Offset (0x158),
  3637. , 30,
  3638. NFCI, 1,
  3639. Offset (0x180),
  3640. , 3,
  3641. XHPD, 1,
  3642. Offset (0x1B0),
  3643. , 31,
  3644. GLIS, 1,
  3645. Offset (0x300),
  3646. , 30,
  3647. NFCD, 1,
  3648. Offset (0x308),
  3649. , 31,
  3650. NFCP, 1
  3651. }
  3652.  
  3653. OperationRegion (PMIO, SystemIO, 0x1800, 0x80)
  3654. Field (PMIO, AnyAcc, NoLock, Preserve)
  3655. {
  3656. Offset (0x2A),
  3657. , 6,
  3658. XHPE, 1,
  3659. Offset (0x42),
  3660. , 1,
  3661. SWGE, 1,
  3662. Offset (0x64),
  3663. , 9,
  3664. SCIS, 1,
  3665. Offset (0x66)
  3666. }
  3667.  
  3668. Device (PIC)
  3669. {
  3670. Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */) // _HID: Hardware ID
  3671. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3672. {
  3673. IO (Decode16,
  3674. 0x0020, // Range Minimum
  3675. 0x0020, // Range Maximum
  3676. 0x01, // Alignment
  3677. 0x02, // Length
  3678. )
  3679. IO (Decode16,
  3680. 0x00A0, // Range Minimum
  3681. 0x00A0, // Range Maximum
  3682. 0x01, // Alignment
  3683. 0x02, // Length
  3684. )
  3685. IO (Decode16,
  3686. 0x04D0, // Range Minimum
  3687. 0x04D0, // Range Maximum
  3688. 0x01, // Alignment
  3689. 0x02, // Length
  3690. )
  3691. IRQNoFlags ()
  3692. {2}
  3693. })
  3694. }
  3695.  
  3696. Device (TIMR)
  3697. {
  3698. Name (_HID, EisaId ("PNP0100") /* PC-class System Timer */) // _HID: Hardware ID
  3699. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3700. {
  3701. IO (Decode16,
  3702. 0x0040, // Range Minimum
  3703. 0x0040, // Range Maximum
  3704. 0x01, // Alignment
  3705. 0x04, // Length
  3706. )
  3707. IRQNoFlags ()
  3708. {0}
  3709. })
  3710. }
  3711.  
  3712. Device (HPET)
  3713. {
  3714. Name (_HID, EisaId ("PNP0103") /* HPET System Timer */) // _HID: Hardware ID
  3715. Method (_STA, 0, NotSerialized) // _STA: Status
  3716. {
  3717. If ((\WNTF && !\WXPF))
  3718. {
  3719. Return (0x00)
  3720. }
  3721. Else
  3722. {
  3723. Return (0x0F)
  3724. }
  3725.  
  3726. Return (0x00)
  3727. }
  3728.  
  3729. Name (BUF0, ResourceTemplate ()
  3730. {
  3731. Memory32Fixed (ReadOnly,
  3732. 0xFED00000, // Address Base
  3733. 0x00000400, // Address Length
  3734. _Y27)
  3735. })
  3736. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  3737. {
  3738. CreateDWordField (BUF0, \_SB.PCI0.LPC.HPET._Y27._BAS, HPT0) // _BAS: Base Address
  3739. HPT0 = \HPET
  3740. Return (BUF0) /* \_SB_.PCI0.LPC_.HPET.BUF0 */
  3741. }
  3742. }
  3743.  
  3744. Device (DMAC)
  3745. {
  3746. Name (_HID, EisaId ("PNP0200") /* PC-class DMA Controller */) // _HID: Hardware ID
  3747. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3748. {
  3749. IO (Decode16,
  3750. 0x0000, // Range Minimum
  3751. 0x0000, // Range Maximum
  3752. 0x01, // Alignment
  3753. 0x10, // Length
  3754. )
  3755. IO (Decode16,
  3756. 0x0080, // Range Minimum
  3757. 0x0080, // Range Maximum
  3758. 0x01, // Alignment
  3759. 0x10, // Length
  3760. )
  3761. IO (Decode16,
  3762. 0x00C0, // Range Minimum
  3763. 0x00C0, // Range Maximum
  3764. 0x01, // Alignment
  3765. 0x20, // Length
  3766. )
  3767. DMA (Compatibility, BusMaster, Transfer8_16, )
  3768. {4}
  3769. })
  3770. }
  3771.  
  3772. Device (SPKR)
  3773. {
  3774. Name (_HID, EisaId ("PNP0800") /* Microsoft Sound System Compatible Device */) // _HID: Hardware ID
  3775. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3776. {
  3777. IO (Decode16,
  3778. 0x0061, // Range Minimum
  3779. 0x0061, // Range Maximum
  3780. 0x01, // Alignment
  3781. 0x01, // Length
  3782. )
  3783. })
  3784. }
  3785.  
  3786. Device (FPU)
  3787. {
  3788. Name (_HID, EisaId ("PNP0C04") /* x87-compatible Floating Point Processing Unit */) // _HID: Hardware ID
  3789. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3790. {
  3791. IO (Decode16,
  3792. 0x00F0, // Range Minimum
  3793. 0x00F0, // Range Maximum
  3794. 0x01, // Alignment
  3795. 0x01, // Length
  3796. )
  3797. IRQNoFlags ()
  3798. {13}
  3799. })
  3800. }
  3801.  
  3802. Device (RTC)
  3803. {
  3804. Name (_HID, EisaId ("PNP0B00") /* AT Real-Time Clock */) // _HID: Hardware ID
  3805. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3806. {
  3807. IO (Decode16,
  3808. 0x0070, // Range Minimum
  3809. 0x0070, // Range Maximum
  3810. 0x01, // Alignment
  3811. 0x02, // Length
  3812. )
  3813. IRQNoFlags ()
  3814. {8}
  3815. })
  3816. }
  3817.  
  3818. Device (KBD)
  3819. {
  3820. Method (_HID, 0, NotSerialized) // _HID: Hardware ID
  3821. {
  3822. If (\WIN8)
  3823. {
  3824. Return (0x7100AE30)
  3825. }
  3826.  
  3827. Return (0x0303D041)
  3828. }
  3829.  
  3830. Name (_CID, EisaId ("PNP0303") /* IBM Enhanced Keyboard (101/102-key, PS/2 Mouse) */) // _CID: Compatible ID
  3831. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3832. {
  3833. IO (Decode16,
  3834. 0x0060, // Range Minimum
  3835. 0x0060, // Range Maximum
  3836. 0x01, // Alignment
  3837. 0x01, // Length
  3838. )
  3839. IO (Decode16,
  3840. 0x0064, // Range Minimum
  3841. 0x0064, // Range Maximum
  3842. 0x01, // Alignment
  3843. 0x01, // Length
  3844. )
  3845. IRQNoFlags ()
  3846. {1}
  3847. })
  3848. }
  3849.  
  3850. Device (MOU)
  3851. {
  3852. Name (_HID, EisaId ("IBM3780")) // _HID: Hardware ID
  3853. Name (_CID, EisaId ("PNP0F13") /* PS/2 Mouse */) // _CID: Compatible ID
  3854. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  3855. {
  3856. IRQNoFlags ()
  3857. {12}
  3858. })
  3859. Method (MHID, 0, NotSerialized)
  3860. {
  3861. If (\_SB.PCI0.LPC.PADD)
  3862. {
  3863. _HID = 0x80374D24
  3864. }
  3865. Else
  3866. {
  3867. If (NFCD)
  3868. {
  3869. _HID = 0x3400AE30
  3870. }
  3871. Else
  3872. {
  3873. _HID = 0x3700AE30
  3874. }
  3875. }
  3876. }
  3877. }
  3878.  
  3879. OperationRegion (IMGA, SystemIO, 0x15E0, 0x10)
  3880. Field (IMGA, ByteAcc, NoLock, Preserve)
  3881. {
  3882. Offset (0x01),
  3883. Offset (0x02),
  3884. Offset (0x03),
  3885. WAKR, 16,
  3886. Offset (0x0C),
  3887. GAIX, 8,
  3888. Offset (0x0E),
  3889. GADT, 8,
  3890. Offset (0x10)
  3891. }
  3892.  
  3893. IndexField (GAIX, GADT, ByteAcc, NoLock, Preserve)
  3894. {
  3895. Offset (0x50),
  3896. , 3,
  3897. IVPW, 1,
  3898. DVPW, 1,
  3899. BLPL, 1,
  3900. Offset (0x51),
  3901. TP4R, 1,
  3902. PADR, 1,
  3903. BPAD, 1,
  3904. , 1,
  3905. , 1,
  3906. PADD, 1,
  3907. Offset (0x60),
  3908. EPWG, 1,
  3909. , 1,
  3910. CSON, 1,
  3911. DSCI, 1,
  3912. DSCS, 1,
  3913. DLAN, 1,
  3914. Offset (0xC2),
  3915. GAID, 8
  3916. }
  3917.  
  3918. Scope (\_SB)
  3919. {
  3920. Name (TCGP, Buffer (0x08)
  3921. {
  3922. 0x1F, 0xE0, 0x1F, 0x01, 0x02, 0x04, 0x08, 0xF0 /* ........ */
  3923. })
  3924. CreateByteField (TCGP, 0x00, PPRQ)
  3925. CreateByteField (TCGP, 0x01, PPL1)
  3926. CreateByteField (TCGP, 0x02, PPRP)
  3927. CreateByteField (TCGP, 0x03, TPRS)
  3928. CreateByteField (TCGP, 0x04, PPOR)
  3929. CreateByteField (TCGP, 0x05, TPMV)
  3930. CreateByteField (TCGP, 0x06, MOR)
  3931. CreateByteField (TCGP, 0x07, TVEN)
  3932. OperationRegion (TCGC, SystemIO, 0x72, 0x02)
  3933. Field (TCGC, ByteAcc, Lock, Preserve)
  3934. {
  3935. TIDX, 8,
  3936. TPDA, 8
  3937. }
  3938.  
  3939. IndexField (TIDX, TPDA, ByteAcc, Lock, Preserve)
  3940. {
  3941. Offset (0x40),
  3942. TPP1, 8,
  3943. PPLO, 8,
  3944. TPP3, 8
  3945. }
  3946.  
  3947. OperationRegion (SMIP, SystemIO, 0xB2, 0x02)
  3948. Field (SMIP, ByteAcc, NoLock, Preserve)
  3949. {
  3950. SMIT, 8,
  3951. SMID, 8
  3952. }
  3953. }
  3954.  
  3955. Device (TPM)
  3956. {
  3957. Name (TMPV, 0x00)
  3958. Method (_HID, 0, NotSerialized) // _HID: Hardware ID
  3959. {
  3960. If ((TVID == 0x15D1))
  3961. {
  3962. Return (0x0201D824)
  3963. }
  3964.  
  3965. If (((TVID == 0x1050) || (TVID == 0x100B)))
  3966. {
  3967. Return (0x0010A35C)
  3968. }
  3969.  
  3970. If ((TVID == 0x19FA))
  3971. {
  3972. Return (0x0435CF4D)
  3973. }
  3974.  
  3975. If ((TDID == 0x1002))
  3976. {
  3977. Return (0x02016D08)
  3978. }
  3979.  
  3980. If ((TDID == 0x1001))
  3981. {
  3982. Return (0x01016D08)
  3983. }
  3984.  
  3985. If ((TVID == 0x1114))
  3986. {
  3987. Return (0x00128D06)
  3988. }
  3989.  
  3990. If ((TVID == 0x104A))
  3991. {
  3992. Return (0x0012AF4D)
  3993. }
  3994.  
  3995. Return (0x310CD041)
  3996. }
  3997.  
  3998. Name (_CID, EisaId ("PNP0C31")) // _CID: Compatible ID
  3999. Name (_UID, 0x01) // _UID: Unique ID
  4000. OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x1000)
  4001. Field (TMMB, ByteAcc, Lock, Preserve)
  4002. {
  4003. ACCS, 8,
  4004. Offset (0x18),
  4005. TSTA, 8,
  4006. TBCA, 8,
  4007. Offset (0xF00),
  4008. TVID, 16,
  4009. TDID, 16
  4010. }
  4011.  
  4012. Method (_STA, 0, NotSerialized) // _STA: Status
  4013. {
  4014. If ((ACCS == 0xFF))
  4015. {
  4016. Return (0x00)
  4017. }
  4018. Else
  4019. {
  4020. If ((TPME == 0x00))
  4021. {
  4022. Return (0x00)
  4023. }
  4024. }
  4025.  
  4026. Return (0x0F)
  4027. }
  4028.  
  4029. Name (BUF1, ResourceTemplate ()
  4030. {
  4031. Memory32Fixed (ReadOnly,
  4032. 0xFED40000, // Address Base
  4033. 0x00005000, // Address Length
  4034. )
  4035. })
  4036. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  4037. {
  4038. Return (BUF1) /* \_SB_.PCI0.LPC_.TPM_.BUF1 */
  4039. }
  4040.  
  4041. Method (UCMP, 2, NotSerialized)
  4042. {
  4043. If ((0x10 != SizeOf (Arg0)))
  4044. {
  4045. Return (0x00)
  4046. }
  4047.  
  4048. If ((0x10 != SizeOf (Arg1)))
  4049. {
  4050. Return (0x00)
  4051. }
  4052.  
  4053. Local0 = 0x00
  4054. While ((Local0 < 0x10))
  4055. {
  4056. If ((DerefOf (Index (Arg0, Local0)) != DerefOf (Index (Arg1, Local0
  4057. ))))
  4058. {
  4059. Return (0x00)
  4060. }
  4061.  
  4062. Local0++
  4063. }
  4064.  
  4065. Return (0x01)
  4066. }
  4067.  
  4068. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  4069. {
  4070. Name (TTMP, Buffer (0x01)
  4071. {
  4072. 0x00 /* . */
  4073. })
  4074. CreateByteField (TTMP, 0x00, TMPV)
  4075. If ((UCMP (Arg0, ToUUID ("3dddfaa6-361b-4eb4-a424-8d10089d1653") /* Physical Presence Interface */) == 0x01))
  4076. {
  4077. If ((Arg2 == 0x00))
  4078. {
  4079. Return (Buffer (0x02)
  4080. {
  4081. 0xFF, 0x01 /* .. */
  4082. })
  4083. }
  4084.  
  4085. If ((Arg2 == 0x01))
  4086. {
  4087. Return (Buffer (0x04)
  4088. {
  4089. "1.2"
  4090. })
  4091. }
  4092.  
  4093. If ((Arg2 == 0x02))
  4094. {
  4095. TMPV = TPP3 /* \_SB_.TPP3 */
  4096. If ((TMPV & TPRS))
  4097. {
  4098. If ((DerefOf (Index (Arg3, 0x00)) <= 0x0B))
  4099. {
  4100. TPP1 = DerefOf (Index (Arg3, 0x00))
  4101. Return (0x00)
  4102. }
  4103.  
  4104. If (((DerefOf (Index (Arg3, 0x00)) >= 0x0E) && (
  4105. DerefOf (Index (Arg3, 0x00)) <= 0x12)))
  4106. {
  4107. TPP1 = DerefOf (Index (Arg3, 0x00))
  4108. Return (0x00)
  4109. }
  4110.  
  4111. If (((DerefOf (Index (Arg3, 0x00)) == 0x15) || (DerefOf (Index (
  4112. Arg3, 0x00)) == 0x16)))
  4113. {
  4114. TPP1 = DerefOf (Index (Arg3, 0x00))
  4115. Return (0x00)
  4116. }
  4117.  
  4118. Return (0x01)
  4119. }
  4120.  
  4121. Return (0x02)
  4122. }
  4123.  
  4124. If ((Arg2 == 0x03))
  4125. {
  4126. Name (TMP1, Package (0x02)
  4127. {
  4128. 0x00,
  4129. 0xFFFFFFFF
  4130. })
  4131. TMPV = TPP1 /* \_SB_.TPP1 */
  4132. Index (TMP1, 0x01) = TMPV &= PPRQ /* \_SB_.PPRQ */
  4133. Return (TMP1) /* \_SB_.PCI0.LPC_.TPM_._DSM.TMP1 */
  4134. }
  4135.  
  4136. If ((Arg2 == 0x04))
  4137. {
  4138. Return (0x02)
  4139. }
  4140.  
  4141. If ((Arg2 == 0x05))
  4142. {
  4143. Name (TMP2, Package (0x03)
  4144. {
  4145. 0x00,
  4146. 0xFFFFFFFF,
  4147. 0xFFFFFFFF
  4148. })
  4149. Index (TMP2, 0x01) = PPLO /* \_SB_.PPLO */
  4150. Index (TMP2, 0x02) = 0x00
  4151. Return (TMP2) /* \_SB_.PCI0.LPC_.TPM_._DSM.TMP2 */
  4152. }
  4153.  
  4154. If ((Arg2 == 0x06))
  4155. {
  4156. Return (0x03)
  4157. }
  4158.  
  4159. If ((Arg2 == 0x07))
  4160. {
  4161. TMPV = TPP3 /* \_SB_.TPP3 */
  4162. If ((TMPV & TPRS))
  4163. {
  4164. If ((DerefOf (Index (Arg3, 0x00)) <= 0x0B))
  4165. {
  4166. TPP1 = DerefOf (Index (Arg3, 0x00))
  4167. Return (0x00)
  4168. }
  4169.  
  4170. If (((DerefOf (Index (Arg3, 0x00)) >= 0x0E) && (
  4171. DerefOf (Index (Arg3, 0x00)) <= 0x12)))
  4172. {
  4173. TPP1 = DerefOf (Index (Arg3, 0x00))
  4174. Return (0x00)
  4175. }
  4176.  
  4177. If (((DerefOf (Index (Arg3, 0x00)) == 0x15) || (DerefOf (Index (
  4178. Arg3, 0x00)) == 0x16)))
  4179. {
  4180. TPP1 = DerefOf (Index (Arg3, 0x00))
  4181. Return (0x00)
  4182. }
  4183.  
  4184. Return (0x01)
  4185. }
  4186.  
  4187. Return (0x02)
  4188. }
  4189.  
  4190. If ((Arg2 == 0x08))
  4191. {
  4192. Name (PPIP, 0x00)
  4193. Name (PPIC, 0x00)
  4194. If ((\TPPP == 0x00))
  4195. {
  4196. PPIP = 0x01
  4197. }
  4198.  
  4199. If ((\TPPC == 0x00))
  4200. {
  4201. PPIC = 0x01
  4202. }
  4203.  
  4204. If ((DerefOf (Index (Arg3, 0x00)) == 0x05))
  4205. {
  4206. If ((PPIC > 0x00))
  4207. {
  4208. Return (0x04)
  4209. }
  4210.  
  4211. Return (0x03)
  4212. }
  4213.  
  4214. If (((DerefOf (Index (Arg3, 0x00)) >= 0x01) && (
  4215. DerefOf (Index (Arg3, 0x00)) <= 0x04)))
  4216. {
  4217. If ((PPIP > 0x00))
  4218. {
  4219. Return (0x04)
  4220. }
  4221.  
  4222. Return (0x03)
  4223. }
  4224.  
  4225. If (((DerefOf (Index (Arg3, 0x00)) >= 0x06) && (
  4226. DerefOf (Index (Arg3, 0x00)) <= 0x0B)))
  4227. {
  4228. If ((PPIP > 0x00))
  4229. {
  4230. Return (0x04)
  4231. }
  4232.  
  4233. Return (0x03)
  4234. }
  4235.  
  4236. If (((DerefOf (Index (Arg3, 0x00)) == 0x0E) || ((
  4237. DerefOf (Index (Arg3, 0x00)) >= 0x15) && (DerefOf (Index (Arg3, 0x00)) <=
  4238. 0x16))))
  4239. {
  4240. If (((PPIP > 0x00) && (PPIC > 0x00)))
  4241. {
  4242. Return (0x04)
  4243. }
  4244.  
  4245. Return (0x03)
  4246. }
  4247.  
  4248. If (((DerefOf (Index (Arg3, 0x00)) == 0x10) || (DerefOf (Index (
  4249. Arg3, 0x00)) == 0x12)))
  4250. {
  4251. Return (0x03)
  4252. }
  4253.  
  4254. If (((DerefOf (Index (Arg3, 0x00)) == 0x00) || ((DerefOf (
  4255. Index (Arg3, 0x00)) == 0x0F) || (DerefOf (Index (Arg3, 0x00)) == 0x11))))
  4256. {
  4257. Return (0x04)
  4258. }
  4259.  
  4260. Return (0x00)
  4261. }
  4262.  
  4263. Return (0x01)
  4264. }
  4265.  
  4266. If ((UCMP (Arg0, ToUUID ("376054ed-cc13-4675-901c-4756d7f2d45d")) == 0x01))
  4267. {
  4268. If ((Arg2 == 0x00))
  4269. {
  4270. Return (Buffer (0x01)
  4271. {
  4272. 0x03 /* . */
  4273. })
  4274. }
  4275.  
  4276. If ((Arg2 == 0x01))
  4277. {
  4278. TMPV = DerefOf (Index (Arg3, 0x00))
  4279. TMPV &= 0x01
  4280. If ((TMPV == 0x00))
  4281. {
  4282. \_SB.MOR = 0x00
  4283. Return (0x00)
  4284. }
  4285.  
  4286. If ((TMPV == 0x01))
  4287. {
  4288. \_SB.MOR = 0x01
  4289. Return (0x00)
  4290. }
  4291. }
  4292.  
  4293. Return (0x01)
  4294. }
  4295.  
  4296. Return (Buffer (0x01)
  4297. {
  4298. 0x00 /* . */
  4299. })
  4300. }
  4301.  
  4302. Method (CMOR, 0, NotSerialized)
  4303. {
  4304. \_SB.MOR = 0x00
  4305. SMID = 0x80
  4306. SMIT = 0xC1
  4307. }
  4308. }
  4309.  
  4310. Device (EC)
  4311. {
  4312. Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */) // _HID: Hardware ID
  4313. Name (_UID, 0x00) // _UID: Unique ID
  4314. Name (_GPE, 0x25) // _GPE: General Purpose Events
  4315. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  4316. {
  4317. If ((Arg0 == 0x03))
  4318. {
  4319. \H8DR = Arg1
  4320. }
  4321. }
  4322.  
  4323. OperationRegion (ECOR, EmbeddedControl, 0x00, 0x0100)
  4324. Field (ECOR, ByteAcc, NoLock, Preserve)
  4325. {
  4326. HDBM, 1,
  4327. , 1,
  4328. , 1,
  4329. HFNE, 1,
  4330. , 1,
  4331. , 1,
  4332. HLDM, 1,
  4333. Offset (0x01),
  4334. BBLS, 1,
  4335. BTCM, 1,
  4336. , 1,
  4337. , 1,
  4338. , 1,
  4339. HKRM, 2,
  4340. Offset (0x02),
  4341. HDUE, 1,
  4342. , 4,
  4343. SNLK, 1,
  4344. Offset (0x03),
  4345. , 5,
  4346. HAUM, 2,
  4347. Offset (0x05),
  4348. HSPA, 1,
  4349. Offset (0x06),
  4350. HSUN, 8,
  4351. HSRP, 8,
  4352. Offset (0x0C),
  4353. HLCL, 8,
  4354. , 4,
  4355. CALM, 1,
  4356. Offset (0x0E),
  4357. HFNS, 2,
  4358. Offset (0x0F),
  4359. , 6,
  4360. NULS, 1,
  4361. LFST, 1,
  4362. HAM0, 8,
  4363. HAM1, 8,
  4364. HAM2, 8,
  4365. HAM3, 8,
  4366. HAM4, 8,
  4367. HAM5, 8,
  4368. HAM6, 8,
  4369. HAM7, 8,
  4370. HAM8, 8,
  4371. HAM9, 8,
  4372. HAMA, 8,
  4373. HAMB, 8,
  4374. HAMC, 8,
  4375. HAMD, 8,
  4376. HAME, 8,
  4377. HAMF, 8,
  4378. Offset (0x23),
  4379. HANT, 8,
  4380. Offset (0x26),
  4381. , 2,
  4382. HANA, 2,
  4383. Offset (0x27),
  4384. Offset (0x28),
  4385. , 1,
  4386. SKEM, 1,
  4387. Offset (0x29),
  4388. Offset (0x2A),
  4389. HATR, 8,
  4390. HT0H, 8,
  4391. HT0L, 8,
  4392. HT1H, 8,
  4393. HT1L, 8,
  4394. HFSP, 8,
  4395. , 6,
  4396. HMUT, 1,
  4397. Offset (0x31),
  4398. , 2,
  4399. HUWB, 1,
  4400. Offset (0x32),
  4401. HWPM, 1,
  4402. HWLB, 1,
  4403. HWLO, 1,
  4404. HWDK, 1,
  4405. HWFN, 1,
  4406. HWBT, 1,
  4407. HWRI, 1,
  4408. HWBU, 1,
  4409. HWLU, 1,
  4410. Offset (0x34),
  4411. , 3,
  4412. PIBS, 1,
  4413. , 3,
  4414. HPLO, 1,
  4415. Offset (0x36),
  4416. HWAC, 16,
  4417. HB0S, 7,
  4418. HB0A, 1,
  4419. HB1S, 7,
  4420. HB1A, 1,
  4421. HCMU, 1,
  4422. , 2,
  4423. OVRQ, 1,
  4424. DCBD, 1,
  4425. DCWL, 1,
  4426. DCWW, 1,
  4427. HB1I, 1,
  4428. , 1,
  4429. KBLT, 1,
  4430. BTPW, 1,
  4431. FNKC, 1,
  4432. HUBS, 1,
  4433. BDPW, 1,
  4434. BDDT, 1,
  4435. HUBB, 1,
  4436. Offset (0x46),
  4437. , 1,
  4438. BTWK, 1,
  4439. HPLD, 1,
  4440. , 1,
  4441. HPAC, 1,
  4442. BTST, 1,
  4443. Offset (0x47),
  4444. HPBU, 1,
  4445. , 1,
  4446. HBID, 1,
  4447. , 3,
  4448. HBCS, 1,
  4449. HPNF, 1,
  4450. , 1,
  4451. GSTS, 1,
  4452. , 2,
  4453. HLBU, 1,
  4454. DOCD, 1,
  4455. HCBL, 1,
  4456. Offset (0x49),
  4457. SLUL, 1,
  4458. Offset (0x4C),
  4459. HTMH, 8,
  4460. HTML, 8,
  4461. HWAK, 16,
  4462. HMPR, 8,
  4463. , 7,
  4464. HMDN, 1,
  4465. Offset (0x78),
  4466. TMP0, 8,
  4467. DFRH, 8,
  4468. DFRL, 8,
  4469. Offset (0x80),
  4470. Offset (0x81),
  4471. HIID, 8,
  4472. Offset (0x83),
  4473. HFNI, 8,
  4474. HSPD, 16,
  4475. Offset (0x88),
  4476. TSL0, 7,
  4477. TSR0, 1,
  4478. TSL1, 7,
  4479. TSR1, 1,
  4480. TSL2, 7,
  4481. TSR2, 1,
  4482. TSL3, 7,
  4483. TSR3, 1,
  4484. Offset (0x8D),
  4485. HDAA, 3,
  4486. HDAB, 3,
  4487. HDAC, 2,
  4488. Offset (0xB0),
  4489. HDEN, 32,
  4490. HDEP, 32,
  4491. HDEM, 8,
  4492. HDES, 8,
  4493. Offset (0xBB),
  4494. PLSL, 8,
  4495. PLMS, 8,
  4496. PLLS, 8,
  4497. PLTU, 8,
  4498. Offset (0xC8),
  4499. ATMX, 8,
  4500. HWAT, 8,
  4501. Offset (0xCC),
  4502. PWMH, 8,
  4503. PWML, 8,
  4504. Offset (0xCF),
  4505. , 5,
  4506. EKRM, 2,
  4507. Offset (0xD0),
  4508. Offset (0xED),
  4509. , 4,
  4510. HDDD, 1
  4511. }
  4512.  
  4513. Method (_INI, 0, NotSerialized) // _INI: Initialize
  4514. {
  4515. If (\H8DR)
  4516. {
  4517. HSPA = 0x00
  4518. }
  4519. Else
  4520. {
  4521. \MBEC (0x05, 0xFE, 0x00)
  4522. }
  4523.  
  4524. \_SB.PCI0.LPC.EC.HKEY.WGIN ()
  4525. }
  4526.  
  4527. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  4528. {
  4529. IO (Decode16,
  4530. 0x0062, // Range Minimum
  4531. 0x0062, // Range Maximum
  4532. 0x01, // Alignment
  4533. 0x01, // Length
  4534. )
  4535. IO (Decode16,
  4536. 0x0066, // Range Minimum
  4537. 0x0066, // Range Maximum
  4538. 0x01, // Alignment
  4539. 0x01, // Length
  4540. )
  4541. })
  4542. Method (LED, 2, NotSerialized)
  4543. {
  4544. Local0 = (Arg0 | Arg1)
  4545. If (\H8DR)
  4546. {
  4547. HLCL = Local0
  4548. }
  4549. Else
  4550. {
  4551. \WBEC (0x0C, Local0)
  4552. }
  4553. }
  4554.  
  4555. Name (BAON, 0x00)
  4556. Name (WBON, 0x00)
  4557. Method (BEEP, 1, NotSerialized)
  4558. {
  4559. If ((Arg0 == 0x05))
  4560. {
  4561. WBON = 0x00
  4562. }
  4563.  
  4564. Local2 = WBON /* \_SB_.PCI0.LPC_.EC__.WBON */
  4565. If (BAON)
  4566. {
  4567. If ((Arg0 == 0x00))
  4568. {
  4569. BAON = 0x00
  4570. If (WBON)
  4571. {
  4572. Local0 = 0x03
  4573. Local1 = 0x08
  4574. }
  4575. Else
  4576. {
  4577. Local0 = 0x00
  4578. Local1 = 0x00
  4579. }
  4580. }
  4581. Else
  4582. {
  4583. Local0 = 0xFF
  4584. Local1 = 0xFF
  4585. If ((Arg0 == 0x11))
  4586. {
  4587. WBON = 0x00
  4588. }
  4589.  
  4590. If ((Arg0 == 0x10))
  4591. {
  4592. WBON = 0x01
  4593. }
  4594. }
  4595. }
  4596. Else
  4597. {
  4598. Local0 = Arg0
  4599. Local1 = 0xFF
  4600. If ((Arg0 == 0x0F))
  4601. {
  4602. Local0 = Arg0
  4603. Local1 = 0x08
  4604. BAON = 0x01
  4605. }
  4606.  
  4607. If ((Arg0 == 0x11))
  4608. {
  4609. Local0 = 0x00
  4610. Local1 = 0x00
  4611. WBON = 0x00
  4612. }
  4613.  
  4614. If ((Arg0 == 0x10))
  4615. {
  4616. Local0 = 0x03
  4617. Local1 = 0x08
  4618. WBON = 0x01
  4619. }
  4620. }
  4621.  
  4622. If ((Arg0 == 0x03))
  4623. {
  4624. WBON = 0x00
  4625. If (Local2)
  4626. {
  4627. Local0 = 0x07
  4628. If (((\SPS == 0x03) || (\SPS == 0x04)))
  4629. {
  4630. Local2 = 0x00
  4631. Local0 = 0xFF
  4632. Local1 = 0xFF
  4633. }
  4634. }
  4635. }
  4636.  
  4637. If ((Arg0 == 0x07))
  4638. {
  4639. If (Local2)
  4640. {
  4641. Local2 = 0x00
  4642. Local0 = 0xFF
  4643. Local1 = 0xFF
  4644. }
  4645. }
  4646.  
  4647. If (\H8DR)
  4648. {
  4649. If ((Local2 && !WBON))
  4650. {
  4651. HSRP = 0x00
  4652. HSUN = 0x00
  4653. Sleep (0x64)
  4654. }
  4655.  
  4656. If ((Local1 != 0xFF))
  4657. {
  4658. HSRP = Local1
  4659. }
  4660.  
  4661. If ((Local0 != 0xFF))
  4662. {
  4663. HSUN = Local0
  4664. }
  4665. }
  4666. Else
  4667. {
  4668. If ((Local2 && !WBON))
  4669. {
  4670. \WBEC (0x07, 0x00)
  4671. \WBEC (0x06, 0x00)
  4672. Sleep (0x64)
  4673. }
  4674.  
  4675. If ((Local1 != 0xFF))
  4676. {
  4677. \WBEC (0x07, Local1)
  4678. }
  4679.  
  4680. If ((Local0 != 0xFF))
  4681. {
  4682. \WBEC (0x06, Local0)
  4683. }
  4684. }
  4685.  
  4686. If ((Arg0 == 0x03)) {}
  4687. If ((Arg0 == 0x07))
  4688. {
  4689. Sleep (0x01F4)
  4690. }
  4691. }
  4692.  
  4693. Method (EVNT, 1, NotSerialized)
  4694. {
  4695. If (\H8DR)
  4696. {
  4697. If (Arg0)
  4698. {
  4699. HAM5 |= 0x04
  4700. }
  4701. Else
  4702. {
  4703. HAM5 &= 0xFB
  4704. }
  4705. }
  4706. Else
  4707. {
  4708. If (Arg0)
  4709. {
  4710. \MBEC (0x15, 0xFF, 0x04)
  4711. }
  4712. Else
  4713. {
  4714. \MBEC (0x15, 0xFB, 0x00)
  4715. }
  4716. }
  4717. }
  4718.  
  4719. Name (USPS, 0x00)
  4720. PowerResource (PUBS, 0x03, 0x0000)
  4721. {
  4722. Method (_STA, 0, NotSerialized) // _STA: Status
  4723. {
  4724. If (\H8DR)
  4725. {
  4726. Local0 = HUBS /* \_SB_.PCI0.LPC_.EC__.HUBS */
  4727. }
  4728. Else
  4729. {
  4730. Local0 = (\RBEC (0x3B) & 0x10)
  4731. }
  4732.  
  4733. If (Local0)
  4734. {
  4735. Return (0x01)
  4736. }
  4737. Else
  4738. {
  4739. Return (0x00)
  4740. }
  4741. }
  4742.  
  4743. Method (_ON, 0, NotSerialized) // _ON_: Power On
  4744. {
  4745. Local0 = 0x64
  4746. While ((USPS && Local0))
  4747. {
  4748. Sleep (0x01)
  4749. Local0--
  4750. }
  4751.  
  4752. If (\H8DR)
  4753. {
  4754. HUBS = 0x01
  4755. }
  4756. Else
  4757. {
  4758. \MBEC (0x3B, 0xFF, 0x10)
  4759. }
  4760. }
  4761.  
  4762. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  4763. {
  4764. USPS = 0x01
  4765. If (\H8DR)
  4766. {
  4767. HUBS = 0x00
  4768. }
  4769. Else
  4770. {
  4771. \MBEC (0x3B, 0xEF, 0x00)
  4772. }
  4773.  
  4774. Sleep (0x14)
  4775. USPS = 0x00
  4776. }
  4777. }
  4778.  
  4779. Method (CHKS, 0, NotSerialized)
  4780. {
  4781. Local0 = 0x03E8
  4782. While (HMPR)
  4783. {
  4784. Sleep (0x01)
  4785. Local0--
  4786. If (!Local0)
  4787. {
  4788. Return (0x8080)
  4789. }
  4790. }
  4791.  
  4792. If (HMDN)
  4793. {
  4794. Return (Zero)
  4795. }
  4796.  
  4797. Return (0x8081)
  4798. }
  4799.  
  4800. Method (LPMD, 0, NotSerialized)
  4801. {
  4802. Local0 = 0x00
  4803. Local1 = 0x00
  4804. Local2 = 0x00
  4805. If (\H8DR)
  4806. {
  4807. If (HPAC)
  4808. {
  4809. If (HPLO)
  4810. {
  4811. Local0 = \LPST
  4812. }
  4813. Else
  4814. {
  4815. If ((HWAT < 0x5A))
  4816. {
  4817. If (HB0A)
  4818. {
  4819. If (((HB0S & 0x10) || ((HB0S & 0x07) < 0x02)))
  4820. {
  4821. Local1 = 0x01
  4822. }
  4823. }
  4824. Else
  4825. {
  4826. Local1 = 0x01
  4827. }
  4828.  
  4829. If (HB1A)
  4830. {
  4831. If (((HB1S & 0x10) || ((HB1S & 0x07) < 0x02)))
  4832. {
  4833. Local2 = 0x01
  4834. }
  4835. }
  4836. Else
  4837. {
  4838. Local2 = 0x01
  4839. }
  4840.  
  4841. If ((Local1 && Local2))
  4842. {
  4843. Local0 = \LPST
  4844. }
  4845. }
  4846. }
  4847. }
  4848. }
  4849. Else
  4850. {
  4851. If ((\RBEC (0x46) & 0x10))
  4852. {
  4853. If ((\RBEC (0x34) & 0x80))
  4854. {
  4855. Local0 = \LPST
  4856. }
  4857. Else
  4858. {
  4859. If ((\RBEC (0xC9) < 0x5A))
  4860. {
  4861. Local3 = \RBEC (0x38)
  4862. If ((Local3 & 0x80))
  4863. {
  4864. If (((Local3 & 0x10) || ((Local3 & 0x07) < 0x02)))
  4865. {
  4866. Local1 = 0x01
  4867. }
  4868. }
  4869. Else
  4870. {
  4871. Local2 = 0x01
  4872. }
  4873.  
  4874. Local3 = \RBEC (0x39)
  4875. If ((Local3 & 0x80))
  4876. {
  4877. If (((Local3 & 0x10) || ((Local3 & 0x07) < 0x02)))
  4878. {
  4879. Local1 = 0x01
  4880. }
  4881. }
  4882. Else
  4883. {
  4884. Local2 = 0x01
  4885. }
  4886.  
  4887. If ((Local1 && Local2))
  4888. {
  4889. Local0 = \LPST
  4890. }
  4891. }
  4892. }
  4893. }
  4894. }
  4895.  
  4896. Return (Local0)
  4897. }
  4898.  
  4899. Method (CLPM, 0, NotSerialized)
  4900. {
  4901. If ((\PPMF & 0x01))
  4902. {
  4903. If ((\OSPX || \CPPX))
  4904. {
  4905. \PNTF (0x80)
  4906. }
  4907. Else
  4908. {
  4909. Local0 = LPMD ()
  4910. If (Local0)
  4911. {
  4912. \STEP (0x04)
  4913. }
  4914. Else
  4915. {
  4916. \STEP (0x05)
  4917. }
  4918. }
  4919. }
  4920. }
  4921.  
  4922. Mutex (MCPU, 0x07)
  4923. Method (_Q10, 0, NotSerialized) // _Qxx: EC Query
  4924. {
  4925. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x01))
  4926. {
  4927. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1001)
  4928. }
  4929. }
  4930.  
  4931. Method (_Q11, 0, NotSerialized) // _Qxx: EC Query
  4932. {
  4933. Noop
  4934. }
  4935.  
  4936. Method (_Q12, 0, NotSerialized) // _Qxx: EC Query
  4937. {
  4938. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x02))
  4939. {
  4940. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1002)
  4941. }
  4942. }
  4943.  
  4944. Method (_Q13, 0, NotSerialized) // _Qxx: EC Query
  4945. {
  4946. If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
  4947. {
  4948. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1004)
  4949. }
  4950. Else
  4951. {
  4952. Notify (\_SB.SLPB, 0x80) // Status Change
  4953. }
  4954. }
  4955.  
  4956. Method (_Q64, 0, NotSerialized) // _Qxx: EC Query
  4957. {
  4958. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x10))
  4959. {
  4960. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1005)
  4961. }
  4962. }
  4963.  
  4964. Method (_Q65, 0, NotSerialized) // _Qxx: EC Query
  4965. {
  4966. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x20))
  4967. {
  4968. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1006)
  4969. }
  4970. }
  4971.  
  4972. Method (_Q16, 0, NotSerialized) // _Qxx: EC Query
  4973. {
  4974. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x40))
  4975. {
  4976. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1007)
  4977. }
  4978. Else
  4979. {
  4980. If ((\VHYB (0x03, 0x00) == 0x03))
  4981. {
  4982. Notify (\_SB.PCI0.VID, 0x80) // Status Change
  4983. Return (Zero)
  4984. }
  4985.  
  4986. If (VIGD)
  4987. {
  4988. \_SB.PCI0.VID.VSWT ()
  4989. }
  4990. Else
  4991. {
  4992. \_SB.PCI0.PEG.VID.VSWT ()
  4993. }
  4994. }
  4995. }
  4996.  
  4997. Method (_Q17, 0, NotSerialized) // _Qxx: EC Query
  4998. {
  4999. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x80))
  5000. {
  5001. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1008)
  5002. }
  5003. Else
  5004. {
  5005. If (!\WNTF)
  5006. {
  5007. VEXP ()
  5008. }
  5009. }
  5010. }
  5011.  
  5012. Method (_Q18, 0, NotSerialized) // _Qxx: EC Query
  5013. {
  5014. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x0100))
  5015. {
  5016. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1009)
  5017. }
  5018.  
  5019. Noop
  5020. }
  5021.  
  5022. Method (_Q1A, 0, NotSerialized) // _Qxx: EC Query
  5023. {
  5024. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x0400))
  5025. {
  5026. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100B)
  5027. }
  5028. }
  5029.  
  5030. Method (_Q1B, 0, NotSerialized) // _Qxx: EC Query
  5031. {
  5032. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100C)
  5033. }
  5034.  
  5035. Method (_Q62, 0, NotSerialized) // _Qxx: EC Query
  5036. {
  5037. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x1000))
  5038. {
  5039. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100D)
  5040. }
  5041. }
  5042.  
  5043. Method (_Q60, 0, NotSerialized) // _Qxx: EC Query
  5044. {
  5045. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x2000))
  5046. {
  5047. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100E)
  5048. }
  5049. }
  5050.  
  5051. Method (_Q61, 0, NotSerialized) // _Qxx: EC Query
  5052. {
  5053. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x4000))
  5054. {
  5055. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x100F)
  5056. }
  5057. }
  5058.  
  5059. Method (_Q1F, 0, NotSerialized) // _Qxx: EC Query
  5060. {
  5061. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  5062. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  5063. DFRL = 0x34
  5064. Release (\_SB.PCI0.LPC.EC.MDFR)
  5065. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00020000))
  5066. {
  5067. If ((PKLI & 0x0C00))
  5068. {
  5069. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1012)
  5070. }
  5071. }
  5072.  
  5073. \UCMS (0x0E)
  5074. }
  5075.  
  5076. Method (_Q1C, 0, NotSerialized) // _Qxx: EC Query
  5077. {
  5078. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x01000000))
  5079. {
  5080. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1019)
  5081. }
  5082. }
  5083.  
  5084. Method (_Q1D, 0, NotSerialized) // _Qxx: EC Query
  5085. {
  5086. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x02000000))
  5087. {
  5088. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101A)
  5089. }
  5090. }
  5091.  
  5092. Method (_Q66, 0, NotSerialized) // _Qxx: EC Query
  5093. {
  5094. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x10000000))
  5095. {
  5096. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101D)
  5097. }
  5098. }
  5099.  
  5100. Method (_Q67, 0, NotSerialized) // _Qxx: EC Query
  5101. {
  5102. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x20000000))
  5103. {
  5104. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101E)
  5105. }
  5106. }
  5107.  
  5108. Method (_Q68, 0, NotSerialized) // _Qxx: EC Query
  5109. {
  5110. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x40000000))
  5111. {
  5112. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101F)
  5113. }
  5114. }
  5115.  
  5116. Method (_Q69, 0, NotSerialized) // _Qxx: EC Query
  5117. {
  5118. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x80000000))
  5119. {
  5120. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1020)
  5121. }
  5122. }
  5123.  
  5124. Method (_Q26, 0, NotSerialized) // _Qxx: EC Query
  5125. {
  5126. If (VIGD)
  5127. {
  5128. If (\WVIS)
  5129. {
  5130. \VBTD ()
  5131. }
  5132.  
  5133. \_SB.PCI0.LPC.EC.BRNS ()
  5134. }
  5135. Else
  5136. {
  5137. \UCMS (0x12)
  5138. }
  5139.  
  5140. Sleep (0x01F4)
  5141. Notify (AC, 0x80) // Status Change
  5142. Notify (\_TZ.THM0, 0x80) // Thermal Status Change
  5143. If (\WXPF)
  5144. {
  5145. Acquire (MCPU, 0xFFFF)
  5146. }
  5147.  
  5148. PWRS = 0x01
  5149. If ((\PPMF & 0x01))
  5150. {
  5151. If ((\OSPX || \CPPX))
  5152. {
  5153. \PNTF (0x80)
  5154. }
  5155. }
  5156.  
  5157. If (\WXPF)
  5158. {
  5159. Sleep (0x64)
  5160. }
  5161.  
  5162. If (\OSC4)
  5163. {
  5164. \PNTF (0x81)
  5165. }
  5166.  
  5167. If (\WXPF)
  5168. {
  5169. Release (MCPU)
  5170. }
  5171.  
  5172. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6040)
  5173. ATMC ()
  5174. }
  5175.  
  5176. Method (_Q27, 0, NotSerialized) // _Qxx: EC Query
  5177. {
  5178. If (VIGD)
  5179. {
  5180. If (\WVIS)
  5181. {
  5182. \VBTD ()
  5183. }
  5184.  
  5185. \_SB.PCI0.LPC.EC.BRNS ()
  5186. }
  5187. Else
  5188. {
  5189. \UCMS (0x12)
  5190. }
  5191.  
  5192. If (\_SB.PCI0.PEG.VID.ISOP ())
  5193. {
  5194. Notify (\_SB.PCI0.PEG.VID, 0xDF) // Hardware-Specific
  5195. }
  5196.  
  5197. Sleep (0x01F4)
  5198. Notify (AC, 0x80) // Status Change
  5199. Notify (\_TZ.THM0, 0x80) // Thermal Status Change
  5200. If (\WXPF)
  5201. {
  5202. Acquire (MCPU, 0xFFFF)
  5203. }
  5204.  
  5205. PWRS = 0x00
  5206. If ((\PPMF & 0x01))
  5207. {
  5208. If ((\OSPX || \CPPX))
  5209. {
  5210. \PNTF (0x80)
  5211. }
  5212. }
  5213.  
  5214. If (\WXPF)
  5215. {
  5216. Sleep (0x64)
  5217. }
  5218.  
  5219. If (\OSC4)
  5220. {
  5221. \PNTF (0x81)
  5222. }
  5223.  
  5224. If (\WXPF)
  5225. {
  5226. Release (MCPU)
  5227. }
  5228.  
  5229. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6040)
  5230. ATMC ()
  5231. }
  5232.  
  5233. Method (_Q2A, 0, NotSerialized) // _Qxx: EC Query
  5234. {
  5235. \VCMS (0x01, \_SB.LID._LID ())
  5236. If ((\ILNF == 0x00))
  5237. {
  5238. If (\IOST)
  5239. {
  5240. If (!\ISOC (0x00))
  5241. {
  5242. \IOST = 0x00
  5243. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x60D0)
  5244. }
  5245. }
  5246. Else
  5247. {
  5248. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x5002)
  5249. If ((\PLUX == 0x00))
  5250. {
  5251. If (VIGD)
  5252. {
  5253. \_SB.PCI0.VID.GLIS (0x01, \_SB.PCI0.VID.VLOC (0x01))
  5254. }
  5255. Else
  5256. {
  5257. \_SB.PCI0.PEG.VID.VLOC (0x01)
  5258. }
  5259.  
  5260. Notify (\_SB.LID, 0x80) // Status Change
  5261. }
  5262. }
  5263. }
  5264. }
  5265.  
  5266. Method (_Q2B, 0, NotSerialized) // _Qxx: EC Query
  5267. {
  5268. \UCMS (0x0D)
  5269. \VCMS (0x01, \_SB.LID._LID ())
  5270. If ((\ILNF == 0x00))
  5271. {
  5272. If ((\IOEN && !\IOST))
  5273. {
  5274. If (!\ISOC (0x01))
  5275. {
  5276. \IOST = 0x01
  5277. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x60D0)
  5278. }
  5279. }
  5280. Else
  5281. {
  5282. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x5001)
  5283. If ((\PLUX == 0x00))
  5284. {
  5285. If (VIGD)
  5286. {
  5287. \_SB.PCI0.VID.GLIS (0x00, Else
  5288. {
  5289. \_SB.PCI0.PEG.VID.VLOC (0x00)
  5290. })
  5291. }
  5292.  
  5293. Notify (\_SB.LID, 0x80) // Status Change
  5294. }
  5295. }
  5296. }
  5297. }
  5298.  
  5299. Method (_Q3D, 0, NotSerialized) // _Qxx: EC Query
  5300. {
  5301. }
  5302.  
  5303. Method (_Q48, 0, NotSerialized) // _Qxx: EC Query
  5304. {
  5305. If ((\PPMF & 0x01))
  5306. {
  5307. If ((\OSPX || \CPPX))
  5308. {
  5309. \PNTF (0x80)
  5310. }
  5311. Else
  5312. {
  5313. \STEP (0x04)
  5314. }
  5315.  
  5316. \_SB.PCI0.LPC.EC.CALM = 0x01
  5317. }
  5318. }
  5319.  
  5320. Method (_Q49, 0, NotSerialized) // _Qxx: EC Query
  5321. {
  5322. If ((\PPMF & 0x01))
  5323. {
  5324. If ((\OSPX || \CPPX))
  5325. {
  5326. \PNTF (0x80)
  5327. }
  5328. Else
  5329. {
  5330. \STEP (0x05)
  5331. }
  5332. }
  5333. }
  5334.  
  5335. Method (_Q7F, 0, NotSerialized) // _Qxx: EC Query
  5336. {
  5337. Fatal (0x01, 0x80010000, 0x2024)
  5338. }
  5339.  
  5340. Method (_Q4E, 0, NotSerialized) // _Qxx: EC Query
  5341. {
  5342. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6011)
  5343. }
  5344.  
  5345. Method (_Q4F, 0, NotSerialized) // _Qxx: EC Query
  5346. {
  5347. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6012)
  5348. }
  5349.  
  5350. Method (_Q46, 0, NotSerialized) // _Qxx: EC Query
  5351. {
  5352. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6012)
  5353. }
  5354.  
  5355. Method (_Q22, 0, NotSerialized) // _Qxx: EC Query
  5356. {
  5357. CLPM ()
  5358. If (HB0A)
  5359. {
  5360. Notify (BAT0, 0x80) // Status Change
  5361. }
  5362.  
  5363. If (HB1A)
  5364. {
  5365. Notify (BAT1, 0x80) // Status Change
  5366. }
  5367. }
  5368.  
  5369. Method (_Q4A, 0, NotSerialized) // _Qxx: EC Query
  5370. {
  5371. CLPM ()
  5372. Notify (BAT0, 0x81) // Information Change
  5373. }
  5374.  
  5375. Method (_Q4B, 0, NotSerialized) // _Qxx: EC Query
  5376. {
  5377. CLPM ()
  5378. Notify (BAT0, 0x80) // Status Change
  5379. }
  5380.  
  5381. Method (_Q4D, 0, NotSerialized) // _Qxx: EC Query
  5382. {
  5383. CLPM ()
  5384. If (\BT2T)
  5385. {
  5386. If ((^BAT1.SBLI == 0x01))
  5387. {
  5388. Sleep (0x0A)
  5389. If ((HB1A && (SLUL == 0x00)))
  5390. {
  5391. ^BAT1.XB1S = 0x01
  5392. Notify (\_SB.PCI0.LPC.EC.BAT1, 0x01) // Device Check
  5393. }
  5394. }
  5395. Else
  5396. {
  5397. If ((SLUL == 0x01))
  5398. {
  5399. ^BAT1.XB1S = 0x00
  5400. Notify (\_SB.PCI0.LPC.EC.BAT1, 0x03) // Eject Request
  5401. }
  5402. }
  5403. }
  5404.  
  5405. If ((^BAT1.B1ST & ^BAT1.XB1S))
  5406. {
  5407. Notify (BAT1, 0x80) // Status Change
  5408. }
  5409. }
  5410.  
  5411. Method (_Q24, 0, NotSerialized) // _Qxx: EC Query
  5412. {
  5413. CLPM ()
  5414. Notify (BAT0, 0x80) // Status Change
  5415. }
  5416.  
  5417. Method (_Q25, 0, NotSerialized) // _Qxx: EC Query
  5418. {
  5419. If ((^BAT1.B1ST & ^BAT1.XB1S))
  5420. {
  5421. CLPM ()
  5422. Notify (BAT1, 0x80) // Status Change
  5423. }
  5424. }
  5425.  
  5426. Method (BATW, 1, NotSerialized)
  5427. {
  5428. If (\BT2T)
  5429. {
  5430. Local0 = \_SB.PCI0.LPC.EC.BAT1.XB1S
  5431. If ((HB1A && !SLUL))
  5432. {
  5433. Local1 = 0x01
  5434. }
  5435. Else
  5436. {
  5437. Local1 = 0x00
  5438. }
  5439.  
  5440. If ((Local0 ^ Local1))
  5441. {
  5442. \_SB.PCI0.LPC.EC.BAT1.XB1S = Local1
  5443. Notify (\_SB.PCI0.LPC.EC.BAT1, 0x01) // Device Check
  5444. }
  5445. }
  5446. }
  5447.  
  5448. Field (ECOR, ByteAcc, NoLock, Preserve)
  5449. {
  5450. Offset (0xA0),
  5451. SBRC, 16,
  5452. SBFC, 16,
  5453. SBAE, 16,
  5454. SBRS, 16,
  5455. SBAC, 16,
  5456. SBVO, 16,
  5457. SBAF, 16,
  5458. SBBS, 16
  5459. }
  5460.  
  5461. Field (ECOR, ByteAcc, NoLock, Preserve)
  5462. {
  5463. Offset (0xA0),
  5464. SBBM, 16,
  5465. SBMD, 16,
  5466. SBCC, 16
  5467. }
  5468.  
  5469. Field (ECOR, ByteAcc, NoLock, Preserve)
  5470. {
  5471. Offset (0xA0),
  5472. SBDC, 16,
  5473. SBDV, 16,
  5474. SBOM, 16,
  5475. SBSI, 16,
  5476. SBDT, 16,
  5477. SBSN, 16
  5478. }
  5479.  
  5480. Field (ECOR, ByteAcc, NoLock, Preserve)
  5481. {
  5482. Offset (0xA0),
  5483. SBCH, 32
  5484. }
  5485.  
  5486. Field (ECOR, ByteAcc, NoLock, Preserve)
  5487. {
  5488. Offset (0xA0),
  5489. SBMN, 128
  5490. }
  5491.  
  5492. Field (ECOR, ByteAcc, NoLock, Preserve)
  5493. {
  5494. Offset (0xA0),
  5495. SBDN, 128
  5496. }
  5497.  
  5498. Mutex (BATM, 0x07)
  5499. Method (GBIF, 3, NotSerialized)
  5500. {
  5501. Acquire (BATM, 0xFFFF)
  5502. If (Arg2)
  5503. {
  5504. HIID = (Arg0 | 0x01)
  5505. Local7 = SBBM /* \_SB_.PCI0.LPC_.EC__.SBBM */
  5506. Local7 >>= 0x0F
  5507. Index (Arg1, 0x00) = (Local7 ^ 0x01)
  5508. HIID = Arg0
  5509. If (Local7)
  5510. {
  5511. Local1 = (SBFC * 0x0A)
  5512. }
  5513. Else
  5514. {
  5515. Local1 = SBFC /* \_SB_.PCI0.LPC_.EC__.SBFC */
  5516. }
  5517.  
  5518. Index (Arg1, 0x02) = Local1
  5519. HIID = (Arg0 | 0x02)
  5520. If (Local7)
  5521. {
  5522. Local0 = (SBDC * 0x0A)
  5523. }
  5524. Else
  5525. {
  5526. Local0 = SBDC /* \_SB_.PCI0.LPC_.EC__.SBDC */
  5527. }
  5528.  
  5529. Index (Arg1, 0x01) = Local0
  5530. Divide (Local1, 0x14, Local2, Index (Arg1, 0x05))
  5531. If (Local7)
  5532. {
  5533. Index (Arg1, 0x06) = 0xC8
  5534. }
  5535. Else
  5536. {
  5537. If (SBDV)
  5538. {
  5539. Divide (0x00030D40, SBDV, Local2, Index (Arg1, 0x06))
  5540. }
  5541. Else
  5542. {
  5543. Index (Arg1, 0x06) = 0x00
  5544. }
  5545. }
  5546.  
  5547. Index (Arg1, 0x04) = SBDV /* \_SB_.PCI0.LPC_.EC__.SBDV */
  5548. Local0 = SBSN /* \_SB_.PCI0.LPC_.EC__.SBSN */
  5549. Name (SERN, Buffer (0x06)
  5550. {
  5551. " "
  5552. })
  5553. Local2 = 0x04
  5554. While (Local0)
  5555. {
  5556. Divide (Local0, 0x0A, Local1, Local0)
  5557. Index (SERN, Local2) = (Local1 + 0x30)
  5558. Local2--
  5559. }
  5560.  
  5561. Index (Arg1, 0x0A) = SERN /* \_SB_.PCI0.LPC_.EC__.GBIF.SERN */
  5562. HIID = (Arg0 | 0x06)
  5563. Index (Arg1, 0x09) = SBDN /* \_SB_.PCI0.LPC_.EC__.SBDN */
  5564. HIID = (Arg0 | 0x04)
  5565. Name (BTYP, Buffer (0x05)
  5566. {
  5567. 0x00, 0x00, 0x00, 0x00, 0x00 /* ..... */
  5568. })
  5569. BTYP = SBCH /* \_SB_.PCI0.LPC_.EC__.SBCH */
  5570. Index (Arg1, 0x0B) = BTYP /* \_SB_.PCI0.LPC_.EC__.GBIF.BTYP */
  5571. HIID = (Arg0 | 0x05)
  5572. Index (Arg1, 0x0C) = SBMN /* \_SB_.PCI0.LPC_.EC__.SBMN */
  5573. }
  5574. Else
  5575. {
  5576. Index (Arg1, 0x01) = 0xFFFFFFFF
  5577. Index (Arg1, 0x05) = 0x00
  5578. Index (Arg1, 0x06) = 0x00
  5579. Index (Arg1, 0x02) = 0xFFFFFFFF
  5580. }
  5581.  
  5582. Release (BATM)
  5583. Return (Arg1)
  5584. }
  5585.  
  5586. Method (GBST, 4, NotSerialized)
  5587. {
  5588. Acquire (BATM, 0xFFFF)
  5589. If ((Arg1 & 0x20))
  5590. {
  5591. Local0 = 0x02
  5592. }
  5593. Else
  5594. {
  5595. If ((Arg1 & 0x40))
  5596. {
  5597. Local0 = 0x01
  5598. }
  5599. Else
  5600. {
  5601. Local0 = 0x00
  5602. }
  5603. }
  5604.  
  5605. If ((Arg1 & 0x07)) {}
  5606. Else
  5607. {
  5608. Local0 |= 0x04
  5609. }
  5610.  
  5611. If (((Arg1 & 0x07) == 0x07))
  5612. {
  5613. Local0 = 0x04
  5614. Local1 = 0x00
  5615. Local2 = 0x00
  5616. Local3 = 0x00
  5617. }
  5618. Else
  5619. {
  5620. HIID = Arg0
  5621. Local3 = SBVO /* \_SB_.PCI0.LPC_.EC__.SBVO */
  5622. If (Arg2)
  5623. {
  5624. Local2 = (SBRC * 0x0A)
  5625. }
  5626. Else
  5627. {
  5628. Local2 = SBRC /* \_SB_.PCI0.LPC_.EC__.SBRC */
  5629. }
  5630.  
  5631. Local1 = SBAC /* \_SB_.PCI0.LPC_.EC__.SBAC */
  5632. If ((Local1 >= 0x8000))
  5633. {
  5634. If ((Local0 & 0x01))
  5635. {
  5636. Local1 -= 0x00010000
  5637. }
  5638. Else
  5639. {
  5640. Local1 = 0x00
  5641. }
  5642. }
  5643. Else
  5644. {
  5645. If (!(Local0 & 0x02))
  5646. {
  5647. Local1 = 0x00
  5648. }
  5649. }
  5650.  
  5651. If (Arg2)
  5652. {
  5653. Local1 *= Local3
  5654. Divide (Local1, 0x03E8, Local7, Local1)
  5655. }
  5656. }
  5657.  
  5658. Index (Arg3, 0x00) = Local0
  5659. Index (Arg3, 0x01) = Local1
  5660. Index (Arg3, 0x02) = Local2
  5661. Index (Arg3, 0x03) = Local3
  5662. Release (BATM)
  5663. Return (Arg3)
  5664. }
  5665.  
  5666. Device (BAT0)
  5667. {
  5668. Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID
  5669. Name (_UID, 0x00) // _UID: Unique ID
  5670. Name (_PCL, Package (0x01) // _PCL: Power Consumer List
  5671. {
  5672. \_SB
  5673. })
  5674. Name (B0ST, 0x00)
  5675. Name (BT0I, Package (0x0D)
  5676. {
  5677. 0x00,
  5678. 0xFFFFFFFF,
  5679. 0xFFFFFFFF,
  5680. 0x01,
  5681. 0x2A30,
  5682. 0x00,
  5683. 0x00,
  5684. 0x01,
  5685. 0x01,
  5686. "",
  5687. "",
  5688. "",
  5689. ""
  5690. })
  5691. Name (BT0P, Package (0x04) {})
  5692. Method (_STA, 0, NotSerialized) // _STA: Status
  5693. {
  5694. If (\H8DR)
  5695. {
  5696. B0ST = HB0A /* \_SB_.PCI0.LPC_.EC__.HB0A */
  5697. }
  5698. Else
  5699. {
  5700. If ((\RBEC (0x38) & 0x80))
  5701. {
  5702. B0ST = 0x01
  5703. }
  5704. Else
  5705. {
  5706. B0ST = 0x00
  5707. }
  5708. }
  5709.  
  5710. If (B0ST)
  5711. {
  5712. Return (0x1F)
  5713. }
  5714. Else
  5715. {
  5716. Return (0x0F)
  5717. }
  5718. }
  5719.  
  5720. Method (_BIF, 0, NotSerialized) // _BIF: Battery Information
  5721. {
  5722. Local7 = 0x00
  5723. Local6 = 0x0A
  5724. While ((!Local7 && Local6))
  5725. {
  5726. If (HB0A)
  5727. {
  5728. If (((HB0S & 0x07) == 0x07))
  5729. {
  5730. Sleep (0x03E8)
  5731. Local6--
  5732. }
  5733. Else
  5734. {
  5735. Local7 = 0x01
  5736. }
  5737. }
  5738. Else
  5739. {
  5740. Local6 = 0x00
  5741. }
  5742. }
  5743.  
  5744. Return (GBIF (0x00, BT0I, Local7))
  5745. }
  5746.  
  5747. Method (_BST, 0, NotSerialized) // _BST: Battery Status
  5748. {
  5749. Local0 = (DerefOf (Index (BT0I, 0x00)) ^ 0x01)
  5750. Return (GBST (0x00, HB0S, Local0, BT0P))
  5751. }
  5752.  
  5753. Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point
  5754. {
  5755. HAM4 &= 0xEF
  5756. If (Arg0)
  5757. {
  5758. Local1 = Arg0
  5759. If (!DerefOf (Index (BT0I, 0x00)))
  5760. {
  5761. Divide (Local1, 0x0A, Local0, Local1)
  5762. }
  5763.  
  5764. HT0L = (Local1 & 0xFF)
  5765. HT0H = ((Local1 >> 0x08) & 0xFF)
  5766. HAM4 |= 0x10
  5767. }
  5768. }
  5769. }
  5770.  
  5771. Device (BAT1)
  5772. {
  5773. Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID
  5774. Name (_UID, 0x01) // _UID: Unique ID
  5775. Name (_PCL, Package (0x01) // _PCL: Power Consumer List
  5776. {
  5777. \_SB
  5778. })
  5779. Name (B1ST, 0x00)
  5780. Name (SBLI, 0x01)
  5781. Name (XB1S, 0x00)
  5782. Name (BT1I, Package (0x0D)
  5783. {
  5784. 0x00,
  5785. 0xFFFFFFFF,
  5786. 0xFFFFFFFF,
  5787. 0x01,
  5788. 0x2A30,
  5789. 0x00,
  5790. 0x00,
  5791. 0x01,
  5792. 0x01,
  5793. "",
  5794. "",
  5795. "",
  5796. ""
  5797. })
  5798. Name (BT1P, Package (0x04) {})
  5799. Method (_STA, 0, NotSerialized) // _STA: Status
  5800. {
  5801. If (\H8DR)
  5802. {
  5803. If (HB1A)
  5804. {
  5805. B1ST = 0x01
  5806. If (\BT2T)
  5807. {
  5808. If (SLUL)
  5809. {
  5810. SBLI = 0x01
  5811. XB1S = 0x00
  5812. }
  5813. Else
  5814. {
  5815. SBLI = 0x00
  5816. XB1S = 0x01
  5817. }
  5818. }
  5819. Else
  5820. {
  5821. XB1S = 0x01
  5822. }
  5823. }
  5824. Else
  5825. {
  5826. B1ST = 0x00
  5827. If (\BT2T)
  5828. {
  5829. SBLI = 0x01
  5830. XB1S = 0x00
  5831. }
  5832. Else
  5833. {
  5834. XB1S = 0x00
  5835. }
  5836. }
  5837. }
  5838. Else
  5839. {
  5840. If ((\RBEC (0x39) & 0x80))
  5841. {
  5842. B1ST = 0x01
  5843. If (\BT2T)
  5844. {
  5845. If ((\RBEC (0x49) & 0x01))
  5846. {
  5847. SBLI = 0x01
  5848. XB1S = 0x00
  5849. }
  5850. Else
  5851. {
  5852. SBLI = 0x00
  5853. XB1S = 0x01
  5854. }
  5855. }
  5856. Else
  5857. {
  5858. XB1S = 0x01
  5859. }
  5860. }
  5861. Else
  5862. {
  5863. B1ST = 0x00
  5864. If (\BT2T)
  5865. {
  5866. SBLI = 0x01
  5867. XB1S = 0x00
  5868. }
  5869. Else
  5870. {
  5871. XB1S = 0x00
  5872. }
  5873. }
  5874. }
  5875.  
  5876. If (B1ST)
  5877. {
  5878. If (XB1S)
  5879. {
  5880. Return (0x1F)
  5881. }
  5882. Else
  5883. {
  5884. If (\WNTF)
  5885. {
  5886. Return (0x00)
  5887. }
  5888. Else
  5889. {
  5890. Return (0x1F)
  5891. }
  5892. }
  5893. }
  5894. Else
  5895. {
  5896. If (\WNTF)
  5897. {
  5898. Return (0x00)
  5899. }
  5900. Else
  5901. {
  5902. Return (0x0F)
  5903. }
  5904. }
  5905. }
  5906.  
  5907. Method (_BIF, 0, NotSerialized) // _BIF: Battery Information
  5908. {
  5909. Local7 = 0x00
  5910. Local6 = 0x0A
  5911. While ((!Local7 && Local6))
  5912. {
  5913. If (HB1A)
  5914. {
  5915. If (((HB1S & 0x07) == 0x07))
  5916. {
  5917. Sleep (0x03E8)
  5918. Local6--
  5919. }
  5920. Else
  5921. {
  5922. Local7 = 0x01
  5923. }
  5924. }
  5925. Else
  5926. {
  5927. Local6 = 0x00
  5928. }
  5929. }
  5930.  
  5931. Return (GBIF (0x10, BT1I, Local7))
  5932. }
  5933.  
  5934. Method (_BST, 0, NotSerialized) // _BST: Battery Status
  5935. {
  5936. Local0 = (DerefOf (Index (BT1I, 0x00)) ^ 0x01)
  5937. Return (GBST (0x10, HB1S, Local0, BT1P))
  5938. }
  5939.  
  5940. Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point
  5941. {
  5942. HAM4 &= 0xDF
  5943. If (Arg0)
  5944. {
  5945. Local1 = Arg0
  5946. If (!DerefOf (Index (BT1I, 0x00)))
  5947. {
  5948. Divide (Local1, 0x0A, Local0, Local1)
  5949. }
  5950.  
  5951. HT1L = (Local1 & 0xFF)
  5952. HT1H = ((Local1 >> 0x08) & 0xFF)
  5953. HAM4 |= 0x20
  5954. }
  5955. }
  5956. }
  5957.  
  5958. Device (AC)
  5959. {
  5960. Name (_HID, "ACPI0003" /* Power Source Device */) // _HID: Hardware ID
  5961. Name (_UID, 0x00) // _UID: Unique ID
  5962. Name (_PCL, Package (0x01) // _PCL: Power Consumer List
  5963. {
  5964. \_SB
  5965. })
  5966. Method (_PSR, 0, NotSerialized) // _PSR: Power Source
  5967. {
  5968. If (\H8DR)
  5969. {
  5970. Return (HPAC) /* \_SB_.PCI0.LPC_.EC__.HPAC */
  5971. }
  5972. Else
  5973. {
  5974. If ((\RBEC (0x46) & 0x10))
  5975. {
  5976. Return (0x01)
  5977. }
  5978. Else
  5979. {
  5980. Return (0x00)
  5981. }
  5982. }
  5983. }
  5984.  
  5985. Method (_STA, 0, NotSerialized) // _STA: Status
  5986. {
  5987. Return (0x0F)
  5988. }
  5989. }
  5990.  
  5991. Device (HKEY)
  5992. {
  5993. Name (_HID, EisaId ("LEN0068")) // _HID: Hardware ID
  5994. Method (_STA, 0, NotSerialized) // _STA: Status
  5995. {
  5996. Return (0x0F)
  5997. }
  5998.  
  5999. Method (MHKV, 0, NotSerialized)
  6000. {
  6001. Return (0x0200)
  6002. }
  6003.  
  6004. Name (DHKC, 0x00)
  6005. Name (DHKB, 0x01)
  6006. Mutex (XDHK, 0x07)
  6007. Name (DHKH, 0x00)
  6008. Name (DHKW, 0x00)
  6009. Name (DHKS, 0x00)
  6010. Name (DHKD, 0x00)
  6011. Name (DHKT, 0x00)
  6012. Name (DHWW, 0x00)
  6013. Name (DHKN, 0x0808)
  6014. Name (DHKE, 0x1FFFFFFF)
  6015. Name (DHKF, 0x3FFF)
  6016. Method (MHKA, 1, NotSerialized)
  6017. {
  6018. If ((Arg0 == 0x00))
  6019. {
  6020. Return (0x03)
  6021. }
  6022. Else
  6023. {
  6024. If ((Arg0 == 0x01))
  6025. {
  6026. Return (0xFFFFFFFB)
  6027. }
  6028. Else
  6029. {
  6030. If ((Arg0 == 0x02))
  6031. {
  6032. Return (0x1FFFFFFF)
  6033. }
  6034. Else
  6035. {
  6036. If ((Arg0 == 0x03))
  6037. {
  6038. Return (0x3FFF)
  6039. }
  6040. Else
  6041. {
  6042. Return (0x00)
  6043. }
  6044. }
  6045. }
  6046. }
  6047. }
  6048.  
  6049. Method (MHKN, 1, NotSerialized)
  6050. {
  6051. If ((Arg0 == 0x00))
  6052. {
  6053. Return (0x03)
  6054. }
  6055. Else
  6056. {
  6057. If ((Arg0 == 0x01))
  6058. {
  6059. Return (DHKN) /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKN */
  6060. }
  6061. Else
  6062. {
  6063. If ((Arg0 == 0x02))
  6064. {
  6065. Return (DHKE) /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKE */
  6066. }
  6067. Else
  6068. {
  6069. If ((Arg0 == 0x03))
  6070. {
  6071. Return (DHKF) /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKF */
  6072. }
  6073. Else
  6074. {
  6075. Return (0x00)
  6076. }
  6077. }
  6078. }
  6079. }
  6080. }
  6081.  
  6082. Method (MHKK, 2, NotSerialized)
  6083. {
  6084. If ((Arg0 == 0x00))
  6085. {
  6086. Return (0x03)
  6087. }
  6088. Else
  6089. {
  6090. If (DHKC)
  6091. {
  6092. If ((Arg0 == 0x01))
  6093. {
  6094. Return ((DHKN & Arg1))
  6095. }
  6096. Else
  6097. {
  6098. If ((Arg0 == 0x02))
  6099. {
  6100. Return ((DHKE & Arg1))
  6101. }
  6102. Else
  6103. {
  6104. If ((Arg0 == 0x03))
  6105. {
  6106. Return ((DHKF & Arg1))
  6107. }
  6108. Else
  6109. {
  6110. Return (0x00)
  6111. }
  6112. }
  6113. }
  6114. }
  6115. Else
  6116. {
  6117. Return (Zero)
  6118. }
  6119. }
  6120. }
  6121.  
  6122. Method (MHKM, 2, NotSerialized)
  6123. {
  6124. Acquire (XDHK, 0xFFFF)
  6125. If ((Arg0 > 0x60))
  6126. {
  6127. Noop
  6128. }
  6129. Else
  6130. {
  6131. If ((Arg0 <= 0x20))
  6132. {
  6133. Local0 = (One << Arg0--)
  6134. If ((Local0 & 0xFFFFFFFB))
  6135. {
  6136. If (Arg1)
  6137. {
  6138. DHKN |= Local0 /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKN */
  6139. }
  6140. Else
  6141. {
  6142. DHKN &= (Local0 ^ 0xFFFFFFFF)
  6143. }
  6144. }
  6145. Else
  6146. {
  6147. Noop
  6148. }
  6149. }
  6150. Else
  6151. {
  6152. If ((Arg0 <= 0x40))
  6153. {
  6154. Arg0 -= 0x20
  6155. Local0 = (One << Arg0--)
  6156. If ((Local0 & 0x1FFFFFFF))
  6157. {
  6158. If (Arg1)
  6159. {
  6160. DHKE |= Local0 /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKE */
  6161. }
  6162. Else
  6163. {
  6164. DHKE &= (Local0 ^ 0xFFFFFFFF)
  6165. }
  6166. }
  6167. Else
  6168. {
  6169. Noop
  6170. }
  6171. }
  6172. Else
  6173. {
  6174. Noop
  6175. }
  6176. }
  6177. }
  6178.  
  6179. Release (XDHK)
  6180. }
  6181.  
  6182. Method (MHKS, 0, NotSerialized)
  6183. {
  6184. Notify (\_SB.SLPB, 0x80) // Status Change
  6185. }
  6186.  
  6187. Method (MHKC, 1, NotSerialized)
  6188. {
  6189. DHKC = Arg0
  6190. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  6191. If (Arg0)
  6192. {
  6193. \_SB.PCI0.LPC.EC.DFRH = 0xFF
  6194. \_SB.PCI0.LPC.EC.DFRL = 0xFF
  6195. \_SB.PCI0.LPC.EC.DFCH = 0xC0
  6196. }
  6197. Else
  6198. {
  6199. \_SB.PCI0.LPC.EC.DFRH = \_SB.PCI0.LPC.EC.DFCH
  6200. \_SB.PCI0.LPC.EC.DFRL = 0x03
  6201. \_SB.PCI0.LPC.EC.DFRH = 0x7F
  6202. \_SB.PCI0.LPC.EC.DFRL = 0xFF
  6203. \_SB.PCI0.LPC.EC.DFCH = 0x40
  6204. }
  6205.  
  6206. Release (\_SB.PCI0.LPC.EC.MDFR)
  6207. }
  6208.  
  6209. Method (MHKP, 0, NotSerialized)
  6210. {
  6211. Acquire (XDHK, 0xFFFF)
  6212. If (DHWW)
  6213. {
  6214. Local1 = DHWW /* \_SB_.PCI0.LPC_.EC__.HKEY.DHWW */
  6215. DHWW = Zero
  6216. }
  6217. Else
  6218. {
  6219. If (DHKW)
  6220. {
  6221. Local1 = DHKW /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKW */
  6222. DHKW = Zero
  6223. }
  6224. Else
  6225. {
  6226. If (DHKD)
  6227. {
  6228. Local1 = DHKD /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKD */
  6229. DHKD = Zero
  6230. }
  6231. Else
  6232. {
  6233. If (DHKS)
  6234. {
  6235. Local1 = DHKS /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKS */
  6236. DHKS = Zero
  6237. }
  6238. Else
  6239. {
  6240. If (DHKT)
  6241. {
  6242. Local1 = DHKT /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKT */
  6243. DHKT = Zero
  6244. }
  6245. Else
  6246. {
  6247. Local1 = DHKH /* \_SB_.PCI0.LPC_.EC__.HKEY.DHKH */
  6248. DHKH = Zero
  6249. }
  6250. }
  6251. }
  6252. }
  6253. }
  6254.  
  6255. Release (XDHK)
  6256. Return (Local1)
  6257. }
  6258.  
  6259. Method (MHKE, 1, NotSerialized)
  6260. {
  6261. DHKB = Arg0
  6262. Acquire (XDHK, 0xFFFF)
  6263. DHKH = Zero
  6264. DHKW = Zero
  6265. DHKS = Zero
  6266. DHKD = Zero
  6267. DHKT = Zero
  6268. DHWW = Zero
  6269. Release (XDHK)
  6270. }
  6271.  
  6272. Method (MHKQ, 1, NotSerialized)
  6273. {
  6274. If (DHKB)
  6275. {
  6276. If (DHKC)
  6277. {
  6278. Acquire (XDHK, 0xFFFF)
  6279. If ((Arg0 < 0x1000)) {}
  6280. Else
  6281. {
  6282. If ((Arg0 < 0x2000))
  6283. {
  6284. DHKH = Arg0
  6285. }
  6286. Else
  6287. {
  6288. If ((Arg0 < 0x3000))
  6289. {
  6290. DHKW = Arg0
  6291. }
  6292. Else
  6293. {
  6294. If ((Arg0 < 0x4000))
  6295. {
  6296. DHKS = Arg0
  6297. }
  6298. Else
  6299. {
  6300. If ((Arg0 < 0x5000))
  6301. {
  6302. DHKD = Arg0
  6303. }
  6304. Else
  6305. {
  6306. If ((Arg0 < 0x6000))
  6307. {
  6308. DHKH = Arg0
  6309. }
  6310. Else
  6311. {
  6312. If ((Arg0 < 0x7000))
  6313. {
  6314. DHKT = Arg0
  6315. }
  6316. Else
  6317. {
  6318. If ((Arg0 < 0x8000))
  6319. {
  6320. DHWW = Arg0
  6321. }
  6322. Else
  6323. {
  6324. }
  6325. }
  6326. }
  6327. }
  6328. }
  6329. }
  6330. }
  6331. }
  6332.  
  6333. Release (XDHK)
  6334. Notify (HKEY, 0x80) // Status Change
  6335. }
  6336. Else
  6337. {
  6338. If ((Arg0 == 0x1004))
  6339. {
  6340. Notify (\_SB.SLPB, 0x80) // Status Change
  6341. }
  6342. }
  6343. }
  6344. }
  6345.  
  6346. Method (MHKB, 1, NotSerialized)
  6347. {
  6348. If ((Arg0 == 0x00))
  6349. {
  6350. \_SB.PCI0.LPC.EC.BEEP (0x11)
  6351. \LIDB = 0x00
  6352. }
  6353. Else
  6354. {
  6355. If ((Arg0 == 0x01))
  6356. {
  6357. \_SB.PCI0.LPC.EC.BEEP (0x10)
  6358. \LIDB = 0x01
  6359. }
  6360. Else
  6361. {
  6362. }
  6363. }
  6364. }
  6365.  
  6366. Method (MHKD, 0, NotSerialized)
  6367. {
  6368. If ((\PLUX == 0x00))
  6369. {
  6370. If (VIGD)
  6371. {
  6372. \_SB.PCI0.VID.VLOC (0x00)
  6373. }
  6374. Else
  6375. {
  6376. \_SB.PCI0.PEG.VID.VLOC (0x00)
  6377. }
  6378. }
  6379. }
  6380.  
  6381. Method (MHQC, 1, NotSerialized)
  6382. {
  6383. If (\WNTF)
  6384. {
  6385. If ((Arg0 == 0x00))
  6386. {
  6387. Return (\CWAC)
  6388. }
  6389. Else
  6390. {
  6391. If ((Arg0 == 0x01))
  6392. {
  6393. Return (\CWAP)
  6394. }
  6395. Else
  6396. {
  6397. If ((Arg0 == 0x02))
  6398. {
  6399. Return (\CWAT)
  6400. }
  6401. Else
  6402. {
  6403. Noop
  6404. }
  6405. }
  6406. }
  6407. }
  6408. Else
  6409. {
  6410. Noop
  6411. }
  6412.  
  6413. Return (0x00)
  6414. }
  6415.  
  6416. Method (MHGC, 0, NotSerialized)
  6417. {
  6418. If (\WNTF)
  6419. {
  6420. Acquire (XDHK, 0xFFFF)
  6421. If (CKC4 (0x00))
  6422. {
  6423. Local0 = 0x03
  6424. }
  6425. Else
  6426. {
  6427. Local0 = 0x04
  6428. }
  6429.  
  6430. Release (XDHK)
  6431. Return (Local0)
  6432. }
  6433. Else
  6434. {
  6435. Noop
  6436. }
  6437.  
  6438. Return (0x00)
  6439. }
  6440.  
  6441. Method (MHSC, 1, NotSerialized)
  6442. {
  6443. If ((\CWAC && \WNTF))
  6444. {
  6445. Acquire (XDHK, 0xFFFF)
  6446. If (\OSC4)
  6447. {
  6448. If ((Arg0 == 0x03))
  6449. {
  6450. If (!\CWAS)
  6451. {
  6452. \PNTF (0x81)
  6453. \CWAS = 0x01
  6454. }
  6455. }
  6456. Else
  6457. {
  6458. If ((Arg0 == 0x04))
  6459. {
  6460. If (\CWAS)
  6461. {
  6462. \PNTF (0x81)
  6463. \CWAS = 0x00
  6464. }
  6465. }
  6466. Else
  6467. {
  6468. Noop
  6469. }
  6470. }
  6471. }
  6472.  
  6473. Release (XDHK)
  6474. }
  6475. Else
  6476. {
  6477. Noop
  6478. }
  6479. }
  6480.  
  6481. Method (CKC4, 1, NotSerialized)
  6482. {
  6483. Local0 = 0x00
  6484. If (\C4WR)
  6485. {
  6486. If (!\C4AC)
  6487. {
  6488. Local0 |= 0x01
  6489. }
  6490. }
  6491.  
  6492. If (\C4NA)
  6493. {
  6494. Local0 |= 0x02
  6495. }
  6496.  
  6497. If ((\CWAC && \CWAS))
  6498. {
  6499. Local0 |= 0x04
  6500. }
  6501.  
  6502. Local0 &= ~Arg0
  6503. Return (Local0)
  6504. }
  6505.  
  6506. Method (MHQE, 0, NotSerialized)
  6507. {
  6508. Return (\C4WR)
  6509. }
  6510.  
  6511. Method (MHGE, 0, NotSerialized)
  6512. {
  6513. If ((\C4WR && \C4AC))
  6514. {
  6515. Return (0x04)
  6516. }
  6517.  
  6518. Return (0x03)
  6519. }
  6520.  
  6521. Method (MHSE, 1, NotSerialized)
  6522. {
  6523. If (\C4WR)
  6524. {
  6525. Local0 = \C4AC
  6526. If ((Arg0 == 0x03))
  6527. {
  6528. \C4AC = 0x00
  6529. If ((Local0 ^ \C4AC))
  6530. {
  6531. If (\OSC4)
  6532. {
  6533. \PNTF (0x81)
  6534. }
  6535. }
  6536. }
  6537. Else
  6538. {
  6539. If ((Arg0 == 0x04))
  6540. {
  6541. \C4AC = 0x01
  6542. If ((Local0 ^ \C4AC))
  6543. {
  6544. If (\OSC4)
  6545. {
  6546. \PNTF (0x81)
  6547. }
  6548. }
  6549. }
  6550. }
  6551. }
  6552. }
  6553.  
  6554. Method (UAWO, 1, NotSerialized)
  6555. {
  6556. Return (\UAWS (Arg0))
  6557. }
  6558.  
  6559. Method (MLCG, 1, NotSerialized)
  6560. {
  6561. Local0 = \KBLS (0x00, 0x00)
  6562. Return (Local0)
  6563. }
  6564.  
  6565. Method (MLCS, 1, NotSerialized)
  6566. {
  6567. Local0 = \KBLS (0x01, Arg0)
  6568. If (!(Local0 & 0x80000000))
  6569. {
  6570. If ((Arg0 & 0x00010000))
  6571. {
  6572. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6001)
  6573. }
  6574. Else
  6575. {
  6576. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00020000))
  6577. {
  6578. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1012)
  6579. }
  6580. }
  6581. }
  6582.  
  6583. Return (Local0)
  6584. }
  6585.  
  6586. Method (DSSG, 1, NotSerialized)
  6587. {
  6588. Local0 = (0x0400 | \PDCI)
  6589. Return (Local0)
  6590. }
  6591.  
  6592. Method (DSSS, 1, NotSerialized)
  6593. {
  6594. \PDCI |= Arg0
  6595. }
  6596.  
  6597. Method (SBSG, 1, NotSerialized)
  6598. {
  6599. Return (\SYBC (0x00, 0x00))
  6600. }
  6601.  
  6602. Method (SBSS, 1, NotSerialized)
  6603. {
  6604. Return (\SYBC (0x01, Arg0))
  6605. }
  6606.  
  6607. Method (PBLG, 1, NotSerialized)
  6608. {
  6609. Local0 = \BRLV
  6610. Local1 = (Local0 | 0x0F00)
  6611. Return (Local1)
  6612. }
  6613.  
  6614. Method (PBLS, 1, NotSerialized)
  6615. {
  6616. \BRLV = Arg0
  6617. If (\VIGD)
  6618. {
  6619. \_SB.PCI0.LPC.EC.BRNS ()
  6620. }
  6621. Else
  6622. {
  6623. \VBRC (\BRLV)
  6624. }
  6625.  
  6626. If (!\NBCF)
  6627. {
  6628. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6050)
  6629. }
  6630.  
  6631. Return (0x00)
  6632. }
  6633.  
  6634. Method (PMSG, 1, NotSerialized)
  6635. {
  6636. Local0 = \PRSM (0x00, 0x00)
  6637. Return (Local0)
  6638. }
  6639.  
  6640. Method (PMSS, 1, NotSerialized)
  6641. {
  6642. \PRSM (0x01, Arg0)
  6643. Return (0x00)
  6644. }
  6645.  
  6646. Method (ISSG, 1, NotSerialized)
  6647. {
  6648. Local0 = \ISSP
  6649. Local0 |= 0x80
  6650. Local0 |= (\ISCG & 0x30)
  6651. Return (Local0)
  6652. }
  6653.  
  6654. Method (ISSS, 1, NotSerialized)
  6655. {
  6656. \ISCG = Arg0
  6657. Return (0x00)
  6658. }
  6659.  
  6660. Method (FFSG, 1, NotSerialized)
  6661. {
  6662. Return (\IFRS (0x00, 0x00))
  6663. }
  6664.  
  6665. Method (FFSS, 1, NotSerialized)
  6666. {
  6667. \IFRS (0x01, Arg0)
  6668. Return (0x00)
  6669. }
  6670.  
  6671. Method (GMKS, 0, NotSerialized)
  6672. {
  6673. Local0 = (0x01 & \_SB.PCI0.LPC.EC.FNKC)
  6674. Local0 |= 0x00
  6675. Return (Local0)
  6676. }
  6677.  
  6678. Method (SMKS, 1, NotSerialized)
  6679. {
  6680. If ((Arg0 & 0x01))
  6681. {
  6682. \_SB.PCI0.LPC.EC.FNKC = 0x01
  6683. }
  6684. Else
  6685. {
  6686. \_SB.PCI0.LPC.EC.FNKC = 0x00
  6687. }
  6688.  
  6689. Return (0x00)
  6690. }
  6691.  
  6692. Method (INSG, 1, NotSerialized)
  6693. {
  6694. Local0 = \IOEN
  6695. Local0 |= (\IOST << 0x07)
  6696. Local0 |= (\IOCP << 0x08)
  6697. Return (Local0)
  6698. }
  6699.  
  6700. Method (INSS, 1, NotSerialized)
  6701. {
  6702. If ((\IOCP && (Arg0 & 0x01)))
  6703. {
  6704. \IOEN = 0x01
  6705. }
  6706. Else
  6707. {
  6708. \IOEN = 0x00
  6709. If (\IOST)
  6710. {
  6711. If (!\ISOC (0x00))
  6712. {
  6713. \IOST = 0x00
  6714. }
  6715. }
  6716. }
  6717.  
  6718. Return (0x00)
  6719. }
  6720. }
  6721.  
  6722. Scope (\_SB.PCI0.LPC.EC.HKEY)
  6723. {
  6724. Name (INDV, 0x00)
  6725. Method (MHQI, 0, NotSerialized)
  6726. {
  6727. If ((\IPMS & 0x01))
  6728. {
  6729. INDV |= 0x01
  6730. }
  6731.  
  6732. If ((\IPMS & 0x02))
  6733. {
  6734. INDV |= 0x02
  6735. }
  6736.  
  6737. If ((\IPMS & 0x04))
  6738. {
  6739. INDV |= 0x0100
  6740. }
  6741.  
  6742. If ((\IPMS & 0x08))
  6743. {
  6744. INDV |= 0x0200
  6745. }
  6746.  
  6747. If ((\IPMS & 0x10))
  6748. {
  6749. INDV |= 0x04
  6750. }
  6751.  
  6752. Return (INDV) /* \_SB_.PCI0.LPC_.EC__.HKEY.INDV */
  6753. }
  6754.  
  6755. Method (MHGI, 1, NotSerialized)
  6756. {
  6757. Name (RETB, Buffer (0x10) {})
  6758. CreateByteField (RETB, 0x00, MHGS)
  6759. Local0 = (0x01 << Arg0)
  6760. If ((INDV & Local0))
  6761. {
  6762. If ((Arg0 == 0x00))
  6763. {
  6764. CreateField (RETB, 0x08, 0x78, BRBU)
  6765. BRBU = \IPMB
  6766. MHGS = 0x10
  6767. }
  6768. Else
  6769. {
  6770. If ((Arg0 == 0x01))
  6771. {
  6772. CreateField (RETB, 0x08, 0x18, RRBU)
  6773. RRBU = \IPMR
  6774. MHGS = 0x04
  6775. }
  6776. Else
  6777. {
  6778. If ((Arg0 == 0x08))
  6779. {
  6780. CreateField (RETB, 0x10, 0x18, ODBU)
  6781. CreateByteField (RETB, 0x01, MHGZ)
  6782. ODBU = \IPMO
  6783. If (((^^BSTS == 0x00) && (^^BDEV == 0x03)))
  6784. {
  6785. MHGZ |= 0x01 /* \_SB_.PCI0.LPC_.EC__.HKEY.MHGI.MHGZ */
  6786. MHGZ |= 0x02 /* \_SB_.PCI0.LPC_.EC__.HKEY.MHGI.MHGZ */
  6787. }
  6788.  
  6789. MHGS = 0x05
  6790. }
  6791. Else
  6792. {
  6793. If ((Arg0 == 0x09))
  6794. {
  6795. CreateField (RETB, 0x10, 0x08, AUBU)
  6796. AUBU = \IPMA
  6797. Index (RETB, 0x01) = 0x01
  6798. MHGS = 0x03
  6799. }
  6800. Else
  6801. {
  6802. If ((Arg0 == 0x02))
  6803. {
  6804. Local1 = \VDYN (0x00, 0x00)
  6805. Index (RETB, 0x02) = (Local1 & 0x0F)
  6806. Local1 >>= 0x04
  6807. Index (RETB, 0x01) = (Local1 & 0x0F)
  6808. MHGS = 0x03
  6809. }
  6810. }
  6811. }
  6812. }
  6813. }
  6814. }
  6815.  
  6816. Return (RETB) /* \_SB_.PCI0.LPC_.EC__.HKEY.MHGI.RETB */
  6817. }
  6818.  
  6819. Method (MHSI, 2, NotSerialized)
  6820. {
  6821. Local0 = (0x01 << Arg0)
  6822. If ((INDV & Local0))
  6823. {
  6824. If ((Arg0 == 0x08))
  6825. {
  6826. If (Arg1)
  6827. {
  6828. If (\H8DR)
  6829. {
  6830. Local1 = ^^HPBU /* \_SB_.PCI0.LPC_.EC__.HPBU */
  6831. }
  6832. Else
  6833. {
  6834. Local1 = (\RBEC (0x47) & 0x01)
  6835. }
  6836.  
  6837. If (!Local1)
  6838. {
  6839. ^^BDEV = ^^BGID (0x00)
  6840. ^^NBIN (Local1)
  6841. }
  6842. }
  6843. }
  6844. Else
  6845. {
  6846. If ((Arg0 == 0x02))
  6847. {
  6848. \VDYN (0x01, Arg1)
  6849. }
  6850. }
  6851. }
  6852. }
  6853. }
  6854.  
  6855. Scope (\_SB.PCI0.LPC.EC)
  6856. {
  6857. Method (_Q6A, 0, NotSerialized) // _Qxx: EC Query
  6858. {
  6859. If (HDMC)
  6860. {
  6861. Noop
  6862. }
  6863. Else
  6864. {
  6865. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x04000000))
  6866. {
  6867. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x101B)
  6868. }
  6869. }
  6870. }
  6871. }
  6872.  
  6873. Scope (\_SB.PCI0.LPC.EC.HKEY)
  6874. {
  6875. Method (MMTG, 0, NotSerialized)
  6876. {
  6877. Local0 = 0x0101
  6878. If (HDMC)
  6879. {
  6880. Local0 |= 0x00010000
  6881. }
  6882.  
  6883. Return (Local0)
  6884. }
  6885.  
  6886. Method (MMTS, 1, NotSerialized)
  6887. {
  6888. If (HDMC)
  6889. {
  6890. Noop
  6891. }
  6892. Else
  6893. {
  6894. If ((Arg0 == 0x02))
  6895. {
  6896. \_SB.PCI0.LPC.EC.LED (0x0E, 0x80)
  6897. }
  6898. Else
  6899. {
  6900. If ((Arg0 == 0x03))
  6901. {
  6902. \_SB.PCI0.LPC.EC.LED (0x0E, 0xC0)
  6903. }
  6904. Else
  6905. {
  6906. \_SB.PCI0.LPC.EC.LED (0x0E, 0x00)
  6907. }
  6908. }
  6909. }
  6910. }
  6911. }
  6912.  
  6913. Scope (\_SB.PCI0.LPC.EC.HKEY)
  6914. {
  6915. Method (PWMC, 0, NotSerialized)
  6916. {
  6917. Return (0x01)
  6918. }
  6919.  
  6920. Method (PWMG, 0, NotSerialized)
  6921. {
  6922. Local0 = \_SB.PCI0.LPC.EC.PWMH
  6923. Local0 <<= 0x08
  6924. Local0 |= \_SB.PCI0.LPC.EC.PWML
  6925. Return (Local0)
  6926. }
  6927. }
  6928.  
  6929. Scope (\_SB.PCI0.LPC.EC)
  6930. {
  6931. Method (_Q45, 0, NotSerialized) // _Qxx: EC Query
  6932. {
  6933. If (DOCD)
  6934. {
  6935. Sleep (0x64)
  6936. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x4010)
  6937. }
  6938. Else
  6939. {
  6940. Sleep (0x64)
  6941. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x4011)
  6942. }
  6943. }
  6944.  
  6945. Method (DKID, 0, NotSerialized)
  6946. {
  6947. Local0 = \_SB.PCI0.LPC.DOI0
  6948. Local1 = \_SB.PCI0.LPC.DOI1
  6949. Local2 = \_SB.PCI0.LPC.DOI2
  6950. Local3 = \_SB.PCI0.LPC.DOI3
  6951. Local0 |= (Local1 << 0x01)
  6952. Local0 |= (Local2 << 0x02)
  6953. Local0 |= (Local3 << 0x03)
  6954. Return (Local0)
  6955. }
  6956. }
  6957.  
  6958. Scope (\_SB.PCI0.LPC.EC.HKEY)
  6959. {
  6960. Method (GDKS, 0, NotSerialized)
  6961. {
  6962. Local0 = 0x00
  6963. If ((\_SB.PCI0.LPC.EC.DOCD == 0x01))
  6964. {
  6965. Local0 |= 0x01
  6966. Local1 = \_SB.PCI0.LPC.EC.DKID ()
  6967. Local1 <<= 0x08
  6968. Local0 |= Local1
  6969. }
  6970.  
  6971. Local0 |= 0x00080000
  6972. Return (Local0)
  6973. }
  6974. }
  6975.  
  6976. Scope (\_SB.PCI0.LPC.EC)
  6977. {
  6978. Method (_Q3F, 0, NotSerialized) // _Qxx: EC Query
  6979. {
  6980. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6000)
  6981. }
  6982.  
  6983. Method (_Q74, 0, NotSerialized) // _Qxx: EC Query
  6984. {
  6985. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6060)
  6986. }
  6987. }
  6988.  
  6989. Scope (\_SB.PCI0.LPC.EC.HKEY)
  6990. {
  6991. Method (NUMG, 0, NotSerialized)
  6992. {
  6993. Local0 = 0x00
  6994. Return (Local0)
  6995. }
  6996. }
  6997.  
  6998. Scope (\_SB.PCI0.LPC.EC)
  6999. {
  7000. Mutex (MDFR, 0x07)
  7001. Name (SIBZ, 0x00)
  7002. Name (SICO, 0x00)
  7003. Name (SIWO, 0x00)
  7004. Name (SIVC, 0x00)
  7005. Name (SICG, 0x00)
  7006. Name (SIHG, 0x00)
  7007. Name (SINC, 0x00)
  7008. Name (SICM, 0x00)
  7009. Name (DFCH, 0x40)
  7010. Method (_Q81, 0, NotSerialized) // _Qxx: EC Query
  7011. {
  7012. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x01))
  7013. {
  7014. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1101)
  7015. }
  7016. }
  7017.  
  7018. Method (_Q82, 0, NotSerialized) // _Qxx: EC Query
  7019. {
  7020. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x02))
  7021. {
  7022. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1102)
  7023. }
  7024. }
  7025.  
  7026. Method (_Q83, 0, NotSerialized) // _Qxx: EC Query
  7027. {
  7028. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x04))
  7029. {
  7030. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1103)
  7031. }
  7032. }
  7033.  
  7034. Method (_Q84, 0, NotSerialized) // _Qxx: EC Query
  7035. {
  7036. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x08))
  7037. {
  7038. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1104)
  7039. }
  7040. }
  7041.  
  7042. Method (_Q85, 0, NotSerialized) // _Qxx: EC Query
  7043. {
  7044. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x10))
  7045. {
  7046. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1105)
  7047. }
  7048. }
  7049.  
  7050. Method (_Q87, 0, NotSerialized) // _Qxx: EC Query
  7051. {
  7052. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x20))
  7053. {
  7054. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1106)
  7055. }
  7056. }
  7057.  
  7058. Method (_Q88, 0, NotSerialized) // _Qxx: EC Query
  7059. {
  7060. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x40))
  7061. {
  7062. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1107)
  7063. }
  7064. }
  7065.  
  7066. Method (_Q89, 0, NotSerialized) // _Qxx: EC Query
  7067. {
  7068. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x80))
  7069. {
  7070. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1108)
  7071. }
  7072. }
  7073.  
  7074. Method (_Q8A, 0, NotSerialized) // _Qxx: EC Query
  7075. {
  7076. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x0100))
  7077. {
  7078. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1109)
  7079. }
  7080. }
  7081.  
  7082. Method (_Q8B, 0, NotSerialized) // _Qxx: EC Query
  7083. {
  7084. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x0200))
  7085. {
  7086. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x110A)
  7087. }
  7088. }
  7089.  
  7090. Method (_Q8C, 0, NotSerialized) // _Qxx: EC Query
  7091. {
  7092. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x0400))
  7093. {
  7094. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x110B)
  7095. }
  7096. }
  7097.  
  7098. Method (_Q8D, 0, NotSerialized) // _Qxx: EC Query
  7099. {
  7100. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x0800))
  7101. {
  7102. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x110C)
  7103. }
  7104. }
  7105.  
  7106. Method (_Q8E, 0, NotSerialized) // _Qxx: EC Query
  7107. {
  7108. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x1000))
  7109. {
  7110. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x110D)
  7111. }
  7112. }
  7113.  
  7114. Method (_Q8F, 0, NotSerialized) // _Qxx: EC Query
  7115. {
  7116. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x2000))
  7117. {
  7118. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x110E)
  7119. }
  7120. }
  7121.  
  7122. Method (_Q91, 0, NotSerialized) // _Qxx: EC Query
  7123. {
  7124. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x4000))
  7125. {
  7126. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x110F)
  7127. }
  7128. }
  7129.  
  7130. Method (_Q92, 0, NotSerialized) // _Qxx: EC Query
  7131. {
  7132. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x8000))
  7133. {
  7134. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1110)
  7135. }
  7136. }
  7137.  
  7138. Method (_Q93, 0, NotSerialized) // _Qxx: EC Query
  7139. {
  7140. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x00010000))
  7141. {
  7142. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1111)
  7143. }
  7144. }
  7145.  
  7146. Method (_Q94, 0, NotSerialized) // _Qxx: EC Query
  7147. {
  7148. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x00020000))
  7149. {
  7150. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1112)
  7151. }
  7152. }
  7153.  
  7154. Method (_Q95, 0, NotSerialized) // _Qxx: EC Query
  7155. {
  7156. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x00040000))
  7157. {
  7158. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1113)
  7159. }
  7160. }
  7161.  
  7162. Method (_Q97, 0, NotSerialized) // _Qxx: EC Query
  7163. {
  7164. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x00080000))
  7165. {
  7166. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1114)
  7167. }
  7168. }
  7169.  
  7170. Method (_Q98, 0, NotSerialized) // _Qxx: EC Query
  7171. {
  7172. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x20))
  7173. {
  7174. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1006)
  7175. }
  7176. }
  7177.  
  7178. Method (_Q99, 0, NotSerialized) // _Qxx: EC Query
  7179. {
  7180. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x00100000))
  7181. {
  7182. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1115)
  7183. }
  7184. }
  7185.  
  7186. Method (_Q9A, 0, NotSerialized) // _Qxx: EC Query
  7187. {
  7188. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x00200000))
  7189. {
  7190. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1116)
  7191. }
  7192. }
  7193.  
  7194. Method (_Q9B, 0, NotSerialized) // _Qxx: EC Query
  7195. {
  7196. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x00400000))
  7197. {
  7198. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1117)
  7199. }
  7200. }
  7201.  
  7202. Method (_Q9C, 0, NotSerialized) // _Qxx: EC Query
  7203. {
  7204. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x00800000))
  7205. {
  7206. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1118)
  7207. }
  7208. }
  7209.  
  7210. Method (_Q9D, 0, NotSerialized) // _Qxx: EC Query
  7211. {
  7212. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x01000000))
  7213. {
  7214. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1119)
  7215. }
  7216. }
  7217.  
  7218. Method (_Q78, 0, NotSerialized) // _Qxx: EC Query
  7219. {
  7220. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x60C0)
  7221. }
  7222.  
  7223. Method (_Q9E, 0, NotSerialized) // _Qxx: EC Query
  7224. {
  7225. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x04000000))
  7226. {
  7227. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x111B)
  7228. }
  7229. }
  7230.  
  7231. Method (_Q9F, 0, NotSerialized) // _Qxx: EC Query
  7232. {
  7233. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x08000000))
  7234. {
  7235. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x111C)
  7236. }
  7237. }
  7238.  
  7239. Method (_QA0, 0, NotSerialized) // _Qxx: EC Query
  7240. {
  7241. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7242. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7243. DFRL = 0x35
  7244. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7245. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7246. Release (\_SB.PCI0.LPC.EC.MDFR)
  7247. If ((Local0 == 0x34))
  7248. {
  7249. Local1 = \KBLS (0x00, 0x00)
  7250. Local1 &= 0x0F
  7251. If (Local1)
  7252. {
  7253. \_SB.PCI0.LPC.EC.HKEY.MLCS (0x00)
  7254. }
  7255.  
  7256. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7257. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7258. DFRL = 0x33
  7259. Release (\_SB.PCI0.LPC.EC.MDFR)
  7260. }
  7261.  
  7262. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x02, 0x10000000))
  7263. {
  7264. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x111D)
  7265. }
  7266. }
  7267.  
  7268. Method (_QA1, 0, NotSerialized) // _Qxx: EC Query
  7269. {
  7270. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x01))
  7271. {
  7272. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1301)
  7273. }
  7274. }
  7275.  
  7276. Method (_QA2, 0, NotSerialized) // _Qxx: EC Query
  7277. {
  7278. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x02))
  7279. {
  7280. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1302)
  7281. }
  7282. }
  7283.  
  7284. Method (_QA3, 0, NotSerialized) // _Qxx: EC Query
  7285. {
  7286. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x04))
  7287. {
  7288. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1303)
  7289. }
  7290. }
  7291.  
  7292. Method (_QA4, 0, NotSerialized) // _Qxx: EC Query
  7293. {
  7294. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x08))
  7295. {
  7296. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1304)
  7297. }
  7298. }
  7299.  
  7300. Method (_QA5, 0, NotSerialized) // _Qxx: EC Query
  7301. {
  7302. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x10))
  7303. {
  7304. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1305)
  7305. }
  7306. }
  7307.  
  7308. Method (_QA6, 0, NotSerialized) // _Qxx: EC Query
  7309. {
  7310. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x20))
  7311. {
  7312. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1306)
  7313. }
  7314. }
  7315.  
  7316. Method (_QA7, 0, NotSerialized) // _Qxx: EC Query
  7317. {
  7318. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x40))
  7319. {
  7320. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1307)
  7321. }
  7322. }
  7323.  
  7324. Method (_QA8, 0, NotSerialized) // _Qxx: EC Query
  7325. {
  7326. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x80))
  7327. {
  7328. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1308)
  7329. }
  7330. }
  7331.  
  7332. Method (_QA9, 0, NotSerialized) // _Qxx: EC Query
  7333. {
  7334. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x0100))
  7335. {
  7336. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1309)
  7337. }
  7338. }
  7339.  
  7340. Method (_QAA, 0, NotSerialized) // _Qxx: EC Query
  7341. {
  7342. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x0200))
  7343. {
  7344. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x130A)
  7345. }
  7346. }
  7347.  
  7348. Method (_QAB, 0, NotSerialized) // _Qxx: EC Query
  7349. {
  7350. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x0400))
  7351. {
  7352. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x130B)
  7353. }
  7354. }
  7355.  
  7356. Method (_QAC, 0, NotSerialized) // _Qxx: EC Query
  7357. {
  7358. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x0800))
  7359. {
  7360. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x130C)
  7361. }
  7362. }
  7363.  
  7364. Method (_QAD, 0, NotSerialized) // _Qxx: EC Query
  7365. {
  7366. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x1000))
  7367. {
  7368. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x130D)
  7369. }
  7370. }
  7371.  
  7372. Method (_QAE, 0, NotSerialized) // _Qxx: EC Query
  7373. {
  7374. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00400000))
  7375. {
  7376. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1017)
  7377. }
  7378. }
  7379.  
  7380. Method (_QAF, 0, NotSerialized) // _Qxx: EC Query
  7381. {
  7382. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00200000))
  7383. {
  7384. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1016)
  7385. }
  7386. }
  7387.  
  7388. Method (_QB0, 0, NotSerialized) // _Qxx: EC Query
  7389. {
  7390. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00100000))
  7391. {
  7392. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1015)
  7393. }
  7394. }
  7395.  
  7396. Method (_QB1, 0, NotSerialized) // _Qxx: EC Query
  7397. {
  7398. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x03, 0x2000))
  7399. {
  7400. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x130E)
  7401. }
  7402. }
  7403.  
  7404. Method (_QB2, 0, NotSerialized) // _Qxx: EC Query
  7405. {
  7406. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00010000))
  7407. {
  7408. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1011)
  7409. }
  7410. }
  7411.  
  7412. Method (_QB3, 0, NotSerialized) // _Qxx: EC Query
  7413. {
  7414. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x8000))
  7415. {
  7416. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1010)
  7417. }
  7418. }
  7419. }
  7420.  
  7421. Scope (\_SB.PCI0.LPC.EC.HKEY)
  7422. {
  7423. Method (GDFR, 1, NotSerialized)
  7424. {
  7425. If ((\ADPC & 0x0100))
  7426. {
  7427. Return (0x00010101)
  7428. }
  7429. Else
  7430. {
  7431. Return (0x00010100)
  7432. }
  7433. }
  7434.  
  7435. Method (STRW, 1, NotSerialized)
  7436. {
  7437. Local0 = (Arg0 & 0xFF)
  7438. If ((Local0 > 0x08))
  7439. {
  7440. Return (0x80000000)
  7441. }
  7442.  
  7443. If (((Arg0 & 0x0100) && (Local0 == 0x03)))
  7444. {
  7445. Local0 = 0x08
  7446. }
  7447.  
  7448. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7449. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7450. DFRL = Local0
  7451. Release (\_SB.PCI0.LPC.EC.MDFR)
  7452. Return (0x00)
  7453. }
  7454.  
  7455. Method (GTRW, 1, NotSerialized)
  7456. {
  7457. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7458. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7459. DFRL = 0x0F
  7460. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7461. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7462. If ((Local0 == 0x08))
  7463. {
  7464. If ((\ADPC & 0x0100))
  7465. {
  7466. Local0 = 0x03
  7467. Local0 |= \ADPC
  7468. }
  7469. }
  7470.  
  7471. Release (\_SB.PCI0.LPC.EC.MDFR)
  7472. Return (Local0)
  7473. }
  7474.  
  7475. Method (SBMI, 1, NotSerialized)
  7476. {
  7477. Local0 = (Arg0 & 0x01)
  7478. If (Local0)
  7479. {
  7480. ^^LED (0x0F, 0x80)
  7481. }
  7482. Else
  7483. {
  7484. ^^LED (0x0F, 0x00)
  7485. }
  7486.  
  7487. SIBZ = Local0
  7488. Return (0x00)
  7489. }
  7490.  
  7491. Method (SVOI, 1, NotSerialized)
  7492. {
  7493. Local0 = (Arg0 & 0x0F)
  7494. If ((Local0 == 0x00))
  7495. {
  7496. ^^LED (0x12, 0x00)
  7497. }
  7498. Else
  7499. {
  7500. If ((Local0 == 0x01))
  7501. {
  7502. ^^LED (0x12, 0x80)
  7503. }
  7504. Else
  7505. {
  7506. If ((Local0 == 0x02))
  7507. {
  7508. ^^LED (0x12, 0xC0)
  7509. }
  7510. Else
  7511. {
  7512. Return (0x80000000)
  7513. }
  7514. }
  7515. }
  7516.  
  7517. SIVC = Local0
  7518. Return (0x00)
  7519. }
  7520.  
  7521. Method (GVOI, 1, NotSerialized)
  7522. {
  7523. Return (SIVC) /* \_SB_.PCI0.LPC_.EC__.SIVC */
  7524. }
  7525.  
  7526. Method (SCGI, 1, NotSerialized)
  7527. {
  7528. Local0 = (Arg0 & 0x0F)
  7529. If (Local0)
  7530. {
  7531. ^^LED (0x13, 0x80)
  7532. }
  7533. Else
  7534. {
  7535. ^^LED (0x13, 0x00)
  7536. }
  7537.  
  7538. SICG = Local0
  7539. Return (0x00)
  7540. }
  7541.  
  7542. Method (GCGI, 1, NotSerialized)
  7543. {
  7544. Return (SICG) /* \_SB_.PCI0.LPC_.EC__.SICG */
  7545. }
  7546.  
  7547. Method (SHOV, 1, NotSerialized)
  7548. {
  7549. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7550. Local0 = (Arg0 & 0x01)
  7551. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7552. If (Local0)
  7553. {
  7554. DFRL = 0x31
  7555. ^^LED (0x0F, 0x80)
  7556. }
  7557. Else
  7558. {
  7559. DFRL = 0x30
  7560. ^^LED (0x0F, 0x00)
  7561. }
  7562.  
  7563. Release (\_SB.PCI0.LPC.EC.MDFR)
  7564. SIHG = Local0
  7565. Return (0x00)
  7566. }
  7567.  
  7568. Method (GHOV, 1, NotSerialized)
  7569. {
  7570. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7571. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7572. DFRL = 0x32
  7573. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7574. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7575. Release (\_SB.PCI0.LPC.EC.MDFR)
  7576. Local0 = ((Local0 & 0xFF) - 0x30)
  7577. Return (Local0)
  7578. }
  7579.  
  7580. Method (NALL, 1, NotSerialized)
  7581. {
  7582. Local2 = 0x00
  7583. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7584. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7585. DFRL = 0x40
  7586. DFRH = 0x80
  7587. DFRL = ((Arg0 >> 0x18) & 0x7F)
  7588. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7589. DFRL = 0x41
  7590. DFRH = 0x80
  7591. DFRL = (Arg0 >> 0x10)
  7592. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7593. DFRL = 0x42
  7594. DFRH = 0x80
  7595. DFRL = (Arg0 >> 0x08)
  7596. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7597. DFRL = 0x43
  7598. DFRH = 0x80
  7599. DFRL = Arg0
  7600. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7601. DFRL = 0x44
  7602. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7603. DFRL = 0x35
  7604. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7605. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7606. Release (\_SB.PCI0.LPC.EC.MDFR)
  7607. If ((Local0 == 0x33))
  7608. {
  7609. Local1 = \KBLS (0x00, 0x00)
  7610. Local1 &= 0x0F
  7611. If (Local1)
  7612. {
  7613. If ((Arg0 & 0x80000000))
  7614. {
  7615. Local2 = MLCS (0x00)
  7616. }
  7617. }
  7618. Else
  7619. {
  7620. If (!(Arg0 & 0x80000000))
  7621. {
  7622. Local2 = MLCS (0x01)
  7623. }
  7624. }
  7625. }
  7626.  
  7627. Return (Local2)
  7628. }
  7629.  
  7630. Method (SAPI, 1, NotSerialized)
  7631. {
  7632. Local0 = (Arg0 & 0x01)
  7633. If (Local0)
  7634. {
  7635. ^^LED (0x11, 0x80)
  7636. }
  7637. Else
  7638. {
  7639. ^^LED (0x11, 0x00)
  7640. }
  7641.  
  7642. SIWO = Local0
  7643. Return (0x00)
  7644. }
  7645.  
  7646. Method (GAPI, 1, NotSerialized)
  7647. {
  7648. Return (SIWO) /* \_SB_.PCI0.LPC_.EC__.SIWO */
  7649. }
  7650.  
  7651. Method (SMNC, 1, NotSerialized)
  7652. {
  7653. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7654. Local0 = (Arg0 & 0x03)
  7655. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7656. If ((Local0 == 0x00))
  7657. {
  7658. DFRL = 0x10
  7659. }
  7660. Else
  7661. {
  7662. If ((Local0 == 0x01))
  7663. {
  7664. DFRL = 0x11
  7665. }
  7666. Else
  7667. {
  7668. If ((Local0 == 0x02))
  7669. {
  7670. DFRL = 0x12
  7671. }
  7672. Else
  7673. {
  7674. Release (\_SB.PCI0.LPC.EC.MDFR)
  7675. Return (0x80000000)
  7676. }
  7677. }
  7678. }
  7679.  
  7680. Release (\_SB.PCI0.LPC.EC.MDFR)
  7681. SINC = Local0
  7682. Return (0x00)
  7683. }
  7684.  
  7685. Method (GMNC, 1, NotSerialized)
  7686. {
  7687. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7688. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7689. DFRL = 0x1F
  7690. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7691. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7692. Release (\_SB.PCI0.LPC.EC.MDFR)
  7693. Local0 = ((Local0 & 0xFF) - 0x10)
  7694. Return (Local0)
  7695. }
  7696.  
  7697. Method (SCMI, 1, NotSerialized)
  7698. {
  7699. Local0 = (Arg0 & 0x01)
  7700. If (Local0)
  7701. {
  7702. ^^LED (0x10, 0x80)
  7703. }
  7704. Else
  7705. {
  7706. ^^LED (0x10, 0x00)
  7707. }
  7708.  
  7709. SICO = Local0
  7710. Return (0x00)
  7711. }
  7712.  
  7713. Method (GCMI, 1, NotSerialized)
  7714. {
  7715. Return (SICO) /* \_SB_.PCI0.LPC_.EC__.SICO */
  7716. }
  7717.  
  7718. Method (SCMD, 1, NotSerialized)
  7719. {
  7720. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7721. Local0 = (Arg0 & 0x03)
  7722. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7723. If ((Local0 == 0x00))
  7724. {
  7725. DFRL = 0x20
  7726. }
  7727. Else
  7728. {
  7729. If ((Local0 == 0x01))
  7730. {
  7731. DFRL = 0x21
  7732. }
  7733. Else
  7734. {
  7735. If ((Local0 == 0x02))
  7736. {
  7737. DFRL = 0x22
  7738. }
  7739. Else
  7740. {
  7741. If ((Local0 == 0x03))
  7742. {
  7743. DFRL = 0x23
  7744. }
  7745. Else
  7746. {
  7747. Release (\_SB.PCI0.LPC.EC.MDFR)
  7748. Return (0x80000000)
  7749. }
  7750. }
  7751. }
  7752. }
  7753.  
  7754. Release (\_SB.PCI0.LPC.EC.MDFR)
  7755. SICM = Local0
  7756. Return (0x00)
  7757. }
  7758.  
  7759. Method (GCMD, 1, NotSerialized)
  7760. {
  7761. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7762. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7763. DFRL = 0x2F
  7764. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7765. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7766. Release (\_SB.PCI0.LPC.EC.MDFR)
  7767. Local0 = ((Local0 & 0xFF) - 0x20)
  7768. Return (Local0)
  7769. }
  7770.  
  7771. Method (GMMS, 1, NotSerialized)
  7772. {
  7773. If (\_SB.PCI0.LPC.EC.LFST)
  7774. {
  7775. Return (0x00030002)
  7776. }
  7777. Else
  7778. {
  7779. Return (0x00030001)
  7780. }
  7781. }
  7782.  
  7783. Method (UAND, 1, Serialized)
  7784. {
  7785. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  7786. Local0 = 0x00
  7787. While (One)
  7788. {
  7789. _T_0 = (Arg0 & 0x03)
  7790. If ((_T_0 == 0x00))
  7791. {
  7792. Local1 = 0x37
  7793. }
  7794. Else
  7795. {
  7796. If ((_T_0 == 0x01))
  7797. {
  7798. Local1 = 0x36
  7799. }
  7800. Else
  7801. {
  7802. Local1 = 0x38
  7803. }
  7804. }
  7805.  
  7806. Break
  7807. }
  7808.  
  7809. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7810. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7811. DFRL = Local1
  7812. Release (\_SB.PCI0.LPC.EC.MDFR)
  7813. Return (Local0)
  7814. }
  7815.  
  7816. Method (DGBL, 1, NotSerialized)
  7817. {
  7818. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7819. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7820. DFRL = 0x39
  7821. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7822. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7823. Release (\_SB.PCI0.LPC.EC.MDFR)
  7824. Local0 = ((Local0 & 0xFF) - 0x36)
  7825. Return (Local0)
  7826. }
  7827.  
  7828. Method (SDHK, 1, NotSerialized)
  7829. {
  7830. Local1 = (Arg0 & 0x03)
  7831. If ((\_SB.PCI0.LPC.EC.HKRM != Local1))
  7832. {
  7833. \_SB.PCI0.LPC.EC.HKRM = Local1
  7834. }
  7835.  
  7836. Local1 = (Arg0 & 0x0C)
  7837. Local1 >>= 0x02
  7838. If ((\_SB.PCI0.LPC.EC.EKRM != Local1))
  7839. {
  7840. \_SB.PCI0.LPC.EC.EKRM = Local1
  7841. }
  7842.  
  7843. Return (0x00)
  7844. }
  7845.  
  7846. Method (GDHK, 1, NotSerialized)
  7847. {
  7848. Local0 = \_SB.PCI0.LPC.EC.EKRM
  7849. Local0 <<= 0x02
  7850. Local0 |= \_SB.PCI0.LPC.EC.HKRM
  7851. Return (Local0)
  7852. }
  7853.  
  7854. Method (SDFL, 1, NotSerialized)
  7855. {
  7856. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7857. Local0 = (Arg0 & 0x01)
  7858. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7859. If (Local0)
  7860. {
  7861. DFRL = 0x5D
  7862. }
  7863. Else
  7864. {
  7865. DFRL = 0x5C
  7866. }
  7867.  
  7868. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7869. DFRL = 0x61
  7870. Local1 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7871. Local1 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7872. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7873. DFRL = 0x5F
  7874. Release (\_SB.PCI0.LPC.EC.MDFR)
  7875. Local1 = ((Local1 & 0xFF) - 0x5F)
  7876. If (Local1)
  7877. {
  7878. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6060)
  7879. }
  7880.  
  7881. Return (0x00)
  7882. }
  7883.  
  7884. Method (GDFL, 1, NotSerialized)
  7885. {
  7886. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7887. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7888. DFRL = 0x5E
  7889. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7890. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7891. Release (\_SB.PCI0.LPC.EC.MDFR)
  7892. Local0 = ((Local0 & 0xFF) - 0x5C)
  7893. If (Local0)
  7894. {
  7895. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7896. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7897. DFRL = 0x61
  7898. Local1 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7899. Local1 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7900. Release (\_SB.PCI0.LPC.EC.MDFR)
  7901. Local1 = ((Local1 & 0xFF) - 0x5F)
  7902. Local0 |= (Local1 << 0x01)
  7903. }
  7904.  
  7905. Return (Local0)
  7906. }
  7907.  
  7908. Method (SDAM, 1, NotSerialized)
  7909. {
  7910. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7911. Local0 = (Arg0 & 0x01)
  7912. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7913. If (Local0)
  7914. {
  7915. DFRL = 0x59
  7916. }
  7917. Else
  7918. {
  7919. DFRL = 0x58
  7920. }
  7921.  
  7922. Release (\_SB.PCI0.LPC.EC.MDFR)
  7923. Return (0x00)
  7924. }
  7925.  
  7926. Method (GDAM, 1, Serialized)
  7927. {
  7928. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  7929. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7930. DFRL = 0x5A
  7931. Local0 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7932. Local0 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7933. Local0 = ((Local0 & 0xFF) - 0x58)
  7934. DFRH = DFCH /* \_SB_.PCI0.LPC_.EC__.DFCH */
  7935. DFRL = 0x5B
  7936. Local1 = DFRH /* \_SB_.PCI0.LPC_.EC__.DFRH */
  7937. Local1 = DFRL /* \_SB_.PCI0.LPC_.EC__.DFRL */
  7938. Release (\_SB.PCI0.LPC.EC.MDFR)
  7939. If (Local1)
  7940. {
  7941. Local0 |= 0x02
  7942. }
  7943.  
  7944. Return (Local0)
  7945. }
  7946. }
  7947. }
  7948. }
  7949.  
  7950. Device (PEG)
  7951. {
  7952. Name (_ADR, 0x00010000) // _ADR: Address
  7953. Name (_S3D, 0x03) // _S3D: S3 Device State
  7954. Name (RID, 0x00)
  7955. Name (LART, Package (0x02)
  7956. {
  7957. Package (0x04)
  7958. {
  7959. 0xFFFF,
  7960. 0x00,
  7961. \_SB.LNKA,
  7962. 0x00
  7963. },
  7964.  
  7965. Package (0x04)
  7966. {
  7967. 0xFFFF,
  7968. 0x01,
  7969. \_SB.LNKB,
  7970. 0x00
  7971. }
  7972. })
  7973. Name (AART, Package (0x02)
  7974. {
  7975. Package (0x04)
  7976. {
  7977. 0xFFFF,
  7978. 0x00,
  7979. 0x00,
  7980. 0x10
  7981. },
  7982.  
  7983. Package (0x04)
  7984. {
  7985. 0xFFFF,
  7986. 0x01,
  7987. 0x00,
  7988. 0x11
  7989. }
  7990. })
  7991. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  7992. {
  7993. If (\GPIC)
  7994. {
  7995. Return (AART) /* \_SB_.PCI0.PEG_.AART */
  7996. }
  7997. Else
  7998. {
  7999. Return (LART) /* \_SB_.PCI0.PEG_.LART */
  8000. }
  8001. }
  8002.  
  8003. Mutex (MDGS, 0x07)
  8004. Name (VDEE, 0x01)
  8005. Name (VDDA, Buffer (0x04) {})
  8006. CreateBitField (VDDA, 0x00, VUPC)
  8007. CreateBitField (VDDA, 0x01, VQDL)
  8008. CreateBitField (VDDA, 0x02, VQDC)
  8009. CreateBitField (VDDA, 0x03, VQD0)
  8010. CreateBitField (VDDA, 0x04, VQD1)
  8011. CreateBitField (VDDA, 0x05, VQD2)
  8012. CreateBitField (VDDA, 0x06, VQD3)
  8013. CreateBitField (VDDA, 0x07, VQD4)
  8014. CreateBitField (VDDA, 0x08, VQD5)
  8015. CreateBitField (VDDA, 0x09, VSDL)
  8016. CreateBitField (VDDA, 0x0A, VSDC)
  8017. CreateBitField (VDDA, 0x0B, VSD0)
  8018. CreateBitField (VDDA, 0x0C, VSD1)
  8019. CreateBitField (VDDA, 0x0D, VSD2)
  8020. CreateBitField (VDDA, 0x0E, VSD3)
  8021. CreateBitField (VDDA, 0x0F, VSD4)
  8022. CreateBitField (VDDA, 0x10, VSD5)
  8023. CreateBitField (VDDA, 0x11, MSWT)
  8024. CreateBitField (VDDA, 0x12, VWST)
  8025. Device (VID)
  8026. {
  8027. Name (_ADR, 0x00) // _ADR: Address
  8028. OperationRegion (VPCG, PCI_Config, 0x00, 0x0100)
  8029. Field (VPCG, DWordAcc, NoLock, Preserve)
  8030. {
  8031. Offset (0x2C),
  8032. VSID, 32,
  8033. Offset (0x40),
  8034. VIDS, 32,
  8035. Offset (0x70),
  8036. VPWR, 8
  8037. }
  8038.  
  8039. OperationRegion (GPPB, PCI_Config, 0xB4, 0x14)
  8040. Field (GPPB, ByteAcc, NoLock, Preserve)
  8041. {
  8042. PBCI, 8,
  8043. PBNP, 8,
  8044. PBLS, 8,
  8045. PBCC, 8,
  8046. PBCR, 32,
  8047. PBDI, 32,
  8048. PBDO, 32,
  8049. PBMR, 32
  8050. }
  8051.  
  8052. Name (_S3D, 0x03) // _S3D: S3 Device State
  8053. Name (DGOS, 0x00)
  8054. Method (_INI, 0, NotSerialized) // _INI: Initialize
  8055. {
  8056. \VUPS (0x02)
  8057. VQDL = \VCDL
  8058. VQDC = \VCDC
  8059. VQD0 = \VCDT
  8060. VQD1 = \VCDD
  8061. If (ISOP ())
  8062. {
  8063. \VHYB (0x04, 0x01)
  8064. }
  8065. }
  8066.  
  8067. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  8068. {
  8069. GPON (0x00)
  8070. }
  8071.  
  8072. Method (_PS1, 0, NotSerialized) // _PS1: Power State 1
  8073. {
  8074. Noop
  8075. }
  8076.  
  8077. Method (_PS2, 0, NotSerialized) // _PS2: Power State 2
  8078. {
  8079. Noop
  8080. }
  8081.  
  8082. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  8083. {
  8084. GPOF (0x00)
  8085. }
  8086.  
  8087. Method (GPON, 1, NotSerialized)
  8088. {
  8089. If (ISOP ())
  8090. {
  8091. If (DGOS)
  8092. {
  8093. \VHYB (0x02, 0x00)
  8094. Sleep (0x64)
  8095. If ((ToInteger (Arg0) == 0x00)) {}
  8096. \VHYB (0x00, 0x01)
  8097. Sleep (0x0A)
  8098. \VHYB (0x0A, 0x01)
  8099. Sleep (0x64)
  8100. \VHYB (0x02, 0x01)
  8101. Sleep (0x01)
  8102. \VHYB (0x08, 0x01)
  8103. Local0 = 0x0A
  8104. Local1 = 0x32
  8105. While (Local1)
  8106. {
  8107. Sleep (Local0)
  8108. If (\LCHK (0x01))
  8109. {
  8110. Break
  8111. }
  8112.  
  8113. Local1--
  8114. }
  8115.  
  8116. \VHYB (0x08, 0x03)
  8117. If (VMSH)
  8118. {
  8119. \VHYB (0x0D, 0x00)
  8120. }
  8121.  
  8122. Local1 = 0xC8
  8123. While (Local1)
  8124. {
  8125. Sleep (0x01)
  8126. If (\VHYB (0x0C, 0x00))
  8127. {
  8128. Break
  8129. }
  8130.  
  8131. Local1--
  8132. }
  8133.  
  8134. \VHYB (0x0A, 0x00)
  8135. \VHYB (0x04, 0x00)
  8136. \SWTT (0x01)
  8137. DGOS = Zero
  8138. }
  8139. Else
  8140. {
  8141. If (((VSID != 0x221417AA) && (VSID != 0x221417AA)))
  8142. {
  8143. \VHYB (0x04, 0x00)
  8144. }
  8145. }
  8146.  
  8147. \VHYB (0x09, \_SB.PCI0.PEG.VID.HDAS)
  8148. }
  8149. }
  8150.  
  8151. Method (GPOF, 1, NotSerialized)
  8152. {
  8153. If (ISOP ())
  8154. {
  8155. If ((VMSH || (\_SB.PCI0.PEG.VID.OMPR == 0x03)))
  8156. {
  8157. \SWTT (0x00)
  8158. \VHYB (0x08, 0x00)
  8159. Local0 = 0x0A
  8160. Local1 = 0x32
  8161. While (Local1)
  8162. {
  8163. Sleep (Local0)
  8164. If (\LCHK (0x00))
  8165. {
  8166. Break
  8167. }
  8168.  
  8169. Local1--
  8170. }
  8171.  
  8172. \VHYB (0x08, 0x02)
  8173. \VHYB (0x02, 0x00)
  8174. Sleep (0x64)
  8175. \VHYB (0x00, 0x00)
  8176. If ((ToInteger (Arg0) == 0x00)) {}
  8177. DGOS = One
  8178. \_SB.PCI0.PEG.VID.OMPR = 0x02
  8179. }
  8180. }
  8181. }
  8182.  
  8183. Method (_STA, 0, NotSerialized) // _STA: Status
  8184. {
  8185. Return (0x0F)
  8186. }
  8187.  
  8188. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  8189. {
  8190. If (\CMPB (Arg0, ToUUID ("a486d8f8-0bda-471b-a72b-6042a6b5bee0")))
  8191. {
  8192. Return (NVOP (Arg0, Arg1, Arg2, Arg3))
  8193. }
  8194.  
  8195. If (\CMPB (Arg0, ToUUID ("a3132d01-8cda-49ba-a52e-bc9d46df6b81")))
  8196. {
  8197. Return (NVPS (Arg0, Arg1, Arg2, Arg3))
  8198. }
  8199.  
  8200. If (\WIN8)
  8201. {
  8202. If (\CMPB (Arg0, ToUUID ("d4a50b75-65c7-46f7-bfb7-41514cea0244")))
  8203. {
  8204. Return (NBCI (Arg0, Arg1, Arg2, Arg3))
  8205. }
  8206. }
  8207.  
  8208. Return (Buffer (0x04)
  8209. {
  8210. 0x01, 0x00, 0x00, 0x80 /* .... */
  8211. })
  8212. }
  8213.  
  8214. OperationRegion (ATRP, SystemMemory, \ATRB, 0x00010000)
  8215. Field (ATRP, AnyAcc, Lock, Preserve)
  8216. {
  8217. IDX0, 262144,
  8218. IDX1, 262144
  8219. }
  8220.  
  8221. Method (_ROM, 2, Serialized) // _ROM: Read-Only Memory
  8222. {
  8223. If ((Arg0 >= 0x8000))
  8224. {
  8225. Return (GETB ((Arg0 - 0x8000), Arg1, IDX1))
  8226. }
  8227.  
  8228. If (((Arg0 + Arg1) > 0x8000))
  8229. {
  8230. Local0 = (0x8000 - Arg0)
  8231. Local1 = (Arg1 - Local0)
  8232. Local3 = GETB (Arg0, Local0, IDX0)
  8233. Local4 = GETB (0x00, Local1, IDX1)
  8234. Concatenate (Local3, Local4, Local5)
  8235. Return (Local5)
  8236. }
  8237.  
  8238. Return (GETB (Arg0, Arg1, IDX0))
  8239. }
  8240.  
  8241. Method (GETB, 3, Serialized)
  8242. {
  8243. Local0 = (Arg0 * 0x08)
  8244. Local1 = (Arg1 * 0x08)
  8245. CreateField (Arg2, Local0, Local1, TBF3)
  8246. Return (TBF3) /* \_SB_.PCI0.PEG_.VID_.GETB.TBF3 */
  8247. }
  8248.  
  8249. Method (VSWT, 0, NotSerialized)
  8250. {
  8251. If (\WVIS)
  8252. {
  8253. Local0 = \VEVT (0x07)
  8254. }
  8255. Else
  8256. {
  8257. Local0 = \VEVT (0x05)
  8258. }
  8259.  
  8260. Local1 = (0xFF & Local0)
  8261. If (Local1)
  8262. {
  8263. ASWT (Local1, 0x01)
  8264. }
  8265. }
  8266.  
  8267. Method (VLOC, 1, NotSerialized)
  8268. {
  8269. If ((Arg0 == \_SB.LID._LID ()))
  8270. {
  8271. \VSLD (Arg0)
  8272. If (((VPWR & 0x03) == 0x00))
  8273. {
  8274. If (Arg0)
  8275. {
  8276. Local0 = \VEVT (0x01)
  8277. }
  8278. Else
  8279. {
  8280. Local0 = \VEVT (0x02)
  8281. }
  8282.  
  8283. Local1 = (0x0F & Local0)
  8284. If (Local1)
  8285. {
  8286. ASWT (Local1, 0x00)
  8287. }
  8288. }
  8289. }
  8290. }
  8291.  
  8292. Method (_DOS, 1, NotSerialized) // _DOS: Disable Output Switching
  8293. {
  8294. If ((Arg0 == 0x02))
  8295. {
  8296. Local0 = 0x14
  8297. While (Local0)
  8298. {
  8299. Local0--
  8300. Acquire (MDGS, 0xFFFF)
  8301. If ((0x00 == MSWT))
  8302. {
  8303. MSWT = 0x01
  8304. Local0 = 0x00
  8305. VDEE = Arg0
  8306. }
  8307.  
  8308. Release (MDGS)
  8309. Sleep (0xC8)
  8310. }
  8311. }
  8312. Else
  8313. {
  8314. Acquire (MDGS, 0xFFFF)
  8315. If ((VDEE == 0x02))
  8316. {
  8317. MSWT = 0x00
  8318. }
  8319.  
  8320. If ((Arg0 > 0x02))
  8321. {
  8322. VDEE = 0x01
  8323. }
  8324. Else
  8325. {
  8326. VDEE = Arg0
  8327. }
  8328.  
  8329. Release (MDGS)
  8330. }
  8331. }
  8332.  
  8333. Method (_DOD, 0, NotSerialized) // _DOD: Display Output Devices
  8334. {
  8335. Return (Package (0x08)
  8336. {
  8337. 0x0100,
  8338. 0x0114,
  8339. 0x0111,
  8340. 0x0115,
  8341. 0x0112,
  8342. 0x0116,
  8343. 0x0113,
  8344. 0x0110
  8345. })
  8346. }
  8347.  
  8348. Method (ASWT, 2, NotSerialized)
  8349. {
  8350. If ((0x01 == VDEE))
  8351. {
  8352. Local1 = (0x01 & Arg1)
  8353. \VSDS (Arg0, Local1)
  8354. }
  8355. Else
  8356. {
  8357. Local0 = 0x14
  8358. While (Local0)
  8359. {
  8360. Local0--
  8361. Acquire (MDGS, 0xFFFF)
  8362. If ((0x00 == MSWT))
  8363. {
  8364. Local0 = 0x00
  8365. If ((0x01 & Arg1))
  8366. {
  8367. VUPC = 0x01
  8368. }
  8369. Else
  8370. {
  8371. VUPC = 0x00
  8372. }
  8373.  
  8374. If ((0x01 & Arg0))
  8375. {
  8376. VQDL = 0x01
  8377. }
  8378. Else
  8379. {
  8380. VQDL = 0x00
  8381. }
  8382.  
  8383. If ((0x02 & Arg0))
  8384. {
  8385. VQDC = 0x01
  8386. }
  8387. Else
  8388. {
  8389. VQDC = 0x00
  8390. }
  8391.  
  8392. If ((0x04 & Arg0))
  8393. {
  8394. VQD0 = 0x01
  8395. }
  8396. Else
  8397. {
  8398. VQD0 = 0x00
  8399. }
  8400.  
  8401. If ((0x08 & Arg0))
  8402. {
  8403. VQD1 = 0x01
  8404. }
  8405. Else
  8406. {
  8407. VQD1 = 0x00
  8408. }
  8409.  
  8410. If ((0x10 & Arg0))
  8411. {
  8412. VQD2 = 0x01
  8413. }
  8414. Else
  8415. {
  8416. VQD2 = 0x00
  8417. }
  8418.  
  8419. If ((0x20 & Arg0))
  8420. {
  8421. VQD3 = 0x01
  8422. }
  8423. Else
  8424. {
  8425. VQD3 = 0x00
  8426. }
  8427.  
  8428. If ((0x40 & Arg0))
  8429. {
  8430. VQD4 = 0x01
  8431. }
  8432. Else
  8433. {
  8434. VQD4 = 0x00
  8435. }
  8436.  
  8437. If ((0x80 & Arg0))
  8438. {
  8439. VQD5 = 0x01
  8440. }
  8441. Else
  8442. {
  8443. VQD5 = 0x00
  8444. }
  8445. }
  8446.  
  8447. Release (MDGS)
  8448. Sleep (0xC8)
  8449. }
  8450.  
  8451. If ((0x02 & Arg1))
  8452. {
  8453. Notify (VID, 0x81) // Information Change
  8454. }
  8455. Else
  8456. {
  8457. Notify (VID, 0x80) // Status Change
  8458. }
  8459. }
  8460. }
  8461.  
  8462. Method (VDSW, 1, NotSerialized)
  8463. {
  8464. If ((VPWR == 0x00))
  8465. {
  8466. If (Arg0)
  8467. {
  8468. Local0 = \VEVT (0x03)
  8469. }
  8470. Else
  8471. {
  8472. Local0 = \VEVT (0x04)
  8473. }
  8474.  
  8475. Local1 = (0x0F & Local0)
  8476. If (Local1)
  8477. {
  8478. ASWT (Local1, 0x00)
  8479. }
  8480. }
  8481. }
  8482.  
  8483. Device (LCD0)
  8484. {
  8485. Method (_ADR, 0, NotSerialized) // _ADR: Address
  8486. {
  8487. Return (0x0110)
  8488. }
  8489.  
  8490. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  8491. {
  8492. \VUPS (0x00)
  8493. If (\VCDL)
  8494. {
  8495. Return (0x1F)
  8496. }
  8497. Else
  8498. {
  8499. Return (0x1D)
  8500. }
  8501. }
  8502.  
  8503. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  8504. {
  8505. Return (VQDL) /* \_SB_.PCI0.PEG_.VQDL */
  8506. }
  8507.  
  8508. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  8509. {
  8510. VSDL = (Arg0 & 0x01)
  8511. If ((Arg0 & 0x80000000))
  8512. {
  8513. If ((Arg0 & 0x40000000))
  8514. {
  8515. DSWT (0x02)
  8516. }
  8517. Else
  8518. {
  8519. DSWT (0x01)
  8520. }
  8521. }
  8522. }
  8523.  
  8524. Method (_DDC, 1, NotSerialized) // _DDC: Display Data Current
  8525. {
  8526. If (ISOP ())
  8527. {
  8528. Return (0x00)
  8529. }
  8530.  
  8531. If ((Arg0 == 0x01))
  8532. {
  8533. Return (\VEDI)
  8534. }
  8535. Else
  8536. {
  8537. If ((Arg0 == 0x02))
  8538. {
  8539. Return (\VEDI)
  8540. }
  8541. }
  8542.  
  8543. Return (0x00)
  8544. }
  8545. }
  8546.  
  8547. Device (CRT0)
  8548. {
  8549. Method (_ADR, 0, NotSerialized) // _ADR: Address
  8550. {
  8551. Return (0x0100)
  8552. }
  8553.  
  8554. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  8555. {
  8556. \VUPS (0x01)
  8557. If (\VCSS)
  8558. {
  8559. If (\VCDC)
  8560. {
  8561. Return (0x1F)
  8562. }
  8563. Else
  8564. {
  8565. Return (0x1D)
  8566. }
  8567. }
  8568. Else
  8569. {
  8570. If (\VCDC)
  8571. {
  8572. Return (0x0F)
  8573. }
  8574. Else
  8575. {
  8576. Return (0x0D)
  8577. }
  8578. }
  8579. }
  8580.  
  8581. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  8582. {
  8583. Return (VQDC) /* \_SB_.PCI0.PEG_.VQDC */
  8584. }
  8585.  
  8586. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  8587. {
  8588. VSDC = (Arg0 & 0x01)
  8589. If ((Arg0 & 0x80000000))
  8590. {
  8591. If ((Arg0 & 0x40000000))
  8592. {
  8593. DSWT (0x02)
  8594. }
  8595. Else
  8596. {
  8597. DSWT (0x01)
  8598. }
  8599. }
  8600. }
  8601. }
  8602.  
  8603. Device (DVI0)
  8604. {
  8605. Method (_ADR, 0, NotSerialized) // _ADR: Address
  8606. {
  8607. Return (0x0111)
  8608. }
  8609.  
  8610. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  8611. {
  8612. \VUPS (0x00)
  8613. If (\VCDD)
  8614. {
  8615. Return (0x1F)
  8616. }
  8617. Else
  8618. {
  8619. Return (0x1D)
  8620. }
  8621. }
  8622.  
  8623. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  8624. {
  8625. Return (VQD1) /* \_SB_.PCI0.PEG_.VQD1 */
  8626. }
  8627.  
  8628. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  8629. {
  8630. VSD1 = (Arg0 & 0x01)
  8631. If ((Arg0 & 0x80000000))
  8632. {
  8633. If ((Arg0 & 0x40000000))
  8634. {
  8635. DSWT (0x02)
  8636. }
  8637. Else
  8638. {
  8639. DSWT (0x01)
  8640. }
  8641. }
  8642. }
  8643. }
  8644.  
  8645. Device (DP0)
  8646. {
  8647. Method (_ADR, 0, NotSerialized) // _ADR: Address
  8648. {
  8649. Return (0x0114)
  8650. }
  8651.  
  8652. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  8653. {
  8654. \VUPS (0x00)
  8655. If (\VCDT)
  8656. {
  8657. Return (0x1F)
  8658. }
  8659. Else
  8660. {
  8661. Return (0x1D)
  8662. }
  8663. }
  8664.  
  8665. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  8666. {
  8667. Return (VQD0) /* \_SB_.PCI0.PEG_.VQD0 */
  8668. }
  8669.  
  8670. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  8671. {
  8672. VSD0 = (Arg0 & 0x01)
  8673. If ((Arg0 & 0x80000000))
  8674. {
  8675. If ((Arg0 & 0x40000000))
  8676. {
  8677. DSWT (0x02)
  8678. }
  8679. Else
  8680. {
  8681. DSWT (0x01)
  8682. }
  8683. }
  8684. }
  8685. }
  8686.  
  8687. Device (DVI1)
  8688. {
  8689. Method (_ADR, 0, NotSerialized) // _ADR: Address
  8690. {
  8691. Return (0x0112)
  8692. }
  8693.  
  8694. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  8695. {
  8696. \VUPS (0x00)
  8697. If (\VCDD)
  8698. {
  8699. Return (0x1F)
  8700. }
  8701. Else
  8702. {
  8703. Return (0x1D)
  8704. }
  8705. }
  8706.  
  8707. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  8708. {
  8709. Return (VQD3) /* \_SB_.PCI0.PEG_.VQD3 */
  8710. }
  8711.  
  8712. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  8713. {
  8714. VSD3 = (Arg0 & 0x01)
  8715. If ((Arg0 & 0x80000000))
  8716. {
  8717. If ((Arg0 & 0x40000000))
  8718. {
  8719. DSWT (0x02)
  8720. }
  8721. Else
  8722. {
  8723. DSWT (0x01)
  8724. }
  8725. }
  8726. }
  8727. }
  8728.  
  8729. Device (DP1)
  8730. {
  8731. Method (_ADR, 0, NotSerialized) // _ADR: Address
  8732. {
  8733. Return (0x0115)
  8734. }
  8735.  
  8736. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  8737. {
  8738. \VUPS (0x00)
  8739. If (\VCDT)
  8740. {
  8741. Return (0x1F)
  8742. }
  8743. Else
  8744. {
  8745. Return (0x1D)
  8746. }
  8747. }
  8748.  
  8749. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  8750. {
  8751. Return (VQD2) /* \_SB_.PCI0.PEG_.VQD2 */
  8752. }
  8753.  
  8754. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  8755. {
  8756. VSD2 = (Arg0 & 0x01)
  8757. If ((Arg0 & 0x80000000))
  8758. {
  8759. If ((Arg0 & 0x40000000))
  8760. {
  8761. DSWT (0x02)
  8762. }
  8763. Else
  8764. {
  8765. DSWT (0x01)
  8766. }
  8767. }
  8768. }
  8769. }
  8770.  
  8771. Device (DVI2)
  8772. {
  8773. Method (_ADR, 0, NotSerialized) // _ADR: Address
  8774. {
  8775. Return (0x0113)
  8776. }
  8777.  
  8778. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  8779. {
  8780. \VUPS (0x00)
  8781. If (\VCDD)
  8782. {
  8783. Return (0x1F)
  8784. }
  8785. Else
  8786. {
  8787. Return (0x1D)
  8788. }
  8789. }
  8790.  
  8791. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  8792. {
  8793. Return (VQD5) /* \_SB_.PCI0.PEG_.VQD5 */
  8794. }
  8795.  
  8796. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  8797. {
  8798. VSD5 = (Arg0 & 0x01)
  8799. If ((Arg0 & 0x80000000))
  8800. {
  8801. If ((Arg0 & 0x40000000))
  8802. {
  8803. DSWT (0x02)
  8804. }
  8805. Else
  8806. {
  8807. DSWT (0x01)
  8808. }
  8809. }
  8810. }
  8811. }
  8812.  
  8813. Device (DP2)
  8814. {
  8815. Method (_ADR, 0, NotSerialized) // _ADR: Address
  8816. {
  8817. Return (0x0116)
  8818. }
  8819.  
  8820. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  8821. {
  8822. \VUPS (0x00)
  8823. If (\VCDT)
  8824. {
  8825. Return (0x1F)
  8826. }
  8827. Else
  8828. {
  8829. Return (0x1D)
  8830. }
  8831. }
  8832.  
  8833. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  8834. {
  8835. Return (VQD4) /* \_SB_.PCI0.PEG_.VQD4 */
  8836. }
  8837.  
  8838. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  8839. {
  8840. VSD4 = (Arg0 & 0x01)
  8841. If ((Arg0 & 0x80000000))
  8842. {
  8843. If ((Arg0 & 0x40000000))
  8844. {
  8845. DSWT (0x02)
  8846. }
  8847. Else
  8848. {
  8849. DSWT (0x01)
  8850. }
  8851. }
  8852. }
  8853. }
  8854.  
  8855. Method (DSWT, 1, NotSerialized)
  8856. {
  8857. If (VSDL)
  8858. {
  8859. Local0 = 0x01
  8860. }
  8861. Else
  8862. {
  8863. Local0 = 0x00
  8864. }
  8865.  
  8866. If (VSDC)
  8867. {
  8868. Local0 |= 0x02
  8869. }
  8870.  
  8871. If (VSD0)
  8872. {
  8873. Local0 |= 0x08
  8874. }
  8875.  
  8876. If (Local0)
  8877. {
  8878. If (VUPC)
  8879. {
  8880. \VSDS (Local0, Arg0)
  8881. }
  8882. }
  8883. Else
  8884. {
  8885. Noop
  8886. }
  8887. }
  8888. }
  8889.  
  8890. Scope (\_SB.PCI0.PEG.VID)
  8891. {
  8892. Method (NBCI, 4, Serialized)
  8893. {
  8894. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  8895. Debug = "------- NBCI DSM --------"
  8896. While (One)
  8897. {
  8898. _T_0 = ToInteger (Arg2)
  8899. If ((_T_0 == 0x00))
  8900. {
  8901. Local0 = Buffer (0x04)
  8902. {
  8903. 0x00, 0x00, 0x00, 0x00 /* .... */
  8904. }
  8905. Divide (0x00, 0x08, Local2, Local1)
  8906. Local2 <<= 0x01
  8907. Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
  8908. Divide (0x14, 0x08, Local2, Local1)
  8909. Local2 <<= 0x01
  8910. Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
  8911. Return (Local0)
  8912. }
  8913. Else
  8914. {
  8915. If ((_T_0 == 0x14))
  8916. {
  8917. Local0 = Package (0x07)
  8918. {
  8919. 0x0110,
  8920. 0x0200,
  8921. 0x00,
  8922. 0x00,
  8923. 0x05,
  8924. 0x01,
  8925. Package (0x04)
  8926. {
  8927. 0xDC,
  8928. 0x00,
  8929. 0x03E8,
  8930. Package (0x03)
  8931. {
  8932. 0x65,
  8933. Package (0x65)
  8934. {
  8935. 0x00,
  8936. 0x0A,
  8937. 0x14,
  8938. 0x1E,
  8939. 0x28,
  8940. 0x32,
  8941. 0x3C,
  8942. 0x46,
  8943. 0x50,
  8944. 0x5A,
  8945. 0x64,
  8946. 0x6E,
  8947. 0x78,
  8948. 0x82,
  8949. 0x8C,
  8950. 0x96,
  8951. 0xA0,
  8952. 0xAA,
  8953. 0xB4,
  8954. 0xBE,
  8955. 0xC8,
  8956. 0xD2,
  8957. 0xDC,
  8958. 0xE6,
  8959. 0xF0,
  8960. 0xFA,
  8961. 0x0104,
  8962. 0x010E,
  8963. 0x0118,
  8964. 0x0122,
  8965. 0x012C,
  8966. 0x0136,
  8967. 0x0140,
  8968. 0x014A,
  8969. 0x0154,
  8970. 0x015E,
  8971. 0x0168,
  8972. 0x0172,
  8973. 0x017C,
  8974. 0x0186,
  8975. 0x0190,
  8976. 0x019A,
  8977. 0x01A4,
  8978. 0x01AE,
  8979. 0x01B8,
  8980. 0x01C2,
  8981. 0x01CC,
  8982. 0x01D6,
  8983. 0x01E0,
  8984. 0x01EA,
  8985. 0x01F4,
  8986. 0x01FE,
  8987. 0x0208,
  8988. 0x0212,
  8989. 0x021C,
  8990. 0x0226,
  8991. 0x0230,
  8992. 0x023A,
  8993. 0x0244,
  8994. 0x024E,
  8995. 0x0258,
  8996. 0x0262,
  8997. 0x026C,
  8998. 0x0276,
  8999. 0x0280,
  9000. 0x028A,
  9001. 0x0294,
  9002. 0x029E,
  9003. 0x02A8,
  9004. 0x02B2,
  9005. 0x02BC,
  9006. 0x02C6,
  9007. 0x02D0,
  9008. 0x02DA,
  9009. 0x02E4,
  9010. 0x02EE,
  9011. 0x02F8,
  9012. 0x0302,
  9013. 0x030C,
  9014. 0x0316,
  9015. 0x0320,
  9016. 0x032A,
  9017. 0x0334,
  9018. 0x033E,
  9019. 0x0348,
  9020. 0x0352,
  9021. 0x035C,
  9022. 0x0366,
  9023. 0x0370,
  9024. 0x037A,
  9025. 0x0384,
  9026. 0x038E,
  9027. 0x0398,
  9028. 0x03A2,
  9029. 0x03AC,
  9030. 0x03B6,
  9031. 0x03C0,
  9032. 0x03CA,
  9033. 0x03D4,
  9034. 0x03DE,
  9035. 0x03E8
  9036. },
  9037.  
  9038. Package (0x65)
  9039. {
  9040. 0x00,
  9041. 0x0A,
  9042. 0x14,
  9043. 0x1E,
  9044. 0x28,
  9045. 0x32,
  9046. 0x3C,
  9047. 0x46,
  9048. 0x50,
  9049. 0x5A,
  9050. 0x64,
  9051. 0x6E,
  9052. 0x78,
  9053. 0x82,
  9054. 0x8C,
  9055. 0x96,
  9056. 0xA0,
  9057. 0xAA,
  9058. 0xB4,
  9059. 0xBE,
  9060. 0xC8,
  9061. 0xD2,
  9062. 0xDC,
  9063. 0xE6,
  9064. 0xF0,
  9065. 0xFA,
  9066. 0x0104,
  9067. 0x010E,
  9068. 0x0118,
  9069. 0x0122,
  9070. 0x012C,
  9071. 0x0136,
  9072. 0x0140,
  9073. 0x014A,
  9074. 0x0154,
  9075. 0x015E,
  9076. 0x0168,
  9077. 0x0172,
  9078. 0x017C,
  9079. 0x0186,
  9080. 0x0190,
  9081. 0x019A,
  9082. 0x01A4,
  9083. 0x01AE,
  9084. 0x01B8,
  9085. 0x01C2,
  9086. 0x01CC,
  9087. 0x01D6,
  9088. 0x01E0,
  9089. 0x01EA,
  9090. 0x01F4,
  9091. 0x01FE,
  9092. 0x0208,
  9093. 0x0212,
  9094. 0x021C,
  9095. 0x0226,
  9096. 0x0230,
  9097. 0x023A,
  9098. 0x0244,
  9099. 0x024E,
  9100. 0x0258,
  9101. 0x0262,
  9102. 0x026C,
  9103. 0x0276,
  9104. 0x0280,
  9105. 0x028A,
  9106. 0x0294,
  9107. 0x029E,
  9108. 0x02A8,
  9109. 0x02B2,
  9110. 0x02BC,
  9111. 0x02C6,
  9112. 0x02D0,
  9113. 0x02DA,
  9114. 0x02E4,
  9115. 0x02EE,
  9116. 0x02F8,
  9117. 0x0302,
  9118. 0x030C,
  9119. 0x0316,
  9120. 0x0320,
  9121. 0x032A,
  9122. 0x0334,
  9123. 0x033E,
  9124. 0x0348,
  9125. 0x0352,
  9126. 0x035C,
  9127. 0x0366,
  9128. 0x0370,
  9129. 0x037A,
  9130. 0x0384,
  9131. 0x038E,
  9132. 0x0398,
  9133. 0x03A2,
  9134. 0x03AC,
  9135. 0x03B6,
  9136. 0x03C0,
  9137. 0x03CA,
  9138. 0x03D4,
  9139. 0x03DE,
  9140. 0x03E8
  9141. }
  9142. }
  9143. }
  9144. }
  9145. Local1 = 0x00
  9146. While ((Local1 <= 0x64))
  9147. {
  9148. Local2 = DerefOf (Index (DerefOf (Index (\_SB.PCI0.LPC.EC.BRTD, \BRTN)), Local1))
  9149. Local2 *= 0x03E8
  9150. Divide (Local2, 0xFF, Local2, Local3)
  9151. Index (DerefOf (Index (DerefOf (Index (DerefOf (Index (Local0, 0x06)), 0x03
  9152. )), 0x01)), Local1) = Local3
  9153. Local1++
  9154. }
  9155.  
  9156. Return (Local0)
  9157. }
  9158. }
  9159.  
  9160. Break
  9161. }
  9162.  
  9163. Return (0x80000002)
  9164. }
  9165.  
  9166. Method (NVSB, 1, NotSerialized)
  9167. {
  9168. Name (CNT, 0x00)
  9169. If ((PBCC == 0x01))
  9170. {
  9171. If ((PBMR == 0x00))
  9172. {
  9173. PBMR = 0x02
  9174. If ((PBMR == 0x02))
  9175. {
  9176. While (((PBCC && 0xFF) && (CNT < 0x0A)))
  9177. {
  9178. CNT++
  9179. Sleep (0x01)
  9180. }
  9181.  
  9182. If (((PBCR & 0x02) == 0x00))
  9183. {
  9184. Local0 = (Arg0 * 0x03E8)
  9185. Divide (Local0, 0xFF, Local1, Local2)
  9186. Local2 <<= 0x08
  9187. PBDI = Local2
  9188. PBCR = 0x86100000
  9189. }
  9190.  
  9191. PBMR = 0x00
  9192. Return (0x01)
  9193. }
  9194. }
  9195. }
  9196.  
  9197. Return (0x00)
  9198. }
  9199. }
  9200.  
  9201. OperationRegion (PEGC, PCI_Config, 0x00, 0x0100)
  9202. Field (PEGC, DWordAcc, NoLock, Preserve)
  9203. {
  9204. Offset (0xEC),
  9205. GMGP, 1,
  9206. HPGP, 1,
  9207. PMGP, 1
  9208. }
  9209. }
  9210.  
  9211. Device (B0D3)
  9212. {
  9213. Name (_ADR, 0x00030000) // _ADR: Address
  9214. }
  9215.  
  9216. Device (IGBE)
  9217. {
  9218. Name (_ADR, 0x00190000) // _ADR: Address
  9219. Name (_S3D, 0x03) // _S3D: S3 Device State
  9220. Name (RID, 0x00)
  9221. Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
  9222. {
  9223. 0x6D,
  9224. 0x04
  9225. })
  9226. }
  9227.  
  9228. Name (LTRE, 0x00)
  9229. Name (OBFF, 0x00)
  9230. Device (EXP1)
  9231. {
  9232. Name (_ADR, 0x001C0000) // _ADR: Address
  9233. Name (RID, 0x00)
  9234. OperationRegion (PECS, PCI_Config, 0x00, 0x0100)
  9235. Field (PECS, DWordAcc, NoLock, Preserve)
  9236. {
  9237. Offset (0x62),
  9238. PS, 1,
  9239. PP, 1,
  9240. Offset (0xDB),
  9241. , 7,
  9242. PMCE, 1,
  9243. Offset (0xDF),
  9244. , 7,
  9245. PMCS, 1
  9246. }
  9247.  
  9248. Name (LPRT, Package (0x04)
  9249. {
  9250. Package (0x04)
  9251. {
  9252. 0xFFFF,
  9253. 0x00,
  9254. \_SB.LNKA,
  9255. 0x00
  9256. },
  9257.  
  9258. Package (0x04)
  9259. {
  9260. 0xFFFF,
  9261. 0x01,
  9262. \_SB.LNKB,
  9263. 0x00
  9264. },
  9265.  
  9266. Package (0x04)
  9267. {
  9268. 0xFFFF,
  9269. 0x02,
  9270. \_SB.LNKC,
  9271. 0x00
  9272. },
  9273.  
  9274. Package (0x04)
  9275. {
  9276. 0xFFFF,
  9277. 0x03,
  9278. \_SB.LNKD,
  9279. 0x00
  9280. }
  9281. })
  9282. Name (APRT, Package (0x04)
  9283. {
  9284. Package (0x04)
  9285. {
  9286. 0xFFFF,
  9287. 0x00,
  9288. 0x00,
  9289. 0x10
  9290. },
  9291.  
  9292. Package (0x04)
  9293. {
  9294. 0xFFFF,
  9295. 0x01,
  9296. 0x00,
  9297. 0x11
  9298. },
  9299.  
  9300. Package (0x04)
  9301. {
  9302. 0xFFFF,
  9303. 0x02,
  9304. 0x00,
  9305. 0x12
  9306. },
  9307.  
  9308. Package (0x04)
  9309. {
  9310. 0xFFFF,
  9311. 0x03,
  9312. 0x00,
  9313. 0x13
  9314. }
  9315. })
  9316. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  9317. {
  9318. If (\GPIC)
  9319. {
  9320. Return (APRT) /* \_SB_.PCI0.EXP1.APRT */
  9321. }
  9322. Else
  9323. {
  9324. Return (LPRT) /* \_SB_.PCI0.EXP1.LPRT */
  9325. }
  9326. }
  9327.  
  9328. Name (OPTS, 0x00)
  9329. Name (LTRV, Package (0x04)
  9330. {
  9331. 0x00,
  9332. 0x00,
  9333. 0x00,
  9334. 0x00
  9335. })
  9336. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  9337. {
  9338. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  9339. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  9340. While (One)
  9341. {
  9342. _T_0 = ToInteger (Arg0)
  9343. If ((_T_0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
  9344. {
  9345. While (One)
  9346. {
  9347. _T_1 = ToInteger (Arg2)
  9348. If ((_T_1 == 0x00))
  9349. {
  9350. If ((Arg1 == 0x02))
  9351. {
  9352. OPTS = 0x01
  9353. If (LTRE)
  9354. {
  9355. OPTS |= 0x40
  9356. }
  9357.  
  9358. If (OBFF)
  9359. {
  9360. OPTS |= 0x10
  9361. }
  9362.  
  9363. Return (OPTS) /* \_SB_.PCI0.EXP1.OPTS */
  9364. }
  9365. Else
  9366. {
  9367. Return (0x00)
  9368. }
  9369. }
  9370. Else
  9371. {
  9372. If ((_T_1 == 0x04))
  9373. {
  9374. If ((Arg1 == 0x02))
  9375. {
  9376. If (OBFF)
  9377. {
  9378. Return (Buffer (0x10)
  9379. {
  9380. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  9381. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00 /* ........ */
  9382. })
  9383. }
  9384. Else
  9385. {
  9386. Return (Buffer (0x10)
  9387. {
  9388. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  9389. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  9390. })
  9391. }
  9392. }
  9393. }
  9394. Else
  9395. {
  9396. If ((_T_1 == 0x06))
  9397. {
  9398. If ((Arg1 == 0x02))
  9399. {
  9400. If (LTRE)
  9401. {
  9402. Name (MLTR, 0x00)
  9403. MLTR = 0x1003
  9404. Index (LTRV, 0x00) = ((MLTR >> 0x0A) & 0x07)
  9405. Index (LTRV, 0x01) = (MLTR & 0x03FF)
  9406. Index (LTRV, 0x02) = ((MLTR >> 0x0A) & 0x07)
  9407. Index (LTRV, 0x03) = (MLTR & 0x03FF)
  9408. Return (LTRV) /* \_SB_.PCI0.EXP1.LTRV */
  9409. }
  9410. Else
  9411. {
  9412. Return (0x00)
  9413. }
  9414. }
  9415. }
  9416. }
  9417. }
  9418.  
  9419. Break
  9420. }
  9421. }
  9422.  
  9423. Break
  9424. }
  9425.  
  9426. Return (Buffer (0x01)
  9427. {
  9428. 0x00 /* . */
  9429. })
  9430. }
  9431. }
  9432.  
  9433. Device (EXP2)
  9434. {
  9435. Name (_ADR, 0x001C0001) // _ADR: Address
  9436. Name (RID, 0x00)
  9437. OperationRegion (PECS, PCI_Config, 0x00, 0x0100)
  9438. Field (PECS, DWordAcc, NoLock, Preserve)
  9439. {
  9440. Offset (0x62),
  9441. PS, 1,
  9442. PP, 1,
  9443. Offset (0xDB),
  9444. , 7,
  9445. PMCE, 1,
  9446. Offset (0xDF),
  9447. , 7,
  9448. PMCS, 1
  9449. }
  9450.  
  9451. Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
  9452. {
  9453. 0x69,
  9454. 0x04
  9455. })
  9456. Name (LPRT, Package (0x04)
  9457. {
  9458. Package (0x04)
  9459. {
  9460. 0xFFFF,
  9461. 0x00,
  9462. \_SB.LNKB,
  9463. 0x00
  9464. },
  9465.  
  9466. Package (0x04)
  9467. {
  9468. 0xFFFF,
  9469. 0x01,
  9470. \_SB.LNKC,
  9471. 0x00
  9472. },
  9473.  
  9474. Package (0x04)
  9475. {
  9476. 0xFFFF,
  9477. 0x02,
  9478. \_SB.LNKD,
  9479. 0x00
  9480. },
  9481.  
  9482. Package (0x04)
  9483. {
  9484. 0xFFFF,
  9485. 0x03,
  9486. \_SB.LNKA,
  9487. 0x00
  9488. }
  9489. })
  9490. Name (APRT, Package (0x04)
  9491. {
  9492. Package (0x04)
  9493. {
  9494. 0xFFFF,
  9495. 0x00,
  9496. 0x00,
  9497. 0x11
  9498. },
  9499.  
  9500. Package (0x04)
  9501. {
  9502. 0xFFFF,
  9503. 0x01,
  9504. 0x00,
  9505. 0x12
  9506. },
  9507.  
  9508. Package (0x04)
  9509. {
  9510. 0xFFFF,
  9511. 0x02,
  9512. 0x00,
  9513. 0x13
  9514. },
  9515.  
  9516. Package (0x04)
  9517. {
  9518. 0xFFFF,
  9519. 0x03,
  9520. 0x00,
  9521. 0x10
  9522. }
  9523. })
  9524. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  9525. {
  9526. If (\GPIC)
  9527. {
  9528. Return (APRT) /* \_SB_.PCI0.EXP2.APRT */
  9529. }
  9530. Else
  9531. {
  9532. Return (LPRT) /* \_SB_.PCI0.EXP2.LPRT */
  9533. }
  9534. }
  9535.  
  9536. Name (OPTS, 0x00)
  9537. Name (LTRV, Package (0x04)
  9538. {
  9539. 0x00,
  9540. 0x00,
  9541. 0x00,
  9542. 0x00
  9543. })
  9544. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  9545. {
  9546. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  9547. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  9548. While (One)
  9549. {
  9550. _T_0 = ToInteger (Arg0)
  9551. If ((_T_0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
  9552. {
  9553. While (One)
  9554. {
  9555. _T_1 = ToInteger (Arg2)
  9556. If ((_T_1 == 0x00))
  9557. {
  9558. If ((Arg1 == 0x02))
  9559. {
  9560. OPTS = 0x01
  9561. If (LTRE)
  9562. {
  9563. OPTS |= 0x40
  9564. }
  9565.  
  9566. If (OBFF)
  9567. {
  9568. OPTS |= 0x10
  9569. }
  9570.  
  9571. Return (OPTS) /* \_SB_.PCI0.EXP2.OPTS */
  9572. }
  9573. Else
  9574. {
  9575. Return (0x00)
  9576. }
  9577. }
  9578. Else
  9579. {
  9580. If ((_T_1 == 0x04))
  9581. {
  9582. If ((Arg1 == 0x02))
  9583. {
  9584. If (OBFF)
  9585. {
  9586. Return (Buffer (0x10)
  9587. {
  9588. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  9589. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00 /* ........ */
  9590. })
  9591. }
  9592. Else
  9593. {
  9594. Return (Buffer (0x10)
  9595. {
  9596. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  9597. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  9598. })
  9599. }
  9600. }
  9601. }
  9602. Else
  9603. {
  9604. If ((_T_1 == 0x06))
  9605. {
  9606. If ((Arg1 == 0x02))
  9607. {
  9608. If (LTRE)
  9609. {
  9610. Name (MLTR, 0x00)
  9611. MLTR = 0x1003
  9612. Index (LTRV, 0x00) = ((MLTR >> 0x0A) & 0x07)
  9613. Index (LTRV, 0x01) = (MLTR & 0x03FF)
  9614. Index (LTRV, 0x02) = ((MLTR >> 0x0A) & 0x07)
  9615. Index (LTRV, 0x03) = (MLTR & 0x03FF)
  9616. Return (LTRV) /* \_SB_.PCI0.EXP2.LTRV */
  9617. }
  9618. Else
  9619. {
  9620. Return (0x00)
  9621. }
  9622. }
  9623. }
  9624. }
  9625. }
  9626.  
  9627. Break
  9628. }
  9629. }
  9630.  
  9631. Break
  9632. }
  9633.  
  9634. Return (Buffer (0x01)
  9635. {
  9636. 0x00 /* . */
  9637. })
  9638. }
  9639. }
  9640.  
  9641. Device (EXP3)
  9642. {
  9643. Name (_ADR, 0x001C0002) // _ADR: Address
  9644. Name (RID, 0x00)
  9645. OperationRegion (PECS, PCI_Config, 0x00, 0x0100)
  9646. Field (PECS, DWordAcc, NoLock, Preserve)
  9647. {
  9648. Offset (0x62),
  9649. PS, 1,
  9650. PP, 1,
  9651. Offset (0xDB),
  9652. , 7,
  9653. PMCE, 1,
  9654. Offset (0xDF),
  9655. , 7,
  9656. PMCS, 1
  9657. }
  9658.  
  9659. Name (LPRT, Package (0x04)
  9660. {
  9661. Package (0x04)
  9662. {
  9663. 0xFFFF,
  9664. 0x00,
  9665. \_SB.LNKC,
  9666. 0x00
  9667. },
  9668.  
  9669. Package (0x04)
  9670. {
  9671. 0xFFFF,
  9672. 0x01,
  9673. \_SB.LNKD,
  9674. 0x00
  9675. },
  9676.  
  9677. Package (0x04)
  9678. {
  9679. 0xFFFF,
  9680. 0x02,
  9681. \_SB.LNKA,
  9682. 0x00
  9683. },
  9684.  
  9685. Package (0x04)
  9686. {
  9687. 0xFFFF,
  9688. 0x03,
  9689. \_SB.LNKB,
  9690. 0x00
  9691. }
  9692. })
  9693. Name (APRT, Package (0x04)
  9694. {
  9695. Package (0x04)
  9696. {
  9697. 0xFFFF,
  9698. 0x00,
  9699. 0x00,
  9700. 0x12
  9701. },
  9702.  
  9703. Package (0x04)
  9704. {
  9705. 0xFFFF,
  9706. 0x01,
  9707. 0x00,
  9708. 0x13
  9709. },
  9710.  
  9711. Package (0x04)
  9712. {
  9713. 0xFFFF,
  9714. 0x02,
  9715. 0x00,
  9716. 0x10
  9717. },
  9718.  
  9719. Package (0x04)
  9720. {
  9721. 0xFFFF,
  9722. 0x03,
  9723. 0x00,
  9724. 0x11
  9725. }
  9726. })
  9727. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  9728. {
  9729. If (\GPIC)
  9730. {
  9731. Return (APRT) /* \_SB_.PCI0.EXP3.APRT */
  9732. }
  9733. Else
  9734. {
  9735. Return (LPRT) /* \_SB_.PCI0.EXP3.LPRT */
  9736. }
  9737. }
  9738.  
  9739. Name (OPTS, 0x00)
  9740. Name (LTRV, Package (0x04)
  9741. {
  9742. 0x00,
  9743. 0x00,
  9744. 0x00,
  9745. 0x00
  9746. })
  9747. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  9748. {
  9749. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  9750. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  9751. While (One)
  9752. {
  9753. _T_0 = ToInteger (Arg0)
  9754. If ((_T_0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
  9755. {
  9756. While (One)
  9757. {
  9758. _T_1 = ToInteger (Arg2)
  9759. If ((_T_1 == 0x00))
  9760. {
  9761. If ((Arg1 == 0x02))
  9762. {
  9763. OPTS = 0x01
  9764. If (LTRE)
  9765. {
  9766. OPTS |= 0x40
  9767. }
  9768.  
  9769. If (OBFF)
  9770. {
  9771. OPTS |= 0x10
  9772. }
  9773.  
  9774. Return (OPTS) /* \_SB_.PCI0.EXP3.OPTS */
  9775. }
  9776. Else
  9777. {
  9778. Return (0x00)
  9779. }
  9780. }
  9781. Else
  9782. {
  9783. If ((_T_1 == 0x04))
  9784. {
  9785. If ((Arg1 == 0x02))
  9786. {
  9787. If (OBFF)
  9788. {
  9789. Return (Buffer (0x10)
  9790. {
  9791. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  9792. /* 0008 */ 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00 /* ........ */
  9793. })
  9794. }
  9795. Else
  9796. {
  9797. Return (Buffer (0x10)
  9798. {
  9799. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  9800. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  9801. })
  9802. }
  9803. }
  9804. }
  9805. Else
  9806. {
  9807. If ((_T_1 == 0x06))
  9808. {
  9809. If ((Arg1 == 0x02))
  9810. {
  9811. If (LTRE)
  9812. {
  9813. Name (MLTR, 0x00)
  9814. MLTR = 0x1003
  9815. Index (LTRV, 0x00) = ((MLTR >> 0x0A) & 0x07)
  9816. Index (LTRV, 0x01) = (MLTR & 0x03FF)
  9817. Index (LTRV, 0x02) = ((MLTR >> 0x0A) & 0x07)
  9818. Index (LTRV, 0x03) = (MLTR & 0x03FF)
  9819. Return (LTRV) /* \_SB_.PCI0.EXP3.LTRV */
  9820. }
  9821. Else
  9822. {
  9823. Return (0x00)
  9824. }
  9825. }
  9826. }
  9827. }
  9828. }
  9829.  
  9830. Break
  9831. }
  9832. }
  9833.  
  9834. Break
  9835. }
  9836.  
  9837. Return (Buffer (0x01)
  9838. {
  9839. 0x00 /* . */
  9840. })
  9841. }
  9842. }
  9843.  
  9844. Device (SAT1)
  9845. {
  9846. Name (_ADR, 0x001F0002) // _ADR: Address
  9847. Name (_S3D, 0x03) // _S3D: S3 Device State
  9848. Name (RID, 0x00)
  9849. }
  9850.  
  9851. Device (SAT2)
  9852. {
  9853. Name (_ADR, 0x001F0005) // _ADR: Address
  9854. Name (_S3D, 0x03) // _S3D: S3 Device State
  9855. Name (RID, 0x00)
  9856. }
  9857.  
  9858. Device (SMBU)
  9859. {
  9860. Name (_ADR, 0x001F0003) // _ADR: Address
  9861. Name (_S3D, 0x03) // _S3D: S3 Device State
  9862. Name (RID, 0x00)
  9863. Device (NFC)
  9864. {
  9865. Name (_HID, EisaId ("BCM2F1A")) // _HID: Hardware ID
  9866. Name (_CID, EisaId ("BCM2F1A")) // _CID: Compatible ID
  9867. Name (_UID, 0x00) // _UID: Unique ID
  9868. Method (_STA, 0, NotSerialized) // _STA: Status
  9869. {
  9870. If ((\_SB.PCI0.LPC.NFCD || \NFCF))
  9871. {
  9872. Return (0x00)
  9873. }
  9874. Else
  9875. {
  9876. Return (0x0F)
  9877. }
  9878. }
  9879.  
  9880. Method (GPEN, 0, NotSerialized)
  9881. {
  9882. \_GPE.GPFG = 0x01
  9883. }
  9884.  
  9885. Method (SNFC, 1, NotSerialized)
  9886. {
  9887. If (Arg0)
  9888. {
  9889. \_SB.PCI0.LPC.NFCP = 0x01
  9890. }
  9891. Else
  9892. {
  9893. \_SB.PCI0.LPC.NFCP = 0x00
  9894. }
  9895. }
  9896. }
  9897. }
  9898.  
  9899. Device (XHCI)
  9900. {
  9901. Name (_ADR, 0x00140000) // _ADR: Address
  9902. Name (_S3D, 0x03) // _S3D: S3 Device State
  9903. Name (RID, 0x00)
  9904. OperationRegion (XHCS, PCI_Config, 0x00, 0x0100)
  9905. Field (XHCS, DWordAcc, NoLock, Preserve)
  9906. {
  9907. Offset (0x10),
  9908. MEMB, 32,
  9909. Offset (0x40),
  9910. , 11,
  9911. SWAI, 1,
  9912. Offset (0x44),
  9913. , 12,
  9914. SAIP, 2,
  9915. Offset (0x48),
  9916. Offset (0x74),
  9917. Offset (0x75),
  9918. PMEE, 1,
  9919. , 6,
  9920. PMES, 1,
  9921. Offset (0xD0),
  9922. PR2, 32,
  9923. PR2M, 32,
  9924. PR3, 32,
  9925. PR3M, 32
  9926. }
  9927.  
  9928. Name (XRST, Zero)
  9929. OperationRegion (XHCM, SystemMemory, (MEMB & 0xFFFF0000), 0x0600)
  9930. Field (XHCM, DWordAcc, NoLock, Preserve)
  9931. {
  9932. Offset (0x02),
  9933. XHCV, 16,
  9934. Offset (0x480),
  9935. HP01, 1,
  9936. Offset (0x490),
  9937. HP02, 1,
  9938. Offset (0x4A0),
  9939. HP03, 1,
  9940. Offset (0x4E0),
  9941. HP07, 1,
  9942. Offset (0x510),
  9943. SP00, 1,
  9944. Offset (0x520),
  9945. SP01, 1,
  9946. Offset (0x530),
  9947. SP02, 1
  9948. }
  9949.  
  9950. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  9951. {
  9952. \_SB.PCI0.LPC.EC.PUBS
  9953. })
  9954. Name (_PR1, Package (0x01) // _PR1: Power Resources for D1
  9955. {
  9956. \_SB.PCI0.LPC.EC.PUBS
  9957. })
  9958. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  9959. {
  9960. \_SB.PCI0.LPC.EC.PUBS
  9961. })
  9962. Name (_PRW, Package (0x03) // _PRW: Power Resources for Wake
  9963. {
  9964. 0x6D,
  9965. 0x03,
  9966. \_SB.PCI0.LPC.EC.PUBS
  9967. })
  9968. Method (CUID, 1, Serialized)
  9969. {
  9970. If ((Arg0 == ToUUID ("7c9512a9-1705-4cb4-af7d-506a2423ab71")))
  9971. {
  9972. Return (0x01)
  9973. }
  9974.  
  9975. Return (0x00)
  9976. }
  9977.  
  9978. Method (POSC, 3, Serialized)
  9979. {
  9980. CreateDWordField (Arg2, 0x00, CDW1)
  9981. CreateDWordField (Arg2, 0x08, CDW3)
  9982. If ((\XHCI == 0x00))
  9983. {
  9984. CDW1 |= 0x02
  9985. \_SB.PCI0.LPC.XUSB = 0x00
  9986. XRST = 0x00
  9987. }
  9988.  
  9989. If (!(CDW1 & 0x01))
  9990. {
  9991. If ((CDW3 & 0x01))
  9992. {
  9993. ESEL ()
  9994. }
  9995. Else
  9996. {
  9997. If (0x00)
  9998. {
  9999. If ((Arg0 > 0x01))
  10000. {
  10001. SXHC ()
  10002. }
  10003. Else
  10004. {
  10005. CDW1 |= 0x0A
  10006. }
  10007. }
  10008. Else
  10009. {
  10010. If ((Arg0 > 0x02))
  10011. {
  10012. SXHC ()
  10013. }
  10014. Else
  10015. {
  10016. CDW1 |= 0x0A
  10017. }
  10018. }
  10019. }
  10020.  
  10021. Return (Arg2)
  10022. }
  10023.  
  10024. If ((!(CDW1 & 0x01) && ((\XHCI == 0x02) || (
  10025. \XHCI == 0x03))))
  10026. {
  10027. SXHC ()
  10028. }
  10029.  
  10030. Return (Arg2)
  10031. }
  10032.  
  10033. Method (ESEL, 0, Serialized)
  10034. {
  10035. If (((\XHCI == 0x02) || (\XHCI == 0x03)))
  10036. {
  10037. PR3 &= 0xFFFFFFC0
  10038. PR2 &= 0xFFFF8000
  10039. \_SB.PCI0.LPC.XUSB = 0x00
  10040. XRST = 0x00
  10041. }
  10042. }
  10043.  
  10044. Method (SXHC, 0, NotSerialized)
  10045. {
  10046. \_SB.PCI0.LPC.XUSB = 0x01
  10047. XRST = 0x01
  10048. Local0 = 0x00
  10049. Local0 = (PR3 & 0xFFFFFFC0)
  10050. PR3 = (Local0 | PR3M) /* \_SB_.PCI0.XHCI.PR3M */
  10051. Local0 = 0x00
  10052. Local0 = (PR2 & 0xFFFF8000)
  10053. PR2 = (Local0 | PR2M) /* \_SB_.PCI0.XHCI.PR2M */
  10054. \_SB.PCI0.LPC.XUSB = 0x01
  10055. \USBR = 0x01
  10056. }
  10057.  
  10058. Method (XHPS, 0, NotSerialized)
  10059. {
  10060. If ((\_SB.PCI0.XHCI.XHCV != 0xFFFF))
  10061. {
  10062. \USBC = 0x01
  10063. \USBC |= (\_SB.PCI0.XHCI.HP01 << 0x01)
  10064. \USBC |= (\_SB.PCI0.XHCI.HP02 << 0x02)
  10065. \USBC |= (\_SB.PCI0.XHCI.HP03 << 0x03)
  10066. \USBC |= (\_SB.PCI0.XHCI.HP07 << 0x04)
  10067. \USBC |= (\_SB.PCI0.XHCI.SP00 << 0x05)
  10068. \USBC |= (\_SB.PCI0.XHCI.SP01 << 0x06)
  10069. \USBC |= (\_SB.PCI0.XHCI.SP02 << 0x07)
  10070. }
  10071. }
  10072.  
  10073. Method (_INI, 0, NotSerialized) // _INI: Initialize
  10074. {
  10075. If (\WIN8)
  10076. {
  10077. SXHC ()
  10078. }
  10079. }
  10080.  
  10081. Name (PEBS, 0xF8000000)
  10082. OperationRegion (XHCB, SystemMemory, (PEBS + 0x000A0000), 0x0100)
  10083. Field (XHCB, DWordAcc, Lock, Preserve)
  10084. {
  10085. DVID, 16,
  10086. Offset (0x04),
  10087. PDBM, 16,
  10088. Offset (0x10),
  10089. MBA1, 32,
  10090. Offset (0x74),
  10091. D0D3, 32,
  10092. Offset (0xB0),
  10093. , 13,
  10094. MB13, 2,
  10095. Offset (0xB4)
  10096. }
  10097.  
  10098. Method (_S0W, 0, NotSerialized) // _S0W: S0 Device Wake State
  10099. {
  10100. Return (0x03)
  10101. }
  10102.  
  10103. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  10104. {
  10105. If ((\_SB.PCI0.XHCI.DVID == 0xFFFF))
  10106. {
  10107. Return (Zero)
  10108. }
  10109.  
  10110. Local6 = 0x00
  10111. Local7 = \_SB.PCI0.XHCI.MBA1
  10112. Local7 &= 0xFFFFFFF0
  10113. If (((Local7 == 0x00) || (Local7 == 0xFFFFFFF0)))
  10114. {
  10115. \_SB.PCI0.XHCI.MBA1 = 0xFEAF0000
  10116. Local6 = 0x01
  10117. }
  10118.  
  10119. Local3 = 0x00
  10120. Local4 = \_SB.PCI0.XHCI.PDBM
  10121. If (((Local4 & 0xFF) == 0x00))
  10122. {
  10123. Local0 = \_SB.PCI0.XHCI.PDBM
  10124. Local0 |= 0x06
  10125. \_SB.PCI0.XHCI.PDBM = Local0
  10126. Local3 = 0x01
  10127. }
  10128.  
  10129. Local0 = \_SB.PCI0.XHCI.MBA1
  10130. Local0 &= 0xFFFFFFF0
  10131. Local0 = \XWMB
  10132. OperationRegion (MCA1, SystemMemory, Local0, 0x9000)
  10133. Field (MCA1, DWordAcc, Lock, Preserve)
  10134. {
  10135. Offset (0x510),
  10136. P141, 14,
  10137. , 17,
  10138. WPR1, 1,
  10139. Offset (0x520),
  10140. P142, 14,
  10141. , 17,
  10142. WPR2, 1,
  10143. Offset (0x530),
  10144. P143, 14,
  10145. , 17,
  10146. WPR3, 1,
  10147. Offset (0x540),
  10148. P144, 14,
  10149. , 17,
  10150. WPR4, 1,
  10151. Offset (0x80E0),
  10152. , 15,
  10153. AX15, 1,
  10154. Offset (0x8154),
  10155. , 31,
  10156. CLK2, 1,
  10157. Offset (0x816C),
  10158. , 2,
  10159. CLK0, 1,
  10160. , 11,
  10161. CLK1, 1,
  10162. Offset (0x8170)
  10163. }
  10164.  
  10165. OperationRegion (MCA2, SystemMemory, Local0, 0x9000)
  10166. Field (MCA2, DWordAcc, Lock, Preserve)
  10167. {
  10168. Offset (0x510),
  10169. , 4,
  10170. WIT1, 1,
  10171. , 12,
  10172. A171, 7,
  10173. Offset (0x520),
  10174. , 4,
  10175. WIT2, 1,
  10176. , 12,
  10177. A172, 7,
  10178. Offset (0x530),
  10179. , 4,
  10180. WIT3, 1,
  10181. , 12,
  10182. A173, 7,
  10183. Offset (0x540),
  10184. , 4,
  10185. WIT4, 1,
  10186. , 12,
  10187. A174, 7
  10188. }
  10189.  
  10190. \_SB.PCI0.XHCI.MB13 = 0x00
  10191. Local5 = \_SB.PCI0.XHCI.D0D3
  10192. Local5 &= 0x03
  10193. If ((Local5 == 0x03))
  10194. {
  10195. Local5 = \_SB.PCI0.XHCI.D0D3
  10196. Local5 &= 0xFFFFFFFC
  10197. \_SB.PCI0.XHCI.D0D3 = Local5
  10198. CLK0 = 0x00
  10199. CLK1 = 0x00
  10200. CLK2 = 0x01
  10201. While ((((P141 == 0x02E0) || (P142 == 0x02E0)) || ((P143 ==
  10202. 0x02E0) || (P144 == 0x02E0)))) {}
  10203. If ((P141 == 0x02A0))
  10204. {
  10205. WPR1 = 0x01
  10206. While (((A171 & 0x04) == 0x00)) {}
  10207. A171 = 0x7F
  10208. }
  10209.  
  10210. If ((P142 == 0x02A0))
  10211. {
  10212. WPR2 = 0x01
  10213. While (((A172 & 0x04) == 0x00)) {}
  10214. A172 = 0x7F
  10215. }
  10216.  
  10217. If ((P143 == 0x02A0))
  10218. {
  10219. WPR3 = 0x01
  10220. While (((A173 & 0x04) == 0x00)) {}
  10221. A173 = 0x7F
  10222. }
  10223.  
  10224. If ((P144 == 0x02A0))
  10225. {
  10226. WPR4 = 0x01
  10227. While (((A174 & 0x04) == 0x00)) {}
  10228. A174 = 0x7F
  10229. }
  10230.  
  10231. AX15 = 0x01
  10232. Local5 = \_SB.PCI0.XHCI.D0D3
  10233. Local5 |= 0x03
  10234. \_SB.PCI0.XHCI.D0D3 = Local5
  10235. }
  10236. Else
  10237. {
  10238. CLK0 = 0x00
  10239. CLK1 = 0x00
  10240. CLK2 = 0x01
  10241. While ((((P141 == 0x02E0) || (P142 == 0x02E0)) || ((P143 ==
  10242. 0x02E0) || (P144 == 0x02E0)))) {}
  10243. If ((P141 == 0x02A0))
  10244. {
  10245. WPR1 = 0x01
  10246. While (((A171 & 0x04) == 0x00)) {}
  10247. A171 = 0x7F
  10248. }
  10249.  
  10250. If ((P142 == 0x02A0))
  10251. {
  10252. WPR2 = 0x01
  10253. While (((A172 & 0x04) == 0x00)) {}
  10254. A172 = 0x7F
  10255. }
  10256.  
  10257. If ((P143 == 0x02A0))
  10258. {
  10259. WPR3 = 0x01
  10260. While (((A173 & 0x04) == 0x00)) {}
  10261. A173 = 0x7F
  10262. }
  10263.  
  10264. If ((P144 == 0x02A0))
  10265. {
  10266. WPR4 = 0x01
  10267. While (((A174 & 0x04) == 0x00)) {}
  10268. A174 = 0x7F
  10269. }
  10270.  
  10271. AX15 = 0x01
  10272. }
  10273.  
  10274. ^SWAI = 0x00
  10275. ^SAIP = 0x00
  10276. If ((Local3 == 0x01))
  10277. {
  10278. \_SB.PCI0.XHCI.PDBM = Local4
  10279. }
  10280.  
  10281. If ((Local6 == 0x01))
  10282. {
  10283. \_SB.PCI0.XHCI.MBA1 = Local7
  10284. }
  10285. }
  10286.  
  10287. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  10288. {
  10289. If ((\_SB.PCI0.XHCI.DVID == 0xFFFF))
  10290. {
  10291. Return (Zero)
  10292. }
  10293.  
  10294. \_SB.PCI0.XHCI.PMES = 0x01
  10295. \_SB.PCI0.XHCI.PMEE = 0x01
  10296. Local1 = 0x00
  10297. Local2 = \_SB.PCI0.XHCI.MBA1
  10298. Local2 &= 0xFFFFFFF0
  10299. If (((Local2 == 0x00) || (Local2 == 0xFFFFFFF0)))
  10300. {
  10301. \_SB.PCI0.XHCI.MBA1 = 0xFEAF0000
  10302. Local1 = 0x01
  10303. }
  10304.  
  10305. Local3 = 0x00
  10306. Local4 = \_SB.PCI0.XHCI.PDBM
  10307. If (((Local4 & 0xFF) == 0x00))
  10308. {
  10309. Local0 = \_SB.PCI0.XHCI.PDBM
  10310. Local0 |= 0x06
  10311. \_SB.PCI0.XHCI.PDBM = Local0
  10312. Local3 = 0x01
  10313. }
  10314.  
  10315. Local0 = \_SB.PCI0.XHCI.MBA1
  10316. Local0 &= 0xFFFFFFF0
  10317. Local0 = \XWMB
  10318. OperationRegion (MCA1, SystemMemory, Local0, 0x9000)
  10319. Field (MCA1, DWordAcc, Lock, Preserve)
  10320. {
  10321. Offset (0x80E0),
  10322. , 15,
  10323. AX15, 1,
  10324. Offset (0x8154),
  10325. , 31,
  10326. CLK2, 1,
  10327. Offset (0x816C),
  10328. , 2,
  10329. CLK0, 1,
  10330. , 11,
  10331. CLK1, 1,
  10332. Offset (0x8170)
  10333. }
  10334.  
  10335. OperationRegion (MCA2, SystemMemory, Local0, 0x9000)
  10336. Field (MCA2, DWordAcc, Lock, Preserve)
  10337. {
  10338. Offset (0x510),
  10339. , 4,
  10340. WIT1, 1,
  10341. , 12,
  10342. A171, 7,
  10343. Offset (0x520),
  10344. , 4,
  10345. WIT2, 1,
  10346. , 12,
  10347. A172, 7,
  10348. Offset (0x530),
  10349. , 4,
  10350. WIT3, 1,
  10351. , 12,
  10352. A173, 7,
  10353. Offset (0x540),
  10354. , 4,
  10355. WIT4, 1,
  10356. , 12,
  10357. A174, 7
  10358. }
  10359.  
  10360. \_SB.PCI0.XHCI.MB13 = 0x03
  10361. Local0 = \_SB.PCI0.XHCI.D0D3
  10362. Local0 &= 0xFFFFFFFC
  10363. \_SB.PCI0.XHCI.D0D3 = Local0
  10364. CLK0 = 0x01
  10365. CLK1 = 0x01
  10366. CLK2 = 0x00
  10367. AX15 = 0x00
  10368. ^SWAI = 0x01
  10369. ^SAIP = 0x01
  10370. Local0 = \_SB.PCI0.XHCI.D0D3
  10371. Local0 |= 0x03
  10372. \_SB.PCI0.XHCI.D0D3 = Local0
  10373. If ((Local1 == 0x01))
  10374. {
  10375. \_SB.PCI0.XHCI.MBA1 = Local2
  10376. }
  10377.  
  10378. If ((Local3 == 0x01))
  10379. {
  10380. \_SB.PCI0.XHCI.PDBM = Local4
  10381. }
  10382. }
  10383.  
  10384. Device (URTH)
  10385. {
  10386. Name (_ADR, 0x00) // _ADR: Address
  10387. Device (HSP0)
  10388. {
  10389. Name (_ADR, 0x01) // _ADR: Address
  10390. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10391. {
  10392. Name (UPCP, Package (0x04)
  10393. {
  10394. 0x00,
  10395. 0x00,
  10396. 0x00,
  10397. 0x00
  10398. })
  10399. CopyObject (\UPC0, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP0._UPC.UPCP */
  10400. If (!(PR2 & 0x01))
  10401. {
  10402. Index (UPCP, 0x00) = 0x00
  10403. }
  10404.  
  10405. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP0._UPC.UPCP */
  10406. }
  10407.  
  10408. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10409. {
  10410. \_SB.PCI0.XHCI.XHPS ()
  10411. Name (PLDP, Buffer (0x10) {})
  10412. PLDP = \PLD0
  10413. CreateBitField (PLDP, 0x40, VIS)
  10414. If (!(PR2 & 0x01))
  10415. {
  10416. VIS &= 0x00
  10417. }
  10418.  
  10419. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP0._PLD.PLDP */
  10420. }
  10421. }
  10422.  
  10423. Device (HSP1)
  10424. {
  10425. Name (_ADR, 0x02) // _ADR: Address
  10426. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10427. {
  10428. Name (UPCP, Package (0x04)
  10429. {
  10430. 0x00,
  10431. 0x00,
  10432. 0x00,
  10433. 0x00
  10434. })
  10435. CopyObject (\UPC1, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP1._UPC.UPCP */
  10436. If (!(PR2 & 0x02))
  10437. {
  10438. Index (UPCP, 0x00) = 0x00
  10439. }
  10440.  
  10441. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP1._UPC.UPCP */
  10442. }
  10443.  
  10444. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10445. {
  10446. \_SB.PCI0.XHCI.XHPS ()
  10447. Name (PLDP, Buffer (0x10) {})
  10448. PLDP = \PLD1
  10449. CreateBitField (PLDP, 0x40, VIS)
  10450. If (!(PR2 & 0x02))
  10451. {
  10452. VIS &= 0x00
  10453. }
  10454.  
  10455. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP1._PLD.PLDP */
  10456. }
  10457. }
  10458.  
  10459. Device (HSP2)
  10460. {
  10461. Name (_ADR, 0x03) // _ADR: Address
  10462. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10463. {
  10464. Name (UPCP, Package (0x04)
  10465. {
  10466. 0x00,
  10467. 0x00,
  10468. 0x00,
  10469. 0x00
  10470. })
  10471. CopyObject (\UPC2, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP2._UPC.UPCP */
  10472. If (!(PR2 & 0x04))
  10473. {
  10474. Index (UPCP, 0x00) = 0x00
  10475. }
  10476.  
  10477. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP2._UPC.UPCP */
  10478. }
  10479.  
  10480. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10481. {
  10482. \_SB.PCI0.XHCI.XHPS ()
  10483. Name (PLDP, Buffer (0x10) {})
  10484. PLDP = \PLD2
  10485. CreateBitField (PLDP, 0x40, VIS)
  10486. If (!(PR2 & 0x04))
  10487. {
  10488. VIS &= 0x00
  10489. }
  10490.  
  10491. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP2._PLD.PLDP */
  10492. }
  10493. }
  10494.  
  10495. Device (HSP3)
  10496. {
  10497. Name (_ADR, 0x04) // _ADR: Address
  10498. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10499. {
  10500. Name (UPCP, Package (0x04)
  10501. {
  10502. 0x00,
  10503. 0x00,
  10504. 0x00,
  10505. 0x00
  10506. })
  10507. CopyObject (\UPC3, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP3._UPC.UPCP */
  10508. If (!(PR2 & 0x08))
  10509. {
  10510. Index (UPCP, 0x00) = 0x00
  10511. }
  10512.  
  10513. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP3._UPC.UPCP */
  10514. }
  10515.  
  10516. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10517. {
  10518. \_SB.PCI0.XHCI.XHPS ()
  10519. Name (PLDP, Buffer (0x10) {})
  10520. PLDP = \PLD3
  10521. CreateBitField (PLDP, 0x40, VIS)
  10522. If (!(PR2 & 0x08))
  10523. {
  10524. VIS &= 0x00
  10525. }
  10526.  
  10527. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP3._PLD.PLDP */
  10528. }
  10529. }
  10530.  
  10531. Device (HSP4)
  10532. {
  10533. Name (_ADR, 0x05) // _ADR: Address
  10534. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10535. {
  10536. Name (UPCP, Package (0x04)
  10537. {
  10538. 0x00,
  10539. 0x00,
  10540. 0x00,
  10541. 0x00
  10542. })
  10543. CopyObject (\UPC4, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP4._UPC.UPCP */
  10544. If (!(PR2 & 0x10))
  10545. {
  10546. Index (UPCP, 0x00) = 0x00
  10547. }
  10548.  
  10549. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP4._UPC.UPCP */
  10550. }
  10551.  
  10552. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10553. {
  10554. \_SB.PCI0.XHCI.XHPS ()
  10555. Name (PLDP, Buffer (0x10) {})
  10556. PLDP = \PLD4
  10557. CreateBitField (PLDP, 0x40, VIS)
  10558. If (!(PR2 & 0x10))
  10559. {
  10560. VIS &= 0x00
  10561. }
  10562.  
  10563. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP4._PLD.PLDP */
  10564. }
  10565. }
  10566.  
  10567. Device (HSP5)
  10568. {
  10569. Name (_ADR, 0x06) // _ADR: Address
  10570. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10571. {
  10572. Name (UPCP, Package (0x04)
  10573. {
  10574. 0x00,
  10575. 0x00,
  10576. 0x00,
  10577. 0x00
  10578. })
  10579. CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP5._UPC.UPCP */
  10580. If (!(PR2 & 0x20))
  10581. {
  10582. Index (UPCP, 0x00) = 0x00
  10583. }
  10584.  
  10585. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP5._UPC.UPCP */
  10586. }
  10587.  
  10588. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10589. {
  10590. \_SB.PCI0.XHCI.XHPS ()
  10591. Name (PLDP, Buffer (0x10) {})
  10592. PLDP = \PLDI
  10593. CreateBitField (PLDP, 0x40, VIS)
  10594. If (!(PR2 & 0x20))
  10595. {
  10596. VIS &= 0x00
  10597. }
  10598.  
  10599. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP5._PLD.PLDP */
  10600. }
  10601. }
  10602.  
  10603. Device (HSP6)
  10604. {
  10605. Name (_ADR, 0x07) // _ADR: Address
  10606. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10607. {
  10608. Name (UPCP, Package (0x04)
  10609. {
  10610. 0x00,
  10611. 0x00,
  10612. 0x00,
  10613. 0x00
  10614. })
  10615. CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP6._UPC.UPCP */
  10616. If (!(PR2 & 0x40))
  10617. {
  10618. Index (UPCP, 0x00) = 0x00
  10619. }
  10620.  
  10621. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP6._UPC.UPCP */
  10622. }
  10623.  
  10624. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10625. {
  10626. \_SB.PCI0.XHCI.XHPS ()
  10627. Name (PLDP, Buffer (0x10) {})
  10628. PLDP = \PLDI
  10629. CreateBitField (PLDP, 0x40, VIS)
  10630. If (!(PR2 & 0x40))
  10631. {
  10632. VIS &= 0x00
  10633. }
  10634.  
  10635. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP6._PLD.PLDP */
  10636. }
  10637. }
  10638.  
  10639. Device (HSP7)
  10640. {
  10641. Name (_ADR, 0x08) // _ADR: Address
  10642. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10643. {
  10644. Name (UPCP, Package (0x04)
  10645. {
  10646. 0x00,
  10647. 0x00,
  10648. 0x00,
  10649. 0x00
  10650. })
  10651. CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP7._UPC.UPCP */
  10652. If (!(PR2 & 0x80))
  10653. {
  10654. Index (UPCP, 0x00) = 0x00
  10655. }
  10656.  
  10657. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP7._UPC.UPCP */
  10658. }
  10659.  
  10660. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10661. {
  10662. \_SB.PCI0.XHCI.XHPS ()
  10663. Name (PLDP, Buffer (0x10) {})
  10664. PLDP = \PLDI
  10665. CreateBitField (PLDP, 0x40, VIS)
  10666. If (!(PR2 & 0x40))
  10667. {
  10668. VIS &= 0x00
  10669. }
  10670.  
  10671. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP7._PLD.PLDP */
  10672. }
  10673.  
  10674. Device (WCAM)
  10675. {
  10676. Name (_ADR, 0x08) // _ADR: Address
  10677. Method (_STA, 0, NotSerialized) // _STA: Status
  10678. {
  10679. If (\WIN8)
  10680. {
  10681. Return (0x0F)
  10682. }
  10683. Else
  10684. {
  10685. Return (0x00)
  10686. }
  10687. }
  10688.  
  10689. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10690. {
  10691. Return (\UPCI)
  10692. }
  10693.  
  10694. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10695. {
  10696. Return (\PLDC)
  10697. }
  10698. }
  10699. }
  10700.  
  10701. Device (HSP8)
  10702. {
  10703. Name (_ADR, 0x09) // _ADR: Address
  10704. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10705. {
  10706. Name (UPCP, Package (0x04)
  10707. {
  10708. 0x00,
  10709. 0x00,
  10710. 0x00,
  10711. 0x00
  10712. })
  10713. CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP8._UPC.UPCP */
  10714. If (!(PR2 & 0x20))
  10715. {
  10716. Index (UPCP, 0x00) = 0x00
  10717. }
  10718.  
  10719. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.HSP8._UPC.UPCP */
  10720. }
  10721.  
  10722. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10723. {
  10724. \_SB.PCI0.XHCI.XHPS ()
  10725. Name (PLDP, Buffer (0x10) {})
  10726. PLDP = \PLDI
  10727. CreateBitField (PLDP, 0x40, VIS)
  10728. If (!(PR2 & 0x20))
  10729. {
  10730. VIS &= 0x00
  10731. }
  10732.  
  10733. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.HSP8._PLD.PLDP */
  10734. }
  10735. }
  10736.  
  10737. Device (SSP0)
  10738. {
  10739. Name (_ADR, 0x0A) // _ADR: Address
  10740. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10741. {
  10742. Name (UPCP, Package (0x04)
  10743. {
  10744. 0x00,
  10745. 0x00,
  10746. 0x00,
  10747. 0x00
  10748. })
  10749. CopyObject (\UPC0, UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP0._UPC.UPCP */
  10750. If ((!(PR2 & 0x01) || !(PR3 & 0x01)))
  10751. {
  10752. Index (UPCP, 0x00) = 0x00
  10753. }
  10754.  
  10755. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP0._UPC.UPCP */
  10756. }
  10757.  
  10758. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10759. {
  10760. \_SB.PCI0.XHCI.XHPS ()
  10761. Name (PLDP, Buffer (0x10) {})
  10762. PLDP = \PLD0
  10763. CreateBitField (PLDP, 0x40, VIS)
  10764. If ((!(PR2 & 0x01) || !(PR3 & 0x01)))
  10765. {
  10766. VIS &= 0x00
  10767. }
  10768.  
  10769. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.SSP0._PLD.PLDP */
  10770. }
  10771. }
  10772.  
  10773. Device (SSP1)
  10774. {
  10775. Name (_ADR, 0x0B) // _ADR: Address
  10776. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10777. {
  10778. Name (UPCP, Package (0x04)
  10779. {
  10780. 0x00,
  10781. 0x00,
  10782. 0x00,
  10783. 0x00
  10784. })
  10785. CopyObject (\UPC1, UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP1._UPC.UPCP */
  10786. If ((!(PR2 & 0x02) || !(PR3 & 0x02)))
  10787. {
  10788. Index (UPCP, 0x00) = 0x00
  10789. }
  10790.  
  10791. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP1._UPC.UPCP */
  10792. }
  10793.  
  10794. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10795. {
  10796. \_SB.PCI0.XHCI.XHPS ()
  10797. Name (PLDP, Buffer (0x10) {})
  10798. PLDP = \PLD1
  10799. CreateBitField (PLDP, 0x40, VIS)
  10800. If ((!(PR2 & 0x02) || !(PR3 & 0x02)))
  10801. {
  10802. VIS &= 0x00
  10803. }
  10804.  
  10805. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.SSP1._PLD.PLDP */
  10806. }
  10807. }
  10808.  
  10809. Device (SSP2)
  10810. {
  10811. Name (_ADR, 0x0C) // _ADR: Address
  10812. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10813. {
  10814. Name (UPCP, Package (0x04)
  10815. {
  10816. 0x00,
  10817. 0x00,
  10818. 0x00,
  10819. 0x00
  10820. })
  10821. CopyObject (\UPC2, UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP2._UPC.UPCP */
  10822. If ((!(PR2 & 0x04) || !(PR3 & 0x04)))
  10823. {
  10824. Index (UPCP, 0x00) = 0x00
  10825. }
  10826.  
  10827. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP2._UPC.UPCP */
  10828. }
  10829.  
  10830. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10831. {
  10832. \_SB.PCI0.XHCI.XHPS ()
  10833. Name (PLDP, Buffer (0x10) {})
  10834. PLDP = \PLD2
  10835. CreateBitField (PLDP, 0x40, VIS)
  10836. If ((!(PR2 & 0x04) || !(PR3 & 0x04)))
  10837. {
  10838. VIS &= 0x00
  10839. }
  10840.  
  10841. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.SSP2._PLD.PLDP */
  10842. }
  10843. }
  10844.  
  10845. Device (SSP4)
  10846. {
  10847. Name (_ADR, 0x0D) // _ADR: Address
  10848. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10849. {
  10850. Name (UPCP, Package (0x04)
  10851. {
  10852. 0x00,
  10853. 0x00,
  10854. 0x00,
  10855. 0x00
  10856. })
  10857. CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP4._UPC.UPCP */
  10858. If ((!(PR2 & 0x08) || !(PR3 & 0x08)))
  10859. {
  10860. Index (UPCP, 0x00) = 0x00
  10861. }
  10862.  
  10863. Return (UPCP) /* \_SB_.PCI0.XHCI.URTH.SSP4._UPC.UPCP */
  10864. }
  10865.  
  10866. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10867. {
  10868. \_SB.PCI0.XHCI.XHPS ()
  10869. Name (PLDP, Buffer (0x10) {})
  10870. PLDP = \PLDI
  10871. CreateBitField (PLDP, 0x40, VIS)
  10872. If ((!(PR2 & 0x08) || !(PR3 & 0x08)))
  10873. {
  10874. VIS &= 0x00
  10875. }
  10876.  
  10877. Return (PLDP) /* \_SB_.PCI0.XHCI.URTH.SSP4._PLD.PLDP */
  10878. }
  10879. }
  10880. }
  10881. }
  10882.  
  10883. Device (EHC1)
  10884. {
  10885. Name (_ADR, 0x001D0000) // _ADR: Address
  10886. Name (_S3D, 0x03) // _S3D: S3 Device State
  10887. Name (RID, 0x00)
  10888. OperationRegion (EHCS, PCI_Config, 0x00, 0x0100)
  10889. Field (EHCS, DWordAcc, NoLock, Preserve)
  10890. {
  10891. Offset (0x62),
  10892. PWKI, 1,
  10893. PWUC, 8,
  10894. Offset (0x64)
  10895. }
  10896.  
  10897. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  10898. {
  10899. \_SB.PCI0.LPC.EC.PUBS
  10900. })
  10901. Name (_PR1, Package (0x01) // _PR1: Power Resources for D1
  10902. {
  10903. \_SB.PCI0.LPC.EC.PUBS
  10904. })
  10905. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  10906. {
  10907. \_SB.PCI0.LPC.EC.PUBS
  10908. })
  10909. Method (_INI, 0, NotSerialized) // _INI: Initialize
  10910. {
  10911. PWKI = 0x01
  10912. PWUC = 0x23
  10913. }
  10914.  
  10915. Name (_PRW, Package (0x03) // _PRW: Power Resources for Wake
  10916. {
  10917. 0x6D,
  10918. 0x03,
  10919. \_SB.PCI0.LPC.EC.PUBS
  10920. })
  10921. Device (URTH)
  10922. {
  10923. Name (_ADR, 0x00) // _ADR: Address
  10924. Device (URMH)
  10925. {
  10926. Name (_ADR, 0x01) // _ADR: Address
  10927. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10928. {
  10929. Return (\UPCI)
  10930. }
  10931.  
  10932. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10933. {
  10934. Return (\PLDI)
  10935. }
  10936.  
  10937. Device (PRT0)
  10938. {
  10939. Name (_ADR, 0x01) // _ADR: Address
  10940. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10941. {
  10942. Name (UPCP, Package (0x04)
  10943. {
  10944. 0x00,
  10945. 0x00,
  10946. 0x00,
  10947. 0x00
  10948. })
  10949. CopyObject (\UPC0, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT0._UPC.UPCP */
  10950. If ((\XHCI == 0x00)) {}
  10951. Else
  10952. {
  10953. If ((\_SB.PCI0.XHCI.PR2 & 0x01))
  10954. {
  10955. Index (UPCP, 0x00) = 0x00
  10956. }
  10957. }
  10958.  
  10959. Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT0._UPC.UPCP */
  10960. }
  10961.  
  10962. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10963. {
  10964. Name (PLDP, Buffer (0x10) {})
  10965. PLDP = \PLD0
  10966. CreateBitField (PLDP, 0x40, VIS)
  10967. If ((\XHCI == 0x00)) {}
  10968. Else
  10969. {
  10970. If ((\_SB.PCI0.XHCI.PR2 & 0x01))
  10971. {
  10972. VIS &= 0x00
  10973. }
  10974.  
  10975. Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT0._PLD.PLDP */
  10976. }
  10977. }
  10978. }
  10979.  
  10980. Device (PRT1)
  10981. {
  10982. Name (_ADR, 0x02) // _ADR: Address
  10983. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  10984. {
  10985. Name (UPCP, Package (0x04)
  10986. {
  10987. 0x00,
  10988. 0x00,
  10989. 0x00,
  10990. 0x00
  10991. })
  10992. CopyObject (\UPC1, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT1._UPC.UPCP */
  10993. If ((\XHCI == 0x00)) {}
  10994. Else
  10995. {
  10996. If ((\_SB.PCI0.XHCI.PR2 & 0x02))
  10997. {
  10998. Index (UPCP, 0x00) = 0x00
  10999. }
  11000. }
  11001.  
  11002. Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT1._UPC.UPCP */
  11003. }
  11004.  
  11005. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11006. {
  11007. Name (PLDP, Buffer (0x10) {})
  11008. PLDP = \PLD1
  11009. CreateBitField (PLDP, 0x40, VIS)
  11010. If ((\XHCI == 0x00)) {}
  11011. Else
  11012. {
  11013. If ((\_SB.PCI0.XHCI.PR2 & 0x02))
  11014. {
  11015. VIS &= 0x00
  11016. }
  11017. }
  11018.  
  11019. Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT1._PLD.PLDP */
  11020. }
  11021. }
  11022.  
  11023. Device (PRT2)
  11024. {
  11025. Name (_ADR, 0x03) // _ADR: Address
  11026. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  11027. {
  11028. Name (UPCP, Package (0x04)
  11029. {
  11030. 0x00,
  11031. 0x00,
  11032. 0x00,
  11033. 0x00
  11034. })
  11035. CopyObject (\UPC2, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT2._UPC.UPCP */
  11036. If ((\XHCI == 0x00)) {}
  11037. Else
  11038. {
  11039. If ((\_SB.PCI0.XHCI.PR2 & 0x04))
  11040. {
  11041. Index (UPCP, 0x00) = 0x00
  11042. }
  11043. }
  11044.  
  11045. Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT2._UPC.UPCP */
  11046. }
  11047.  
  11048. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11049. {
  11050. Name (PLDP, Buffer (0x10) {})
  11051. PLDP = \PLD2
  11052. CreateBitField (PLDP, 0x40, VIS)
  11053. If ((\XHCI == 0x00)) {}
  11054. Else
  11055. {
  11056. If ((\_SB.PCI0.XHCI.PR2 & 0x04))
  11057. {
  11058. VIS &= 0x00
  11059. }
  11060. }
  11061.  
  11062. Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT2._PLD.PLDP */
  11063. }
  11064. }
  11065.  
  11066. Device (PRT3)
  11067. {
  11068. Name (_ADR, 0x04) // _ADR: Address
  11069. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  11070. {
  11071. Name (UPCP, Package (0x04)
  11072. {
  11073. 0x00,
  11074. 0x00,
  11075. 0x00,
  11076. 0x00
  11077. })
  11078. CopyObject (\UPC3, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT3._UPC.UPCP */
  11079. If ((\XHCI == 0x00)) {}
  11080. Else
  11081. {
  11082. If ((\_SB.PCI0.XHCI.PR2 & 0x08))
  11083. {
  11084. Index (UPCP, 0x00) = 0x00
  11085. }
  11086. }
  11087.  
  11088. Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT3._UPC.UPCP */
  11089. }
  11090.  
  11091. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11092. {
  11093. Name (PLDP, Buffer (0x10) {})
  11094. PLDP = \PLD3
  11095. CreateBitField (PLDP, 0x40, VIS)
  11096. If ((\XHCI == 0x00)) {}
  11097. Else
  11098. {
  11099. If ((\_SB.PCI0.XHCI.PR2 & 0x08))
  11100. {
  11101. VIS &= 0x00
  11102. }
  11103. }
  11104.  
  11105. Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT3._PLD.PLDP */
  11106. }
  11107. }
  11108.  
  11109. Device (PRT4)
  11110. {
  11111. Name (_ADR, 0x05) // _ADR: Address
  11112. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  11113. {
  11114. Name (UPCP, Package (0x04)
  11115. {
  11116. 0x00,
  11117. 0x00,
  11118. 0x00,
  11119. 0x00
  11120. })
  11121. CopyObject (\UPC4, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT4._UPC.UPCP */
  11122. If ((\XHCI == 0x00)) {}
  11123. Else
  11124. {
  11125. If ((\_SB.PCI0.XHCI.PR2 & 0x10))
  11126. {
  11127. Index (UPCP, 0x00) = 0x00
  11128. }
  11129. }
  11130.  
  11131. Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT4._UPC.UPCP */
  11132. }
  11133.  
  11134. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11135. {
  11136. Name (PLDP, Buffer (0x10) {})
  11137. PLDP = \PLD4
  11138. CreateBitField (PLDP, 0x40, VIS)
  11139. If ((\XHCI == 0x00)) {}
  11140. Else
  11141. {
  11142. If ((\_SB.PCI0.XHCI.PR2 & 0x10))
  11143. {
  11144. VIS &= 0x00
  11145. }
  11146. }
  11147.  
  11148. Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT4._PLD.PLDP */
  11149. }
  11150. }
  11151.  
  11152. Device (PRT5)
  11153. {
  11154. Name (_ADR, 0x06) // _ADR: Address
  11155. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  11156. {
  11157. Name (UPCP, Package (0x04)
  11158. {
  11159. 0x00,
  11160. 0x00,
  11161. 0x00,
  11162. 0x00
  11163. })
  11164. CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT5._UPC.UPCP */
  11165. If ((\XHCI == 0x00)) {}
  11166. Else
  11167. {
  11168. If ((\_SB.PCI0.XHCI.PR2 & 0x20))
  11169. {
  11170. Index (UPCP, 0x00) = 0x00
  11171. }
  11172. }
  11173.  
  11174. Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT5._UPC.UPCP */
  11175. }
  11176.  
  11177. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11178. {
  11179. Name (PLDP, Buffer (0x10) {})
  11180. PLDP = \PLDI
  11181. CreateBitField (PLDP, 0x40, VIS)
  11182. If ((\XHCI == 0x00)) {}
  11183. Else
  11184. {
  11185. If ((\_SB.PCI0.XHCI.PR2 & 0x20))
  11186. {
  11187. VIS &= 0x00
  11188. }
  11189. }
  11190.  
  11191. Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT5._PLD.PLDP */
  11192. }
  11193. }
  11194.  
  11195. Device (PRT6)
  11196. {
  11197. Name (_ADR, 0x07) // _ADR: Address
  11198. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  11199. {
  11200. Name (UPCP, Package (0x04)
  11201. {
  11202. 0x00,
  11203. 0x00,
  11204. 0x00,
  11205. 0x00
  11206. })
  11207. CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT6._UPC.UPCP */
  11208. If ((\XHCI == 0x00)) {}
  11209. Else
  11210. {
  11211. If ((\_SB.PCI0.XHCI.PR2 & 0x40))
  11212. {
  11213. Index (UPCP, 0x00) = 0x00
  11214. }
  11215. }
  11216.  
  11217. Return (UPCP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT6._UPC.UPCP */
  11218. }
  11219.  
  11220. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11221. {
  11222. Name (PLDP, Buffer (0x10) {})
  11223. PLDP = \PLDI
  11224. CreateBitField (PLDP, 0x40, VIS)
  11225. If ((\XHCI == 0x00)) {}
  11226. Else
  11227. {
  11228. If ((\_SB.PCI0.XHCI.PR2 & 0x40))
  11229. {
  11230. VIS &= 0x00
  11231. }
  11232. }
  11233.  
  11234. Return (PLDP) /* \_SB_.PCI0.EHC1.URTH.URMH.PRT6._PLD.PLDP */
  11235. }
  11236. }
  11237.  
  11238. Device (PRT7)
  11239. {
  11240. Name (_ADR, 0x08) // _ADR: Address
  11241. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  11242. {
  11243. Return (\UPCI)
  11244. }
  11245.  
  11246. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11247. {
  11248. Return (\PLDI)
  11249. }
  11250.  
  11251. Device (WCAM)
  11252. {
  11253. Name (_ADR, 0x08) // _ADR: Address
  11254. Method (_STA, 0, NotSerialized) // _STA: Status
  11255. {
  11256. If (\WIN8)
  11257. {
  11258. Return (0x0F)
  11259. }
  11260. Else
  11261. {
  11262. Return (0x00)
  11263. }
  11264. }
  11265.  
  11266. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  11267. {
  11268. Return (\UPCI)
  11269. }
  11270.  
  11271. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11272. {
  11273. Return (\PLDC)
  11274. }
  11275. }
  11276. }
  11277. }
  11278. }
  11279. }
  11280.  
  11281. Device (HDEF)
  11282. {
  11283. Name (_ADR, 0x001B0000) // _ADR: Address
  11284. Name (_S3D, 0x03) // _S3D: S3 Device State
  11285. Name (RID, 0x00)
  11286. }
  11287.  
  11288. Scope (\_SB.PCI0)
  11289. {
  11290. Device (SIRC)
  11291. {
  11292. Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
  11293. Name (_UID, 0x04) // _UID: Unique ID
  11294. Method (_STA, 0, NotSerialized) // _STA: Status
  11295. {
  11296. If ((OSYS < 0x07DC))
  11297. {
  11298. Return (0x00)
  11299. }
  11300.  
  11301. Return (0x0F)
  11302. }
  11303.  
  11304. Name (BUF1, ResourceTemplate ()
  11305. {
  11306. Memory32Fixed (ReadWrite,
  11307. 0x00000000, // Address Base
  11308. 0x00001000, // Address Length
  11309. _Y28)
  11310. })
  11311. Name (BUF2, ResourceTemplate ()
  11312. {
  11313. Memory32Fixed (ReadWrite,
  11314. 0x00000000, // Address Base
  11315. 0x00001000, // Address Length
  11316. _Y29)
  11317. })
  11318. Name (BUF3, ResourceTemplate ()
  11319. {
  11320. Memory32Fixed (ReadWrite,
  11321. 0xFE106000, // Address Base
  11322. 0x00001000, // Address Length
  11323. _Y2A)
  11324. })
  11325. Name (BUF4, ResourceTemplate ()
  11326. {
  11327. Memory32Fixed (ReadWrite,
  11328. 0x00000000, // Address Base
  11329. 0x00001000, // Address Length
  11330. _Y2B)
  11331. })
  11332. Name (BUF5, ResourceTemplate ()
  11333. {
  11334. Memory32Fixed (ReadWrite,
  11335. 0x00000000, // Address Base
  11336. 0x00001000, // Address Length
  11337. _Y2C)
  11338. })
  11339. Name (BUF6, ResourceTemplate ()
  11340. {
  11341. Memory32Fixed (ReadWrite,
  11342. 0x00000000, // Address Base
  11343. 0x00001000, // Address Length
  11344. _Y2D)
  11345. })
  11346. Name (BUF7, ResourceTemplate ()
  11347. {
  11348. Memory32Fixed (ReadWrite,
  11349. 0x00000000, // Address Base
  11350. 0x00001000, // Address Length
  11351. _Y2E)
  11352. })
  11353. Name (BUF8, ResourceTemplate ()
  11354. {
  11355. Memory32Fixed (ReadWrite,
  11356. 0x00000000, // Address Base
  11357. 0x00001000, // Address Length
  11358. _Y2F)
  11359. })
  11360. Name (BUFL, ResourceTemplate ()
  11361. {
  11362. Memory32Fixed (ReadWrite,
  11363. 0x00000000, // Address Base
  11364. 0x00000008, // Address Length
  11365. _Y30)
  11366. })
  11367. Name (BUFH, ResourceTemplate ()
  11368. {
  11369. Memory32Fixed (ReadWrite,
  11370. 0x00000000, // Address Base
  11371. 0x00000FEC, // Address Length
  11372. _Y31)
  11373. })
  11374. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11375. {
  11376. Local0 = ResourceTemplate ()
  11377. {
  11378. }
  11379. CreateDWordField (BUF1, \_SB.PCI0.SIRC._Y28._BAS, BR01) // _BAS: Base Address
  11380. CreateDWordField (BUF2, \_SB.PCI0.SIRC._Y29._BAS, BR02) // _BAS: Base Address
  11381. CreateDWordField (BUF3, \_SB.PCI0.SIRC._Y2A._BAS, BR03) // _BAS: Base Address
  11382. CreateDWordField (BUF4, \_SB.PCI0.SIRC._Y2B._BAS, BR04) // _BAS: Base Address
  11383. CreateDWordField (BUF5, \_SB.PCI0.SIRC._Y2C._BAS, BR05) // _BAS: Base Address
  11384. CreateDWordField (BUF6, \_SB.PCI0.SIRC._Y2D._BAS, BR06) // _BAS: Base Address
  11385. CreateDWordField (BUF7, \_SB.PCI0.SIRC._Y2E._BAS, BR07) // _BAS: Base Address
  11386. CreateDWordField (BUF8, \_SB.PCI0.SIRC._Y2F._BAS, BR08) // _BAS: Base Address
  11387. If ((BR01 != 0x00))
  11388. {
  11389. ConcatenateResTemplate (Local0, BUF1, Local0)
  11390. }
  11391.  
  11392. If ((BR02 != 0x00))
  11393. {
  11394. ConcatenateResTemplate (Local0, BUF2, Local0)
  11395. }
  11396.  
  11397. If ((BR03 != 0x00))
  11398. {
  11399. ConcatenateResTemplate (Local0, BUF3, Local0)
  11400. }
  11401.  
  11402. If ((BR04 != 0x00))
  11403. {
  11404. ConcatenateResTemplate (Local0, BUF4, Local0)
  11405. }
  11406.  
  11407. If ((BR05 != 0x00))
  11408. {
  11409. ConcatenateResTemplate (Local0, BUF5, Local0)
  11410. }
  11411.  
  11412. If ((BR06 != 0x00))
  11413. {
  11414. ConcatenateResTemplate (Local0, BUF6, Local0)
  11415. }
  11416.  
  11417. If ((BR07 != 0x00))
  11418. {
  11419. ConcatenateResTemplate (Local0, BUF7, Local0)
  11420. }
  11421.  
  11422. If ((BR08 != 0x00))
  11423. {
  11424. ConcatenateResTemplate (Local0, ^BUF8, Local0)
  11425. OperationRegion (SDCH, SystemMemory, BR08, 0x40)
  11426. Field (SDCH, DWordAcc, NoLock, Preserve)
  11427. {
  11428. Offset (0x10),
  11429. BAR0, 32
  11430. }
  11431.  
  11432. CreateDWordField (^BUFL, \_SB.PCI0.SIRC._Y30._BAS, LBAS) // _BAS: Base Address
  11433. CreateDWordField (^BUFH, \_SB.PCI0.SIRC._Y31._BAS, HBAS) // _BAS: Base Address
  11434. LBAS = (BAR0 + 0x1000)
  11435. HBAS = (BAR0 + 0x1014)
  11436. ConcatenateResTemplate (Local0, BUFL, Local0)
  11437. ConcatenateResTemplate (Local0, BUFH, Local0)
  11438. }
  11439.  
  11440. Return (Local0)
  11441. }
  11442.  
  11443. Method (CNTR, 1, Serialized)
  11444. {
  11445. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  11446. While (One)
  11447. {
  11448. _T_0 = ToInteger (Arg0)
  11449. If ((_T_0 == 0x01))
  11450. {
  11451. CreateDWordField (^BUF1, \_SB.PCI0.SIRC._Y28._BAS, BAR1) // _BAS: Base Address
  11452. Return (BAR1) /* \_SB_.PCI0.SIRC.CNTR.BAR1 */
  11453. }
  11454. Else
  11455. {
  11456. If ((_T_0 == 0x02))
  11457. {
  11458. CreateDWordField (^BUF2, \_SB.PCI0.SIRC._Y29._BAS, BAR2) // _BAS: Base Address
  11459. Return (BAR2) /* \_SB_.PCI0.SIRC.CNTR.BAR2 */
  11460. }
  11461. Else
  11462. {
  11463. If ((_T_0 == 0x03))
  11464. {
  11465. CreateDWordField (^BUF3, \_SB.PCI0.SIRC._Y2A._BAS, BAR3) // _BAS: Base Address
  11466. Return (BAR3) /* \_SB_.PCI0.SIRC.CNTR.BAR3 */
  11467. }
  11468. Else
  11469. {
  11470. If ((_T_0 == 0x04))
  11471. {
  11472. CreateDWordField (^BUF4, \_SB.PCI0.SIRC._Y2B._BAS, BAR4) // _BAS: Base Address
  11473. Return (BAR4) /* \_SB_.PCI0.SIRC.CNTR.BAR4 */
  11474. }
  11475. Else
  11476. {
  11477. If ((_T_0 == 0x05))
  11478. {
  11479. CreateDWordField (^BUF5, \_SB.PCI0.SIRC._Y2C._BAS, BAR5) // _BAS: Base Address
  11480. Return (BAR5) /* \_SB_.PCI0.SIRC.CNTR.BAR5 */
  11481. }
  11482. Else
  11483. {
  11484. If ((_T_0 == 0x06))
  11485. {
  11486. CreateDWordField (^BUF6, \_SB.PCI0.SIRC._Y2D._BAS, BAR6) // _BAS: Base Address
  11487. Return (BAR6) /* \_SB_.PCI0.SIRC.CNTR.BAR6 */
  11488. }
  11489. Else
  11490. {
  11491. If ((_T_0 == 0x07))
  11492. {
  11493. CreateDWordField (^BUF7, \_SB.PCI0.SIRC._Y2E._BAS, BAR7) // _BAS: Base Address
  11494. Return (BAR7) /* \_SB_.PCI0.SIRC.CNTR.BAR7 */
  11495. }
  11496. Else
  11497. {
  11498. If ((_T_0 == 0x08))
  11499. {
  11500. CreateDWordField (^BUF8, \_SB.PCI0.SIRC._Y2F._BAS, BAR8) // _BAS: Base Address
  11501. Return (BAR8) /* \_SB_.PCI0.SIRC.CNTR.BAR8 */
  11502. }
  11503. Else
  11504. {
  11505. Return (0xFFFFFFFF)
  11506. }
  11507. }
  11508. }
  11509. }
  11510. }
  11511. }
  11512. }
  11513. }
  11514.  
  11515. Break
  11516. }
  11517. }
  11518. }
  11519.  
  11520. Device (GPI0)
  11521. {
  11522. Name (_HID, "INT33C7" /* Intel Serial I/O GPIO Host Controller */) // _HID: Hardware ID
  11523. Name (_CID, "INT33C7" /* Intel Serial I/O GPIO Host Controller */) // _CID: Compatible ID
  11524. Name (_UID, 0x01) // _UID: Unique ID
  11525. Name (RBUF, ResourceTemplate ()
  11526. {
  11527. DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  11528. 0x00000000, // Granularity
  11529. 0x00000800, // Range Minimum
  11530. 0x00000BFF, // Range Maximum
  11531. 0x00000000, // Translation Offset
  11532. 0x00000400, // Length
  11533. ,, , TypeStatic)
  11534. })
  11535. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11536. {
  11537. Return (RBUF) /* \_SB_.PCI0.GPI0.RBUF */
  11538. }
  11539.  
  11540. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  11541. {
  11542. Return (\_SB.PCI0.LPC.RID)
  11543. }
  11544.  
  11545. Method (_STA, 0, NotSerialized) // _STA: Status
  11546. {
  11547. Return (0x00)
  11548. }
  11549. }
  11550.  
  11551. Device (I2C1)
  11552. {
  11553. Name (_HID, "INT33C3" /* Intel Serial I/O I2C Host Controller */) // _HID: Hardware ID
  11554. Name (_CID, "INT33C3" /* Intel Serial I/O I2C Host Controller */) // _CID: Compatible ID
  11555. Name (_UID, 0x02) // _UID: Unique ID
  11556. Name (_ADR, 0x00150002) // _ADR: Address
  11557. Method (SSCN, 0, NotSerialized)
  11558. {
  11559. Name (PKG, Package (0x03)
  11560. {
  11561. 0x01B0,
  11562. 0x01FB,
  11563. 0x09
  11564. })
  11565. Index (PKG, 0x00) = SSH1 /* \SSH1 */
  11566. Index (PKG, 0x01) = SSL1 /* \SSL1 */
  11567. Index (PKG, 0x02) = SSD1 /* \SSD1 */
  11568. Return (PKG) /* \_SB_.PCI0.I2C1.SSCN.PKG_ */
  11569. }
  11570.  
  11571. Method (FMCN, 0, NotSerialized)
  11572. {
  11573. Name (PKG, Package (0x03)
  11574. {
  11575. 0x48,
  11576. 0xA0,
  11577. 0x09
  11578. })
  11579. Index (PKG, 0x00) = FMH1 /* \FMH1 */
  11580. Index (PKG, 0x01) = FML1 /* \FML1 */
  11581. Index (PKG, 0x02) = FMD1 /* \FMD1 */
  11582. Return (PKG) /* \_SB_.PCI0.I2C1.FMCN.PKG_ */
  11583. }
  11584.  
  11585. Method (FPCN, 0, NotSerialized)
  11586. {
  11587. Name (PKG, Package (0x03)
  11588. {
  11589. 0x1A,
  11590. 0x32,
  11591. 0x05
  11592. })
  11593. Index (PKG, 0x00) = FPH1 /* \FPH1 */
  11594. Index (PKG, 0x01) = FPL1 /* \FPL1 */
  11595. Index (PKG, 0x02) = FPD1 /* \FPD1 */
  11596. Return (PKG) /* \_SB_.PCI0.I2C1.FPCN.PKG_ */
  11597. }
  11598.  
  11599. Method (M0D3, 0, NotSerialized)
  11600. {
  11601. Name (PKG, Package (0x01)
  11602. {
  11603. 0xC8
  11604. })
  11605. Index (PKG, 0x00) = M0C1 /* \M0C1 */
  11606. Return (PKG) /* \_SB_.PCI0.I2C1.M0D3.PKG_ */
  11607. }
  11608.  
  11609. Method (M1D3, 0, NotSerialized)
  11610. {
  11611. Name (PKG, Package (0x01)
  11612. {
  11613. 0x07D0
  11614. })
  11615. Index (PKG, 0x00) = M1C1 /* \M1C1 */
  11616. Return (PKG) /* \_SB_.PCI0.I2C1.M1D3.PKG_ */
  11617. }
  11618.  
  11619. Method (M0D0, 0, NotSerialized)
  11620. {
  11621. Name (PKG, Package (0x01)
  11622. {
  11623. 0x00
  11624. })
  11625. Index (PKG, 0x00) = M2C1 /* \M2C1 */
  11626. Return (PKG) /* \_SB_.PCI0.I2C1.M0D0.PKG_ */
  11627. }
  11628.  
  11629. Name (RBUF, ResourceTemplate ()
  11630. {
  11631. Memory32Fixed (ReadWrite,
  11632. 0xFE105000, // Address Base
  11633. 0x00001000, // Address Length
  11634. )
  11635. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  11636. {
  11637. 0x00000007,
  11638. }
  11639. })
  11640. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11641. {
  11642. Return (RBUF) /* \_SB_.PCI0.I2C1.RBUF */
  11643. }
  11644.  
  11645. Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
  11646. {
  11647. Return (\_SB.PCI0.LPC.RID)
  11648. }
  11649.  
  11650. Method (_STA, 0, NotSerialized) // _STA: Status
  11651. {
  11652. If ((\WIN8 != 0x00))
  11653. {
  11654. Return (0x0F)
  11655. }
  11656. Else
  11657. {
  11658. Return (0x00)
  11659. }
  11660. }
  11661.  
  11662. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  11663. {
  11664. Local0 = (\_SB.PCI0.SIRC.CNTR (0x03) + 0x84)
  11665. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  11666. Field (ICB1, DWordAcc, NoLock, Preserve)
  11667. {
  11668. TEMP, 32
  11669. }
  11670.  
  11671. TEMP &= 0xFFFFFFFC
  11672. Local0 = TEMP /* \_SB_.PCI0.I2C1._PS0.TEMP */
  11673. }
  11674.  
  11675. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  11676. {
  11677. Local0 = (\_SB.PCI0.SIRC.CNTR (0x03) + 0x84)
  11678. OperationRegion (ICB1, SystemMemory, Local0, 0x04)
  11679. Field (ICB1, DWordAcc, NoLock, Preserve)
  11680. {
  11681. TEMP, 32
  11682. }
  11683.  
  11684. TEMP |= 0x03
  11685. Local0 = TEMP /* \_SB_.PCI0.I2C1._PS3.TEMP */
  11686. }
  11687. }
  11688. }
  11689.  
  11690. Scope (\_SB.PCI0.I2C1)
  11691. {
  11692. Device (CMSR)
  11693. {
  11694. Name (_ADR, 0x00) // _ADR: Address
  11695. Name (_HID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */) // _HID: Hardware ID
  11696. Name (_CID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */) // _CID: Compatible ID
  11697. Name (_UID, 0x01) // _UID: Unique ID
  11698. Method (_DEP, 0, NotSerialized) // _DEP: Dependencies
  11699. {
  11700. Return (Package (0x01)
  11701. {
  11702. \_SB.PCI0.I2C1
  11703. })
  11704. }
  11705.  
  11706. Method (_STA, 0, NotSerialized) // _STA: Status
  11707. {
  11708. Return (0x0F)
  11709. }
  11710.  
  11711. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11712. {
  11713. Name (SBUF, ResourceTemplate ()
  11714. {
  11715. I2cSerialBus (0x000C, ControllerInitiated, 0x00061A80,
  11716. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  11717. 0x00, ResourceConsumer, ,
  11718. )
  11719. I2cSerialBus (0x0048, ControllerInitiated, 0x00061A80,
  11720. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  11721. 0x00, ResourceConsumer, ,
  11722. )
  11723. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  11724. {
  11725. 0x00000024,
  11726. }
  11727. })
  11728. Return (SBUF) /* \_SB_.PCI0.I2C1.CMSR._CRS.SBUF */
  11729. }
  11730.  
  11731. Name (CPM0, Package (0x07)
  11732. {
  11733. 0x0C92,
  11734. 0x00,
  11735. 0x0F,
  11736. 0x0844,
  11737. 0x013B,
  11738. 0x011D,
  11739. 0x00
  11740. })
  11741. Name (CPM1, Package (0x03)
  11742. {
  11743. 0x0594,
  11744. 0x001B9F70,
  11745. 0x000186A0
  11746. })
  11747. Name (CPM2, Package (0x06)
  11748. {
  11749. 0x61A8,
  11750. 0x000186A0,
  11751. 0x000186A0,
  11752. 0x000186A0,
  11753. 0x00030D40,
  11754. 0x00061A80
  11755. })
  11756. Name (CPM3, Package (0x05)
  11757. {
  11758. Package (0x02)
  11759. {
  11760. 0x46,
  11761. 0x00
  11762. },
  11763.  
  11764. Package (0x02)
  11765. {
  11766. 0x49,
  11767. 0x0A
  11768. },
  11769.  
  11770. Package (0x02)
  11771. {
  11772. 0x55,
  11773. 0x50
  11774. },
  11775.  
  11776. Package (0x02)
  11777. {
  11778. 0x64,
  11779. 0x012C
  11780. },
  11781.  
  11782. Package (0x02)
  11783. {
  11784. 0x96,
  11785. 0x03E8
  11786. }
  11787. })
  11788. Name (CPM5, Package (0x07)
  11789. {
  11790. 0x00,
  11791. 0x000249F0,
  11792. 0x0190,
  11793. 0x03E8,
  11794. 0x02,
  11795. 0x19,
  11796. 0x05
  11797. })
  11798. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  11799. {
  11800. If (\CMPB (Arg0, ToUUID ("0703c6b6-1cca-4144-9fe7-4654f53a0bd9")))
  11801. {
  11802. If ((Arg2 == 0x00))
  11803. {
  11804. Return (Buffer (0x01)
  11805. {
  11806. 0x03 /* . */
  11807. })
  11808. }
  11809.  
  11810. If ((Arg2 == 0x01))
  11811. {
  11812. If ((ToInteger (Arg3) == 0x00))
  11813. {
  11814. Return (CPM0) /* \_SB_.PCI0.I2C1.CMSR.CPM0 */
  11815. }
  11816.  
  11817. If ((ToInteger (Arg3) == 0x01))
  11818. {
  11819. Return (CPM1) /* \_SB_.PCI0.I2C1.CMSR.CPM1 */
  11820. }
  11821.  
  11822. If ((ToInteger (Arg3) == 0x02))
  11823. {
  11824. Return (CPM2) /* \_SB_.PCI0.I2C1.CMSR.CPM2 */
  11825. }
  11826.  
  11827. If ((ToInteger (Arg3) == 0x03))
  11828. {
  11829. Return (CPM3) /* \_SB_.PCI0.I2C1.CMSR.CPM3 */
  11830. }
  11831.  
  11832. If ((ToInteger (Arg3) == 0x05))
  11833. {
  11834. Return (CPM5) /* \_SB_.PCI0.I2C1.CMSR.CPM5 */
  11835. }
  11836. }
  11837. }
  11838.  
  11839. Return (Buffer (One)
  11840. {
  11841. 0x00 /* . */
  11842. })
  11843. }
  11844. }
  11845. }
  11846. }
  11847.  
  11848. Scope (\_SB.PCI0.LPC.EC)
  11849. {
  11850. Name (BDEV, 0xFF)
  11851. Name (BSTS, 0x00)
  11852. Name (BHKE, 0x00)
  11853. Method (_Q2C, 0, NotSerialized) // _Qxx: EC Query
  11854. {
  11855. If ((BSTS == 0x00))
  11856. {
  11857. BDEV = BGID (0x00)
  11858. NBRE (BDEV)
  11859. }
  11860. }
  11861.  
  11862. Method (_Q2D, 0, NotSerialized) // _Qxx: EC Query
  11863. {
  11864. BDEV = BGID (0x00)
  11865. NBIN (BDEV)
  11866. }
  11867.  
  11868. Method (_Q38, 0, NotSerialized) // _Qxx: EC Query
  11869. {
  11870. Local0 = BGID (0x00)
  11871. If ((Local0 == 0x0F))
  11872. {
  11873. BDIS ()
  11874. \BHDP (0x01, 0x00)
  11875. NBEJ (BDEV)
  11876. BDEV = Local0
  11877. If ((\BIDE == 0x03))
  11878. {
  11879. \_SB.PCI0.SAT1.PRIM.GTME = 0x00
  11880. \_SB.PCI0.SAT1.SCND.GTME = 0x00
  11881. }
  11882. }
  11883. Else
  11884. {
  11885. If (HPBU) {}
  11886. Else
  11887. {
  11888. BDEV = Local0
  11889. NBIN (Local0)
  11890. }
  11891. }
  11892. }
  11893.  
  11894. Method (NBRE, 1, NotSerialized)
  11895. {
  11896. If ((Arg0 < 0x0C))
  11897. {
  11898. If ((\BIDE == 0x03))
  11899. {
  11900. Notify (\_SB.PCI0.SAT1.SCND.MSTR, 0x03) // Eject Request
  11901. }
  11902. Else
  11903. {
  11904. Notify (\_SB.PCI0.SAT1.PRT1, 0x03) // Eject Request
  11905. }
  11906. }
  11907. }
  11908.  
  11909. Method (NBEJ, 1, NotSerialized)
  11910. {
  11911. If ((BSTS == 0x00))
  11912. {
  11913. If ((Arg0 < 0x0C))
  11914. {
  11915. If ((\BIDE == 0x03))
  11916. {
  11917. Notify (\_SB.PCI0.SAT1.SCND.MSTR, 0x01) // Device Check
  11918. }
  11919. Else
  11920. {
  11921. Notify (\_SB.PCI0.SAT1.PRT1, 0x01) // Device Check
  11922. }
  11923. }
  11924. }
  11925.  
  11926. BEEP (0x00)
  11927. BSTS = 0x00
  11928. }
  11929.  
  11930. Method (NBIN, 1, NotSerialized)
  11931. {
  11932. If ((Arg0 < 0x0C))
  11933. {
  11934. BEN (0x01)
  11935. If ((\BIDE == 0x03))
  11936. {
  11937. Notify (\_SB.PCI0.SAT1.SCND.MSTR, 0x01) // Device Check
  11938. }
  11939. Else
  11940. {
  11941. Notify (\_SB.PCI0.SAT1.PRT1, 0x01) // Device Check
  11942. }
  11943. }
  11944.  
  11945. BEEP (0x00)
  11946. BSTS = 0x00
  11947. }
  11948.  
  11949. Method (BEJ0, 1, NotSerialized)
  11950. {
  11951. If (Arg0)
  11952. {
  11953. BDIS ()
  11954. \BHDP (0x01, 0x00)
  11955. BSTS = 0x01
  11956. If (BHKE)
  11957. {
  11958. BHKE = 0x00
  11959. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x3003)
  11960. }
  11961. }
  11962. Else
  11963. {
  11964. BSTS = 0x00
  11965. }
  11966. }
  11967.  
  11968. Method (BEJ3, 1, NotSerialized)
  11969. {
  11970. If (Arg0)
  11971. {
  11972. BDIS ()
  11973. BSTS = 0x01
  11974. }
  11975. Else
  11976. {
  11977. BSTS = 0x00
  11978. }
  11979. }
  11980.  
  11981. Method (BPTS, 1, NotSerialized)
  11982. {
  11983. HDBM = 0x01
  11984. If ((BSTS != 0x00))
  11985. {
  11986. BDEV = 0x0F
  11987. BSTS = 0x00
  11988. }
  11989.  
  11990. BHKE = 0x00
  11991. BUWK (0x00)
  11992. }
  11993.  
  11994. Method (BWAK, 1, NotSerialized)
  11995. {
  11996. BUWK (0x00)
  11997. Local0 = BGID (0x00)
  11998. If ((BSTS == 0x00))
  11999. {
  12000. If ((Local0 != BDEV))
  12001. {
  12002. NBEJ (BDEV)
  12003. BDEV = Local0
  12004. NBIN (Local0)
  12005. }
  12006. Else
  12007. {
  12008. If ((\LFDC || (BDEV != 0x0D)))
  12009. {
  12010. If ((Local0 != 0x0F))
  12011. {
  12012. If (HPBU)
  12013. {
  12014. If ((Arg0 <= 0x02)) {}
  12015. Else
  12016. {
  12017. NBRE (Local0)
  12018. }
  12019. }
  12020. }
  12021. }
  12022. }
  12023. }
  12024.  
  12025. If ((BDEV < 0x0C))
  12026. {
  12027. \UBIS (0x00)
  12028. }
  12029. Else
  12030. {
  12031. \UBIS (0x01)
  12032. }
  12033. }
  12034.  
  12035. Method (BDIS, 0, NotSerialized)
  12036. {
  12037. If (!\_SB.PCI0.LPC.CSON)
  12038. {
  12039. If (!\_SB.PCI0.LPC.GLIS)
  12040. {
  12041. \UBIS (0x01)
  12042. }
  12043.  
  12044. \_SB.PCI0.LPC.CSON = 0x01
  12045. \IDET = 0x0F
  12046. }
  12047. }
  12048.  
  12049. Method (BPON, 1, NotSerialized)
  12050. {
  12051. If (\_SB.PCI0.LPC.CSON)
  12052. {
  12053. \_SB.PCI0.LPC.CSON = 0x00
  12054. If (\_SB.PCI0.LPC.GLIS)
  12055. {
  12056. \UBIS (0x00)
  12057. }
  12058. }
  12059. }
  12060.  
  12061. Method (BEN, 1, NotSerialized)
  12062. {
  12063. If (\_SB.PCI0.LPC.CSON)
  12064. {
  12065. BPON (Arg0)
  12066. If (Arg0)
  12067. {
  12068. IRDY ()
  12069. }
  12070. }
  12071. }
  12072.  
  12073. Method (BSTA, 1, NotSerialized)
  12074. {
  12075. If (\_SB.PCI0.LPC.CSON)
  12076. {
  12077. Return (0x00)
  12078. }
  12079.  
  12080. BINI ()
  12081. If ((Arg0 == 0x01))
  12082. {
  12083. Return ((BDEV < 0x0C))
  12084. }
  12085.  
  12086. Return (0x00)
  12087. }
  12088.  
  12089. Method (BUWK, 1, NotSerialized)
  12090. {
  12091. If (\H8DR)
  12092. {
  12093. If (Arg0)
  12094. {
  12095. \_SB.PCI0.LPC.EC.HWBU = 0x01
  12096. }
  12097. Else
  12098. {
  12099. \_SB.PCI0.LPC.EC.HWBU = 0x00
  12100. }
  12101. }
  12102. Else
  12103. {
  12104. If (Arg0)
  12105. {
  12106. \MBEC (0x32, 0xFF, 0x80)
  12107. }
  12108. Else
  12109. {
  12110. \MBEC (0x32, 0x7F, 0x00)
  12111. }
  12112. }
  12113. }
  12114.  
  12115. Method (BINI, 0, NotSerialized)
  12116. {
  12117. If ((BDEV == 0xFF))
  12118. {
  12119. BDEV = BGID (0x00)
  12120. }
  12121. }
  12122.  
  12123. Method (BGID, 1, NotSerialized)
  12124. {
  12125. If (Arg0)
  12126. {
  12127. Local0 = 0xFF
  12128. }
  12129. Else
  12130. {
  12131. If (\H8DR)
  12132. {
  12133. Local1 = HPBU /* \_SB_.PCI0.LPC_.EC__.HPBU */
  12134. Local2 = HBID /* \_SB_.PCI0.LPC_.EC__.HBID */
  12135. }
  12136. Else
  12137. {
  12138. Local2 = RBEC (0x47)
  12139. Local1 = (Local2 & 0x01)
  12140. Local2 &= 0x04
  12141. Local2 >>= 0x02
  12142. }
  12143.  
  12144. If (Local2)
  12145. {
  12146. Local0 = 0x0F
  12147. }
  12148. Else
  12149. {
  12150. If (HDUB)
  12151. {
  12152. Local0 = 0x0F
  12153. }
  12154. Else
  12155. {
  12156. If (((\IDET == 0x03) || (\IDET == 0x06)))
  12157. {
  12158. Local0 = \IDET
  12159. }
  12160. Else
  12161. {
  12162. Local0 = 0x07
  12163. }
  12164. }
  12165. }
  12166.  
  12167. If ((Local0 == 0x0F)) {}
  12168. }
  12169.  
  12170. If ((\HDUB && (Local0 < 0x0C)))
  12171. {
  12172. Local0 = 0x0F
  12173. }
  12174.  
  12175. Return (Local0)
  12176. }
  12177.  
  12178. Method (IRDY, 0, NotSerialized)
  12179. {
  12180. Local0 = 0x01F4
  12181. Local1 = 0x3C
  12182. Local2 = Zero
  12183. While (Local1)
  12184. {
  12185. Sleep (Local0)
  12186. Local3 = \BCHK ()
  12187. If (!Local3)
  12188. {
  12189. Break
  12190. }
  12191.  
  12192. If ((Local3 == 0x02))
  12193. {
  12194. Local2 = One
  12195. Break
  12196. }
  12197.  
  12198. Local1--
  12199. }
  12200.  
  12201. Return (Local2)
  12202. }
  12203. }
  12204.  
  12205. Scope (\_SB.PCI0.LPC.EC)
  12206. {
  12207. Method (_Q43, 0, NotSerialized) // _Qxx: EC Query
  12208. {
  12209. \UCMS (0x18)
  12210. }
  12211.  
  12212. Method (SAUM, 1, NotSerialized)
  12213. {
  12214. If ((Arg0 > 0x03))
  12215. {
  12216. Noop
  12217. }
  12218. Else
  12219. {
  12220. If (\H8DR)
  12221. {
  12222. HAUM = Arg0
  12223. }
  12224. Else
  12225. {
  12226. \MBEC (0x03, 0x9F, (Arg0 << 0x05))
  12227. }
  12228. }
  12229. }
  12230. }
  12231.  
  12232. Scope (\_SB.PCI0.LPC.EC.HKEY)
  12233. {
  12234. Method (GSMS, 1, NotSerialized)
  12235. {
  12236. Return (\AUDC (0x00, 0x00))
  12237. }
  12238.  
  12239. Method (SSMS, 1, NotSerialized)
  12240. {
  12241. Return (\AUDC (0x01, (Arg0 & 0x01)))
  12242. }
  12243.  
  12244. Method (SHDA, 1, NotSerialized)
  12245. {
  12246. Acquire (\_SB.PCI0.LPC.EC.MDFR, 0xFFFF)
  12247. Local0 = (Arg0 & 0x01)
  12248. If ((Local0 == 0x00))
  12249. {
  12250. \_SB.PCI0.LPC.EC.DFRH = 0x7F
  12251. \_SB.PCI0.LPC.EC.DFRL = 0xFF
  12252. \_SB.PCI0.LPC.EC.DFCH = 0x40
  12253. }
  12254. Else
  12255. {
  12256. \_SB.PCI0.LPC.EC.DFRH = 0xFF
  12257. \_SB.PCI0.LPC.EC.DFRL = 0xFF
  12258. \_SB.PCI0.LPC.EC.DFCH = 0xC0
  12259. }
  12260.  
  12261. Release (\_SB.PCI0.LPC.EC.MDFR)
  12262. Return (\AUDC (0x02, (Arg0 & 0x01)))
  12263. }
  12264. }
  12265.  
  12266. Scope (\_SB.PCI0.LPC.EC)
  12267. {
  12268. Name (BRTW, Package (0x12)
  12269. {
  12270. 0x64,
  12271. 0x64,
  12272. 0x05,
  12273. 0x0A,
  12274. 0x14,
  12275. 0x19,
  12276. 0x1E,
  12277. 0x23,
  12278. 0x28,
  12279. 0x2D,
  12280. 0x32,
  12281. 0x37,
  12282. 0x3C,
  12283. 0x41,
  12284. 0x46,
  12285. 0x50,
  12286. 0x5A,
  12287. 0x64
  12288. })
  12289. Name (BRTB, Package (0x04)
  12290. {
  12291. Package (0x16)
  12292. {
  12293. 0x1E,
  12294. 0x03,
  12295. 0x03,
  12296. 0x05,
  12297. 0x08,
  12298. 0x0A,
  12299. 0x0E,
  12300. 0x12,
  12301. 0x18,
  12302. 0x20,
  12303. 0x2B,
  12304. 0x36,
  12305. 0x43,
  12306. 0x55,
  12307. 0x6D,
  12308. 0x8A,
  12309. 0xB9,
  12310. 0xFF,
  12311. 0xDC,
  12312. 0xDC,
  12313. 0x03,
  12314. 0x03
  12315. },
  12316.  
  12317. Package (0x16)
  12318. {
  12319. 0x19,
  12320. 0x04,
  12321. 0x04,
  12322. 0x06,
  12323. 0x09,
  12324. 0x0C,
  12325. 0x10,
  12326. 0x15,
  12327. 0x1D,
  12328. 0x27,
  12329. 0x34,
  12330. 0x41,
  12331. 0x51,
  12332. 0x66,
  12333. 0x82,
  12334. 0xA4,
  12335. 0xCD,
  12336. 0xFF,
  12337. 0xDC,
  12338. 0xDC,
  12339. 0x03,
  12340. 0x03
  12341. },
  12342.  
  12343. Package (0x16)
  12344. {
  12345. 0x14,
  12346. 0x04,
  12347. 0x04,
  12348. 0x08,
  12349. 0x0C,
  12350. 0x13,
  12351. 0x19,
  12352. 0x20,
  12353. 0x27,
  12354. 0x30,
  12355. 0x39,
  12356. 0x43,
  12357. 0x4E,
  12358. 0x5C,
  12359. 0x71,
  12360. 0x8B,
  12361. 0xB4,
  12362. 0xFF,
  12363. 0xDC,
  12364. 0xDC,
  12365. 0x04,
  12366. 0x04
  12367. },
  12368.  
  12369. Package (0x16)
  12370. {
  12371. 0x00,
  12372. 0x04,
  12373. 0x04,
  12374. 0x07,
  12375. 0x09,
  12376. 0x0C,
  12377. 0x10,
  12378. 0x15,
  12379. 0x1C,
  12380. 0x25,
  12381. 0x32,
  12382. 0x40,
  12383. 0x50,
  12384. 0x64,
  12385. 0x82,
  12386. 0xA5,
  12387. 0xCD,
  12388. 0xFF,
  12389. 0xDC,
  12390. 0xDC,
  12391. 0x04,
  12392. 0x04
  12393. }
  12394. })
  12395. Name (BRTD, Package (0x04)
  12396. {
  12397. Package (0x65)
  12398. {
  12399. 0x03,
  12400. 0x04,
  12401. 0x05,
  12402. 0x06,
  12403. 0x07,
  12404. 0x08,
  12405. 0x09,
  12406. 0x0A,
  12407. 0x0B,
  12408. 0x0C,
  12409. 0x0D,
  12410. 0x0E,
  12411. 0x0F,
  12412. 0x10,
  12413. 0x11,
  12414. 0x12,
  12415. 0x13,
  12416. 0x14,
  12417. 0x15,
  12418. 0x16,
  12419. 0x17,
  12420. 0x18,
  12421. 0x19,
  12422. 0x1A,
  12423. 0x1C,
  12424. 0x1D,
  12425. 0x1F,
  12426. 0x21,
  12427. 0x22,
  12428. 0x24,
  12429. 0x26,
  12430. 0x28,
  12431. 0x2A,
  12432. 0x2C,
  12433. 0x2E,
  12434. 0x30,
  12435. 0x33,
  12436. 0x35,
  12437. 0x37,
  12438. 0x3A,
  12439. 0x3C,
  12440. 0x3F,
  12441. 0x41,
  12442. 0x44,
  12443. 0x46,
  12444. 0x49,
  12445. 0x4C,
  12446. 0x4F,
  12447. 0x51,
  12448. 0x54,
  12449. 0x57,
  12450. 0x5A,
  12451. 0x5D,
  12452. 0x61,
  12453. 0x64,
  12454. 0x67,
  12455. 0x6A,
  12456. 0x6E,
  12457. 0x71,
  12458. 0x75,
  12459. 0x78,
  12460. 0x7C,
  12461. 0x80,
  12462. 0x83,
  12463. 0x87,
  12464. 0x8B,
  12465. 0x8F,
  12466. 0x93,
  12467. 0x97,
  12468. 0x9B,
  12469. 0x9F,
  12470. 0xA3,
  12471. 0xA8,
  12472. 0xAC,
  12473. 0xB0,
  12474. 0xB5,
  12475. 0xB9,
  12476. 0xBE,
  12477. 0xC3,
  12478. 0xC7,
  12479. 0xCC,
  12480. 0xCE,
  12481. 0xD1,
  12482. 0xD3,
  12483. 0xD6,
  12484. 0xD8,
  12485. 0xDB,
  12486. 0xDD,
  12487. 0xE0,
  12488. 0xE2,
  12489. 0xE5,
  12490. 0xE7,
  12491. 0xEA,
  12492. 0xEC,
  12493. 0xEF,
  12494. 0xF2,
  12495. 0xF4,
  12496. 0xF7,
  12497. 0xFA,
  12498. 0xFC,
  12499. 0xFF
  12500. },
  12501.  
  12502. Package (0x65)
  12503. {
  12504. 0x03,
  12505. 0x04,
  12506. 0x05,
  12507. 0x06,
  12508. 0x07,
  12509. 0x08,
  12510. 0x09,
  12511. 0x0A,
  12512. 0x0B,
  12513. 0x0C,
  12514. 0x0D,
  12515. 0x0E,
  12516. 0x0F,
  12517. 0x10,
  12518. 0x11,
  12519. 0x12,
  12520. 0x13,
  12521. 0x14,
  12522. 0x15,
  12523. 0x16,
  12524. 0x17,
  12525. 0x18,
  12526. 0x19,
  12527. 0x1A,
  12528. 0x1B,
  12529. 0x1C,
  12530. 0x1D,
  12531. 0x1E,
  12532. 0x1F,
  12533. 0x20,
  12534. 0x21,
  12535. 0x22,
  12536. 0x23,
  12537. 0x25,
  12538. 0x26,
  12539. 0x28,
  12540. 0x2A,
  12541. 0x2C,
  12542. 0x2E,
  12543. 0x2F,
  12544. 0x31,
  12545. 0x33,
  12546. 0x35,
  12547. 0x37,
  12548. 0x3A,
  12549. 0x3C,
  12550. 0x3E,
  12551. 0x40,
  12552. 0x42,
  12553. 0x45,
  12554. 0x47,
  12555. 0x4A,
  12556. 0x4C,
  12557. 0x4E,
  12558. 0x51,
  12559. 0x54,
  12560. 0x56,
  12561. 0x59,
  12562. 0x5C,
  12563. 0x5E,
  12564. 0x61,
  12565. 0x64,
  12566. 0x67,
  12567. 0x6A,
  12568. 0x6D,
  12569. 0x70,
  12570. 0x73,
  12571. 0x76,
  12572. 0x79,
  12573. 0x7D,
  12574. 0x80,
  12575. 0x83,
  12576. 0x86,
  12577. 0x8A,
  12578. 0x8D,
  12579. 0x91,
  12580. 0x94,
  12581. 0x98,
  12582. 0x9C,
  12583. 0x9F,
  12584. 0xA3,
  12585. 0xA7,
  12586. 0xAB,
  12587. 0xAF,
  12588. 0xB4,
  12589. 0xB8,
  12590. 0xBC,
  12591. 0xC1,
  12592. 0xC5,
  12593. 0xCA,
  12594. 0xCE,
  12595. 0xD3,
  12596. 0xD8,
  12597. 0xDC,
  12598. 0xE1,
  12599. 0xE6,
  12600. 0xEB,
  12601. 0xF0,
  12602. 0xF5,
  12603. 0xFA,
  12604. 0xFF
  12605. },
  12606.  
  12607. Package (0x65)
  12608. {
  12609. 0x03,
  12610. 0x04,
  12611. 0x05,
  12612. 0x06,
  12613. 0x07,
  12614. 0x08,
  12615. 0x09,
  12616. 0x0A,
  12617. 0x0B,
  12618. 0x0C,
  12619. 0x0D,
  12620. 0x0E,
  12621. 0x0F,
  12622. 0x10,
  12623. 0x11,
  12624. 0x12,
  12625. 0x13,
  12626. 0x14,
  12627. 0x15,
  12628. 0x16,
  12629. 0x17,
  12630. 0x18,
  12631. 0x19,
  12632. 0x1A,
  12633. 0x1C,
  12634. 0x1D,
  12635. 0x1F,
  12636. 0x21,
  12637. 0x22,
  12638. 0x24,
  12639. 0x26,
  12640. 0x28,
  12641. 0x2A,
  12642. 0x2C,
  12643. 0x2E,
  12644. 0x30,
  12645. 0x33,
  12646. 0x35,
  12647. 0x37,
  12648. 0x3A,
  12649. 0x3C,
  12650. 0x3F,
  12651. 0x41,
  12652. 0x44,
  12653. 0x46,
  12654. 0x49,
  12655. 0x4C,
  12656. 0x4F,
  12657. 0x51,
  12658. 0x54,
  12659. 0x57,
  12660. 0x5A,
  12661. 0x5D,
  12662. 0x61,
  12663. 0x64,
  12664. 0x67,
  12665. 0x6A,
  12666. 0x6E,
  12667. 0x71,
  12668. 0x75,
  12669. 0x78,
  12670. 0x7C,
  12671. 0x80,
  12672. 0x83,
  12673. 0x87,
  12674. 0x8B,
  12675. 0x8F,
  12676. 0x93,
  12677. 0x97,
  12678. 0x9B,
  12679. 0x9F,
  12680. 0xA3,
  12681. 0xA8,
  12682. 0xAC,
  12683. 0xB0,
  12684. 0xB5,
  12685. 0xB9,
  12686. 0xBE,
  12687. 0xC3,
  12688. 0xC7,
  12689. 0xCC,
  12690. 0xCE,
  12691. 0xD1,
  12692. 0xD3,
  12693. 0xD6,
  12694. 0xD8,
  12695. 0xDB,
  12696. 0xDD,
  12697. 0xE0,
  12698. 0xE2,
  12699. 0xE5,
  12700. 0xE7,
  12701. 0xEA,
  12702. 0xEC,
  12703. 0xEF,
  12704. 0xF2,
  12705. 0xF4,
  12706. 0xF7,
  12707. 0xFA,
  12708. 0xFC,
  12709. 0xFF
  12710. },
  12711.  
  12712. Package (0x65)
  12713. {
  12714. 0x03,
  12715. 0x04,
  12716. 0x05,
  12717. 0x06,
  12718. 0x07,
  12719. 0x08,
  12720. 0x09,
  12721. 0x0A,
  12722. 0x0B,
  12723. 0x0C,
  12724. 0x0D,
  12725. 0x0E,
  12726. 0x0F,
  12727. 0x10,
  12728. 0x11,
  12729. 0x12,
  12730. 0x13,
  12731. 0x14,
  12732. 0x15,
  12733. 0x16,
  12734. 0x17,
  12735. 0x18,
  12736. 0x19,
  12737. 0x1A,
  12738. 0x1C,
  12739. 0x1D,
  12740. 0x1F,
  12741. 0x21,
  12742. 0x22,
  12743. 0x24,
  12744. 0x26,
  12745. 0x28,
  12746. 0x2A,
  12747. 0x2C,
  12748. 0x2E,
  12749. 0x30,
  12750. 0x33,
  12751. 0x35,
  12752. 0x37,
  12753. 0x3A,
  12754. 0x3C,
  12755. 0x3F,
  12756. 0x41,
  12757. 0x44,
  12758. 0x46,
  12759. 0x49,
  12760. 0x4C,
  12761. 0x4F,
  12762. 0x51,
  12763. 0x54,
  12764. 0x57,
  12765. 0x5A,
  12766. 0x5D,
  12767. 0x61,
  12768. 0x64,
  12769. 0x67,
  12770. 0x6A,
  12771. 0x6E,
  12772. 0x71,
  12773. 0x75,
  12774. 0x78,
  12775. 0x7C,
  12776. 0x80,
  12777. 0x83,
  12778. 0x87,
  12779. 0x8B,
  12780. 0x8F,
  12781. 0x93,
  12782. 0x97,
  12783. 0x9B,
  12784. 0x9F,
  12785. 0xA3,
  12786. 0xA8,
  12787. 0xAC,
  12788. 0xB0,
  12789. 0xB5,
  12790. 0xB9,
  12791. 0xBE,
  12792. 0xC3,
  12793. 0xC7,
  12794. 0xCC,
  12795. 0xCE,
  12796. 0xD1,
  12797. 0xD3,
  12798. 0xD6,
  12799. 0xD8,
  12800. 0xDB,
  12801. 0xDD,
  12802. 0xE0,
  12803. 0xE2,
  12804. 0xE5,
  12805. 0xE7,
  12806. 0xEA,
  12807. 0xEC,
  12808. 0xEF,
  12809. 0xF2,
  12810. 0xF4,
  12811. 0xF7,
  12812. 0xFA,
  12813. 0xFC,
  12814. 0xFF
  12815. }
  12816. })
  12817. Method (_Q14, 0, NotSerialized) // _Qxx: EC Query
  12818. {
  12819. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x8000))
  12820. {
  12821. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1010)
  12822. }
  12823.  
  12824. If (\NBCF)
  12825. {
  12826. If (\VIGD)
  12827. {
  12828. Notify (\_SB.PCI0.VID.LCD0, 0x86) // Device-Specific
  12829. }
  12830. Else
  12831. {
  12832. Notify (\_SB.PCI0.PEG.VID.LCD0, 0x86) // Device-Specific
  12833. }
  12834. }
  12835. Else
  12836. {
  12837. Local0 = \BRLV
  12838. If ((Local0 != 0x0F))
  12839. {
  12840. Local0++
  12841. \BRLV = Local0
  12842. }
  12843.  
  12844. If (\VIGD)
  12845. {
  12846. \UCMS (0x16)
  12847. \_SB.PCI0.LPC.EC.BRNS ()
  12848. }
  12849. Else
  12850. {
  12851. \VBRC (Local0)
  12852. }
  12853.  
  12854. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6050)
  12855. }
  12856. }
  12857.  
  12858. Method (_Q15, 0, NotSerialized) // _Qxx: EC Query
  12859. {
  12860. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00010000))
  12861. {
  12862. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1011)
  12863. }
  12864.  
  12865. If (\NBCF)
  12866. {
  12867. If (\VIGD)
  12868. {
  12869. Notify (\_SB.PCI0.VID.LCD0, 0x87) // Device-Specific
  12870. }
  12871. Else
  12872. {
  12873. Notify (\_SB.PCI0.PEG.VID.LCD0, 0x87) // Device-Specific
  12874. }
  12875. }
  12876. Else
  12877. {
  12878. Local0 = \BRLV
  12879. If (Local0)
  12880. {
  12881. Local0--
  12882. \BRLV = Local0
  12883. }
  12884.  
  12885. If (\VIGD)
  12886. {
  12887. \UCMS (0x16)
  12888. \_SB.PCI0.LPC.EC.BRNS ()
  12889. }
  12890. Else
  12891. {
  12892. \VBRC (Local0)
  12893. }
  12894.  
  12895. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6050)
  12896. }
  12897.  
  12898. Return (Zero)
  12899. }
  12900.  
  12901. Method (BRNS, 0, NotSerialized)
  12902. {
  12903. Local0 = (\BRLV + 0x02)
  12904. Local3 = \BRTN
  12905. If (\_SB.PCI0.VID.DRDY (If ((0x00 == Local0))
  12906. {
  12907. Local1 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x14))
  12908. Local2 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x12))
  12909. }, Else
  12910. {
  12911. Local1 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x15))
  12912. Local2 = DerefOf (Index (DerefOf (Index (BRTB, Local3)), 0x13))
  12913. },
  12914. Local2 = (Local1 | (Local2 << 0x09)), \_SB.PCI0.VID.AINT (0x03, Local2), Local2 = DerefOf (Index (
  12915. DerefOf (Index (BRTB, Local3)), Local0)), \_SB.PCI0.VID.AINT (0x01, Local2))) {}
  12916. Else
  12917. {
  12918. \UCMS (0x12)
  12919. }
  12920. }
  12921.  
  12922. Method (BRCF, 1, NotSerialized)
  12923. {
  12924. If ((Arg0 < 0x00))
  12925. {
  12926. Return (0x00)
  12927. }
  12928.  
  12929. If ((Arg0 > 0x64))
  12930. {
  12931. Return (0x0F)
  12932. }
  12933.  
  12934. Local0 = (Arg0 + 0x03)
  12935. Local0 *= 0x0F
  12936. Divide (Local0, 0x64, Local0, Local1)
  12937. Return (Local1)
  12938. }
  12939.  
  12940. Method (BRCD, 1, NotSerialized)
  12941. {
  12942. Local0 = DerefOf (Index (DerefOf (Index (BRTD, \BRTN)), Arg0))
  12943. Return (Local0)
  12944. }
  12945.  
  12946. Method (BFRQ, 0, NotSerialized)
  12947. {
  12948. Local0 = 0x80000100
  12949. Local1 = DerefOf (Index (DerefOf (Index (BRTB, \BRTN)), 0x13))
  12950. Local0 |= (Local1 << 0x09)
  12951. Local1 = DerefOf (Index (DerefOf (Index (BRTB, \BRTN)), 0x15))
  12952. Local0 |= Local1
  12953. Return (Local0)
  12954. }
  12955. }
  12956.  
  12957. Scope (\_SB.PCI0.LPC.EC)
  12958. {
  12959. Method (_Q19, 0, NotSerialized) // _Qxx: EC Query
  12960. {
  12961. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00800000))
  12962. {
  12963. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1018)
  12964. }
  12965.  
  12966. \UCMS (0x03)
  12967. }
  12968. }
  12969.  
  12970. Scope (\_SB.PCI0.LPC.EC)
  12971. {
  12972. Method (_Q63, 0, NotSerialized) // _Qxx: EC Query
  12973. {
  12974. If (\_SB.PCI0.LPC.EC.HKEY.MHKK (0x01, 0x00080000))
  12975. {
  12976. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x1014)
  12977. }
  12978.  
  12979. \UCMS (0x0B)
  12980. }
  12981. }
  12982.  
  12983. Scope (\_SB.PCI0.LPC.EC)
  12984. {
  12985. Method (_Q70, 0, NotSerialized) // _Qxx: EC Query
  12986. {
  12987. Noop
  12988. }
  12989.  
  12990. Method (_Q72, 0, NotSerialized) // _Qxx: EC Query
  12991. {
  12992. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6005)
  12993. }
  12994.  
  12995. Method (_Q73, 0, NotSerialized) // _Qxx: EC Query
  12996. {
  12997. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6005)
  12998. }
  12999.  
  13000. Method (FNST, 0, NotSerialized)
  13001. {
  13002. Noop
  13003. }
  13004. }
  13005.  
  13006. Scope (\_SB.PCI0.LPC.EC.HKEY)
  13007. {
  13008. Method (GHSL, 1, NotSerialized)
  13009. {
  13010. Return (0x00)
  13011. }
  13012.  
  13013. Method (SHSL, 1, NotSerialized)
  13014. {
  13015. Return (0x00)
  13016. }
  13017. }
  13018.  
  13019. Scope (\_SB.PCI0.LPC.EC.HKEY)
  13020. {
  13021. Name (WGFL, 0x00)
  13022. Method (WSIF, 0, NotSerialized)
  13023. {
  13024. Return (0x00)
  13025. }
  13026.  
  13027. Method (WLSW, 0, NotSerialized)
  13028. {
  13029. Return (0x00010001)
  13030. }
  13031.  
  13032. Method (GWAN, 0, NotSerialized)
  13033. {
  13034. Local0 = 0x00
  13035. If ((WGFL & 0x01))
  13036. {
  13037. Local0 |= 0x01
  13038. }
  13039.  
  13040. If ((WGFL & 0x08))
  13041. {
  13042. Return (Local0)
  13043. }
  13044.  
  13045. If (WPWS ())
  13046. {
  13047. Local0 |= 0x02
  13048. }
  13049.  
  13050. Local0 |= 0x04
  13051. Return (Local0)
  13052. }
  13053.  
  13054. Method (SWAN, 1, NotSerialized)
  13055. {
  13056. If ((Arg0 & 0x02))
  13057. {
  13058. WPWC (0x01)
  13059. }
  13060. Else
  13061. {
  13062. WPWC (0x00)
  13063. }
  13064. }
  13065.  
  13066. Method (GBDC, 0, NotSerialized)
  13067. {
  13068. Local0 = 0x00
  13069. If ((WGFL & 0x10))
  13070. {
  13071. Local0 |= 0x01
  13072. }
  13073.  
  13074. If ((WGFL & 0x80))
  13075. {
  13076. Return (Local0)
  13077. }
  13078.  
  13079. If (BPWS ())
  13080. {
  13081. Local0 |= 0x02
  13082. }
  13083.  
  13084. Local0 |= 0x04
  13085. Return (Local0)
  13086. }
  13087.  
  13088. Method (SBDC, 1, NotSerialized)
  13089. {
  13090. If ((Arg0 & 0x02))
  13091. {
  13092. BPWC (0x01)
  13093. }
  13094. Else
  13095. {
  13096. BPWC (0x00)
  13097. }
  13098. }
  13099.  
  13100. Method (WPWS, 0, NotSerialized)
  13101. {
  13102. If (\H8DR)
  13103. {
  13104. Local0 = \_SB.PCI0.LPC.EC.DCWW
  13105. }
  13106. Else
  13107. {
  13108. Local0 = ((\RBEC (0x3A) & 0x40) >> 0x06)
  13109. }
  13110.  
  13111. Return (Local0)
  13112. }
  13113.  
  13114. Method (WPWC, 1, NotSerialized)
  13115. {
  13116. If ((Arg0 && ((WGFL & 0x01) && !(WGFL & 0x08
  13117. ))))
  13118. {
  13119. If (\H8DR)
  13120. {
  13121. \_SB.PCI0.LPC.EC.DCWW = One
  13122. }
  13123. Else
  13124. {
  13125. \MBEC (0x3A, 0xFF, 0x40)
  13126. }
  13127.  
  13128. WGFL |= 0x02
  13129. }
  13130. Else
  13131. {
  13132. If (\H8DR)
  13133. {
  13134. \_SB.PCI0.LPC.EC.DCWW = Zero
  13135. }
  13136. Else
  13137. {
  13138. \MBEC (0x3A, 0xBF, 0x00)
  13139. }
  13140.  
  13141. WGFL &= ~0x02
  13142. }
  13143. }
  13144.  
  13145. Method (BPWS, 0, NotSerialized)
  13146. {
  13147. If (\H8DR)
  13148. {
  13149. Local0 = \_SB.PCI0.LPC.EC.DCBD
  13150. }
  13151. Else
  13152. {
  13153. Local0 = ((\RBEC (0x3A) & 0x10) >> 0x04)
  13154. }
  13155.  
  13156. Return (Local0)
  13157. }
  13158.  
  13159. Method (BPWC, 1, NotSerialized)
  13160. {
  13161. If ((Arg0 && ((WGFL & 0x10) && !(WGFL & 0x80
  13162. ))))
  13163. {
  13164. If (\H8DR)
  13165. {
  13166. \_SB.PCI0.LPC.EC.DCBD = One
  13167. }
  13168. Else
  13169. {
  13170. \MBEC (0x3A, 0xFF, 0x10)
  13171. }
  13172.  
  13173. WGFL |= 0x20
  13174. }
  13175. Else
  13176. {
  13177. If (\H8DR)
  13178. {
  13179. \_SB.PCI0.LPC.EC.DCBD = Zero
  13180. }
  13181. Else
  13182. {
  13183. \MBEC (0x3A, 0xEF, 0x00)
  13184. }
  13185.  
  13186. WGFL &= ~0x20
  13187. }
  13188. }
  13189.  
  13190. Method (WGIN, 0, NotSerialized)
  13191. {
  13192. WGFL = 0x00
  13193. WGFL = \WGSV (0x01)
  13194. If (\WIN8)
  13195. {
  13196. If ((WGFL && 0x10))
  13197. {
  13198. BPWC (0x01)
  13199. }
  13200. }
  13201.  
  13202. If (WPWS ())
  13203. {
  13204. WGFL |= 0x02
  13205. }
  13206.  
  13207. If (BPWS ())
  13208. {
  13209. WGFL |= 0x20
  13210. }
  13211. }
  13212.  
  13213. Method (WGPS, 1, NotSerialized)
  13214. {
  13215. If ((Arg0 >= 0x04))
  13216. {
  13217. \BLTH (0x05)
  13218. }
  13219. }
  13220.  
  13221. Method (WGWK, 1, NotSerialized)
  13222. {
  13223. If ((WGFL & 0x20))
  13224. {
  13225. BPWC (0x01)
  13226. }
  13227.  
  13228. If ((WGFL & 0x02))
  13229. {
  13230. WPWC (0x01)
  13231. }
  13232. }
  13233. }
  13234.  
  13235. Scope (\_SB.PCI0.LPC.EC)
  13236. {
  13237. Method (_Q41, 0, NotSerialized) // _Qxx: EC Query
  13238. {
  13239. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x7000)
  13240. }
  13241. }
  13242.  
  13243. Device (WMI1)
  13244. {
  13245. Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */) // _HID: Hardware ID
  13246. Name (_UID, 0x01) // _UID: Unique ID
  13247. Name (_WDG, Buffer (0xB4)
  13248. {
  13249. /* 0000 */ 0x0E, 0x23, 0xF5, 0x51, 0x77, 0x96, 0xCD, 0x46, /* .#.Qw..F */
  13250. /* 0008 */ 0xA1, 0xCF, 0xC0, 0xB2, 0x3E, 0xE3, 0x4D, 0xB7, /* ....>.M. */
  13251. /* 0010 */ 0x41, 0x30, 0x50, 0x05, 0x64, 0x9A, 0x47, 0x98, /* A0P.d.G. */
  13252. /* 0018 */ 0xF5, 0x33, 0x33, 0x4E, 0xA7, 0x07, 0x8E, 0x25, /* .33N...% */
  13253. /* 0020 */ 0x1E, 0xBB, 0xC3, 0xA1, 0x41, 0x31, 0x01, 0x06, /* ....A1.. */
  13254. /* 0028 */ 0xEF, 0x54, 0x4B, 0x6A, 0xED, 0xA5, 0x33, 0x4D, /* .TKj..3M */
  13255. /* 0030 */ 0x94, 0x55, 0xB0, 0xD9, 0xB4, 0x8D, 0xF4, 0xB3, /* .U...... */
  13256. /* 0038 */ 0x41, 0x32, 0x01, 0x06, 0xB6, 0xEB, 0xF1, 0x74, /* A2.....t */
  13257. /* 0040 */ 0x7A, 0x92, 0x7D, 0x4C, 0x95, 0xDF, 0x69, 0x8E, /* z.}L..i. */
  13258. /* 0048 */ 0x21, 0xE8, 0x0E, 0xB5, 0x41, 0x33, 0x01, 0x06, /* !...A3.. */
  13259. /* 0050 */ 0xFF, 0x04, 0xEF, 0x7E, 0x28, 0x43, 0x7C, 0x44, /* ...~(C|D */
  13260. /* 0058 */ 0xB5, 0xBB, 0xD4, 0x49, 0x92, 0x5D, 0x53, 0x8D, /* ...I.]S. */
  13261. /* 0060 */ 0x41, 0x34, 0x01, 0x06, 0x9E, 0x15, 0xDB, 0x8A, /* A4...... */
  13262. /* 0068 */ 0x32, 0x1E, 0x5C, 0x45, 0xBC, 0x93, 0x30, 0x8A, /* 2.\E..0. */
  13263. /* 0070 */ 0x7E, 0xD9, 0x82, 0x46, 0x41, 0x35, 0x01, 0x01, /* ~..FA5.. */
  13264. /* 0078 */ 0xFD, 0xD9, 0x51, 0x26, 0x1C, 0x91, 0x69, 0x4B, /* ..Q&..iK */
  13265. /* 0080 */ 0xB9, 0x4E, 0xD0, 0xDE, 0xD5, 0x96, 0x3B, 0xD7, /* .N....;. */
  13266. /* 0088 */ 0x41, 0x36, 0x01, 0x06, 0x1A, 0x65, 0x64, 0x73, /* A6...eds */
  13267. /* 0090 */ 0x2F, 0x13, 0xE7, 0x4F, 0xAD, 0xAA, 0x40, 0xC6, /* /..O..@. */
  13268. /* 0098 */ 0xC7, 0xEE, 0x2E, 0x3B, 0x41, 0x37, 0x01, 0x06, /* ...;A7.. */
  13269. /* 00A0 */ 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11, /* !...f... */
  13270. /* 00A8 */ 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, /* ......). */
  13271. /* 00B0 */ 0x42, 0x41, 0x01, 0x00 /* BA.. */
  13272. })
  13273. Name (RETN, Package (0x05)
  13274. {
  13275. "Success",
  13276. "Not Supported",
  13277. "Invalid Parameter",
  13278. "Access Denied",
  13279. "System Busy"
  13280. })
  13281. Name (ITEM, Package (0x57)
  13282. {
  13283. Package (0x02)
  13284. {
  13285. 0x0E,
  13286. "WakeOnLAN"
  13287. },
  13288.  
  13289. Package (0x02)
  13290. {
  13291. 0x00,
  13292. "EthernetLANOptionROM"
  13293. },
  13294.  
  13295. Package (0x02)
  13296. {
  13297. 0x00,
  13298. "USBBIOSSupport"
  13299. },
  13300.  
  13301. Package (0x02)
  13302. {
  13303. 0x00,
  13304. "AlwaysOnUSB"
  13305. },
  13306.  
  13307. Package (0x02)
  13308. {
  13309. 0x01,
  13310. "TrackPoint"
  13311. },
  13312.  
  13313. Package (0x02)
  13314. {
  13315. 0x01,
  13316. "TouchPad"
  13317. },
  13318.  
  13319. Package (0x02)
  13320. {
  13321. 0x00,
  13322. "FnKeyLock"
  13323. },
  13324.  
  13325. Package (0x02)
  13326. {
  13327. 0x04,
  13328. "ThinkPadNumLock"
  13329. },
  13330.  
  13331. Package (0x02)
  13332. {
  13333. 0x0C,
  13334. "PowerOnNumLock"
  13335. },
  13336.  
  13337. Package (0x02)
  13338. {
  13339. 0x05,
  13340. "BootDisplayDevice"
  13341. },
  13342.  
  13343. Package (0x02)
  13344. {
  13345. 0x00,
  13346. "SpeedStep"
  13347. },
  13348.  
  13349. Package (0x02)
  13350. {
  13351. 0x09,
  13352. "AdaptiveThermalManagementAC"
  13353. },
  13354.  
  13355. Package (0x02)
  13356. {
  13357. 0x09,
  13358. "AdaptiveThermalManagementBattery"
  13359. },
  13360.  
  13361. Package (0x02)
  13362. {
  13363. 0x06,
  13364. "CDROMSpeed"
  13365. },
  13366.  
  13367. Package (0x02)
  13368. {
  13369. 0x01,
  13370. "CPUPowerManagement"
  13371. },
  13372.  
  13373. Package (0x02)
  13374. {
  13375. 0x00,
  13376. "PowerControlBeep"
  13377. },
  13378.  
  13379. Package (0x02)
  13380. {
  13381. 0x00,
  13382. "LowBatteryAlarm"
  13383. },
  13384.  
  13385. Package (0x02)
  13386. {
  13387. 0x00,
  13388. "PasswordBeep"
  13389. },
  13390.  
  13391. Package (0x02)
  13392. {
  13393. 0x00,
  13394. "KeyboardBeep"
  13395. },
  13396.  
  13397. Package (0x02)
  13398. {
  13399. 0x00,
  13400. "ExtendedMemoryTest"
  13401. },
  13402.  
  13403. Package (0x02)
  13404. {
  13405. 0x07,
  13406. "SATAControllerMode"
  13407. },
  13408.  
  13409. Package (0x02)
  13410. {
  13411. 0x00,
  13412. "CoreMultiProcessing"
  13413. },
  13414.  
  13415. Package (0x02)
  13416. {
  13417. 0x00,
  13418. "VirtualizationTechnology"
  13419. },
  13420.  
  13421. Package (0x02)
  13422. {
  13423. 0x00,
  13424. "LockBIOSSetting"
  13425. },
  13426.  
  13427. Package (0x02)
  13428. {
  13429. 0x0B,
  13430. "MinimumPasswordLength"
  13431. },
  13432.  
  13433. Package (0x02)
  13434. {
  13435. 0x00,
  13436. "BIOSPasswordAtUnattendedBoot"
  13437. },
  13438.  
  13439. Package (0x02)
  13440. {
  13441. 0x00,
  13442. "FingerprintPredesktopAuthentication"
  13443. },
  13444.  
  13445. Package (0x02)
  13446. {
  13447. 0x08,
  13448. "FingerprintReaderPriority"
  13449. },
  13450.  
  13451. Package (0x02)
  13452. {
  13453. 0x03,
  13454. "FingerprintSecurityMode"
  13455. },
  13456.  
  13457. Package (0x02)
  13458. {
  13459. 0x02,
  13460. "SecurityChip"
  13461. },
  13462.  
  13463. Package (0x02)
  13464. {
  13465. 0x00,
  13466. "BIOSUpdateByEndUsers"
  13467. },
  13468.  
  13469. Package (0x02)
  13470. {
  13471. 0x00,
  13472. "DataExecutionPrevention"
  13473. },
  13474.  
  13475. Package (0x02)
  13476. {
  13477. 0x00,
  13478. "EthernetLANAccess"
  13479. },
  13480.  
  13481. Package (0x02)
  13482. {
  13483. 0x00,
  13484. "WirelessLANAccess"
  13485. },
  13486.  
  13487. Package (0x02)
  13488. {
  13489. 0x00,
  13490. "WirelessWANAccess"
  13491. },
  13492.  
  13493. Package (0x02)
  13494. {
  13495. 0x00,
  13496. "BluetoothAccess"
  13497. },
  13498.  
  13499. Package (0x02)
  13500. {
  13501. 0x00,
  13502. "WirelessUSBAccess"
  13503. },
  13504.  
  13505. Package (0x02)
  13506. {
  13507. 0x00,
  13508. "ModemAccess"
  13509. },
  13510.  
  13511. Package (0x02)
  13512. {
  13513. 0x00,
  13514. "USBPortAccess"
  13515. },
  13516.  
  13517. Package (0x02)
  13518. {
  13519. 0x00,
  13520. "IEEE1394Access"
  13521. },
  13522.  
  13523. Package (0x02)
  13524. {
  13525. 0x00,
  13526. "ExpressCardAccess"
  13527. },
  13528.  
  13529. Package (0x02)
  13530. {
  13531. 0x00,
  13532. "PCIExpressSlotAccess"
  13533. },
  13534.  
  13535. Package (0x02)
  13536. {
  13537. 0x00,
  13538. "UltrabayAccess"
  13539. },
  13540.  
  13541. Package (0x02)
  13542. {
  13543. 0x00,
  13544. "MemoryCardSlotAccess"
  13545. },
  13546.  
  13547. Package (0x02)
  13548. {
  13549. 0x00,
  13550. "SmartCardSlotAccess"
  13551. },
  13552.  
  13553. Package (0x02)
  13554. {
  13555. 0x00,
  13556. "IntegratedCameraAccess"
  13557. },
  13558.  
  13559. Package (0x02)
  13560. {
  13561. 0x00,
  13562. "MicrophoneAccess"
  13563. },
  13564.  
  13565. Package (0x02)
  13566. {
  13567. 0x0A,
  13568. "BootMode"
  13569. },
  13570.  
  13571. Package (0x02)
  13572. {
  13573. 0x00,
  13574. "StartupOptionKeys"
  13575. },
  13576.  
  13577. Package (0x02)
  13578. {
  13579. 0x00,
  13580. "BootDeviceListF12Option"
  13581. },
  13582.  
  13583. Package (0x02)
  13584. {
  13585. 0x64,
  13586. "BootOrder"
  13587. },
  13588.  
  13589. Package (0x02)
  13590. {
  13591. 0x00,
  13592. "WiMAXAccess"
  13593. },
  13594.  
  13595. Package (0x02)
  13596. {
  13597. 0x0D,
  13598. "GraphicsDevice"
  13599. },
  13600.  
  13601. Package (0x02)
  13602. {
  13603. 0x00,
  13604. "TXTFeature"
  13605. },
  13606.  
  13607. Package (0x02)
  13608. {
  13609. 0x00,
  13610. "VTdFeature"
  13611. },
  13612.  
  13613. Package (0x02)
  13614. {
  13615. 0x0F,
  13616. "AMTControl"
  13617. },
  13618.  
  13619. Package (0x02)
  13620. {
  13621. 0x00,
  13622. "FingerprintPasswordAuthentication"
  13623. },
  13624.  
  13625. Package (0x02)
  13626. {
  13627. 0x00,
  13628. "FingerprintReaderAccess"
  13629. },
  13630.  
  13631. Package (0x02)
  13632. {
  13633. 0x00,
  13634. "OsDetectionForSwitchableGraphics"
  13635. },
  13636.  
  13637. Package (0x02)
  13638. {
  13639. 0x0F,
  13640. "ComputraceModuleActivation"
  13641. },
  13642.  
  13643. Package (0x02)
  13644. {
  13645. 0x01,
  13646. "PCIExpressPowerManagement"
  13647. },
  13648.  
  13649. Package (0x02)
  13650. {
  13651. 0x0F,
  13652. "ATpModuleActivation"
  13653. },
  13654.  
  13655. Package (0x02)
  13656. {
  13657. 0x00,
  13658. "eSATAPortAccess"
  13659. },
  13660.  
  13661. Package (0x02)
  13662. {
  13663. 0x00,
  13664. "HardwarePasswordManager"
  13665. },
  13666.  
  13667. Package (0x02)
  13668. {
  13669. 0x00,
  13670. "HyperThreadingTechnology"
  13671. },
  13672.  
  13673. Package (0x02)
  13674. {
  13675. 0x00,
  13676. "FnCtrlKeySwap"
  13677. },
  13678.  
  13679. Package (0x02)
  13680. {
  13681. 0x00,
  13682. "BIOSPasswordAtReboot"
  13683. },
  13684.  
  13685. Package (0x02)
  13686. {
  13687. 0x00,
  13688. "OnByAcAttach"
  13689. },
  13690.  
  13691. Package (0x02)
  13692. {
  13693. 0x64,
  13694. "NetworkBoot"
  13695. },
  13696.  
  13697. Package (0x02)
  13698. {
  13699. 0x00,
  13700. "BootOrderLock"
  13701. },
  13702.  
  13703. Package (0x02)
  13704. {
  13705. 0x10,
  13706. "USB30Mode"
  13707. },
  13708.  
  13709. Package (0x02)
  13710. {
  13711. 0x11,
  13712. "ExpressCardSpeed"
  13713. },
  13714.  
  13715. Package (0x02)
  13716. {
  13717. 0x00,
  13718. "RapidStartTechnology"
  13719. },
  13720.  
  13721. Package (0x02)
  13722. {
  13723. 0x12,
  13724. "KeyboardIllumination"
  13725. },
  13726.  
  13727. Package (0x02)
  13728. {
  13729. 0x00,
  13730. "IPv4NetworkStack"
  13731. },
  13732.  
  13733. Package (0x02)
  13734. {
  13735. 0x00,
  13736. "IPv6NetworkStack"
  13737. },
  13738.  
  13739. Package (0x02)
  13740. {
  13741. 0x13,
  13742. "UefiPxeBootPriority"
  13743. },
  13744.  
  13745. Package (0x02)
  13746. {
  13747. 0x00,
  13748. "PhysicalPresenceForTpmProvision"
  13749. },
  13750.  
  13751. Package (0x02)
  13752. {
  13753. 0x00,
  13754. "PhysicalPresenceForTpmClear"
  13755. },
  13756.  
  13757. Package (0x02)
  13758. {
  13759. 0x00,
  13760. "SecureRollBackPrevention"
  13761. },
  13762.  
  13763. Package (0x02)
  13764. {
  13765. 0x00,
  13766. "SecureBoot"
  13767. },
  13768.  
  13769. Package (0x02)
  13770. {
  13771. 0x00,
  13772. "NfcAccess"
  13773. },
  13774.  
  13775. Package (0x02)
  13776. {
  13777. 0x00,
  13778. "BottomCoverTamperDetected"
  13779. },
  13780.  
  13781. Package (0x02)
  13782. {
  13783. 0x14,
  13784. "DiscreteGFXPerfMode"
  13785. },
  13786.  
  13787. Package (0x02)
  13788. {
  13789. 0x15,
  13790. "TotalGraphicsMemory"
  13791. },
  13792.  
  13793. Package (0x02)
  13794. {
  13795. 0x16,
  13796. "SmartConnectTechnology"
  13797. },
  13798.  
  13799. Package (0x02)
  13800. {
  13801. 0x17,
  13802. "BootTimeExtension"
  13803. }
  13804. })
  13805. Name (VSEL, Package (0x18)
  13806. {
  13807. Package (0x02)
  13808. {
  13809. "Disable",
  13810. "Enable"
  13811. },
  13812.  
  13813. Package (0x02)
  13814. {
  13815. "Disable",
  13816. "Automatic"
  13817. },
  13818.  
  13819. Package (0x03)
  13820. {
  13821. "Active",
  13822. "Inactive",
  13823. "Disable"
  13824. },
  13825.  
  13826. Package (0x02)
  13827. {
  13828. "Normal",
  13829. "High"
  13830. },
  13831.  
  13832. Package (0x02)
  13833. {
  13834. "Independent",
  13835. "Synchronized"
  13836. },
  13837.  
  13838. Package (0x04)
  13839. {
  13840. "LCD",
  13841. "HDMI",
  13842. "DisplayPort",
  13843. "DockDisplay"
  13844. },
  13845.  
  13846. Package (0x03)
  13847. {
  13848. "High",
  13849. "Normal",
  13850. "Silent"
  13851. },
  13852.  
  13853. Package (0x02)
  13854. {
  13855. "Compatibility",
  13856. "AHCI"
  13857. },
  13858.  
  13859. Package (0x02)
  13860. {
  13861. "External",
  13862. "InternalOnly"
  13863. },
  13864.  
  13865. Package (0x02)
  13866. {
  13867. "MaximizePerformance",
  13868. "Balanced"
  13869. },
  13870.  
  13871. Package (0x02)
  13872. {
  13873. "Quick",
  13874. "Diagnostics"
  13875. },
  13876.  
  13877. Package (0x0A)
  13878. {
  13879. "Disable",
  13880. "4",
  13881. "5",
  13882. "6",
  13883. "7",
  13884. "8",
  13885. "9",
  13886. "10",
  13887. "11",
  13888. "12"
  13889. },
  13890.  
  13891. Package (0x03)
  13892. {
  13893. "Auto",
  13894. "On",
  13895. "Off"
  13896. },
  13897.  
  13898. Package (0x03)
  13899. {
  13900. "IntegratedGfx",
  13901. "",
  13902. "SwitchableGfx"
  13903. },
  13904.  
  13905. Package (0x04)
  13906. {
  13907. "Disable",
  13908. "ACOnly",
  13909. "ACandBattery",
  13910. "Enable"
  13911. },
  13912.  
  13913. Package (0x03)
  13914. {
  13915. "Disable",
  13916. "Enable",
  13917. "Disable"
  13918. },
  13919.  
  13920. Package (0x03)
  13921. {
  13922. "Disable",
  13923. "Enable",
  13924. "Automatic"
  13925. },
  13926.  
  13927. Package (0x02)
  13928. {
  13929. "Generation1",
  13930. "Automatic"
  13931. },
  13932.  
  13933. Package (0x03)
  13934. {
  13935. "ThinkLightOnly",
  13936. "BacklightOnly",
  13937. "Both"
  13938. },
  13939.  
  13940. Package (0x02)
  13941. {
  13942. "IPv6First",
  13943. "IPv4First"
  13944. },
  13945.  
  13946. Package (0x02)
  13947. {
  13948. "Balanced",
  13949. "HighPerformance"
  13950. },
  13951.  
  13952. Package (0x02)
  13953. {
  13954. "256MB",
  13955. "512MB"
  13956. },
  13957.  
  13958. Package (0x02)
  13959. {
  13960. "Enable",
  13961. "Disable"
  13962. },
  13963.  
  13964. Package (0x0B)
  13965. {
  13966. "Disable",
  13967. "1",
  13968. "2",
  13969. "3",
  13970. "",
  13971. "5",
  13972. "",
  13973. "",
  13974. "",
  13975. "",
  13976. "10"
  13977. }
  13978. })
  13979. Name (VLST, Package (0x0F)
  13980. {
  13981. "HDD0",
  13982. "HDD1",
  13983. "HDD2",
  13984. "HDD3",
  13985. "HDD4",
  13986. "PCILAN",
  13987. "ATAPICD0",
  13988. "ATAPICD1",
  13989. "ATAPICD2",
  13990. "USBFDD",
  13991. "USBCD",
  13992. "USBHDD",
  13993. "OtherHDD",
  13994. "OtherCD",
  13995. "NODEV"
  13996. })
  13997. Name (PENC, Package (0x02)
  13998. {
  13999. "ascii",
  14000. "scancode"
  14001. })
  14002. Name (PKBD, Package (0x03)
  14003. {
  14004. "us",
  14005. "fr",
  14006. "gr"
  14007. })
  14008. Name (PTYP, Package (0x08)
  14009. {
  14010. "pap",
  14011. "pop",
  14012. "uhdp1",
  14013. "mhdp1",
  14014. "uhdp2",
  14015. "mhdp2",
  14016. "uhdp3",
  14017. "mhdp3"
  14018. })
  14019. Mutex (MWMI, 0x07)
  14020. Name (PCFG, Buffer (0x18) {})
  14021. Name (IBUF, Buffer (0x0100) {})
  14022. Name (ILEN, 0x00)
  14023. Name (PSTR, Buffer (0x81) {})
  14024. Method (WQA0, 1, NotSerialized)
  14025. {
  14026. Acquire (MWMI, 0xFFFF)
  14027. If ((\WMIS (0x00, Arg0) != 0x00))
  14028. {
  14029. Release (MWMI)
  14030. Return ("")
  14031. }
  14032.  
  14033. Local0 = DerefOf (Index (ITEM, \WITM))
  14034. Local1 = DerefOf (Index (Local0, 0x00))
  14035. Local2 = DerefOf (Index (Local0, 0x01))
  14036. If ((Local1 < 0x64))
  14037. {
  14038. Concatenate (Local2, ",", Local6)
  14039. Local3 = DerefOf (Index (VSEL, Local1))
  14040. Concatenate (Local6, DerefOf (Index (Local3, \WSEL)), Local7)
  14041. }
  14042. Else
  14043. {
  14044. Local3 = SizeOf (VLST)
  14045. If ((\WLS0 <= Local3))
  14046. {
  14047. Concatenate (Local2, ",", Local7)
  14048. Concatenate (Local7, DerefOf (Index (VLST, \WLS0)), Local2)
  14049. }
  14050.  
  14051. If ((\WLS1 <= Local3))
  14052. {
  14053. Concatenate (Local2, ":", Local7)
  14054. Concatenate (Local7, DerefOf (Index (VLST, \WLS1)), Local2)
  14055. }
  14056.  
  14057. If ((\WLS2 <= Local3))
  14058. {
  14059. Concatenate (Local2, ":", Local7)
  14060. Concatenate (Local7, DerefOf (Index (VLST, \WLS2)), Local2)
  14061. }
  14062.  
  14063. If ((\WLS3 <= Local3))
  14064. {
  14065. Concatenate (Local2, ":", Local7)
  14066. Concatenate (Local7, DerefOf (Index (VLST, \WLS3)), Local2)
  14067. }
  14068.  
  14069. If ((\WLS4 <= Local3))
  14070. {
  14071. Concatenate (Local2, ":", Local7)
  14072. Concatenate (Local7, DerefOf (Index (VLST, \WLS4)), Local2)
  14073. }
  14074.  
  14075. If ((\WLS5 <= Local3))
  14076. {
  14077. Concatenate (Local2, ":", Local7)
  14078. Concatenate (Local7, DerefOf (Index (VLST, \WLS5)), Local2)
  14079. }
  14080.  
  14081. If ((\WLS6 <= Local3))
  14082. {
  14083. Concatenate (Local2, ":", Local7)
  14084. Concatenate (Local7, DerefOf (Index (VLST, \WLS6)), Local2)
  14085. }
  14086.  
  14087. If ((\WLS7 <= Local3))
  14088. {
  14089. Concatenate (Local2, ":", Local7)
  14090. Concatenate (Local7, DerefOf (Index (VLST, \WLS7)), Local2)
  14091. }
  14092.  
  14093. If ((\WLS8 <= Local3))
  14094. {
  14095. Concatenate (Local2, ":", Local7)
  14096. Concatenate (Local7, DerefOf (Index (VLST, \WLS8)), Local2)
  14097. }
  14098.  
  14099. If ((\WLS9 <= Local3))
  14100. {
  14101. Concatenate (Local2, ":", Local7)
  14102. Concatenate (Local7, DerefOf (Index (VLST, \WLS9)), Local2)
  14103. }
  14104.  
  14105. If ((\WLSA <= Local3))
  14106. {
  14107. Concatenate (Local2, ":", Local7)
  14108. Concatenate (Local7, DerefOf (Index (VLST, \WLSA)), Local2)
  14109. }
  14110.  
  14111. If ((\WLSB <= Local3))
  14112. {
  14113. Concatenate (Local2, ":", Local7)
  14114. Concatenate (Local7, DerefOf (Index (VLST, \WLSB)), Local2)
  14115. }
  14116.  
  14117. If ((\WLSC <= Local3))
  14118. {
  14119. Concatenate (Local2, ":", Local7)
  14120. Concatenate (Local7, DerefOf (Index (VLST, \WLSC)), Local2)
  14121. }
  14122.  
  14123. If ((\WLSD <= Local3))
  14124. {
  14125. Concatenate (Local2, ":", Local7)
  14126. Concatenate (Local7, DerefOf (Index (VLST, \WLSD)), Local2)
  14127. }
  14128.  
  14129. Local7 = Local2
  14130. }
  14131.  
  14132. Release (MWMI)
  14133. Return (Local7)
  14134. }
  14135.  
  14136. Method (WMA1, 3, NotSerialized)
  14137. {
  14138. Acquire (MWMI, 0xFFFF)
  14139. If ((SizeOf (Arg2) == 0x00))
  14140. {
  14141. Local0 = 0x02
  14142. }
  14143. Else
  14144. {
  14145. Local0 = CARG (Arg2)
  14146. If ((Local0 == 0x00))
  14147. {
  14148. Local0 = WSET (ITEM, VSEL)
  14149. If ((Local0 == 0x00))
  14150. {
  14151. Local0 = \WMIS (0x01, 0x00)
  14152. }
  14153. }
  14154. }
  14155.  
  14156. Release (MWMI)
  14157. Return (DerefOf (Index (RETN, Local0)))
  14158. }
  14159.  
  14160. Method (WMA2, 3, NotSerialized)
  14161. {
  14162. Acquire (MWMI, 0xFFFF)
  14163. Local0 = CARG (Arg2)
  14164. If ((Local0 == 0x00))
  14165. {
  14166. If ((ILEN != 0x00))
  14167. {
  14168. Local0 = CPAS (IBUF, 0x00)
  14169. }
  14170.  
  14171. If ((Local0 == 0x00))
  14172. {
  14173. Local0 = \WMIS (0x02, 0x00)
  14174. }
  14175. }
  14176.  
  14177. Release (MWMI)
  14178. Return (DerefOf (Index (RETN, Local0)))
  14179. }
  14180.  
  14181. Method (WMA3, 3, NotSerialized)
  14182. {
  14183. Acquire (MWMI, 0xFFFF)
  14184. Local0 = CARG (Arg2)
  14185. If ((Local0 == 0x00))
  14186. {
  14187. If ((ILEN != 0x00))
  14188. {
  14189. Local0 = CPAS (IBUF, 0x00)
  14190. }
  14191.  
  14192. If ((Local0 == 0x00))
  14193. {
  14194. Local0 = \WMIS (0x03, 0x00)
  14195. }
  14196. }
  14197.  
  14198. Release (MWMI)
  14199. Return (DerefOf (Index (RETN, Local0)))
  14200. }
  14201.  
  14202. Method (WMA4, 3, NotSerialized)
  14203. {
  14204. Acquire (MWMI, 0xFFFF)
  14205. Local0 = CARG (Arg2)
  14206. If ((Local0 == 0x00))
  14207. {
  14208. If ((ILEN != 0x00))
  14209. {
  14210. Local0 = CPAS (IBUF, 0x00)
  14211. }
  14212.  
  14213. If ((Local0 == 0x00))
  14214. {
  14215. Local0 = \WMIS (0x04, 0x00)
  14216. }
  14217. }
  14218.  
  14219. Release (MWMI)
  14220. Return (DerefOf (Index (RETN, Local0)))
  14221. }
  14222.  
  14223. Method (WQA5, 1, NotSerialized)
  14224. {
  14225. Acquire (MWMI, 0xFFFF)
  14226. Local0 = \WMIS (0x05, 0x00)
  14227. Index (PCFG, 0x00) = \WSPM
  14228. Index (PCFG, 0x04) = \WSPS
  14229. Index (PCFG, 0x08) = \WSMN
  14230. Index (PCFG, 0x0C) = \WSMX
  14231. Index (PCFG, 0x10) = \WSEN
  14232. Index (PCFG, 0x14) = \WSKB
  14233. Release (MWMI)
  14234. Return (PCFG) /* \_SB_.WMI1.PCFG */
  14235. }
  14236.  
  14237. Method (WMA6, 3, NotSerialized)
  14238. {
  14239. Acquire (MWMI, 0xFFFF)
  14240. If ((SizeOf (Arg2) == 0x00))
  14241. {
  14242. Local0 = 0x02
  14243. }
  14244. Else
  14245. {
  14246. Local0 = CARG (Arg2)
  14247. If ((Local0 == 0x00))
  14248. {
  14249. If ((ILEN != 0x00))
  14250. {
  14251. Local0 = SPAS (IBUF)
  14252. }
  14253.  
  14254. If ((Local0 == 0x00))
  14255. {
  14256. Local0 = \WMIS (0x06, 0x00)
  14257. }
  14258. }
  14259. }
  14260.  
  14261. Release (MWMI)
  14262. Return (DerefOf (Index (RETN, Local0)))
  14263. }
  14264.  
  14265. Method (WMA7, 3, NotSerialized)
  14266. {
  14267. If ((SizeOf (Arg2) == 0x00))
  14268. {
  14269. Return ("")
  14270. }
  14271.  
  14272. Local0 = CARG (Arg2)
  14273. If ((Local0 == 0x00))
  14274. {
  14275. Local1 = GITM (IBUF, ITEM)
  14276. If ((Local1 == Ones))
  14277. {
  14278. Return ("")
  14279. }
  14280.  
  14281. Local0 = DerefOf (Index (ITEM, Local1))
  14282. Local1 = DerefOf (Index (Local0, 0x00))
  14283. If ((Local1 < 0x64))
  14284. {
  14285. Local3 = DerefOf (Index (VSEL, Local1))
  14286. Local2 = DerefOf (Index (Local3, 0x00))
  14287. Local4 = SizeOf (Local3)
  14288. Local5 = 0x01
  14289. While ((Local5 < Local4))
  14290. {
  14291. Local6 = DerefOf (Index (Local3, Local5))
  14292. If ((SizeOf (Local6) != 0x00))
  14293. {
  14294. Concatenate (Local2, ",", Local7)
  14295. Concatenate (Local7, Local6, Local2)
  14296. }
  14297.  
  14298. Local5++
  14299. }
  14300. }
  14301. Else
  14302. {
  14303. Local2 = DerefOf (Index (VLST, 0x00))
  14304. Local4 = SizeOf (VLST)
  14305. Local5 = 0x01
  14306. While ((Local5 < Local4))
  14307. {
  14308. Local6 = DerefOf (Index (VLST, Local5))
  14309. Concatenate (Local2, ",", Local7)
  14310. Concatenate (Local7, Local6, Local2)
  14311. Local5++
  14312. }
  14313. }
  14314. }
  14315.  
  14316. Return (Local2)
  14317. }
  14318.  
  14319. Method (CARG, 1, NotSerialized)
  14320. {
  14321. Local0 = SizeOf (Arg0)
  14322. If ((Local0 == 0x00))
  14323. {
  14324. IBUF = 0x00
  14325. ILEN = 0x00
  14326. Return (0x00)
  14327. }
  14328.  
  14329. If ((ObjectType (Arg0) != 0x02))
  14330. {
  14331. Return (0x02)
  14332. }
  14333.  
  14334. If ((Local0 >= 0xFF))
  14335. {
  14336. Return (0x02)
  14337. }
  14338.  
  14339. IBUF = Arg0
  14340. Local0--
  14341. Local1 = DerefOf (Index (IBUF, Local0))
  14342. If (((Local1 == 0x3B) || (Local1 == 0x2A)))
  14343. {
  14344. Index (IBUF, Local0) = 0x00
  14345. ILEN = Local0
  14346. }
  14347. Else
  14348. {
  14349. ILEN = SizeOf (Arg0)
  14350. }
  14351.  
  14352. Return (0x00)
  14353. }
  14354.  
  14355. Method (SCMP, 3, NotSerialized)
  14356. {
  14357. Local0 = SizeOf (Arg0)
  14358. If ((Local0 == 0x00))
  14359. {
  14360. Return (0x00)
  14361. }
  14362.  
  14363. Local0++
  14364. Name (STR1, Buffer (Local0) {})
  14365. STR1 = Arg0
  14366. Local0--
  14367. Local1 = 0x00
  14368. Local2 = Arg2
  14369. While ((Local1 < Local0))
  14370. {
  14371. Local3 = DerefOf (Index (STR1, Local1))
  14372. Local4 = DerefOf (Index (Arg1, Local2))
  14373. If ((Local3 != Local4))
  14374. {
  14375. Return (0x00)
  14376. }
  14377.  
  14378. Local1++
  14379. Local2++
  14380. }
  14381.  
  14382. Local4 = DerefOf (Index (Arg1, Local2))
  14383. If ((Local4 == 0x00))
  14384. {
  14385. Return (0x01)
  14386. }
  14387.  
  14388. If (((Local4 == 0x2C) || (Local4 == 0x3A)))
  14389. {
  14390. Return (0x01)
  14391. }
  14392.  
  14393. Return (0x00)
  14394. }
  14395.  
  14396. Method (GITM, 2, NotSerialized)
  14397. {
  14398. Local0 = 0x00
  14399. Local1 = SizeOf (Arg1)
  14400. While ((Local0 < Local1))
  14401. {
  14402. Local3 = DerefOf (Index (DerefOf (Index (Arg1, Local0)), 0x01))
  14403. If (SCMP (Local3, Arg0, 0x00))
  14404. {
  14405. Return (Local0)
  14406. }
  14407.  
  14408. Local0++
  14409. }
  14410.  
  14411. Return (Ones)
  14412. }
  14413.  
  14414. Method (GSEL, 3, NotSerialized)
  14415. {
  14416. Local0 = 0x00
  14417. Local1 = SizeOf (Arg0)
  14418. While ((Local0 < Local1))
  14419. {
  14420. Local2 = DerefOf (Index (Arg0, Local0))
  14421. If (SCMP (Local2, Arg1, Arg2))
  14422. {
  14423. Return (Local0)
  14424. }
  14425.  
  14426. Local0++
  14427. }
  14428.  
  14429. Return (Ones)
  14430. }
  14431.  
  14432. Method (SLEN, 2, NotSerialized)
  14433. {
  14434. Local0 = DerefOf (Index (Arg0, Arg1))
  14435. Return (SizeOf (Local0))
  14436. }
  14437.  
  14438. Method (CLRP, 0, NotSerialized)
  14439. {
  14440. \WPAS = 0x00
  14441. \WPNW = 0x00
  14442. }
  14443.  
  14444. Method (GPAS, 2, NotSerialized)
  14445. {
  14446. Local0 = Arg1
  14447. Local1 = 0x00
  14448. While ((Local1 <= 0x80))
  14449. {
  14450. Local2 = DerefOf (Index (Arg0, Local0))
  14451. If (((Local2 == 0x2C) || (Local2 == 0x00)))
  14452. {
  14453. Index (PSTR, Local1) = 0x00
  14454. Return (Local1)
  14455. }
  14456.  
  14457. Index (PSTR, Local1) = Local2
  14458. Local0++
  14459. Local1++
  14460. }
  14461.  
  14462. Index (PSTR, Local1) = 0x00
  14463. Return (Ones)
  14464. }
  14465.  
  14466. Method (CPAS, 2, NotSerialized)
  14467. {
  14468. CLRP ()
  14469. Local0 = Arg1
  14470. Local1 = GPAS (Arg0, Local0)
  14471. If ((Local1 == Ones))
  14472. {
  14473. Return (0x02)
  14474. }
  14475.  
  14476. If ((Local1 == 0x00))
  14477. {
  14478. Return (0x02)
  14479. }
  14480.  
  14481. \WPAS = PSTR /* \_SB_.WMI1.PSTR */
  14482. Local0 += Local1
  14483. Local0++
  14484. Local6 = GSEL (PENC, Arg0, Local0)
  14485. If ((Local6 == Ones))
  14486. {
  14487. Return (0x02)
  14488. }
  14489.  
  14490. \WENC = Local6
  14491. If ((Local6 == 0x00))
  14492. {
  14493. Local0 += SLEN (PENC, 0x00)
  14494. If ((DerefOf (Index (Arg0, Local0)) != 0x2C))
  14495. {
  14496. Return (0x02)
  14497. }
  14498.  
  14499. Local0++
  14500. Local6 = GSEL (PKBD, Arg0, Local0)
  14501. If ((Local6 == Ones))
  14502. {
  14503. Return (0x02)
  14504. }
  14505.  
  14506. \WKBD = Local6
  14507. }
  14508.  
  14509. Return (0x00)
  14510. }
  14511.  
  14512. Method (SPAS, 1, NotSerialized)
  14513. {
  14514. CLRP ()
  14515. Local6 = GSEL (PTYP, Arg0, 0x00)
  14516. If ((Local6 == Ones))
  14517. {
  14518. Return (0x02)
  14519. }
  14520.  
  14521. \WPTY = Local6
  14522. Local0 = SLEN (PTYP, Local6)
  14523. If ((DerefOf (Index (Arg0, Local0)) != 0x2C))
  14524. {
  14525. Return (0x02)
  14526. }
  14527.  
  14528. Local0++
  14529. Local1 = GPAS (Arg0, Local0)
  14530. If (((Local1 == Ones) || (Local1 == 0x00)))
  14531. {
  14532. Return (0x02)
  14533. }
  14534.  
  14535. \WPAS = PSTR /* \_SB_.WMI1.PSTR */
  14536. Local0 += Local1
  14537. If ((DerefOf (Index (Arg0, Local0)) != 0x2C))
  14538. {
  14539. Return (0x02)
  14540. }
  14541.  
  14542. Local0++
  14543. Local1 = GPAS (Arg0, Local0)
  14544. If ((Local1 == Ones))
  14545. {
  14546. Return (0x02)
  14547. }
  14548.  
  14549. If ((Local1 == 0x00))
  14550. {
  14551. PSTR = 0x00
  14552. }
  14553.  
  14554. \WPNW = PSTR /* \_SB_.WMI1.PSTR */
  14555. Local0 += Local1
  14556. Local0++
  14557. Local6 = GSEL (PENC, Arg0, Local0)
  14558. If ((Local6 == Ones))
  14559. {
  14560. Return (0x02)
  14561. }
  14562.  
  14563. \WENC = Local6
  14564. If ((Local6 == 0x00))
  14565. {
  14566. Local0 += SLEN (PENC, 0x00)
  14567. If ((DerefOf (Index (Arg0, Local0)) != 0x2C))
  14568. {
  14569. Return (0x02)
  14570. }
  14571.  
  14572. Local0++
  14573. Local6 = GSEL (PKBD, Arg0, Local0)
  14574. If ((Local6 == Ones))
  14575. {
  14576. Return (0x02)
  14577. }
  14578.  
  14579. \WKBD = Local6
  14580. }
  14581.  
  14582. Return (0x00)
  14583. }
  14584.  
  14585. Method (WSET, 2, NotSerialized)
  14586. {
  14587. Local0 = ILEN /* \_SB_.WMI1.ILEN */
  14588. Local0++
  14589. Local1 = GITM (IBUF, Arg0)
  14590. If ((Local1 == Ones))
  14591. {
  14592. Return (0x02)
  14593. }
  14594.  
  14595. \WITM = Local1
  14596. Local3 = DerefOf (Index (Arg0, Local1))
  14597. Local4 = DerefOf (Index (Local3, 0x01))
  14598. Local2 = SizeOf (Local4)
  14599. Local2++
  14600. Local4 = DerefOf (Index (Local3, 0x00))
  14601. If ((Local4 < 0x64))
  14602. {
  14603. Local5 = DerefOf (Index (Arg1, Local4))
  14604. Local6 = GSEL (Local5, IBUF, Local2)
  14605. If ((Local6 == Ones))
  14606. {
  14607. Return (0x02)
  14608. }
  14609.  
  14610. \WSEL = Local6
  14611. Local2 += SLEN (Local5, Local6)
  14612. Local4 = DerefOf (Index (IBUF, Local2))
  14613. }
  14614. Else
  14615. {
  14616. \WLS0 = 0x3F
  14617. \WLS1 = 0x3F
  14618. \WLS2 = 0x3F
  14619. \WLS3 = 0x3F
  14620. \WLS4 = 0x3F
  14621. \WLS5 = 0x3F
  14622. \WLS6 = 0x3F
  14623. \WLS7 = 0x3F
  14624. \WLS8 = 0x3F
  14625. \WLS9 = 0x3F
  14626. \WLSA = 0x3F
  14627. \WLSB = 0x3F
  14628. \WLSC = 0x3F
  14629. \WLSD = 0x3F
  14630. Local6 = GSEL (VLST, IBUF, Local2)
  14631. If ((Local6 == Ones))
  14632. {
  14633. Return (0x02)
  14634. }
  14635.  
  14636. \WLS0 = Local6
  14637. Local2 += SLEN (VLST, Local6)
  14638. Local4 = DerefOf (Index (IBUF, Local2))
  14639. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14640. {
  14641. Local2++
  14642. Local6 = GSEL (VLST, IBUF, Local2)
  14643. If ((Local6 == Ones))
  14644. {
  14645. Return (0x02)
  14646. }
  14647.  
  14648. \WLS1 = Local6
  14649. Local2 += SLEN (VLST, Local6)
  14650. Local4 = DerefOf (Index (IBUF, Local2))
  14651. }
  14652.  
  14653. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14654. {
  14655. Local2++
  14656. Local6 = GSEL (VLST, IBUF, Local2)
  14657. If ((Local6 == Ones))
  14658. {
  14659. Return (0x02)
  14660. }
  14661.  
  14662. \WLS2 = Local6
  14663. Local2 += SLEN (VLST, Local6)
  14664. Local4 = DerefOf (Index (IBUF, Local2))
  14665. }
  14666.  
  14667. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14668. {
  14669. Local2++
  14670. Local6 = GSEL (VLST, IBUF, Local2)
  14671. If ((Local6 == Ones))
  14672. {
  14673. Return (0x02)
  14674. }
  14675.  
  14676. \WLS3 = Local6
  14677. Local2 += SLEN (VLST, Local6)
  14678. Local4 = DerefOf (Index (IBUF, Local2))
  14679. }
  14680.  
  14681. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14682. {
  14683. Local2++
  14684. Local6 = GSEL (VLST, IBUF, Local2)
  14685. If ((Local6 == Ones))
  14686. {
  14687. Return (0x02)
  14688. }
  14689.  
  14690. \WLS4 = Local6
  14691. Local2 += SLEN (VLST, Local6)
  14692. Local4 = DerefOf (Index (IBUF, Local2))
  14693. }
  14694.  
  14695. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14696. {
  14697. Local2++
  14698. Local6 = GSEL (VLST, IBUF, Local2)
  14699. If ((Local6 == Ones))
  14700. {
  14701. Return (0x02)
  14702. }
  14703.  
  14704. \WLS5 = Local6
  14705. Local2 += SLEN (VLST, Local6)
  14706. Local4 = DerefOf (Index (IBUF, Local2))
  14707. }
  14708.  
  14709. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14710. {
  14711. Local2++
  14712. Local6 = GSEL (VLST, IBUF, Local2)
  14713. If ((Local6 == Ones))
  14714. {
  14715. Return (0x02)
  14716. }
  14717.  
  14718. \WLS6 = Local6
  14719. Local2 += SLEN (VLST, Local6)
  14720. Local4 = DerefOf (Index (IBUF, Local2))
  14721. }
  14722.  
  14723. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14724. {
  14725. Local2++
  14726. Local6 = GSEL (VLST, IBUF, Local2)
  14727. If ((Local6 == Ones))
  14728. {
  14729. Return (0x02)
  14730. }
  14731.  
  14732. \WLS7 = Local6
  14733. Local2 += SLEN (VLST, Local6)
  14734. Local4 = DerefOf (Index (IBUF, Local2))
  14735. }
  14736.  
  14737. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14738. {
  14739. Local2++
  14740. Local6 = GSEL (VLST, IBUF, Local2)
  14741. If ((Local6 == Ones))
  14742. {
  14743. Return (0x02)
  14744. }
  14745.  
  14746. \WLS8 = Local6
  14747. Local2 += SLEN (VLST, Local6)
  14748. Local4 = DerefOf (Index (IBUF, Local2))
  14749. }
  14750.  
  14751. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14752. {
  14753. Local2++
  14754. Local6 = GSEL (VLST, IBUF, Local2)
  14755. If ((Local6 == Ones))
  14756. {
  14757. Return (0x02)
  14758. }
  14759.  
  14760. \WLS9 = Local6
  14761. Local2 += SLEN (VLST, Local6)
  14762. Local4 = DerefOf (Index (IBUF, Local2))
  14763. }
  14764.  
  14765. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14766. {
  14767. Local2++
  14768. Local6 = GSEL (VLST, IBUF, Local2)
  14769. If ((Local6 == Ones))
  14770. {
  14771. Return (0x02)
  14772. }
  14773.  
  14774. \WLSA = Local6
  14775. Local2 += SLEN (VLST, Local6)
  14776. Local4 = DerefOf (Index (IBUF, Local2))
  14777. }
  14778.  
  14779. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14780. {
  14781. Local2++
  14782. Local6 = GSEL (VLST, IBUF, Local2)
  14783. If ((Local6 == Ones))
  14784. {
  14785. Return (0x02)
  14786. }
  14787.  
  14788. \WLSB = Local6
  14789. Local2 += SLEN (VLST, Local6)
  14790. Local4 = DerefOf (Index (IBUF, Local2))
  14791. }
  14792.  
  14793. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14794. {
  14795. Local2++
  14796. Local6 = GSEL (VLST, IBUF, Local2)
  14797. If ((Local6 == Ones))
  14798. {
  14799. Return (0x02)
  14800. }
  14801.  
  14802. \WLSC = Local6
  14803. Local2 += SLEN (VLST, Local6)
  14804. Local4 = DerefOf (Index (IBUF, Local2))
  14805. }
  14806.  
  14807. If (((Local2 < Local0) && (Local4 == 0x3A)))
  14808. {
  14809. Local2++
  14810. Local6 = GSEL (VLST, IBUF, Local2)
  14811. If ((Local6 == Ones))
  14812. {
  14813. Return (0x02)
  14814. }
  14815.  
  14816. \WLSD = Local6
  14817. Local2 += SLEN (VLST, Local6)
  14818. Local4 = DerefOf (Index (IBUF, Local2))
  14819. }
  14820. }
  14821.  
  14822. If (((Local4 == 0x2C) && (Local2 < Local0)))
  14823. {
  14824. Local2++
  14825. Local0 = CPAS (IBUF, Local2)
  14826. If ((Local0 != 0x00))
  14827. {
  14828. Return (Local0)
  14829. }
  14830. }
  14831.  
  14832. Return (0x00)
  14833. }
  14834.  
  14835. Name (WQBA, Buffer (0x089D)
  14836. {
  14837. /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, /* FOMB.... */
  14838. /* 0008 */ 0x8D, 0x08, 0x00, 0x00, 0xF2, 0x36, 0x00, 0x00, /* .....6.. */
  14839. /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, /* DS...}.T */
  14840. /* 0018 */ 0xA8, 0xC9, 0x9A, 0x00, 0x01, 0x06, 0x18, 0x42, /* .......B */
  14841. /* 0020 */ 0x10, 0x13, 0x10, 0x0A, 0x0D, 0x21, 0x02, 0x0B, /* .....!.. */
  14842. /* 0028 */ 0x83, 0x50, 0x4C, 0x18, 0x14, 0xA0, 0x45, 0x41, /* .PL...EA */
  14843. /* 0030 */ 0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02, /* .....!.. */
  14844. /* 0038 */ 0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5, /* ..p.@... */
  14845. /* 0040 */ 0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F, /* (r.".... */
  14846. /* 0048 */ 0x31, 0x0E, 0x88, 0x14, 0x40, 0x48, 0x26, 0x84, /* 1...@H&. */
  14847. /* 0050 */ 0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F, /* D.S!p.._ */
  14848. /* 0058 */ 0x01, 0x08, 0x1D, 0xA2, 0xC9, 0xA0, 0x00, 0xA7, /* ........ */
  14849. /* 0060 */ 0x08, 0x82, 0xB4, 0x65, 0x01, 0xBA, 0x05, 0xF8, /* ...e.... */
  14850. /* 0068 */ 0x16, 0xA0, 0x1D, 0x42, 0x68, 0x15, 0x0A, 0x30, /* ...Bh..0 */
  14851. /* 0070 */ 0x29, 0xC0, 0x27, 0x98, 0x2C, 0x0A, 0x90, 0x0D, /* ).'.,... */
  14852. /* 0078 */ 0x26, 0xDB, 0x70, 0x64, 0x18, 0x4C, 0xE4, 0x18, /* &.pd.L.. */
  14853. /* 0080 */ 0x50, 0x62, 0xC6, 0x80, 0xD2, 0x39, 0x05, 0xD9, /* Pb...9.. */
  14854. /* 0088 */ 0x04, 0x16, 0x74, 0xA1, 0x28, 0x9A, 0x46, 0x94, /* ..t.(.F. */
  14855. /* 0090 */ 0x04, 0x07, 0x75, 0x0C, 0x11, 0x82, 0x97, 0x2B, /* ..u....+ */
  14856. /* 0098 */ 0x40, 0xF2, 0x04, 0xA4, 0x79, 0x5E, 0xB2, 0x3E, /* @...y^.> */
  14857. /* 00A0 */ 0x08, 0x0D, 0x81, 0x8D, 0x80, 0x47, 0x91, 0x00, /* .....G.. */
  14858. /* 00A8 */ 0xC2, 0x62, 0x2C, 0x53, 0xE2, 0x61, 0x50, 0x1E, /* .b,S.aP. */
  14859. /* 00B0 */ 0x40, 0x24, 0x67, 0xA8, 0x28, 0x60, 0x7B, 0x9D, /* @$g.(`{. */
  14860. /* 00B8 */ 0x88, 0x86, 0x75, 0x9C, 0x4C, 0x12, 0x1C, 0x6A, /* ..u.L..j */
  14861. /* 00C0 */ 0x94, 0x96, 0x28, 0xC0, 0xFC, 0xC8, 0x34, 0x91, /* ..(...4. */
  14862. /* 00C8 */ 0x63, 0x6B, 0x7A, 0xC4, 0x82, 0x64, 0xD2, 0x86, /* ckz..d.. */
  14863. /* 00D0 */ 0x82, 0x1A, 0xBA, 0xA7, 0x75, 0x52, 0x9E, 0x68, /* ....uR.h */
  14864. /* 00D8 */ 0xC4, 0x83, 0x32, 0x4C, 0x02, 0x8F, 0x82, 0xA1, /* ..2L.... */
  14865. /* 00E0 */ 0x71, 0x82, 0xB2, 0x20, 0xE4, 0x60, 0xA0, 0x28, /* q.. .`.( */
  14866. /* 00E8 */ 0xC0, 0x93, 0xF0, 0x1C, 0x8B, 0x17, 0x20, 0x7C, /* ...... | */
  14867. /* 00F0 */ 0xC6, 0xE4, 0x28, 0x10, 0x23, 0x81, 0x8F, 0x04, /* ..(.#... */
  14868. /* 00F8 */ 0x1E, 0xCD, 0x31, 0x63, 0x81, 0xC2, 0x05, 0x3C, /* ..1c...< */
  14869. /* 0100 */ 0x9F, 0x63, 0x88, 0x1C, 0xF7, 0x50, 0x63, 0x1C, /* .c...Pc. */
  14870. /* 0108 */ 0x45, 0xE4, 0x04, 0xEF, 0x00, 0x51, 0x8C, 0x56, /* E....Q.V */
  14871. /* 0110 */ 0xD0, 0xBC, 0x85, 0x18, 0x2C, 0x9A, 0xC1, 0x7A, /* ....,..z */
  14872. /* 0118 */ 0x06, 0x27, 0x83, 0x4E, 0xF0, 0xFF, 0x3F, 0x02, /* .'.N..?. */
  14873. /* 0120 */ 0x2E, 0x03, 0x42, 0x1E, 0x05, 0x58, 0x1D, 0x94, /* ..B..X.. */
  14874. /* 0128 */ 0xA6, 0x61, 0x82, 0xEE, 0x05, 0xBC, 0x1A, 0x1A, /* .a...... */
  14875. /* 0130 */ 0x13, 0xA0, 0x11, 0x43, 0xCA, 0x04, 0x38, 0xBB, /* ...C..8. */
  14876. /* 0138 */ 0x2F, 0x68, 0x46, 0x6D, 0x09, 0x30, 0x27, 0x40, /* /hFm.0'@ */
  14877. /* 0140 */ 0x9B, 0x00, 0x6F, 0x08, 0x42, 0x39, 0xCF, 0x28, /* ..o.B9.( */
  14878. /* 0148 */ 0xC7, 0x72, 0x8A, 0x51, 0x1E, 0x06, 0x62, 0xBE, /* .r.Q..b. */
  14879. /* 0150 */ 0x0C, 0x04, 0x8D, 0x12, 0x23, 0xE6, 0xB9, 0xC4, /* ....#... */
  14880. /* 0158 */ 0x35, 0x6C, 0x84, 0x18, 0x21, 0x4F, 0x21, 0x50, /* 5l..!O!P */
  14881. /* 0160 */ 0xDC, 0xF6, 0x07, 0x41, 0x06, 0x8D, 0x1B, 0xBD, /* ...A.... */
  14882. /* 0168 */ 0x4F, 0x0B, 0x67, 0x75, 0x02, 0x47, 0xFF, 0xA4, /* O.gu.G.. */
  14883. /* 0170 */ 0x60, 0x02, 0x4F, 0xF9, 0xC0, 0x9E, 0x0D, 0x4E, /* `.O....N */
  14884. /* 0178 */ 0xE0, 0x58, 0xA3, 0xC6, 0x38, 0x95, 0x04, 0x8E, /* .X..8... */
  14885. /* 0180 */ 0xFD, 0x80, 0x90, 0x06, 0x10, 0x45, 0x82, 0x47, /* .....E.G */
  14886. /* 0188 */ 0x9D, 0x16, 0x7C, 0x2E, 0xF0, 0xD0, 0x0E, 0xDA, /* ..|..... */
  14887. /* 0190 */ 0x73, 0x3C, 0x81, 0x20, 0x87, 0x70, 0x04, 0x4F, /* s<. .p.O */
  14888. /* 0198 */ 0x0C, 0x0F, 0x04, 0x1E, 0x03, 0xBB, 0x29, 0xF8, /* ......). */
  14889. /* 01A0 */ 0x08, 0xE0, 0x13, 0x02, 0xDE, 0x35, 0xA0, 0xAE, /* .....5.. */
  14890. /* 01A8 */ 0x06, 0x0F, 0x06, 0x6C, 0xD0, 0xE1, 0x30, 0xE3, /* ...l..0. */
  14891. /* 01B0 */ 0xF5, 0xF0, 0xC3, 0x9D, 0xC0, 0x49, 0x3E, 0x60, /* .....I>` */
  14892. /* 01B8 */ 0xF0, 0xC3, 0x86, 0x07, 0x87, 0x9B, 0xE7, 0xC9, /* ........ */
  14893. /* 01C0 */ 0x1C, 0x59, 0xA9, 0x02, 0xCC, 0x1E, 0x0E, 0x74, /* .Y.....t */
  14894. /* 01C8 */ 0x90, 0xF0, 0x69, 0x83, 0x9D, 0x01, 0x30, 0xF2, /* ..i...0. */
  14895. /* 01D0 */ 0x07, 0x81, 0x1A, 0x99, 0xA1, 0x3D, 0xEE, 0x97, /* .....=.. */
  14896. /* 01D8 */ 0x0E, 0x43, 0x3E, 0x27, 0x1C, 0x16, 0x13, 0x7B, /* .C>'...{ */
  14897. /* 01E0 */ 0xEA, 0xA0, 0xE3, 0x01, 0xFF, 0x65, 0xE4, 0x39, /* .....e.9 */
  14898. /* 01E8 */ 0xC3, 0xD3, 0xF7, 0x7C, 0x4D, 0x30, 0xEC, 0xC0, /* ...|M0.. */
  14899. /* 01F0 */ 0xD1, 0x03, 0x31, 0xF4, 0xC3, 0xC6, 0x61, 0x9C, /* ..1...a. */
  14900. /* 01F8 */ 0x86, 0xEF, 0x1F, 0x3E, 0x2F, 0xC0, 0x38, 0x05, /* ...>/.8. */
  14901. /* 0200 */ 0x78, 0xE4, 0xFE, 0xFF, 0x1F, 0x52, 0x7C, 0x9A, /* x....R|. */
  14902. /* 0208 */ 0xE0, 0x47, 0x0B, 0x9F, 0x26, 0xD8, 0xF5, 0xE0, /* .G..&... */
  14903. /* 0210 */ 0x34, 0x9E, 0x03, 0x3C, 0x9C, 0xB3, 0xF2, 0x61, /* 4..<...a */
  14904. /* 0218 */ 0x02, 0x6C, 0xF7, 0x13, 0x36, 0xA2, 0x77, 0x0B, /* .l..6.w. */
  14905. /* 0220 */ 0x8F, 0x06, 0x7B, 0x0A, 0x00, 0xDF, 0xF9, 0x05, /* ..{..... */
  14906. /* 0228 */ 0x9C, 0x77, 0x0D, 0x36, 0x58, 0x18, 0xE7, 0x17, /* .w.6X... */
  14907. /* 0230 */ 0xE0, 0x71, 0x42, 0xF0, 0x10, 0xF8, 0x41, 0xC2, /* .qB...A. */
  14908. /* 0238 */ 0x43, 0xE0, 0x03, 0x78, 0xFE, 0x38, 0x43, 0x2B, /* C..x.8C+ */
  14909. /* 0240 */ 0x9D, 0x17, 0x72, 0x60, 0xF0, 0xCE, 0x39, 0x30, /* ..r`..90 */
  14910. /* 0248 */ 0x46, 0xC1, 0xF3, 0x3C, 0x36, 0x4C, 0xA0, 0x20, /* F..<6L. */
  14911. /* 0250 */ 0xAF, 0x01, 0x85, 0x7A, 0x16, 0x50, 0x18, 0x9F, /* ...z.P.. */
  14912. /* 0258 */ 0x6A, 0x80, 0xD7, 0xFF, 0xFF, 0x54, 0x03, 0x5C, /* j....T.\ */
  14913. /* 0260 */ 0x0E, 0x07, 0xB8, 0x93, 0x03, 0xDC, 0x7B, 0x01, /* ......{. */
  14914. /* 0268 */ 0xBB, 0x38, 0x3C, 0xD7, 0xC0, 0x15, 0x7D, 0xAE, /* .8<...}. */
  14915. /* 0270 */ 0x81, 0x7A, 0x6F, 0x29, 0x6E, 0x8C, 0xBA, 0xC6, /* .zo)n... */
  14916. /* 0278 */ 0x04, 0x79, 0x14, 0x78, 0xA4, 0x89, 0xF2, 0x3C, /* .y.x...< */
  14917. /* 0280 */ 0xF3, 0x2E, 0x13, 0xE1, 0xD9, 0xC6, 0xD7, 0x1A, /* ........ */
  14918. /* 0288 */ 0x4F, 0x21, 0x8E, 0xAF, 0x35, 0x46, 0x7C, 0x99, /* O!..5F|. */
  14919. /* 0290 */ 0x78, 0xB7, 0x31, 0xEE, 0xC1, 0x3D, 0xD6, 0x3C, /* x.1..=.< */
  14920. /* 0298 */ 0xE4, 0x18, 0xE4, 0x68, 0x22, 0xBC, 0x18, 0x04, /* ...h"... */
  14921. /* 02A0 */ 0x7C, 0xBC, 0xF1, 0xB1, 0x06, 0xBC, 0x62, 0x5E, /* |.....b^ */
  14922. /* 02A8 */ 0x28, 0xB2, 0x70, 0xAC, 0x01, 0x34, 0xFE, 0xFF, /* (.p..4.. */
  14923. /* 02B0 */ 0x8F, 0x35, 0xC0, 0x0D, 0xEB, 0x01, 0x05, 0x7C, /* .5.....| */
  14924. /* 02B8 */ 0x47, 0x06, 0x76, 0x43, 0x81, 0x77, 0x42, 0x01, /* G.vC.wB. */
  14925. /* 02C0 */ 0xFC, 0x24, 0x7E, 0x01, 0xE8, 0xC8, 0xE1, 0xB4, /* .$~..... */
  14926. /* 02C8 */ 0x20, 0xB2, 0xF1, 0x06, 0xF0, 0x29, 0x80, 0xAA, /* ....).. */
  14927. /* 02D0 */ 0x01, 0xD2, 0x34, 0x61, 0x13, 0x4C, 0x4F, 0x2E, /* ..4a.LO. */
  14928. /* 02D8 */ 0x78, 0x1F, 0x09, 0x9C, 0x9B, 0x44, 0xC9, 0x87, /* x....D.. */
  14929. /* 02E0 */ 0x45, 0xE1, 0x9C, 0xF5, 0x20, 0x42, 0x41, 0x0C, /* E... BA. */
  14930. /* 02E8 */ 0xE8, 0x20, 0xC7, 0x09, 0xF4, 0x19, 0xC5, 0x07, /* . ...... */
  14931. /* 02F0 */ 0x91, 0x13, 0x7D, 0x22, 0xF4, 0xA0, 0x3C, 0x8C, /* ..}"..<. */
  14932. /* 02F8 */ 0x77, 0x14, 0x76, 0x02, 0xF1, 0x61, 0xC2, 0x63, /* w.v..a.c */
  14933. /* 0300 */ 0xF7, 0x31, 0x81, 0xFF, 0x63, 0x3C, 0x1B, 0xA3, /* .1..c<.. */
  14934. /* 0308 */ 0x5B, 0x0D, 0x86, 0xFE, 0xFF, 0xE7, 0x14, 0x0E, /* [....... */
  14935. /* 0310 */ 0xE6, 0x83, 0x08, 0x27, 0xA8, 0xEB, 0x26, 0x01, /* ...'..&. */
  14936. /* 0318 */ 0x32, 0x7D, 0x47, 0x05, 0x50, 0x00, 0xF9, 0x5E, /* 2}G.P..^ */
  14937. /* 0320 */ 0xE0, 0x73, 0xC0, 0xB3, 0x01, 0x1B, 0xC3, 0xA3, /* .s...... */
  14938. /* 0328 */ 0x80, 0xD1, 0x8C, 0xCE, 0xC3, 0x4F, 0x16, 0x15, /* .....O.. */
  14939. /* 0330 */ 0x77, 0xB2, 0x14, 0xC4, 0x93, 0x75, 0x94, 0xC9, /* w....u.. */
  14940. /* 0338 */ 0xA2, 0x67, 0xE2, 0x7B, 0x85, 0x67, 0xF4, 0xA6, /* .g.{.g.. */
  14941. /* 0340 */ 0xE5, 0x39, 0x7A, 0xC2, 0xBE, 0x87, 0xC0, 0x3A, /* .9z....: */
  14942. /* 0348 */ 0x0C, 0x84, 0x7C, 0x30, 0xF0, 0x34, 0x0C, 0xE7, /* ..|0.4.. */
  14943. /* 0350 */ 0xC9, 0x72, 0x38, 0x4F, 0x96, 0x8F, 0xC5, 0xD7, /* .r8O.... */
  14944. /* 0358 */ 0x10, 0xF0, 0x09, 0x9C, 0x2D, 0xC8, 0xE1, 0x31, /* ....-..1 */
  14945. /* 0360 */ 0xB1, 0x46, 0x45, 0xAF, 0x42, 0x1E, 0x1E, 0xBF, /* .FE.B... */
  14946. /* 0368 */ 0x1C, 0x78, 0x3E, 0xCF, 0x08, 0x47, 0xF9, 0x24, /* .x>..G.$ */
  14947. /* 0370 */ 0x81, 0xC3, 0x78, 0x26, 0xF1, 0x10, 0x7D, 0x2B, /* ..x&..}+ */
  14948. /* 0378 */ 0x82, 0x35, 0x91, 0x93, 0xF6, 0x6D, 0xE1, 0x64, /* .5...m.d */
  14949. /* 0380 */ 0x83, 0xBE, 0x9E, 0x61, 0x6E, 0x45, 0xB0, 0xFF, /* ...anE.. */
  14950. /* 0388 */ 0xFF, 0xB7, 0x22, 0x38, 0x17, 0x34, 0x98, 0x99, /* .."8.4.. */
  14951. /* 0390 */ 0xEE, 0x55, 0xA8, 0x58, 0xF7, 0x2A, 0x40, 0xEC, /* .U.X.*@. */
  14952. /* 0398 */ 0xB0, 0x5E, 0x7B, 0x7C, 0xB0, 0x82, 0x7B, 0xAF, /* .^{|..{. */
  14953. /* 03A0 */ 0x82, 0x7B, 0xA9, 0x7A, 0x56, 0x38, 0xC6, 0xF0, /* .{.zV8.. */
  14954. /* 03A8 */ 0x0F, 0x53, 0x31, 0x4E, 0xE9, 0xB5, 0xD3, 0x40, /* .S1N...@ */
  14955. /* 03B0 */ 0x61, 0xA2, 0xC4, 0x7B, 0xAF, 0xF2, 0x18, 0xDF, /* a..{.... */
  14956. /* 03B8 */ 0xAB, 0xD8, 0x15, 0x2A, 0x4C, 0xAC, 0x97, 0x2B, /* ...*L..+ */
  14957. /* 03C0 */ 0xA3, 0xBE, 0x4E, 0x84, 0x0B, 0x14, 0x24, 0xD2, /* ..N...$. */
  14958. /* 03C8 */ 0xAB, 0x55, 0x94, 0xC8, 0xF1, 0x0D, 0xF9, 0x5E, /* .U.....^ */
  14959. /* 03D0 */ 0x05, 0x5E, 0x39, 0xF7, 0x2A, 0x90, 0xFD, 0xFF, /* .^9.*... */
  14960. /* 03D8 */ 0xEF, 0x55, 0x80, 0x79, 0xB4, 0xF7, 0x2A, 0x30, /* .U.y..*0 */
  14961. /* 03E0 */ 0x5E, 0x1B, 0xD8, 0x0D, 0x09, 0x16, 0xD0, 0x8B, /* ^....... */
  14962. /* 03E8 */ 0x15, 0x60, 0x28, 0xF3, 0xC5, 0x8A, 0xE6, 0xBD, /* .`(..... */
  14963. /* 03F0 */ 0x58, 0x21, 0xFE, 0xFF, 0xE7, 0x12, 0xA6, 0xE7, /* X!...... */
  14964. /* 03F8 */ 0x62, 0x45, 0xE6, 0x09, 0xFF, 0x66, 0x05, 0x70, /* bE...f.p */
  14965. /* 0400 */ 0xFA, 0xFF, 0x7F, 0xB3, 0x02, 0x8C, 0xDD, 0x8B, /* ........ */
  14966. /* 0408 */ 0x30, 0x47, 0x2B, 0x78, 0x29, 0x6F, 0x56, 0x34, /* 0G+x)oV4 */
  14967. /* 0410 */ 0xCE, 0x32, 0x14, 0x70, 0x41, 0x14, 0xC6, 0x37, /* .2.pA..7 */
  14968. /* 0418 */ 0x2B, 0xC0, 0xD1, 0x75, 0x05, 0x37, 0x64, 0xB8, /* +..u.7d. */
  14969. /* 0420 */ 0x60, 0x51, 0x82, 0xF9, 0x10, 0xE2, 0xE9, 0x1C, /* `Q...... */
  14970. /* 0428 */ 0xF1, 0x43, 0xC2, 0x4B, 0xC0, 0x63, 0x8E, 0x07, /* .C.K.c.. */
  14971. /* 0430 */ 0xFC, 0x40, 0xE0, 0xCB, 0x15, 0x98, 0xFE, 0xFF, /* .@...... */
  14972. /* 0438 */ 0x04, 0x3E, 0xF9, 0x9E, 0xE5, 0xDB, 0xD4, 0x7B, /* .>.....{ */
  14973. /* 0440 */ 0x2F, 0x3F, 0x60, 0xBD, 0x57, 0xF9, 0xF0, 0x1B, /* /?`.W... */
  14974. /* 0448 */ 0xEB, 0x9D, 0xE1, 0xE5, 0xCA, 0x23, 0x89, 0x72, /* .....#.r */
  14975. /* 0450 */ 0x12, 0xA1, 0x7C, 0xB7, 0x7A, 0xAF, 0x32, 0x4A, /* ..|.z.2J */
  14976. /* 0458 */ 0xC4, 0x17, 0x62, 0x9F, 0x82, 0x0D, 0x6D, 0x94, /* ..b...m. */
  14977. /* 0460 */ 0xA7, 0x8A, 0xE8, 0xC6, 0x7B, 0xB9, 0x02, 0xAF, /* ....{... */
  14978. /* 0468 */ 0xA4, 0xCB, 0x15, 0x40, 0x93, 0xE1, 0xBF, 0x5C, /* ...@...\ */
  14979. /* 0470 */ 0x81, 0xEF, 0xE6, 0x80, 0xBD, 0x26, 0xC1, 0xF9, /* .....&.. */
  14980. /* 0478 */ 0xFF, 0x5F, 0x93, 0xF8, 0xF5, 0x0A, 0xF0, 0x93, /* ._...... */
  14981. /* 0480 */ 0xFD, 0x7A, 0x45, 0x73, 0x5F, 0xAF, 0x50, 0xA2, /* .zEs_.P. */
  14982. /* 0488 */ 0x20, 0xA4, 0x08, 0x48, 0x33, 0x05, 0xCF, 0xFD, /* ..H3... */
  14983. /* 0490 */ 0x0A, 0xE0, 0xC4, 0xFF, 0xFF, 0x7E, 0x05, 0x58, /* .....~.X */
  14984. /* 0498 */ 0x0E, 0x77, 0xBF, 0x02, 0x7A, 0xB7, 0x23, 0xF0, /* .w..z.#. */
  14985. /* 04A0 */ 0xA2, 0xBC, 0x1D, 0x61, 0xAF, 0x58, 0xF8, 0x8C, /* ...a.X.. */
  14986. /* 04A8 */ 0x57, 0x2C, 0x1A, 0x66, 0x25, 0x8A, 0xB7, 0x26, /* W,.f%..& */
  14987. /* 04B0 */ 0x0A, 0xE3, 0x2B, 0x16, 0x30, 0xF9, 0xFF, 0x5F, /* ..+.0.._ */
  14988. /* 04B8 */ 0xB1, 0x80, 0xD9, 0x41, 0x14, 0x37, 0x6A, 0xB8, /* ...A.7j. */
  14989. /* 04C0 */ 0x17, 0x27, 0xDF, 0x7A, 0x3C, 0xDF, 0x88, 0xBE, /* .'.z<... */
  14990. /* 04C8 */ 0xC3, 0x60, 0x4E, 0x58, 0x30, 0x6E, 0x58, 0xF0, /* .`NX0nX. */
  14991. /* 04D0 */ 0x87, 0xF4, 0x30, 0xEC, 0x93, 0xC4, 0x3B, 0x96, /* ..0...;. */
  14992. /* 04D8 */ 0x8F, 0x56, 0x06, 0x79, 0x03, 0x7E, 0xB2, 0x7A, /* .V.y.~.z */
  14993. /* 04E0 */ 0xB0, 0x8A, 0x62, 0x84, 0x80, 0xC7, 0xF3, 0x2E, /* ..b..... */
  14994. /* 04E8 */ 0xEC, 0xA3, 0xD5, 0x9B, 0x96, 0x51, 0x62, 0xC7, /* .....Qb. */
  14995. /* 04F0 */ 0xF2, 0x85, 0xEA, 0x59, 0xCB, 0xD7, 0x2C, 0x43, /* ...Y..,C */
  14996. /* 04F8 */ 0xC4, 0x7D, 0x20, 0xF6, 0x0D, 0x0B, 0xB0, 0xFD, /* .} ..... */
  14997. /* 0500 */ 0xFF, 0xBF, 0x61, 0x01, 0x8E, 0x2E, 0x0E, 0xFC, /* ..a..... */
  14998. /* 0508 */ 0xE0, 0x80, 0xBD, 0x61, 0x01, 0x3E, 0x67, 0x0A, /* ...a.>g. */
  14999. /* 0510 */ 0x9E, 0x1B, 0x16, 0xB0, 0xF9, 0xFF, 0xDF, 0xB0, /* ........ */
  15000. /* 0518 */ 0x00, 0xFE, 0xFF, 0xFF, 0x6F, 0x58, 0xC0, 0xE1, /* ....oX.. */
  15001. /* 0520 */ 0x76, 0x85, 0xBD, 0x65, 0x61, 0x6F, 0x2F, 0x64, /* v..eao/d */
  15002. /* 0528 */ 0x15, 0x34, 0xD4, 0x4A, 0x14, 0xFC, 0x7B, 0x65, /* .4.J..{e */
  15003. /* 0530 */ 0x18, 0x7A, 0xC3, 0x02, 0x1C, 0x8D, 0xDB, 0xA3, /* .z...... */
  15004. /* 0538 */ 0x06, 0xC7, 0xD9, 0xE0, 0x49, 0x02, 0x73, 0xAE, /* ....I.s. */
  15005. /* 0540 */ 0xC6, 0xCD, 0xE6, 0xE0, 0x02, 0x47, 0xE8, 0x1D, /* .....G.. */
  15006. /* 0548 */ 0x54, 0x73, 0x67, 0x97, 0x14, 0x18, 0xB7, 0x2C, /* Tsg...., */
  15007. /* 0550 */ 0xB8, 0x97, 0xAA, 0x87, 0x86, 0x28, 0x07, 0xF1, /* .....(.. */
  15008. /* 0558 */ 0x2A, 0xFC, 0x60, 0xF5, 0x28, 0x75, 0x64, 0x8F, /* *.`.(ud. */
  15009. /* 0560 */ 0x57, 0x4F, 0xC3, 0x3E, 0x66, 0xF9, 0x96, 0x65, /* WO.>f..e */
  15010. /* 0568 */ 0xA8, 0x08, 0x6F, 0x59, 0xEC, 0x0C, 0x11, 0x2F, /* ..oY.../ */
  15011. /* 0570 */ 0x56, 0x94, 0x10, 0xEF, 0x15, 0xA1, 0x7D, 0xE7, /* V.....}. */
  15012. /* 0578 */ 0x32, 0xF8, 0xA3, 0xB1, 0x51, 0x83, 0xBE, 0x1C, /* 2...Q... */
  15013. /* 0580 */ 0xBF, 0x65, 0xC1, 0xFB, 0xFF, 0xDF, 0xB2, 0xE0, /* .e...... */
  15014. /* 0588 */ 0x8B, 0xFC, 0xAB, 0xE8, 0x44, 0xE0, 0x5B, 0x16, /* ....D.[. */
  15015. /* 0590 */ 0xC0, 0x8F, 0x60, 0x10, 0x72, 0x32, 0x70, 0xF4, /* ..`.r2p. */
  15016. /* 0598 */ 0x79, 0x01, 0x3F, 0x80, 0x87, 0x11, 0x0F, 0x89, /* y.?..... */
  15017. /* 05A0 */ 0x05, 0x18, 0x38, 0xBD, 0x2F, 0xF9, 0x4C, 0xC1, /* ..8./.L. */
  15018. /* 05A8 */ 0x0F, 0x18, 0x3E, 0x53, 0xB0, 0xEB, 0x41, 0xF4, /* ..>S..A. */
  15019. /* 05B0 */ 0xC7, 0x00, 0x9F, 0x4B, 0x30, 0x83, 0x03, 0xFF, /* ...K0... */
  15020. /* 05B8 */ 0xB5, 0xE2, 0xD0, 0x3D, 0x8A, 0xD7, 0x07, 0x13, /* ...=.... */
  15021. /* 05C0 */ 0x78, 0x70, 0xFC, 0xFF, 0x3F, 0x38, 0xB8, 0x77, /* xp..?8.w */
  15022. /* 05C8 */ 0x86, 0x23, 0xF2, 0x1D, 0xC6, 0x83, 0x03, 0xDB, /* .#...... */
  15023. /* 05D0 */ 0x41, 0x00, 0x38, 0x0C, 0x0E, 0x1F, 0x6A, 0x70, /* A.8...jp */
  15024. /* 05D8 */ 0xE8, 0xF1, 0x18, 0x38, 0xA4, 0xCF, 0x63, 0xEC, /* ...8..c. */
  15025. /* 05E0 */ 0xC2, 0xF0, 0x90, 0xE3, 0xA1, 0x81, 0x0D, 0xD0, /* ........ */
  15026. /* 05E8 */ 0x43, 0x03, 0x96, 0x93, 0x78, 0x0A, 0x39, 0x34, /* C...x.94 */
  15027. /* 05F0 */ 0x30, 0x4B, 0x18, 0x1A, 0x50, 0x8A, 0x37, 0x34, /* 0K..P.74 */
  15028. /* 05F8 */ 0xFA, 0xFF, 0x1F, 0x1A, 0x1F, 0x92, 0x0F, 0x0B, /* ........ */
  15029. /* 0600 */ 0x31, 0x9F, 0x72, 0x22, 0xBC, 0x2F, 0xF8, 0x04, /* 1.r"./.. */
  15030. /* 0608 */ 0xC5, 0xD0, 0x5F, 0x53, 0x7C, 0xBB, 0xF0, 0x4D, /* .._S|..M */
  15031. /* 0610 */ 0x10, 0x37, 0x3E, 0x70, 0x5D, 0x3A, 0x3D, 0x3E, /* .7>p]:=> */
  15032. /* 0618 */ 0xE0, 0x73, 0xE4, 0xF2, 0xF8, 0x70, 0x47, 0x27, /* .s...pG' */
  15033. /* 0620 */ 0x8F, 0x0F, 0x86, 0xCB, 0xAB, 0x0C, 0x39, 0x9A, /* ......9. */
  15034. /* 0628 */ 0xF8, 0x68, 0xC5, 0x86, 0x07, 0xB6, 0x9B, 0x9E, /* .h...... */
  15035. /* 0630 */ 0x87, 0x07, 0x7C, 0xAE, 0x9B, 0x60, 0xBC, 0x42, /* ..|..`.B */
  15036. /* 0638 */ 0xF2, 0x6B, 0x09, 0x8C, 0x13, 0x14, 0xFE, 0xBA, /* .k...... */
  15037. /* 0640 */ 0x09, 0xDE, 0xFF, 0xFF, 0x75, 0x13, 0x78, 0x8E, /* ....u.x. */
  15038. /* 0648 */ 0x82, 0x6B, 0xBD, 0x64, 0xD3, 0x20, 0xAF, 0x1C, /* .k.d. .. */
  15039. /* 0650 */ 0xC5, 0x7A, 0x11, 0x50, 0x18, 0x9F, 0xD9, 0x00, /* .z.P.... */
  15040. /* 0658 */ 0x47, 0x63, 0x7D, 0x66, 0x03, 0xCB, 0xBD, 0x80, /* Gc}f.... */
  15041. /* 0660 */ 0xDD, 0xD8, 0xE0, 0x9E, 0xD6, 0x60, 0xDF, 0x1D, /* .....`.. */
  15042. /* 0668 */ 0x1E, 0xCE, 0x1E, 0xD3, 0x1E, 0xD5, 0x1E, 0xD0, /* ........ */
  15043. /* 0670 */ 0x7C, 0xC4, 0x8E, 0xF1, 0x96, 0x16, 0x24, 0x4E, /* |.....$N */
  15044. /* 0678 */ 0x84, 0xD7, 0x81, 0xA7, 0x35, 0x5F, 0x32, 0xE2, /* ....5_2. */
  15045. /* 0680 */ 0x05, 0x7A, 0x5A, 0x33, 0x46, 0x9C, 0x97, 0x36, /* .zZ3F..6 */
  15046. /* 0688 */ 0x23, 0xBE, 0x52, 0x84, 0x78, 0x58, 0xF3, 0xC9, /* #.R.xX.. */
  15047. /* 0690 */ 0xCD, 0x78, 0x0F, 0x13, 0xE1, 0xC2, 0xBC, 0xB0, /* .x...... */
  15048. /* 0698 */ 0x3D, 0xAD, 0x81, 0xE3, 0xFF, 0x7F, 0x5A, 0x83, /* =.....Z. */
  15049. /* 06A0 */ 0x23, 0xE7, 0x8A, 0x0D, 0xD0, 0xE4, 0xA2, 0x8F, /* #....... */
  15050. /* 06A8 */ 0x3B, 0xA4, 0x80, 0xE5, 0xDA, 0xC0, 0x6E, 0x29, /* ;.....n) */
  15051. /* 06B0 */ 0xF0, 0x2E, 0xD8, 0xC0, 0xF9, 0xFF, 0x7F, 0x44, /* .......D */
  15052. /* 06B8 */ 0x01, 0x5F, 0x96, 0x0B, 0x36, 0xCD, 0x71, 0xC1, /* ._..6.q. */
  15053. /* 06C0 */ 0x46, 0x71, 0x58, 0x0D, 0x90, 0xE6, 0x09, 0xFF, /* FqX..... */
  15054. /* 06C8 */ 0x7A, 0x0D, 0xFE, 0x49, 0xF8, 0x7A, 0x0D, 0xD8, /* z..I.z.. */
  15055. /* 06D0 */ 0xBE, 0xC5, 0xE2, 0xAE, 0xD7, 0xC0, 0xEA, 0xFF, /* ........ */
  15056. /* 06D8 */ 0x7F, 0xBD, 0x06, 0x96, 0x82, 0x47, 0x4A, 0xEF, /* .....GJ. */
  15057. /* 06E0 */ 0xD4, 0xE0, 0xBA, 0x69, 0xE3, 0x41, 0xDF, 0xB4, /* ...i.A.. */
  15058. /* 06E8 */ 0x61, 0x0A, 0xBE, 0x45, 0xD1, 0x28, 0xE4, 0x8A, /* a..E.(.. */
  15059. /* 06F0 */ 0xB6, 0x10, 0x0A, 0xE3, 0x5B, 0x14, 0xE0, 0x08, /* ....[... */
  15060. /* 06F8 */ 0xFB, 0x2D, 0x0A, 0x2C, 0x17, 0xA7, 0xB7, 0x28, /* .-.,...( */
  15061. /* 0700 */ 0xFC, 0x0C, 0x3C, 0x68, 0xDF, 0x75, 0x18, 0xA6, /* ..<h.u.. */
  15062. /* 0708 */ 0xEF, 0xD0, 0xF0, 0x4F, 0x4D, 0xCF, 0x4D, 0x0F, /* ...OM.M. */
  15063. /* 0710 */ 0x4E, 0x0F, 0xCD, 0x3E, 0x48, 0xF9, 0x70, 0xF0, /* N..>H.p. */
  15064. /* 0718 */ 0xFC, 0xF4, 0xFF, 0x8F, 0xF1, 0x5E, 0xE7, 0x9B, /* .....^.. */
  15065. /* 0720 */ 0xD4, 0x6B, 0x94, 0x2F, 0x30, 0xC7, 0x10, 0x31, /* .k./0..1 */
  15066. /* 0728 */ 0xCA, 0xCB, 0xB4, 0x21, 0xE2, 0xF9, 0xD4, 0xE4, /* ...!.... */
  15067. /* 0730 */ 0xB3, 0x42, 0xDC, 0x10, 0x0F, 0xD1, 0x46, 0x88, /* .B....F. */
  15068. /* 0738 */ 0xFA, 0x3C, 0xED, 0x09, 0xBD, 0x46, 0x81, 0x57, /* .<...F.W */
  15069. /* 0740 */ 0xD0, 0x35, 0x0A, 0xA0, 0xC9, 0xFD, 0x08, 0x77, /* .5.....w */
  15070. /* 0748 */ 0x8D, 0x02, 0xCB, 0xBD, 0x81, 0x9D, 0x87, 0xF8, /* ........ */
  15071. /* 0750 */ 0x95, 0xC8, 0xD7, 0x06, 0x18, 0xF7, 0x28, 0x38, /* ......(8 */
  15072. /* 0758 */ 0xFF, 0xFF, 0x7B, 0x14, 0x60, 0x23, 0xCC, 0x3D, /* ..{.`#.= */
  15073. /* 0760 */ 0x8A, 0x06, 0xB9, 0x47, 0xA1, 0x4E, 0x26, 0xBE, /* ...G.N&. */
  15074. /* 0768 */ 0xD4, 0x79, 0xA2, 0xE0, 0x08, 0x7F, 0x91, 0x42, /* .y.....B */
  15075. /* 0770 */ 0xC5, 0x26, 0x51, 0xE8, 0xC3, 0x10, 0x2A, 0xE6, /* .&Q...*. */
  15076. /* 0778 */ 0x61, 0x84, 0x82, 0x18, 0xD0, 0x19, 0x4E, 0x14, /* a.....N. */
  15077. /* 0780 */ 0x68, 0x15, 0x27, 0x0A, 0x72, 0x8B, 0xF1, 0xA4, /* h.'.r... */
  15078. /* 0788 */ 0x1E, 0xA3, 0x00, 0x5F, 0xCB, 0xF4, 0x50, 0x79, /* ..._..Py */
  15079. /* 0790 */ 0xE4, 0xA1, 0x52, 0x10, 0x0F, 0xD5, 0x71, 0x86, /* ..R...q. */
  15080. /* 0798 */ 0x8A, 0x9E, 0xA4, 0xE7, 0x8F, 0xF9, 0xFF, 0x1F, /* ........ */
  15081. /* 07A0 */ 0x1C, 0xB0, 0x07, 0x29, 0x80, 0x17, 0x0A, 0x6D, /* ...)...m */
  15082. /* 07A8 */ 0xFA, 0xD4, 0x68, 0xD4, 0xAA, 0x41, 0x99, 0x1A, /* ..h..A.. */
  15083. /* 07B0 */ 0x65, 0x1A, 0xD4, 0xEA, 0x53, 0xA9, 0x31, 0x63, /* e...S.1c */
  15084. /* 07B8 */ 0xE7, 0x50, 0x4B, 0x3B, 0x4B, 0x50, 0x31, 0x8B, /* .PK;KP1. */
  15085. /* 07C0 */ 0xD1, 0x68, 0x1C, 0x05, 0x84, 0xCA, 0xFE, 0x9B, /* .h...... */
  15086. /* 07C8 */ 0x0B, 0xC4, 0x21, 0x9F, 0x3A, 0x02, 0x74, 0xB0, /* ..!.:.t. */
  15087. /* 07D0 */ 0x17, 0x95, 0x80, 0x2C, 0x6B, 0x6D, 0x02, 0x71, /* ...,km.q */
  15088. /* 07D8 */ 0x7C, 0x13, 0x10, 0x8D, 0x80, 0x48, 0xCB, 0x63, /* |....H.c */
  15089. /* 07E0 */ 0x42, 0x40, 0xCE, 0x0D, 0x22, 0x20, 0xAB, 0x58, /* B@.." .X */
  15090. /* 07E8 */ 0x93, 0x80, 0xAC, 0xF9, 0x01, 0x23, 0x70, 0xEB, /* .....#p. */
  15091. /* 07F0 */ 0xD4, 0x01, 0xC4, 0x52, 0x82, 0xD0, 0x44, 0x0B, /* ...R..D. */
  15092. /* 07F8 */ 0x17, 0xA8, 0xE3, 0x81, 0x68, 0x30, 0x84, 0x46, /* ....h0.F */
  15093. /* 0800 */ 0x40, 0x0E, 0x46, 0x21, 0x20, 0xCB, 0xF8, 0x74, /* @.F! ..t */
  15094. /* 0808 */ 0x0B, 0xDC, 0x02, 0xAC, 0x00, 0x31, 0xF9, 0x20, /* .....1. */
  15095. /* 0810 */ 0x54, 0xB0, 0x17, 0x50, 0xA6, 0x1E, 0x44, 0x40, /* T..P..D@ */
  15096. /* 0818 */ 0x56, 0xBA, 0x56, 0x01, 0x59, 0x37, 0x88, 0x80, /* V.V.Y7.. */
  15097. /* 0820 */ 0xFE, 0xFF, 0x2F, 0x83, 0x32, 0x03, 0xCE, 0x32, /* ../.2..2 */
  15098. /* 0828 */ 0xBA, 0x01, 0x62, 0x0A, 0x1F, 0x0A, 0x02, 0xB1, /* ..b..... */
  15099. /* 0830 */ 0x26, 0x3D, 0xA0, 0x4C, 0x20, 0x88, 0xAE, 0x1C, /* &=.L ... */
  15100. /* 0838 */ 0xC4, 0x0F, 0x10, 0x93, 0x06, 0x22, 0x20, 0xC7, /* ....." . */
  15101. /* 0840 */ 0x39, 0x98, 0x08, 0xDC, 0x71, 0x14, 0x01, 0x52, /* 9...q..R */
  15102. /* 0848 */ 0x47, 0xC3, 0xA5, 0x20, 0x54, 0xFC, 0xF3, 0x44, /* G.. T..D */
  15103. /* 0850 */ 0x20, 0x16, 0x64, 0x09, 0x8C, 0x82, 0xD0, 0x08, /* .d..... */
  15104. /* 0858 */ 0x9A, 0x40, 0x98, 0x3C, 0x4F, 0x20, 0x2C, 0xD4, /* .@.<O ,. */
  15105. /* 0860 */ 0x9F, 0x5C, 0xA7, 0x15, 0xA2, 0x6A, 0x88, 0xD4, /* .\...j.. */
  15106. /* 0868 */ 0x15, 0x08, 0x0B, 0xFC, 0x30, 0xD0, 0x60, 0x9C, /* ....0.`. */
  15107. /* 0870 */ 0x1E, 0x44, 0x40, 0x4E, 0xFA, 0xA7, 0x0A, 0x44, /* [email protected] */
  15108. /* 0878 */ 0x72, 0x83, 0x08, 0xC8, 0xF9, 0x9F, 0x22, 0x02, /* r.....". */
  15109. /* 0880 */ 0x77, 0xEA, 0xD7, 0x84, 0x86, 0x4F, 0xBE, 0x58, /* w....O.X */
  15110. /* 0888 */ 0x41, 0x88, 0xB8, 0x87, 0x55, 0x50, 0xA2, 0x14, /* A...UP.. */
  15111. /* 0890 */ 0x44, 0x40, 0x56, 0xF6, 0xB4, 0x12, 0x90, 0x75, /* [email protected] */
  15112. /* 0898 */ 0x82, 0x08, 0xC8, 0xFF, 0x7F /* ..... */
  15113. })
  15114. }
  15115.  
  15116. Device (WMI2)
  15117. {
  15118. Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */) // _HID: Hardware ID
  15119. Name (_UID, 0x02) // _UID: Unique ID
  15120. Name (_WDG, Buffer (0x64)
  15121. {
  15122. /* 0000 */ 0xF1, 0x24, 0xB4, 0xFC, 0x5A, 0x07, 0x0E, 0x4E, /* .$..Z..N */
  15123. /* 0008 */ 0xBF, 0xC4, 0x62, 0xF3, 0xE7, 0x17, 0x71, 0xFA, /* ..b...q. */
  15124. /* 0010 */ 0x41, 0x37, 0x01, 0x01, 0xE3, 0x5E, 0xBE, 0xE2, /* A7...^.. */
  15125. /* 0018 */ 0xDA, 0x42, 0xDB, 0x49, 0x83, 0x78, 0x1F, 0x52, /* .B.I.x.R */
  15126. /* 0020 */ 0x47, 0x38, 0x82, 0x02, 0x41, 0x38, 0x01, 0x02, /* G8..A8.. */
  15127. /* 0028 */ 0x9A, 0x01, 0x30, 0x74, 0xE9, 0xDC, 0x48, 0x45, /* ..0t..HE */
  15128. /* 0030 */ 0xBA, 0xB0, 0x9F, 0xDE, 0x09, 0x35, 0xCA, 0xFF, /* .....5.. */
  15129. /* 0038 */ 0x41, 0x39, 0x0A, 0x05, 0x03, 0x70, 0xF4, 0x7F, /* A9...p.. */
  15130. /* 0040 */ 0x6C, 0x3B, 0x5E, 0x4E, 0xA2, 0x27, 0xE9, 0x79, /* l;^N.'.y */
  15131. /* 0048 */ 0x82, 0x4A, 0x85, 0xD1, 0x41, 0x41, 0x01, 0x06, /* .J..AA.. */
  15132. /* 0050 */ 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11, /* !...f... */
  15133. /* 0058 */ 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, /* ......). */
  15134. /* 0060 */ 0x42, 0x42, 0x01, 0x00 /* BB.. */
  15135. })
  15136. Name (PREL, Buffer (0x08)
  15137. {
  15138. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  15139. })
  15140. Method (WQA7, 1, NotSerialized)
  15141. {
  15142. Acquire (\_SB.WMI1.MWMI, 0xFFFF)
  15143. \WMIS (0x07, 0x00)
  15144. Index (PREL, 0x00) = \WLS0
  15145. Index (PREL, 0x01) = \WLS1
  15146. Index (PREL, 0x02) = \WLS2
  15147. Index (PREL, 0x03) = \WLS3
  15148. Index (PREL, 0x04) = \WLS4
  15149. Index (PREL, 0x05) = \WLS5
  15150. Index (PREL, 0x06) = \WLS6
  15151. Index (PREL, 0x07) = \WLS7
  15152. Release (\_SB.WMI1.MWMI)
  15153. Return (PREL) /* \_SB_.WMI2.PREL */
  15154. }
  15155.  
  15156. Method (WMA8, 3, NotSerialized)
  15157. {
  15158. CreateByteField (Arg2, 0x00, PRE0)
  15159. CreateByteField (Arg2, 0x01, PRE1)
  15160. CreateByteField (Arg2, 0x02, PRE2)
  15161. CreateByteField (Arg2, 0x03, PRE3)
  15162. CreateByteField (Arg2, 0x04, PRE4)
  15163. CreateByteField (Arg2, 0x05, PRE5)
  15164. CreateByteField (Arg2, 0x06, PRE6)
  15165. CreateByteField (Arg2, 0x07, PRE7)
  15166. Acquire (\_SB.WMI1.MWMI, 0xFFFF)
  15167. \WLS0 = PRE0 /* \_SB_.WMI2.WMA8.PRE0 */
  15168. \WLS1 = PRE1 /* \_SB_.WMI2.WMA8.PRE1 */
  15169. \WLS2 = PRE2 /* \_SB_.WMI2.WMA8.PRE2 */
  15170. \WLS3 = PRE3 /* \_SB_.WMI2.WMA8.PRE3 */
  15171. \WLS4 = PRE4 /* \_SB_.WMI2.WMA8.PRE4 */
  15172. \WLS5 = PRE5 /* \_SB_.WMI2.WMA8.PRE5 */
  15173. \WLS6 = PRE6 /* \_SB_.WMI2.WMA8.PRE6 */
  15174. \WLS7 = PRE7 /* \_SB_.WMI2.WMA8.PRE7 */
  15175. \WMIS (0x08, 0x00)
  15176. Release (\_SB.WMI1.MWMI)
  15177. }
  15178.  
  15179. Name (ITEM, Package (0x05)
  15180. {
  15181. Package (0x02)
  15182. {
  15183. 0x00,
  15184. "InhibitEnteringThinkPadSetup"
  15185. },
  15186.  
  15187. Package (0x02)
  15188. {
  15189. 0x00,
  15190. "MTMSerialConcatenation"
  15191. },
  15192.  
  15193. Package (0x02)
  15194. {
  15195. 0x00,
  15196. "SwapProductName"
  15197. },
  15198.  
  15199. Package (0x02)
  15200. {
  15201. 0x00,
  15202. "ComputraceMsgDisable"
  15203. },
  15204.  
  15205. Package (0x02)
  15206. {
  15207. 0x00,
  15208. "AtpMsgDisable"
  15209. }
  15210. })
  15211. Name (VSEL, Package (0x02)
  15212. {
  15213. Package (0x02)
  15214. {
  15215. "Disable",
  15216. "Enable"
  15217. },
  15218.  
  15219. Package (0x02)
  15220. {
  15221. "Off",
  15222. "On"
  15223. }
  15224. })
  15225. Method (WQA9, 1, NotSerialized)
  15226. {
  15227. Acquire (\_SB.WMI1.MWMI, 0xFFFF)
  15228. If ((\WMIS (0x09, Arg0) != 0x00))
  15229. {
  15230. Release (\_SB.WMI1.MWMI)
  15231. Return ("")
  15232. }
  15233.  
  15234. Local0 = DerefOf (Index (ITEM, \WITM))
  15235. Local1 = DerefOf (Index (Local0, 0x00))
  15236. Local2 = DerefOf (Index (Local0, 0x01))
  15237. Concatenate (Local2, ",", Local6)
  15238. Local3 = DerefOf (Index (VSEL, Local1))
  15239. Concatenate (Local6, DerefOf (Index (Local3, \WSEL)), Local7)
  15240. Release (\_SB.WMI1.MWMI)
  15241. Return (Local7)
  15242. }
  15243.  
  15244. Method (WMAA, 3, NotSerialized)
  15245. {
  15246. Acquire (\_SB.WMI1.MWMI, 0xFFFF)
  15247. If ((SizeOf (Arg2) == 0x00))
  15248. {
  15249. Local0 = 0x02
  15250. }
  15251. Else
  15252. {
  15253. Local0 = \_SB.WMI1.CARG (Arg2)
  15254. If ((Local0 == 0x00))
  15255. {
  15256. Local0 = \_SB.WMI1.WSET (ITEM, VSEL)
  15257. If ((Local0 == 0x00))
  15258. {
  15259. Local0 = \WMIS (0x0A, 0x00)
  15260. }
  15261. }
  15262. }
  15263.  
  15264. Release (\_SB.WMI1.MWMI)
  15265. Return (DerefOf (Index (\_SB.WMI1.RETN, Local0)))
  15266. }
  15267.  
  15268. Name (WQBB, Buffer (0x0538)
  15269. {
  15270. /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, /* FOMB.... */
  15271. /* 0008 */ 0x28, 0x05, 0x00, 0x00, 0xAE, 0x18, 0x00, 0x00, /* (....... */
  15272. /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, /* DS...}.T */
  15273. /* 0018 */ 0x98, 0xDE, 0x8B, 0x00, 0x01, 0x06, 0x18, 0x42, /* .......B */
  15274. /* 0020 */ 0x10, 0x0D, 0x10, 0x8A, 0x0D, 0x21, 0x02, 0x0B, /* .....!.. */
  15275. /* 0028 */ 0x83, 0x50, 0x50, 0x18, 0x14, 0xA0, 0x45, 0x41, /* .PP...EA */
  15276. /* 0030 */ 0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02, /* .....!.. */
  15277. /* 0038 */ 0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5, /* ..p.@... */
  15278. /* 0040 */ 0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F, /* (r.".... */
  15279. /* 0048 */ 0x31, 0x10, 0x88, 0x14, 0x40, 0x48, 0x28, 0x84, /* 1...@H(. */
  15280. /* 0050 */ 0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F, /* D.S!p.._ */
  15281. /* 0058 */ 0x01, 0x08, 0x1D, 0x0A, 0x90, 0x29, 0xC0, 0xA0, /* .....).. */
  15282. /* 0060 */ 0x00, 0xA7, 0x08, 0x22, 0x88, 0xD2, 0xB2, 0x00, /* ...".... */
  15283. /* 0068 */ 0xDD, 0x02, 0x7C, 0x0B, 0xD0, 0x0E, 0x21, 0xB4, /* ..|...!. */
  15284. /* 0070 */ 0xC8, 0x95, 0x0A, 0xB0, 0x08, 0x25, 0x9F, 0x80, /* .....%.. */
  15285. /* 0078 */ 0x92, 0x88, 0x22, 0xD9, 0x78, 0xB2, 0x8D, 0x48, /* ..".x..H */
  15286. /* 0080 */ 0xE6, 0x61, 0x91, 0x83, 0x40, 0x89, 0x19, 0x04, /* .a..@... */
  15287. /* 0088 */ 0x4A, 0x27, 0xAE, 0x6C, 0xE2, 0x6A, 0x10, 0x07, /* J'.l.j.. */
  15288. /* 0090 */ 0x10, 0xE5, 0x3C, 0xA2, 0x24, 0x38, 0xAA, 0x83, /* ..<.$8.. */
  15289. /* 0098 */ 0x88, 0x10, 0xBB, 0x5C, 0x01, 0x92, 0x07, 0x20, /* ...\... */
  15290. /* 00A0 */ 0xCD, 0x13, 0x93, 0xF5, 0x39, 0x68, 0x64, 0x6C, /* ....9hdl */
  15291. /* 00A8 */ 0x04, 0x3C, 0x98, 0x04, 0x10, 0x16, 0x65, 0x9D, /* .<....e. */
  15292. /* 00B0 */ 0x8A, 0x02, 0x83, 0xF2, 0x00, 0x22, 0x39, 0x63, /* ....."9c */
  15293. /* 00B8 */ 0x45, 0x01, 0xDB, 0xEB, 0x44, 0x64, 0x72, 0xA0, /* E...Ddr. */
  15294. /* 00C0 */ 0x54, 0x12, 0x1C, 0x6A, 0x98, 0x9E, 0x5A, 0xF3, /* T..j..Z. */
  15295. /* 00C8 */ 0x13, 0xD3, 0x44, 0x4E, 0xAD, 0xE9, 0x21, 0x0B, /* ..DN..!. */
  15296. /* 00D0 */ 0x92, 0x49, 0x1B, 0x0A, 0x6A, 0xEC, 0x9E, 0xD6, /* .I..j... */
  15297. /* 00D8 */ 0x49, 0x79, 0xA6, 0x11, 0x0F, 0xCA, 0x30, 0x09, /* Iy....0. */
  15298. /* 00E0 */ 0x3C, 0x0A, 0x86, 0xC6, 0x09, 0xCA, 0x82, 0x90, /* <....... */
  15299. /* 00E8 */ 0x83, 0x81, 0xA2, 0x00, 0x4F, 0xC2, 0x73, 0x2C, /* ....O.s, */
  15300. /* 00F0 */ 0x5E, 0x80, 0xF0, 0x11, 0x93, 0xB3, 0x40, 0x8C, /* ^.....@. */
  15301. /* 00F8 */ 0x04, 0x3E, 0x13, 0x78, 0xE4, 0xC7, 0x8C, 0x1D, /* .>.x.... */
  15302. /* 0100 */ 0x51, 0xB8, 0x80, 0xE7, 0x73, 0x0C, 0x91, 0xE3, /* Q...s... */
  15303. /* 0108 */ 0x1E, 0x6A, 0x8C, 0xA3, 0x88, 0x7C, 0x38, 0x0C, /* .j...|8. */
  15304. /* 0110 */ 0xED, 0x74, 0xE3, 0x1C, 0xD8, 0xE9, 0x14, 0x04, /* .t...... */
  15305. /* 0118 */ 0x2E, 0x90, 0x60, 0x3D, 0xCF, 0x59, 0x20, 0xFF, /* ..`=.Y . */
  15306. /* 0120 */ 0xFF, 0x18, 0x07, 0xC1, 0xF0, 0x8E, 0x01, 0x23, /* .......# */
  15307. /* 0128 */ 0x03, 0x42, 0x1E, 0x05, 0x58, 0x1D, 0x96, 0x26, /* .B..X..& */
  15308. /* 0130 */ 0x91, 0xC0, 0xEE, 0x05, 0x68, 0xBC, 0x04, 0x48, /* ....h..H */
  15309. /* 0138 */ 0xE1, 0x20, 0xA5, 0x0C, 0x42, 0x30, 0x8D, 0x09, /* . ..B0.. */
  15310. /* 0140 */ 0xB0, 0x75, 0x68, 0x90, 0x37, 0x01, 0xD6, 0xAE, /* .uh.7... */
  15311. /* 0148 */ 0x02, 0x42, 0x89, 0x74, 0x02, 0x71, 0x42, 0x44, /* .B.t.qBD */
  15312. /* 0150 */ 0x89, 0x18, 0xD4, 0x40, 0x51, 0x6A, 0x43, 0x15, /* ...@QjC. */
  15313. /* 0158 */ 0x4C, 0x67, 0xC3, 0x13, 0x66, 0xDC, 0x10, 0x31, /* Lg..f..1 */
  15314. /* 0160 */ 0x0C, 0x14, 0xB7, 0xFD, 0x41, 0x90, 0x61, 0xE3, /* ....A.a. */
  15315. /* 0168 */ 0xC6, 0xEF, 0x41, 0x9D, 0xD6, 0xD9, 0x1D, 0xD3, /* ..A..... */
  15316. /* 0170 */ 0xAB, 0x82, 0x09, 0x3C, 0xE9, 0x37, 0x84, 0xA7, /* ...<.7.. */
  15317. /* 0178 */ 0x83, 0xA3, 0x38, 0xDA, 0xA8, 0x31, 0x9A, 0x23, /* ..8..1.# */
  15318. /* 0180 */ 0x65, 0xAB, 0xD6, 0xB9, 0xC2, 0x91, 0xE0, 0x51, /* e......Q */
  15319. /* 0188 */ 0xE7, 0x05, 0x9F, 0x0C, 0x3C, 0xB4, 0xC3, 0xF6, /* ....<... */
  15320. /* 0190 */ 0x60, 0xCF, 0xD2, 0x43, 0x38, 0x82, 0x67, 0x86, /* `..C8.g. */
  15321. /* 0198 */ 0x47, 0x02, 0x8F, 0x81, 0xDD, 0x15, 0x7C, 0x08, /* G.....|. */
  15322. /* 01A0 */ 0xF0, 0x19, 0x01, 0xEF, 0x1A, 0x50, 0x97, 0x83, /* .....P.. */
  15323. /* 01A8 */ 0x47, 0x03, 0x36, 0xE9, 0x70, 0x98, 0xF1, 0x7A, /* G.6.p..z */
  15324. /* 01B0 */ 0xEE, 0x9E, 0xBA, 0xCF, 0x18, 0xFC, 0xBC, 0xE1, /* ........ */
  15325. /* 01B8 */ 0xC1, 0xE1, 0x46, 0x7A, 0x32, 0x47, 0x56, 0xAA, /* ..Fz2GV. */
  15326. /* 01C0 */ 0x00, 0xB3, 0xD7, 0x00, 0x1D, 0x25, 0x7C, 0xE0, /* .....%|. */
  15327. /* 01C8 */ 0x60, 0x77, 0x81, 0xA7, 0x00, 0x13, 0x58, 0xFE, /* `w....X. */
  15328. /* 01D0 */ 0x20, 0x50, 0x23, 0x33, 0xB4, 0xC7, 0xFB, 0xDE, /* P#3.... */
  15329. /* 01D8 */ 0x61, 0xC8, 0x27, 0x85, 0xC3, 0x62, 0x62, 0x0F, /* a.'..bb. */
  15330. /* 01E0 */ 0x1E, 0x74, 0x3C, 0xE0, 0xBF, 0x8F, 0x3C, 0x69, /* .t<...<i */
  15331. /* 01E8 */ 0x78, 0xFA, 0x9E, 0xAF, 0x09, 0x06, 0x86, 0x90, /* x....... */
  15332. /* 01F0 */ 0x95, 0xF1, 0xA0, 0x06, 0x62, 0xE8, 0x57, 0x85, /* ....b.W. */
  15333. /* 01F8 */ 0xC3, 0x38, 0x0D, 0x9F, 0x40, 0x7C, 0x0E, 0x08, /* .8..@|.. */
  15334. /* 0200 */ 0x12, 0xE3, 0x98, 0x3C, 0x38, 0xFF, 0xFF, 0x09, /* ...<8... */
  15335. /* 0208 */ 0x1C, 0x6B, 0xE4, 0xF4, 0x9C, 0xE2, 0xF3, 0x04, /* .k...... */
  15336. /* 0210 */ 0x3F, 0x5C, 0xF8, 0x3C, 0xC1, 0x4E, 0x0C, 0xA7, /* ?\.<.N.. */
  15337. /* 0218 */ 0xF1, 0x1C, 0xE0, 0xE1, 0x9C, 0x95, 0x8F, 0x13, /* ........ */
  15338. /* 0220 */ 0xC0, 0x02, 0xE2, 0x75, 0x82, 0x0F, 0x14, 0x3E, /* ...u...> */
  15339. /* 0228 */ 0xEC, 0xA1, 0x79, 0x14, 0x2F, 0x11, 0x6F, 0x0F, /* ..y./.o. */
  15340. /* 0230 */ 0x26, 0x88, 0xF6, 0x10, 0x03, 0xC6, 0x19, 0xE1, /* &....... */
  15341. /* 0238 */ 0xCE, 0x1B, 0x70, 0x4E, 0x31, 0xC0, 0x03, 0xEA, /* ..pN1... */
  15342. /* 0240 */ 0x10, 0x30, 0x87, 0x09, 0x0F, 0x81, 0x0F, 0xE0, /* .0...... */
  15343. /* 0248 */ 0x19, 0xE4, 0x1C, 0x7D, 0xCC, 0x39, 0x33, 0xDC, /* ...}.93. */
  15344. /* 0250 */ 0x71, 0x07, 0x6C, 0xC3, 0xE0, 0x91, 0x2D, 0x80, /* q.l...-. */
  15345. /* 0258 */ 0xB0, 0x38, 0x4F, 0x02, 0x05, 0x7C, 0x1B, 0x50, /* .8O..|.P */
  15346. /* 0260 */ 0x18, 0x1F, 0x6E, 0xC0, 0xFB, 0xFF, 0x3F, 0xDC, /* ..n...?. */
  15347. /* 0268 */ 0x00, 0xD7, 0xF3, 0x01, 0xEE, 0xF8, 0x00, 0xF7, /* ........ */
  15348. /* 0270 */ 0x62, 0xC1, 0x0E, 0x0F, 0x8F, 0x37, 0xC0, 0x60, /* b....7.` */
  15349. /* 0278 */ 0x48, 0x8F, 0x34, 0x6F, 0x35, 0x31, 0x5E, 0x6D, /* H.4o51^m */
  15350. /* 0280 */ 0x42, 0x44, 0x78, 0xA8, 0x79, 0xB7, 0x31, 0x52, /* BDx.y.1R */
  15351. /* 0288 */ 0xBC, 0xC7, 0x1B, 0x76, 0x8D, 0x39, 0x8B, 0x07, /* ...v.9.. */
  15352. /* 0290 */ 0x90, 0x28, 0xC5, 0xA1, 0xE9, 0x62, 0x13, 0x23, /* .(...b.# */
  15353. /* 0298 */ 0xCA, 0x9B, 0x8D, 0x61, 0xDF, 0x74, 0x0C, 0x14, /* ...a.t.. */
  15354. /* 02A0 */ 0x2A, 0x52, 0x84, 0x30, 0x2F, 0x16, 0x21, 0x1E, /* *R.0/.!. */
  15355. /* 02A8 */ 0x6F, 0xC0, 0x2C, 0xE9, 0xA5, 0xA2, 0xCF, 0x81, /* o.,..... */
  15356. /* 02B0 */ 0x8F, 0x37, 0x80, 0x97, 0xFF, 0xFF, 0xF1, 0x06, /* .7...... */
  15357. /* 02B8 */ 0xF0, 0x30, 0x0C, 0x1F, 0x53, 0xC0, 0x76, 0x73, /* .0..S.vs */
  15358. /* 02C0 */ 0x60, 0xF7, 0x14, 0xF8, 0xE7, 0x14, 0xC0, 0x91, /* `....... */
  15359. /* 02C8 */ 0x90, 0x47, 0x80, 0x0E, 0x1E, 0x16, 0x01, 0x22, /* .G....." */
  15360. /* 02D0 */ 0x1B, 0xCF, 0x00, 0x9F, 0x89, 0xA8, 0x40, 0x2A, /* ......@* */
  15361. /* 02D8 */ 0xCD, 0x14, 0x2C, 0xE3, 0x14, 0xAC, 0x4E, 0x88, /* ..,...N. */
  15362. /* 02E0 */ 0x5C, 0x06, 0x85, 0x44, 0x40, 0x68, 0x64, 0x86, /* \..D@hd. */
  15363. /* 02E8 */ 0xF3, 0x21, 0xD1, 0x60, 0x06, 0xF1, 0xF9, 0xC0, /* .!.`.... */
  15364. /* 02F0 */ 0x67, 0x0A, 0x9F, 0x9C, 0xF8, 0xFF, 0xFF, 0xE4, /* g....... */
  15365. /* 02F8 */ 0x04, 0x9E, 0x83, 0xC9, 0x43, 0x05, 0x2C, 0x44, /* ....C.,D */
  15366. /* 0300 */ 0x9F, 0x16, 0x38, 0x9C, 0xCF, 0x2C, 0x1C, 0xCE, /* ..8..,.. */
  15367. /* 0308 */ 0x47, 0x12, 0x7E, 0x80, 0xE4, 0x47, 0x25, 0x70, /* G.~..G%p */
  15368. /* 0310 */ 0x09, 0x3C, 0x34, 0x80, 0x02, 0xC8, 0xF7, 0x03, /* .<4..... */
  15369. /* 0318 */ 0x9F, 0x03, 0x9E, 0x11, 0xD8, 0x1C, 0x1E, 0x09, /* ........ */
  15370. /* 0320 */ 0x7C, 0x20, 0x60, 0xF0, 0x3C, 0xDA, 0xA8, 0xE8, /* | `.<... */
  15371. /* 0328 */ 0xD1, 0xC6, 0xC3, 0xE3, 0x47, 0x06, 0xCF, 0xE7, /* ....G... */
  15372. /* 0330 */ 0x81, 0xE0, 0x28, 0x1F, 0x09, 0x70, 0x18, 0xEF, /* ..(..p.. */
  15373. /* 0338 */ 0x17, 0x1E, 0xA2, 0x4F, 0x39, 0xB0, 0x26, 0x72, /* ...O9.&r */
  15374. /* 0340 */ 0xD4, 0x16, 0x7D, 0x22, 0x10, 0xE8, 0x33, 0x17, /* ..}"..3. */
  15375. /* 0348 */ 0xE6, 0x94, 0x03, 0x9C, 0x82, 0x8F, 0x1E, 0x15, /* ........ */
  15376. /* 0350 */ 0xF5, 0x40, 0x0A, 0xDA, 0x93, 0x82, 0xCF, 0x0A, /* .@...... */
  15377. /* 0358 */ 0x3E, 0x7C, 0xC1, 0xFF, 0xFF, 0x1F, 0xBE, 0xE0, /* >|...... */
  15378. /* 0360 */ 0xCC, 0xEB, 0x65, 0xCD, 0x07, 0x8E, 0x38, 0x67, /* ..e...8g */
  15379. /* 0368 */ 0x71, 0xBA, 0xEF, 0x16, 0xF8, 0x13, 0x29, 0x30, /* q.....)0 */
  15380. /* 0370 */ 0x0B, 0x72, 0x22, 0x45, 0xC1, 0xF8, 0x44, 0x0A, /* .r"E..D. */
  15381. /* 0378 */ 0xD8, 0xBC, 0x05, 0x60, 0xAF, 0x0B, 0x4F, 0x22, /* ...`..O" */
  15382. /* 0380 */ 0x30, 0xCE, 0x11, 0xCF, 0x58, 0x30, 0x0F, 0x55, /* 0...X0.U */
  15383. /* 0388 */ 0xA7, 0xF8, 0x52, 0xF5, 0xC6, 0x10, 0xE1, 0xC9, /* ..R..... */
  15384. /* 0390 */ 0xEA, 0x35, 0xEA, 0x01, 0xCB, 0x60, 0x2F, 0x02, /* .5...`/. */
  15385. /* 0398 */ 0x86, 0x79, 0xC5, 0xF2, 0xE9, 0x2A, 0xC4, 0x03, /* .y...*.. */
  15386. /* 03A0 */ 0x96, 0xCF, 0x5A, 0xD1, 0x42, 0x84, 0x8C, 0x12, /* ..Z.B... */
  15387. /* 03A8 */ 0xEC, 0x15, 0xEB, 0x55, 0xC6, 0x47, 0x2A, 0x83, /* ...U.G*. */
  15388. /* 03B0 */ 0x07, 0x0C, 0x1B, 0x2D, 0x52, 0x84, 0x47, 0x2C, /* ...-R.G, */
  15389. /* 03B8 */ 0xFC, 0xFF, 0xFF, 0x88, 0x05, 0x1E, 0x09, 0x07, /* ........ */
  15390. /* 03C0 */ 0x52, 0x80, 0x2A, 0x03, 0xC7, 0x1D, 0x48, 0x81, /* R.*...H. */
  15391. /* 03C8 */ 0xFD, 0x69, 0x02, 0x7F, 0xBD, 0xF0, 0x78, 0xB0, /* .i....x. */
  15392. /* 03D0 */ 0xFF, 0xFF, 0x73, 0x00, 0xF8, 0x0E, 0x31, 0xC0, /* ..s...1. */
  15393. /* 03D8 */ 0x60, 0xC0, 0x30, 0x0E, 0x31, 0xC0, 0x43, 0xF0, /* `.0.1.C. */
  15394. /* 03E0 */ 0xC9, 0x0C, 0xF4, 0xC7, 0x1D, 0xF8, 0xE3, 0xE0, /* ........ */
  15395. /* 03E8 */ 0x19, 0x9F, 0x1C, 0x26, 0x50, 0x98, 0x13, 0x29, /* ...&P..) */
  15396. /* 03F0 */ 0x0A, 0xC6, 0x27, 0x52, 0xC0, 0xD9, 0xFF, 0xFF, /* ..'R.... */
  15397. /* 03F8 */ 0x70, 0x05, 0x86, 0xE3, 0x0D, 0xF8, 0x6F, 0x33, /* p.....o3 */
  15398. /* 0400 */ 0x3E, 0x84, 0xFA, 0x7C, 0xE3, 0x0B, 0xA9, 0x21, /* >..|...! */
  15399. /* 0408 */ 0x5E, 0x6C, 0xDE, 0xD4, 0x5E, 0x09, 0x5E, 0xDF, /* ^l..^.^. */
  15400. /* 0410 */ 0xD9, 0xB5, 0xE6, 0xF5, 0xDD, 0xA7, 0x82, 0x27, /* .......' */
  15401. /* 0418 */ 0xD1, 0x08, 0x21, 0xA3, 0xBC, 0xE4, 0x18, 0x24, /* ..!....$ */
  15402. /* 0420 */ 0xC4, 0xEB, 0xA8, 0x01, 0x83, 0x05, 0x89, 0x78, /* .......x */
  15403. /* 0428 */ 0x0A, 0x4F, 0x3B, 0x8F, 0x37, 0xE0, 0x15, 0x75, /* .O;.7..u */
  15404. /* 0430 */ 0x20, 0x05, 0xE8, 0xF1, 0xFF, 0x3F, 0x90, 0x02, /* ....?.. */
  15405. /* 0438 */ 0x83, 0x7B, 0x0A, 0xEC, 0x73, 0x0A, 0xE0, 0x29, /* .{..s..) */
  15406. /* 0440 */ 0xF9, 0x89, 0x94, 0xA6, 0x3E, 0x91, 0xA2, 0x15, /* ....>... */
  15407. /* 0448 */ 0x01, 0x69, 0xAA, 0x60, 0x21, 0x98, 0xFE, 0x44, /* .i.`!..D */
  15408. /* 0450 */ 0x4A, 0x0F, 0x06, 0xCE, 0x4D, 0xA2, 0xE4, 0x43, /* J...M..C */
  15409. /* 0458 */ 0xA3, 0x70, 0xCE, 0x7A, 0x20, 0xA1, 0x20, 0x06, /* .p.z . . */
  15410. /* 0460 */ 0x74, 0x90, 0x43, 0x05, 0xFA, 0xAC, 0xE2, 0x03, /* t.C..... */
  15411. /* 0468 */ 0xC9, 0x81, 0x3C, 0x22, 0x7A, 0x58, 0x3E, 0x54, /* ..<"zX>T */
  15412. /* 0470 */ 0xFA, 0xAE, 0xE2, 0x73, 0x88, 0x8F, 0x14, 0x1E, /* ...s.... */
  15413. /* 0478 */ 0xBF, 0x0F, 0x0B, 0xFC, 0x3F, 0xE3, 0xE3, 0x28, /* ....?..( */
  15414. /* 0480 */ 0x03, 0xAF, 0xE6, 0xBC, 0x82, 0x02, 0xF3, 0x69, /* .......i */
  15415. /* 0488 */ 0x14, 0xA3, 0xEB, 0x3E, 0x01, 0x92, 0xFF, 0xFF, /* ...>.... */
  15416. /* 0490 */ 0xFC, 0xB8, 0xBE, 0xC3, 0x28, 0xC8, 0xD1, 0x79, /* ....(..y */
  15417. /* 0498 */ 0xF8, 0xC9, 0xA2, 0xE2, 0x4E, 0x96, 0x82, 0x78, /* ....N..x */
  15418. /* 04A0 */ 0xB2, 0x8E, 0x32, 0x59, 0xF4, 0x4C, 0x7C, 0xBB, /* ..2Y.L|. */
  15419. /* 04A8 */ 0xF0, 0x8C, 0xDE, 0xBB, 0x7C, 0x83, 0x65, 0x37, /* ....|.e7 */
  15420. /* 04B0 */ 0x59, 0x78, 0x97, 0x81, 0x90, 0x8F, 0x06, 0xBE, /* Yx...... */
  15421. /* 04B8 */ 0xC9, 0xC2, 0x1D, 0x8B, 0x2F, 0x23, 0xE0, 0xBB, /* ..../#.. */
  15422. /* 04C0 */ 0xC9, 0x02, 0x5E, 0x47, 0xE3, 0xB3, 0x05, 0x3B, /* ..^G...; */
  15423. /* 04C8 */ 0x85, 0xF8, 0xBA, 0x06, 0x4B, 0xA1, 0x4D, 0x9F, /* ....K.M. */
  15424. /* 04D0 */ 0x1A, 0x8D, 0x5A, 0xFD, 0xFF, 0x1B, 0x94, 0xA9, /* ..Z..... */
  15425. /* 04D8 */ 0x51, 0xA6, 0x41, 0xAD, 0x3E, 0x95, 0x1A, 0x33, /* Q.A.>..3 */
  15426. /* 04E0 */ 0x76, 0xA1, 0xB0, 0xB8, 0x0B, 0x06, 0x95, 0xB4, /* v....... */
  15427. /* 04E8 */ 0x2C, 0x8D, 0xCB, 0x81, 0x40, 0x68, 0x80, 0x5B, /* ,...@h.[ */
  15428. /* 04F0 */ 0xA9, 0x40, 0x1C, 0xFA, 0x0B, 0xA4, 0x53, 0x02, /* [email protected]. */
  15429. /* 04F8 */ 0xF9, 0x6A, 0x09, 0xC8, 0x62, 0x57, 0x25, 0x10, /* .j..bW%. */
  15430. /* 0500 */ 0xCB, 0x54, 0x01, 0xD1, 0xC8, 0xDD, 0xC2, 0x20, /* .T..... */
  15431. /* 0508 */ 0x02, 0x72, 0xBC, 0x4F, 0x8D, 0x40, 0x1D, 0x49, /* [email protected] */
  15432. /* 0510 */ 0x07, 0x10, 0x13, 0xE4, 0x63, 0xAC, 0xF4, 0x25, /* ....c..% */
  15433. /* 0518 */ 0x20, 0x10, 0xCB, 0xA6, 0x15, 0xA0, 0xE5, 0x3A, /* ......: */
  15434. /* 0520 */ 0x01, 0x62, 0x61, 0x41, 0x68, 0xC0, 0x5F, 0xB5, /* .baAh._. */
  15435. /* 0528 */ 0x86, 0xE0, 0xB4, 0x20, 0x02, 0x72, 0x32, 0x2D, /* ... .r2- */
  15436. /* 0530 */ 0x40, 0x2C, 0x27, 0x88, 0x80, 0xFC, 0xFF, 0x07 /* @,'..... */
  15437. })
  15438. }
  15439.  
  15440. Device (WMI3)
  15441. {
  15442. Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */) // _HID: Hardware ID
  15443. Name (_UID, 0x03) // _UID: Unique ID
  15444. Name (_WDG, /**** Is ResourceTemplate, but EndTag not at buffer end ****/ Buffer (0x3C)
  15445. {
  15446. /* 0000 */ 0x79, 0x36, 0x4D, 0x8F, 0x9E, 0x74, 0x79, 0x44, /* y6M..tyD */
  15447. /* 0008 */ 0x9B, 0x16, 0xC6, 0x26, 0x01, 0xFD, 0x25, 0xF0, /* ...&..%. */
  15448. /* 0010 */ 0x41, 0x42, 0x01, 0x02, 0x69, 0xE8, 0xD2, 0x85, /* AB..i... */
  15449. /* 0018 */ 0x5A, 0x36, 0xCE, 0x4A, 0xA4, 0xD3, 0xCD, 0x69, /* Z6.J...i */
  15450. /* 0020 */ 0x2B, 0x16, 0x98, 0xA0, 0x41, 0x43, 0x01, 0x02, /* +...AC.. */
  15451. /* 0028 */ 0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11, /* !...f... */
  15452. /* 0030 */ 0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, /* ......). */
  15453. /* 0038 */ 0x42, 0x43, 0x01, 0x00 /* BC.. */
  15454. })
  15455. Method (WMAB, 3, NotSerialized)
  15456. {
  15457. CreateByteField (Arg2, 0x00, ASS0)
  15458. CreateWordField (Arg2, 0x01, ASS1)
  15459. CreateByteField (Arg2, 0x03, ASS2)
  15460. Acquire (\_SB.WMI1.MWMI, 0xFFFF)
  15461. \WASB = ASS0 /* \_SB_.WMI3.WMAB.ASS0 */
  15462. \WASI = ASS1 /* \_SB_.WMI3.WMAB.ASS1 */
  15463. \WASD = ASS2 /* \_SB_.WMI3.WMAB.ASS2 */
  15464. \WMIS (0x0B, 0x00)
  15465. Local0 = \WASS
  15466. Release (\_SB.WMI1.MWMI)
  15467. Return (Local0)
  15468. }
  15469.  
  15470. Method (WMAC, 3, NotSerialized)
  15471. {
  15472. CreateByteField (Arg2, 0x00, ASS0)
  15473. CreateWordField (Arg2, 0x01, ASS1)
  15474. Acquire (\_SB.WMI1.MWMI, 0xFFFF)
  15475. \WASB = ASS0 /* \_SB_.WMI3.WMAC.ASS0 */
  15476. \WASI = ASS1 /* \_SB_.WMI3.WMAC.ASS1 */
  15477. \WMIS (0x0C, Arg1)
  15478. Local0 = \WASS
  15479. Release (\_SB.WMI1.MWMI)
  15480. Return (Local0)
  15481. }
  15482.  
  15483. Name (WQBC, Buffer (0x040A)
  15484. {
  15485. /* 0000 */ 0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00, /* FOMB.... */
  15486. /* 0008 */ 0xFA, 0x03, 0x00, 0x00, 0x32, 0x12, 0x00, 0x00, /* ....2... */
  15487. /* 0010 */ 0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54, /* DS...}.T */
  15488. /* 0018 */ 0x98, 0xC3, 0x88, 0x00, 0x01, 0x06, 0x18, 0x42, /* .......B */
  15489. /* 0020 */ 0x10, 0x07, 0x10, 0x8A, 0x0D, 0x21, 0x02, 0x0B, /* .....!.. */
  15490. /* 0028 */ 0x83, 0x50, 0x50, 0x18, 0x14, 0xA0, 0x45, 0x41, /* .PP...EA */
  15491. /* 0030 */ 0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02, /* .....!.. */
  15492. /* 0038 */ 0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5, /* ..p.@... */
  15493. /* 0040 */ 0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F, /* (r.".... */
  15494. /* 0048 */ 0x31, 0x10, 0x88, 0x14, 0x40, 0x48, 0x28, 0x84, /* 1...@H(. */
  15495. /* 0050 */ 0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F, /* D.S!p.._ */
  15496. /* 0058 */ 0x01, 0x08, 0x1D, 0x0A, 0x90, 0x29, 0xC0, 0xA0, /* .....).. */
  15497. /* 0060 */ 0x00, 0xA7, 0x08, 0x22, 0x88, 0xD2, 0xB2, 0x00, /* ...".... */
  15498. /* 0068 */ 0xDD, 0x02, 0x7C, 0x0B, 0xD0, 0x0E, 0x21, 0xB4, /* ..|...!. */
  15499. /* 0070 */ 0x58, 0x07, 0x11, 0x21, 0xD2, 0x31, 0x34, 0x29, /* X..!.14) */
  15500. /* 0078 */ 0x40, 0xA2, 0x00, 0x8B, 0x02, 0x64, 0xC3, 0xC8, /* @....d.. */
  15501. /* 0080 */ 0x36, 0x22, 0x99, 0x87, 0x45, 0x0E, 0x02, 0x25, /* 6"..E..% */
  15502. /* 0088 */ 0x66, 0x10, 0x28, 0x9D, 0xE0, 0xB2, 0x89, 0xAB, /* f.(..... */
  15503. /* 0090 */ 0x41, 0x9C, 0x4C, 0x94, 0xF3, 0x88, 0x92, 0xE0, /* A.L..... */
  15504. /* 0098 */ 0xA8, 0x0E, 0x22, 0x42, 0xEC, 0x72, 0x05, 0x48, /* .."B.r.H */
  15505. /* 00A0 */ 0x1E, 0x80, 0x34, 0x4F, 0x4C, 0xD6, 0xE7, 0xA0, /* ..4OL... */
  15506. /* 00A8 */ 0x91, 0xB1, 0x11, 0xF0, 0x94, 0x1A, 0x40, 0x58, /* ......@X */
  15507. /* 00B0 */ 0xA0, 0x75, 0x2A, 0xE0, 0x7A, 0x0D, 0x43, 0x3D, /* .u*.z.C= */
  15508. /* 00B8 */ 0x80, 0x48, 0xCE, 0x58, 0x51, 0xC0, 0xF6, 0x3A, /* .H.XQ..: */
  15509. /* 00C0 */ 0x11, 0x8D, 0xEA, 0x40, 0x99, 0x24, 0x38, 0xD4, /* ...@.$8. */
  15510. /* 00C8 */ 0x30, 0x3D, 0xB5, 0xE6, 0x27, 0xA6, 0x89, 0x9C, /* 0=..'... */
  15511. /* 00D0 */ 0x5A, 0xD3, 0x43, 0x16, 0x24, 0x93, 0x36, 0x14, /* Z.C.$.6. */
  15512. /* 00D8 */ 0xD4, 0xD8, 0x3D, 0xAD, 0x93, 0xF2, 0x4C, 0x23, /* ..=...L# */
  15513. /* 00E0 */ 0x1E, 0x94, 0x61, 0x12, 0x78, 0x14, 0x0C, 0x8D, /* ..a.x... */
  15514. /* 00E8 */ 0x13, 0x94, 0x75, 0x22, 0xA0, 0x03, 0xE5, 0x80, /* ..u".... */
  15515. /* 00F0 */ 0x27, 0xE1, 0x39, 0x16, 0x2F, 0x40, 0xF8, 0x88, /* '.9./@.. */
  15516. /* 00F8 */ 0xC9, 0xB4, 0x4D, 0xE0, 0x33, 0x81, 0x87, 0x79, /* ..M.3..y */
  15517. /* 0100 */ 0xCC, 0xD8, 0x11, 0x85, 0x0B, 0x78, 0x3E, 0xC7, /* .....x>. */
  15518. /* 0108 */ 0x10, 0x39, 0xEE, 0xA1, 0xC6, 0x38, 0x8A, 0xC8, /* .9...8.. */
  15519. /* 0110 */ 0x47, 0x60, 0x24, 0x03, 0xC5, 0x2B, 0x08, 0x89, /* G`$..+.. */
  15520. /* 0118 */ 0x80, 0xF8, 0x76, 0x70, 0x70, 0x91, 0xFC, 0xFF, /* ..vpp... */
  15521. /* 0120 */ 0x47, 0x89, 0x11, 0x2A, 0xC6, 0xDB, 0x00, 0x6E, /* G..*...n */
  15522. /* 0128 */ 0x5E, 0x09, 0x8A, 0x1E, 0x07, 0x4A, 0x06, 0x84, /* ^....J.. */
  15523. /* 0130 */ 0x3C, 0x0A, 0xB0, 0x7A, 0x28, 0x20, 0x04, 0x16, /* <..z( .. */
  15524. /* 0138 */ 0x27, 0x40, 0xE3, 0x38, 0x05, 0xD3, 0x99, 0x00, /* '@.8.... */
  15525. /* 0140 */ 0x6D, 0x02, 0xBC, 0x09, 0x30, 0x27, 0xC0, 0x16, /* m...0'.. */
  15526. /* 0148 */ 0x86, 0x80, 0x82, 0x9C, 0x59, 0x94, 0x20, 0x11, /* ....Y. . */
  15527. /* 0150 */ 0x42, 0x31, 0x88, 0x0A, 0x05, 0x18, 0x43, 0x14, /* B1....C. */
  15528. /* 0158 */ 0xCA, 0x3B, 0x41, 0x8C, 0xCA, 0x20, 0x74, 0x82, /* .;A.. t. */
  15529. /* 0160 */ 0x08, 0x14, 0x3D, 0x78, 0x98, 0xD6, 0x40, 0x74, /* ..=x..@t */
  15530. /* 0168 */ 0x89, 0xF0, 0xC8, 0xB1, 0x47, 0x00, 0x9F, 0x19, /* ....G... */
  15531. /* 0170 */ 0xCE, 0xE9, 0x04, 0x1F, 0x01, 0xDE, 0x16, 0x4C, /* .......L */
  15532. /* 0178 */ 0xE0, 0x79, 0xBF, 0x24, 0x1C, 0x6A, 0xD8, 0x03, /* .y.$.j.. */
  15533. /* 0180 */ 0x8E, 0x1A, 0xE3, 0x28, 0x12, 0x58, 0xD0, 0x33, /* ...(.X.3 */
  15534. /* 0188 */ 0x42, 0x16, 0x40, 0x14, 0x09, 0x1E, 0x75, 0x64, /* [email protected] */
  15535. /* 0190 */ 0xF0, 0xE1, 0xC0, 0x23, 0x3B, 0x72, 0xCF, 0xF0, /* ...#;r.. */
  15536. /* 0198 */ 0x04, 0x82, 0x1C, 0xC2, 0x11, 0x3C, 0x36, 0x3C, /* .....<6< */
  15537. /* 01A0 */ 0x15, 0x78, 0x0C, 0xEC, 0xBA, 0xE0, 0x73, 0x80, /* .x....s. */
  15538. /* 01A8 */ 0x8F, 0x09, 0x78, 0xD7, 0x80, 0x9A, 0xF3, 0xD3, /* ..x..... */
  15539. /* 01B0 */ 0x01, 0x9B, 0x72, 0x38, 0xCC, 0x70, 0x3D, 0xFD, /* ..r8.p=. */
  15540. /* 01B8 */ 0x70, 0x27, 0x70, 0xD2, 0x06, 0x64, 0xB3, 0xF3, /* p'p..d.. */
  15541. /* 01C0 */ 0xE0, 0x70, 0xE3, 0x3C, 0x99, 0x23, 0x2B, 0x55, /* .p.<.#+U */
  15542. /* 01C8 */ 0x80, 0xD9, 0x13, 0x82, 0x4E, 0x13, 0x3E, 0x73, /* ....N.>s */
  15543. /* 01D0 */ 0xB0, 0xBB, 0xC0, 0xF9, 0xF4, 0x0C, 0x49, 0xE4, /* ......I. */
  15544. /* 01D8 */ 0x0F, 0x02, 0x35, 0x32, 0x43, 0xFB, 0x2C, 0xF0, /* ..52C.,. */
  15545. /* 01E0 */ 0xEA, 0x61, 0xC8, 0x87, 0x85, 0xC3, 0x62, 0x62, /* .a....bb */
  15546. /* 01E8 */ 0xCF, 0x1E, 0x74, 0x3C, 0xE0, 0x3F, 0x25, 0x3C, /* ..t<.?%< */
  15547. /* 01F0 */ 0x6C, 0x78, 0xFA, 0x9E, 0xAF, 0x09, 0xA2, 0x3D, /* lx.....= */
  15548. /* 01F8 */ 0x8F, 0x80, 0xE1, 0xFF, 0x7F, 0x1E, 0x81, 0x39, /* .......9 */
  15549. /* 0200 */ 0x9C, 0x07, 0x84, 0x27, 0x07, 0x76, 0x80, 0xC0, /* ...'.v.. */
  15550. /* 0208 */ 0x1C, 0x48, 0x80, 0xC9, 0xF9, 0x02, 0x77, 0x28, /* .H....w( */
  15551. /* 0210 */ 0xF0, 0x10, 0xF8, 0x00, 0x1E, 0x25, 0xCE, 0xD1, /* .....%.. */
  15552. /* 0218 */ 0x4A, 0x67, 0x86, 0x3C, 0xB9, 0x80, 0x2D, 0xFB, /* Jg.<..-. */
  15553. /* 0220 */ 0x1B, 0x40, 0x07, 0x0F, 0xE7, 0x06, 0x91, 0x8D, /* .@...... */
  15554. /* 0228 */ 0x57, 0x80, 0x09, 0x74, 0x38, 0xB1, 0x1E, 0x20, /* W..t8.. */
  15555. /* 0230 */ 0x4D, 0x14, 0x0C, 0x04, 0xD3, 0xD3, 0x6B, 0x00, /* M.....k. */
  15556. /* 0238 */ 0x3E, 0x15, 0x38, 0x37, 0x89, 0x92, 0x0F, 0x8C, /* >.87.... */
  15557. /* 0240 */ 0xC2, 0x39, 0xEB, 0x79, 0x84, 0x82, 0x18, 0xD0, /* .9.y.... */
  15558. /* 0248 */ 0x41, 0x20, 0xE4, 0xE4, 0xA0, 0x80, 0x3A, 0xAA, /* A ....:. */
  15559. /* 0250 */ 0xF8, 0x3C, 0x72, 0xAA, 0x0F, 0x3D, 0x9E, 0x94, /* .<r..=.. */
  15560. /* 0258 */ 0x47, 0xE1, 0xAB, 0x8A, 0x0F, 0x21, 0x3E, 0x4F, /* G....!>O */
  15561. /* 0260 */ 0x78, 0xF4, 0x3E, 0x29, 0xF0, 0xEF, 0x8C, 0xAF, /* x.>).... */
  15562. /* 0268 */ 0x0E, 0x46, 0xB7, 0x9A, 0xE3, 0x0A, 0x0A, 0xCC, /* .F...... */
  15563. /* 0270 */ 0x67, 0x11, 0x4E, 0x50, 0xD7, 0x6D, 0x01, 0xFA, /* g.NP.m.. */
  15564. /* 0278 */ 0x29, 0xE0, 0x08, 0x3C, 0x94, 0x77, 0x92, 0xC7, /* )..<.w.. */
  15565. /* 0280 */ 0x90, 0x04, 0xF5, 0x9D, 0x16, 0x40, 0x01, 0xE4, /* .....@.. */
  15566. /* 0288 */ 0x9B, 0x81, 0x4F, 0x02, 0x21, 0xFE, 0xFF, 0x4F, /* ..O.!..O */
  15567. /* 0290 */ 0x07, 0x1E, 0xC3, 0xC3, 0x80, 0xD1, 0x8C, 0xCE, /* ........ */
  15568. /* 0298 */ 0xC3, 0x4F, 0x16, 0x15, 0x77, 0xB2, 0x14, 0xC4, /* .O..w... */
  15569. /* 02A0 */ 0x93, 0x75, 0x94, 0xC9, 0xA2, 0x67, 0xE2, 0xAB, /* .u...g.. */
  15570. /* 02A8 */ 0x85, 0x27, 0x74, 0x4A, 0x41, 0xCE, 0xD1, 0x13, /* .'tJA... */
  15571. /* 02B0 */ 0xF6, 0x55, 0x04, 0xD6, 0xF9, 0x20, 0xE4, 0x8B, /* .U... .. */
  15572. /* 02B8 */ 0x81, 0xA7, 0x61, 0x38, 0x4F, 0x96, 0xC3, 0x79, /* ..a8O..y */
  15573. /* 02C0 */ 0xB2, 0x7C, 0x2C, 0xBE, 0x6A, 0xC0, 0x1F, 0x2D, /* .|,.j..- */
  15574. /* 02C8 */ 0x96, 0xA0, 0xC0, 0xD9, 0x82, 0x1C, 0x1E, 0x13, /* ........ */
  15575. /* 02D0 */ 0x6F, 0x54, 0xF4, 0x46, 0xE4, 0xE1, 0xF1, 0xCB, /* oT.F.... */
  15576. /* 02D8 */ 0x81, 0xE7, 0xF3, 0x8C, 0x70, 0x94, 0x6F, 0x12, /* ....p.o. */
  15577. /* 02E0 */ 0x38, 0x8C, 0xC7, 0x12, 0x0F, 0xD1, 0x97, 0x23, /* 8......# */
  15578. /* 02E8 */ 0x58, 0x13, 0x39, 0x69, 0xDF, 0x16, 0x4E, 0x36, /* X.9i..N6 */
  15579. /* 02F0 */ 0xE8, 0x4B, 0x10, 0xBB, 0x1C, 0x01, 0xBF, 0x88, /* .K...... */
  15580. /* 02F8 */ 0x26, 0x86, 0xC1, 0x22, 0x2D, 0x45, 0x11, 0x17, /* &.."-E.. */
  15581. /* 0300 */ 0x45, 0x61, 0x7C, 0xC5, 0x82, 0xFD, 0xFF, 0xBF, /* Ea|..... */
  15582. /* 0308 */ 0x62, 0x01, 0x16, 0x04, 0x0F, 0x1B, 0x34, 0x87, /* b.....4. */
  15583. /* 0310 */ 0x83, 0x97, 0x1E, 0x36, 0x6B, 0x38, 0x07, 0x99, /* ...6k8.. */
  15584. /* 0318 */ 0xD3, 0xF1, 0x48, 0x4E, 0x1B, 0xC6, 0x1D, 0x0B, /* ..HN.... */
  15585. /* 0320 */ 0xFE, 0x9D, 0xEA, 0xA9, 0xCA, 0xD3, 0x8A, 0xF2, /* ........ */
  15586. /* 0328 */ 0x64, 0xF5, 0x7A, 0xE5, 0x63, 0x96, 0xA1, 0xCE, /* d.z.c... */
  15587. /* 0330 */ 0xE0, 0x1D, 0xCB, 0xB7, 0x3C, 0x4F, 0x21, 0x4A, /* ....<O!J */
  15588. /* 0338 */ 0x9C, 0x97, 0x2D, 0x76, 0xC7, 0x32, 0x48, 0x50, /* ..-v.2HP */
  15589. /* 0340 */ 0x23, 0x3F, 0x68, 0x31, 0x94, 0xE0, 0xF1, 0xDE, /* #?h1.... */
  15590. /* 0348 */ 0xB1, 0x00, 0x6F, 0xFF, 0xFF, 0x3B, 0x16, 0x60, /* ..o..;.` */
  15591. /* 0350 */ 0xFC, 0x04, 0xC1, 0x09, 0x7C, 0xC7, 0x02, 0x1C, /* ....|... */
  15592. /* 0358 */ 0xC5, 0x7E, 0x37, 0xE8, 0x4A, 0x45, 0xEE, 0x58, /* .~7.JE.X */
  15593. /* 0360 */ 0x28, 0x0E, 0xAB, 0xB9, 0x63, 0x41, 0x9C, 0x28, /* (...cA.( */
  15594. /* 0368 */ 0xE6, 0x8A, 0x05, 0x86, 0xFF, 0xFF, 0x15, 0x0B, /* ........ */
  15595. /* 0370 */ 0xE0, 0x75, 0xC0, 0x2B, 0x16, 0x68, 0xFE, 0xFF, /* .u.+.h.. */
  15596. /* 0378 */ 0x57, 0x2C, 0xF0, 0x5E, 0x8E, 0x80, 0xDF, 0x09, /* W,.^.... */
  15597. /* 0380 */ 0xD1, 0x77, 0x0D, 0x7E, 0x9A, 0xB6, 0xA2, 0xBB, /* .w.~.... */
  15598. /* 0388 */ 0x06, 0x94, 0x19, 0xBE, 0x07, 0xF9, 0xB0, 0x13, /* ........ */
  15599. /* 0390 */ 0x2C, 0xD2, 0xA3, 0x8D, 0x6F, 0x49, 0xE1, 0x7C, /* ,...oI.| */
  15600. /* 0398 */ 0xDB, 0x00, 0xD8, 0xF2, 0xFF, 0xBF, 0x6D, 0x00, /* ......m. */
  15601. /* 03A0 */ 0x4C, 0x19, 0xBF, 0x6F, 0x1B, 0xC0, 0x4F, 0xA1, /* L..o..O. */
  15602. /* 03A8 */ 0x4D, 0x9F, 0x1A, 0x8D, 0x5A, 0x35, 0x28, 0x53, /* M...Z5(S */
  15603. /* 03B0 */ 0xA3, 0x4C, 0x83, 0x5A, 0x7D, 0x2A, 0x35, 0x66, /* .L.Z}*5f */
  15604. /* 03B8 */ 0x4C, 0xC9, 0xC1, 0xCE, 0x77, 0x0C, 0x2A, 0x6C, /* L...w.*l */
  15605. /* 03C0 */ 0x65, 0x1A, 0x9A, 0x63, 0x81, 0xD0, 0x10, 0xC7, /* e..c.... */
  15606. /* 03C8 */ 0x26, 0x19, 0x01, 0x51, 0x22, 0x10, 0x01, 0x59, /* &..Q"..Y */
  15607. /* 03D0 */ 0xFD, 0x6F, 0x42, 0x40, 0xCE, 0x02, 0x22, 0x20, /* .oB@.." */
  15608. /* 03D8 */ 0x2B, 0x58, 0x9A, 0xC0, 0x9D, 0xFF, 0xD8, 0x28, /* +X.....( */
  15609. /* 03E0 */ 0x40, 0xA2, 0x02, 0x84, 0x29, 0x7D, 0x93, 0x09, /* @...)}.. */
  15610. /* 03E8 */ 0xD4, 0xB2, 0x41, 0x04, 0xF4, 0xFF, 0x3F, 0x42, /* ..A...?B */
  15611. /* 03F0 */ 0xD9, 0x00, 0x62, 0x82, 0x41, 0x04, 0x64, 0x91, /* ..b.A.d. */
  15612. /* 03F8 */ 0x3E, 0x80, 0x98, 0x62, 0x10, 0x01, 0x59, 0xDD, /* >..b..Y. */
  15613. /* 0400 */ 0xA3, 0x40, 0x40, 0xD6, 0x0A, 0x22, 0x20, 0xFF, /* .@@.." . */
  15614. /* 0408 */ 0xFF, 0x01 /* .. */
  15615. })
  15616. }
  15617.  
  15618. Scope (\_SB.PCI0.LPC.EC.HKEY)
  15619. {
  15620. Mutex (BFWM, 0x07)
  15621. Method (MHCF, 1, NotSerialized)
  15622. {
  15623. Local0 = \BFWC (Arg0)
  15624. Return (Local0)
  15625. }
  15626.  
  15627. Method (MHPF, 1, NotSerialized)
  15628. {
  15629. Name (RETB, Buffer (0x25) {})
  15630. Acquire (BFWM, 0xFFFF)
  15631. If ((SizeOf (Arg0) <= 0x25))
  15632. {
  15633. \BFWB = Arg0
  15634. If (\BFWP ())
  15635. {
  15636. \_SB.PCI0.LPC.EC.CHKS ()
  15637. \BFWL ()
  15638. }
  15639.  
  15640. RETB = \BFWB
  15641. }
  15642.  
  15643. Release (BFWM)
  15644. Return (RETB) /* \_SB_.PCI0.LPC_.EC__.HKEY.MHPF.RETB */
  15645. }
  15646.  
  15647. Method (MHIF, 1, NotSerialized)
  15648. {
  15649. Name (RETB, Buffer (0x0A) {})
  15650. Acquire (BFWM, 0xFFFF)
  15651. \BFWG (Arg0)
  15652. RETB = \BFWB
  15653. Release (BFWM)
  15654. Return (RETB) /* \_SB_.PCI0.LPC_.EC__.HKEY.MHIF.RETB */
  15655. }
  15656.  
  15657. Method (MHDM, 1, NotSerialized)
  15658. {
  15659. \BDMC (Arg0)
  15660. }
  15661. }
  15662.  
  15663. Scope (\_SB.PCI0.LPC.EC.HKEY)
  15664. {
  15665. Method (PSSG, 1, NotSerialized)
  15666. {
  15667. Return (\PSIF (0x00, 0x00))
  15668. }
  15669.  
  15670. Method (PSSS, 1, NotSerialized)
  15671. {
  15672. Return (\PSIF (0x01, Arg0))
  15673. }
  15674.  
  15675. Method (PSBS, 1, NotSerialized)
  15676. {
  15677. Return (\PSIF (0x02, Arg0))
  15678. }
  15679.  
  15680. Method (BICG, 1, NotSerialized)
  15681. {
  15682. Return (\PSIF (0x03, Arg0))
  15683. }
  15684.  
  15685. Method (BICS, 1, NotSerialized)
  15686. {
  15687. Return (\PSIF (0x04, Arg0))
  15688. }
  15689.  
  15690. Method (BCTG, 1, NotSerialized)
  15691. {
  15692. Return (\PSIF (0x05, Arg0))
  15693. }
  15694.  
  15695. Method (BCCS, 1, NotSerialized)
  15696. {
  15697. Return (\PSIF (0x06, Arg0))
  15698. }
  15699.  
  15700. Method (BCSG, 1, NotSerialized)
  15701. {
  15702. Return (\PSIF (0x07, Arg0))
  15703. }
  15704.  
  15705. Method (BCSS, 1, NotSerialized)
  15706. {
  15707. Return (\PSIF (0x08, Arg0))
  15708. }
  15709.  
  15710. Method (BDSG, 1, NotSerialized)
  15711. {
  15712. Return (\PSIF (0x09, Arg0))
  15713. }
  15714.  
  15715. Method (BDSS, 1, NotSerialized)
  15716. {
  15717. Return (\PSIF (0x0A, Arg0))
  15718. }
  15719. }
  15720.  
  15721. Scope (\_SB.PCI0.LPC.EC.HKEY)
  15722. {
  15723. Method (GILN, 0, NotSerialized)
  15724. {
  15725. Return ((0x02 | \ILNF))
  15726. }
  15727.  
  15728. Method (SILN, 1, NotSerialized)
  15729. {
  15730. If ((0x01 == Arg0))
  15731. {
  15732. \ILNF = 0x01
  15733. BBLS = 0x00
  15734. Return (0x00)
  15735. }
  15736. Else
  15737. {
  15738. If ((0x02 == Arg0))
  15739. {
  15740. \ILNF = 0x00
  15741. BBLS = 0x01
  15742. Return (0x00)
  15743. }
  15744. Else
  15745. {
  15746. Return (0x01)
  15747. }
  15748. }
  15749. }
  15750.  
  15751. Method (GLSI, 0, NotSerialized)
  15752. {
  15753. If (\H8DR)
  15754. {
  15755. Return ((0x02 + \_SB.PCI0.LPC.EC.HPLD))
  15756. }
  15757. Else
  15758. {
  15759. If ((\RBEC (0x46) & 0x04))
  15760. {
  15761. Return (0x03)
  15762. }
  15763. Else
  15764. {
  15765. Return (0x02)
  15766. }
  15767. }
  15768. }
  15769. }
  15770.  
  15771. Scope (\_SB.PCI0.LPC.EC.HKEY)
  15772. {
  15773. Method (GDLN, 0, NotSerialized)
  15774. {
  15775. Return ((0x02 | \PLUX))
  15776. }
  15777.  
  15778. Method (SDLN, 1, NotSerialized)
  15779. {
  15780. If ((0x01 == Arg0))
  15781. {
  15782. \PLUX = 0x01
  15783. Return (0x00)
  15784. }
  15785. Else
  15786. {
  15787. If ((0x02 == Arg0))
  15788. {
  15789. \PLUX = 0x00
  15790. Return (0x00)
  15791. }
  15792. Else
  15793. {
  15794. Return (0x01)
  15795. }
  15796. }
  15797. }
  15798. }
  15799.  
  15800. Name (\VHCC, 0x00)
  15801. Scope (\_SB.PCI0.PEG.VID)
  15802. {
  15803. Method (ISOP, 0, NotSerialized)
  15804. {
  15805. Return ((VDSP && (VIGD && VDSC)))
  15806. }
  15807. }
  15808.  
  15809. Scope (\_SB.PCI0)
  15810. {
  15811. Name (OTM, "OTMACPI 2009-Nov-12 18:18:51")
  15812. }
  15813.  
  15814. Scope (\_SB.PCI0.PEG.VID)
  15815. {
  15816. Method (GOBT, 1, NotSerialized)
  15817. {
  15818. Name (OPVK, Buffer (0xE6)
  15819. {
  15820. /* 0000 */ 0xE4, 0xB8, 0x4F, 0x51, 0x50, 0x72, 0x8A, 0xC2, /* ..OQPr.. */
  15821. /* 0008 */ 0x4B, 0x56, 0xE6, 0x00, 0x00, 0x00, 0x01, 0x00, /* KV...... */
  15822. /* 0010 */ 0x31, 0x34, 0x38, 0x35, 0x39, 0x37, 0x34, 0x35, /* 14859745 */
  15823. /* 0018 */ 0x36, 0x39, 0x38, 0x35, 0x47, 0x65, 0x6E, 0x75, /* 6985Genu */
  15824. /* 0020 */ 0x69, 0x6E, 0x65, 0x20, 0x4E, 0x56, 0x49, 0x44, /* ine NVID */
  15825. /* 0028 */ 0x49, 0x41, 0x20, 0x43, 0x65, 0x72, 0x74, 0x69, /* IA Certi */
  15826. /* 0030 */ 0x66, 0x69, 0x65, 0x64, 0x20, 0x4F, 0x70, 0x74, /* fied Opt */
  15827. /* 0038 */ 0x69, 0x6D, 0x75, 0x73, 0x20, 0x52, 0x65, 0x61, /* imus Rea */
  15828. /* 0040 */ 0x64, 0x79, 0x20, 0x4D, 0x6F, 0x74, 0x68, 0x65, /* dy Mothe */
  15829. /* 0048 */ 0x72, 0x62, 0x6F, 0x61, 0x72, 0x64, 0x20, 0x66, /* rboard f */
  15830. /* 0050 */ 0x6F, 0x72, 0x20, 0x36, 0x38, 0x38, 0x33, 0x32, /* or 68832 */
  15831. /* 0058 */ 0x35, 0x6E, 0x6F, 0x7A, 0x6F, 0x6D, 0x69, 0x32, /* 5nozomi2 */
  15832. /* 0060 */ 0x31, 0x44, 0x35, 0x20, 0x20, 0x20, 0x20, 0x20, /* 1D5 */
  15833. /* 0068 */ 0x2D, 0x20, 0x40, 0x4A, 0x20, 0x24, 0x55, 0x27, /* - @J $U' */
  15834. /* 0070 */ 0x5C, 0x22, 0x54, 0x20, 0x29, 0x5F, 0x47, 0x42, /* \"T )_GB */
  15835. /* 0078 */ 0x20, 0x50, 0x2F, 0x41, 0x4F, 0x5C, 0x37, 0x22, /* P/AO\7" */
  15836. /* 0080 */ 0x3D, 0x46, 0x37, 0x39, 0x4B, 0x37, 0x2B, 0x5F, /* =F79K7+_ */
  15837. /* 0088 */ 0x3F, 0x4B, 0x48, 0x5C, 0x5F, 0x46, 0x58, 0x48, /* ?KH\_FXH */
  15838. /* 0090 */ 0x5F, 0x44, 0x57, 0x32, 0x26, 0x4A, 0x46, 0x50, /* _DW2&JFP */
  15839. /* 0098 */ 0x52, 0x25, 0x24, 0x2F, 0x46, 0x24, 0x20, 0x2D, /* R%$/F$ - */
  15840. /* 00A0 */ 0x20, 0x43, 0x6F, 0x70, 0x79, 0x72, 0x69, 0x67, /* Copyrig */
  15841. /* 00A8 */ 0x68, 0x74, 0x20, 0x32, 0x30, 0x31, 0x30, 0x20, /* ht 2010 */
  15842. /* 00B0 */ 0x4E, 0x56, 0x49, 0x44, 0x49, 0x41, 0x20, 0x43, /* NVIDIA C */
  15843. /* 00B8 */ 0x6F, 0x72, 0x70, 0x6F, 0x72, 0x61, 0x74, 0x69, /* orporati */
  15844. /* 00C0 */ 0x6F, 0x6E, 0x20, 0x41, 0x6C, 0x6C, 0x20, 0x52, /* on All R */
  15845. /* 00C8 */ 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x52, 0x65, /* ights Re */
  15846. /* 00D0 */ 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2D, 0x31, /* served-1 */
  15847. /* 00D8 */ 0x34, 0x38, 0x35, 0x39, 0x37, 0x34, 0x35, 0x36, /* 48597456 */
  15848. /* 00E0 */ 0x39, 0x38, 0x35, 0x28, 0x52, 0x29 /* 985(R) */
  15849. })
  15850. CreateWordField (Arg0, 0x02, USRG)
  15851. If ((USRG == 0x564B))
  15852. {
  15853. Return (OPVK) /* \_SB_.PCI0.PEG_.VID_.GOBT.OPVK */
  15854. }
  15855.  
  15856. Return (Zero)
  15857. }
  15858. }
  15859.  
  15860. Scope (\_SB.PCI0.PEG.VID)
  15861. {
  15862. Name (OMPR, 0x02)
  15863. Name (HDAS, 0x00)
  15864. Method (NVOP, 4, Serialized)
  15865. {
  15866. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  15867. Debug = "------- NV OPTIMUS DSM --------"
  15868. If ((Arg1 != 0x0100))
  15869. {
  15870. Return (0x80000001)
  15871. }
  15872.  
  15873. While (One)
  15874. {
  15875. _T_0 = ToInteger (Arg2)
  15876. If ((_T_0 == 0x00))
  15877. {
  15878. Local0 = Buffer (0x04)
  15879. {
  15880. 0x00, 0x00, 0x00, 0x00 /* .... */
  15881. }
  15882. Divide (0x00, 0x08, Local2, Local1)
  15883. Local2 <<= 0x01
  15884. Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
  15885. Divide (0x1A, 0x08, Local2, Local1)
  15886. Local2 <<= 0x01
  15887. Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
  15888. Divide (0x1B, 0x08, Local2, Local1)
  15889. Local2 <<= 0x01
  15890. Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
  15891. Divide (0x10, 0x08, Local2, Local1)
  15892. Local2 <<= 0x01
  15893. Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
  15894. Return (Local0)
  15895. }
  15896. Else
  15897. {
  15898. If ((_T_0 == 0x1A))
  15899. {
  15900. CreateField (Arg3, 0x18, 0x02, OPCE)
  15901. CreateField (Arg3, 0x00, 0x01, FLCH)
  15902. If (ToInteger (FLCH))
  15903. {
  15904. OMPR = OPCE /* \_SB_.PCI0.PEG_.VID_.NVOP.OPCE */
  15905. }
  15906.  
  15907. Local0 = Buffer (0x04)
  15908. {
  15909. 0x00, 0x00, 0x00, 0x00 /* .... */
  15910. }
  15911. CreateField (Local0, 0x00, 0x01, OPEN)
  15912. CreateField (Local0, 0x03, 0x02, CGCS)
  15913. CreateField (Local0, 0x06, 0x01, SHPC)
  15914. CreateField (Local0, 0x18, 0x03, DGPC)
  15915. CreateField (Local0, 0x1B, 0x02, HDAC)
  15916. OPEN = One
  15917. SHPC = One
  15918. DGPC = One
  15919. If (\_SB.PCI0.PEG.VID._STA ())
  15920. {
  15921. CGCS = 0x03
  15922. }
  15923.  
  15924. HDAC = 0x02
  15925. Return (Local0)
  15926. }
  15927. Else
  15928. {
  15929. If ((_T_0 == 0x1B))
  15930. {
  15931. CreateField (Arg3, 0x00, 0x01, HDAU)
  15932. CreateField (Arg3, 0x01, 0x01, HDAR)
  15933. Local0 = Buffer (0x04)
  15934. {
  15935. 0x00, 0x00, 0x00, 0x00 /* .... */
  15936. }
  15937. CreateField (Local0, 0x02, 0x02, RQGS)
  15938. CreateField (Local0, 0x04, 0x01, PWST)
  15939. PWST = One
  15940. RQGS = Zero
  15941. If (ToInteger (HDAR))
  15942. {
  15943. HDAS = ToInteger (HDAU)
  15944. }
  15945.  
  15946. Return (Local0)
  15947. }
  15948. Else
  15949. {
  15950. If ((_T_0 == 0x10))
  15951. {
  15952. Return (\_SB.PCI0.PEG.VID.GOBT (Arg3))
  15953. }
  15954. }
  15955. }
  15956. }
  15957.  
  15958. Break
  15959. }
  15960.  
  15961. Return (0x80000002)
  15962. }
  15963. }
  15964.  
  15965. Scope (\)
  15966. {
  15967. Method (CMPB, 2, NotSerialized)
  15968. {
  15969. Local1 = SizeOf (Arg0)
  15970. If ((Local1 != SizeOf (Arg1)))
  15971. {
  15972. Return (0x00)
  15973. }
  15974.  
  15975. Local0 = 0x00
  15976. While ((Local0 < Local1))
  15977. {
  15978. If ((DerefOf (Index (Arg0, Local0)) != DerefOf (Index (Arg1, Local0
  15979. ))))
  15980. {
  15981. Return (0x00)
  15982. }
  15983.  
  15984. Local0++
  15985. }
  15986.  
  15987. Return (0x01)
  15988. }
  15989. }
  15990.  
  15991. Scope (\_SB.PCI0.PEG.VID)
  15992. {
  15993. Name (CPPC, 0x00)
  15994. Method (NVPS, 4, Serialized)
  15995. {
  15996. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  15997. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  15998. Debug = "------- NV GPS DSM --------"
  15999. While (One)
  16000. {
  16001. _T_0 = ToInteger (Arg2)
  16002. If ((_T_0 == 0x00))
  16003. {
  16004. Local0 = Buffer (0x08)
  16005. {
  16006. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  16007. }
  16008. Local3 = Buffer (0x07)
  16009. {
  16010. 0x00, 0x20, 0x21, 0x22, 0x23, 0x2A, 0xFF /* . !"#*. */
  16011. }
  16012. Local4 = Zero
  16013. Local5 = DerefOf (Index (Local3, Local4))
  16014. While ((Local5 != 0xFF))
  16015. {
  16016. Divide (Local5, 0x08, Local2, Local1)
  16017. Local2 <<= 0x01
  16018. Index (Local0, Local1) = (DerefOf (Index (Local0, Local1)) | Local2)
  16019. Local4++
  16020. Local5 = DerefOf (Index (Local3, Local4))
  16021. }
  16022.  
  16023. Return (Local0)
  16024. }
  16025. Else
  16026. {
  16027. If ((_T_0 == 0x20))
  16028. {
  16029. Local0 = Buffer (0x04)
  16030. {
  16031. 0x00, 0x00, 0x00, 0x00 /* .... */
  16032. }
  16033. CreateField (Local0, 0x18, 0x01, CUIT)
  16034. CreateField (Local0, 0x1E, 0x01, PSER)
  16035. CUIT = One
  16036. PSER = One
  16037. Return (Local0)
  16038. }
  16039. Else
  16040. {
  16041. If ((_T_0 == 0x21))
  16042. {
  16043. Return (\_PR.CPU0._PSS) /* External reference */
  16044. }
  16045. Else
  16046. {
  16047. If ((_T_0 == 0x22))
  16048. {
  16049. CreateField (Arg3, 0x00, 0x08, PPCV)
  16050. CPPC = PPCV /* \_SB_.PCI0.PEG_.VID_.NVPS.PPCV */
  16051. \PNTF (0x80)
  16052. Return (Buffer (0x04)
  16053. {
  16054. 0x00, 0x00, 0x00, 0x00 /* .... */
  16055. })
  16056. }
  16057. Else
  16058. {
  16059. If ((_T_0 == 0x23))
  16060. {
  16061. Local0 = Buffer (0x04)
  16062. {
  16063. 0x00, 0x00, 0x00, 0x00 /* .... */
  16064. }
  16065. Index (Local0, 0x00) = CPPC /* \_SB_.PCI0.PEG_.VID_.CPPC */
  16066. Return (Local0)
  16067. }
  16068. Else
  16069. {
  16070. If ((_T_0 == 0x2A))
  16071. {
  16072. Local0 = Buffer (0x24)
  16073. {
  16074. /* 0000 */ 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, /* ........ */
  16075. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  16076. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  16077. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  16078. /* 0020 */ 0x00, 0x00, 0x00, 0x00 /* .... */
  16079. }
  16080. Index (Local0, 0x00) = DerefOf (Index (Arg3, 0x00))
  16081. CreateField (Arg3, 0x00, 0x04, QTYP)
  16082. While (One)
  16083. {
  16084. _T_1 = ToInteger (QTYP)
  16085. If ((_T_1 == 0x00))
  16086. {
  16087. Local1 = \_SB.PCI0.LPC.EC.TMP0
  16088. Index (Local0, 0x0C) = (Local1 & 0xFF)
  16089. Return (Local0)
  16090. }
  16091. Else
  16092. {
  16093. If ((_T_1 == 0x01))
  16094. {
  16095. Index (Local0, 0x0D) = 0x08
  16096. Index (Local0, 0x01) = 0x03
  16097. Return (Local0)
  16098. }
  16099. Else
  16100. {
  16101. If ((_T_1 == 0x02))
  16102. {
  16103. Index (Local0, 0x01) = Zero
  16104. Return (Local0)
  16105. }
  16106. }
  16107. }
  16108.  
  16109. Break
  16110. }
  16111. }
  16112. }
  16113. }
  16114. }
  16115. }
  16116. }
  16117.  
  16118. Break
  16119. }
  16120.  
  16121. Return (Buffer (0x04)
  16122. {
  16123. 0x02, 0x00, 0x00, 0x80 /* .... */
  16124. })
  16125. }
  16126. }
  16127. }
  16128.  
  16129. Name (\_S0, Package (0x04) // _S0_: S0 System State
  16130. {
  16131. 0x00,
  16132. 0x00,
  16133. 0x00,
  16134. 0x00
  16135. })
  16136. Name (\_S3, Package (0x04) // _S3_: S3 System State
  16137. {
  16138. 0x05,
  16139. 0x05,
  16140. 0x00,
  16141. 0x00
  16142. })
  16143. Name (\_S4, Package (0x04) // _S4_: S4 System State
  16144. {
  16145. 0x06,
  16146. 0x06,
  16147. 0x00,
  16148. 0x00
  16149. })
  16150. Name (\_S5, Package (0x04) // _S5_: S5 System State
  16151. {
  16152. 0x07,
  16153. 0x07,
  16154. 0x00,
  16155. 0x00
  16156. })
  16157. Method (\_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep
  16158. {
  16159. Local0 = 0x01
  16160. If ((Arg0 == \SPS))
  16161. {
  16162. Local0 = 0x00
  16163. }
  16164.  
  16165. If (((Arg0 == 0x00) || (Arg0 >= 0x06)))
  16166. {
  16167. Local0 = 0x00
  16168. }
  16169.  
  16170. If (Local0)
  16171. {
  16172. \SPS = Arg0
  16173. \_SB.PCI0.LPC.EC.HKEY.MHKE (0x00)
  16174. If (\_SB.PCI0.LPC.EC.KBLT)
  16175. {
  16176. \UCMS (0x0D)
  16177. }
  16178.  
  16179. If ((Arg0 == 0x01))
  16180. {
  16181. \FNID = \_SB.PCI0.LPC.EC.HFNI
  16182. \_SB.PCI0.LPC.EC.HFNI = 0x00
  16183. \_SB.PCI0.LPC.EC.HFSP = 0x00
  16184. }
  16185.  
  16186. If ((Arg0 == 0x03))
  16187. {
  16188. \VVPD (0x03)
  16189. \TRAP ()
  16190. \ACST = \_SB.PCI0.LPC.EC.AC._PSR ()
  16191. If ((\FNWK == 0x01))
  16192. {
  16193. If (\H8DR)
  16194. {
  16195. \_SB.PCI0.LPC.EC.HWFN = 0x00
  16196. }
  16197. Else
  16198. {
  16199. \MBEC (0x32, 0xEF, 0x00)
  16200. }
  16201. }
  16202. }
  16203.  
  16204. If ((Arg0 == 0x04))
  16205. {
  16206. If (VDSP)
  16207. {
  16208. SHA1 = Zero
  16209. }
  16210.  
  16211. \_SB.SLPB._PSW (0x00)
  16212. \TRAP ()
  16213. \_SB.PCI0.LPC.TPM.CMOR ()
  16214. \AWON (0x04)
  16215. }
  16216.  
  16217. If ((Arg0 == 0x05))
  16218. {
  16219. \TRAP ()
  16220. \_SB.PCI0.LPC.TPM.CMOR ()
  16221. \AWON (0x05)
  16222. }
  16223.  
  16224. If ((Arg0 >= 0x04))
  16225. {
  16226. \_SB.PCI0.LPC.EC.HWLB = 0x00
  16227. }
  16228. Else
  16229. {
  16230. \_SB.PCI0.LPC.EC.HWLB = 0x01
  16231. }
  16232.  
  16233. If ((Arg0 >= 0x03))
  16234. {
  16235. \_SB.PCI0.LPC.EC.HCMU = 0x01
  16236. }
  16237.  
  16238. If ((Arg0 != 0x05)) {}
  16239. \_SB.PCI0.LPC.EC.HKEY.WGPS (Arg0)
  16240. }
  16241. }
  16242.  
  16243. Name (WAKI, Package (0x02)
  16244. {
  16245. 0x00,
  16246. 0x00
  16247. })
  16248. Method (\_WAK, 1, NotSerialized) // _WAK: Wake
  16249. {
  16250. If (((Arg0 == 0x00) || (Arg0 >= 0x05)))
  16251. {
  16252. Return (WAKI) /* \WAKI */
  16253. }
  16254.  
  16255. \SPS = 0x00
  16256. \_SB.PCI0.LPC.EC.HCMU = 0x00
  16257. \_SB.PCI0.LPC.EC.EVNT (0x01)
  16258. \_SB.PCI0.LPC.EC.HKEY.MHKE (0x01)
  16259. \UCMS (0x0D)
  16260. \LIDB = 0x00
  16261. If ((Arg0 == 0x01))
  16262. {
  16263. \FNID = \_SB.PCI0.LPC.EC.HFNI
  16264. }
  16265.  
  16266. If ((Arg0 == 0x03))
  16267. {
  16268. \NVSS (0x00)
  16269. \PWRS = \_SB.PCI0.LPC.EC.AC._PSR ()
  16270. If (\OSC4)
  16271. {
  16272. \PNTF (0x81)
  16273. }
  16274.  
  16275. If ((\ACST != \_SB.PCI0.LPC.EC.AC._PSR ()))
  16276. {
  16277. \_SB.PCI0.LPC.EC.ATMC ()
  16278. }
  16279.  
  16280. If (\SCRM)
  16281. {
  16282. \_SB.PCI0.LPC.EC.HFSP = 0x07
  16283. If (\MTAU)
  16284. {
  16285. Local2 = 0x03E8
  16286. While ((\_SB.PCI0.LPC.EC.PIBS && Local2))
  16287. {
  16288. Sleep (0x01)
  16289. Local2--
  16290. }
  16291.  
  16292. If (Local2)
  16293. {
  16294. \_SB.PCI0.LPC.EC.PLSL = 0x01
  16295. \_SB.PCI0.LPC.EC.PLTU = \MTAU
  16296. \_SB.PCI0.LPC.EC.PLLS = \PL1L
  16297. \_SB.PCI0.LPC.EC.PLMS = \PL1M
  16298. }
  16299. }
  16300. }
  16301.  
  16302. \IOEN = 0x00
  16303. \IOST = 0x00
  16304. If ((\ISWK == 0x01))
  16305. {
  16306. If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
  16307. {
  16308. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6070)
  16309. }
  16310. }
  16311.  
  16312. If (\VIGD)
  16313. {
  16314. \_SB.PCI0.VID.GLIS (\_SB.LID._LID (), If (\WVIS)
  16315. {
  16316. \VBTD ()
  16317. })
  16318. }
  16319. Else
  16320. {
  16321. If (\WVIS)
  16322. {
  16323. \_SB.PCI0.VID.GLIS (\_SB.LID._LID (), \VBTD ())
  16324. }
  16325. }
  16326.  
  16327. \VCMS (0x01, \_SB.LID._LID ())
  16328. \AWON (0x00)
  16329. If (\CMPR)
  16330. {
  16331. Notify (\_SB.SLPB, 0x02) // Device Wake
  16332. \CMPR = 0x00
  16333. }
  16334.  
  16335. If ((\USBR || \_SB.PCI0.XHCI.XRST))
  16336. {
  16337. If (((\XHCI == 0x02) || (\XHCI == 0x03)))
  16338. {
  16339. Local0 = 0x00
  16340. Local0 = (\_SB.PCI0.XHCI.PR3 & 0xFFFFFFC0)
  16341. \_SB.PCI0.XHCI.PR3 = (Local0 | \_SB.PCI0.XHCI.PR3M)
  16342. Local0 = 0x00
  16343. Local0 = (\_SB.PCI0.XHCI.PR2 & 0xFFFF8000)
  16344. \_SB.PCI0.XHCI.PR2 = (Local0 | \_SB.PCI0.XHCI.PR2M)
  16345. }
  16346. }
  16347.  
  16348. If ((\ISCT != 0x00))
  16349. {
  16350. If (\VIGD)
  16351. {
  16352. If ((\_SB.PCI0.VID.TCHE & 0x0100))
  16353. {
  16354. If ((\_SB.IAOE.GAOS & 0x01))
  16355. {
  16356. If ((\_SB.IAOE.GSWR & 0x02))
  16357. {
  16358. \_SB.PCI0.VID.STAT = ((\_SB.PCI0.VID.STAT & ~0x03) | 0x01)
  16359. \_SB.PCI0.LPC.EC.SKEM = 0x01
  16360. }
  16361. }
  16362. }
  16363. }
  16364. }
  16365. }
  16366.  
  16367. If ((Arg0 == 0x04))
  16368. {
  16369. \NVSS (0x00)
  16370. \_SB.PCI0.LPC.EC.HSPA = 0x00
  16371. \PWRS = \_SB.PCI0.LPC.EC.AC._PSR ()
  16372. If (\OSC4)
  16373. {
  16374. \PNTF (0x81)
  16375. }
  16376.  
  16377. \_SB.PCI0.LPC.EC.ATMC ()
  16378. If (\SCRM)
  16379. {
  16380. \_SB.PCI0.LPC.EC.HFSP = 0x07
  16381. If (\MTAU)
  16382. {
  16383. Local2 = 0x03E8
  16384. While ((\_SB.PCI0.LPC.EC.PIBS && Local2))
  16385. {
  16386. Sleep (0x01)
  16387. Local2--
  16388. }
  16389.  
  16390. If (Local2)
  16391. {
  16392. \_SB.PCI0.LPC.EC.PLSL = 0x01
  16393. \_SB.PCI0.LPC.EC.PLTU = \MTAU
  16394. \_SB.PCI0.LPC.EC.PLLS = \PL1L
  16395. \_SB.PCI0.LPC.EC.PLMS = \PL1M
  16396. }
  16397. }
  16398. }
  16399.  
  16400. If (!\NBCF)
  16401. {
  16402. If (\VIGD)
  16403. {
  16404. \_SB.PCI0.LPC.EC.BRNS ()
  16405. }
  16406. Else
  16407. {
  16408. \VBRC (\BRLV)
  16409. }
  16410. }
  16411.  
  16412. \IOEN = 0x00
  16413. \IOST = 0x00
  16414. If ((\ISWK == 0x02))
  16415. {
  16416. If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
  16417. {
  16418. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6080)
  16419. }
  16420. }
  16421.  
  16422. If (\_SB.PCI0.XHCI.XRST)
  16423. {
  16424. If (((\XHCI == 0x02) || (\XHCI == 0x03)))
  16425. {
  16426. Local0 = 0x00
  16427. Local0 = (\_SB.PCI0.XHCI.PR3 & 0xFFFFFFC0)
  16428. \_SB.PCI0.XHCI.PR3 = (Local0 | \_SB.PCI0.XHCI.PR3M)
  16429. Local0 = 0x00
  16430. Local0 = (\_SB.PCI0.XHCI.PR2 & 0xFFFF8000)
  16431. \_SB.PCI0.XHCI.PR2 = (Local0 | \_SB.PCI0.XHCI.PR2M)
  16432. }
  16433. }
  16434.  
  16435. If (\_SB.PCI0.LPC.EC.SIVC)
  16436. {
  16437. \_SB.PCI0.LPC.EC.HKEY.SVOI (\_SB.PCI0.LPC.EC.SIVC)
  16438. }
  16439.  
  16440. If (\_SB.PCI0.LPC.EC.SICG)
  16441. {
  16442. \_SB.PCI0.LPC.EC.HKEY.SCGI (\_SB.PCI0.LPC.EC.SICG)
  16443. }
  16444.  
  16445. If (\_SB.PCI0.LPC.EC.SICO)
  16446. {
  16447. \_SB.PCI0.LPC.EC.HKEY.SCMI (\_SB.PCI0.LPC.EC.SICO)
  16448. }
  16449.  
  16450. If (\_SB.PCI0.LPC.EC.SINC)
  16451. {
  16452. \_SB.PCI0.LPC.EC.HKEY.SMNC (\_SB.PCI0.LPC.EC.SINC)
  16453. }
  16454.  
  16455. If (\_SB.PCI0.LPC.EC.SICM)
  16456. {
  16457. \_SB.PCI0.LPC.EC.HKEY.SCMD (\_SB.PCI0.LPC.EC.SICM)
  16458. }
  16459. }
  16460.  
  16461. \_SB.PCI0.LPC.EC.BATW (Arg0)
  16462. \_SB.PCI0.LPC.EC.HKEY.WGWK (Arg0)
  16463. Notify (\_TZ.THM0, 0x80) // Thermal Status Change
  16464. \VSLD (\_SB.LID._LID ())
  16465. If (\VIGD)
  16466. {
  16467. \_SB.PCI0.VID.GLIS (\_SB.LID._LID (), Else
  16468. {
  16469. If (\WVIS)
  16470. {
  16471. \_SB.PCI0.VID.GLIS (\_SB.LID._LID (), If ((Arg0 < 0x04))
  16472. {
  16473. If (((\RRBF & 0x02) || (\_SB.PCI0.LPC.EC.HWAC & 0x02)))
  16474. {
  16475. Local0 = (Arg0 << 0x08)
  16476. Local0 = (0x2013 | Local0)
  16477. \_SB.PCI0.LPC.EC.HKEY.MHKQ (Local0)
  16478. }
  16479. })
  16480. }
  16481. })
  16482. }
  16483.  
  16484. If ((Arg0 == 0x04))
  16485. {
  16486. Local0 = 0x00
  16487. Local1 = \CSUM (0x00)
  16488. If ((Local1 != \CHKC))
  16489. {
  16490. Local0 = 0x01
  16491. \CHKC = Local1
  16492. }
  16493.  
  16494. Local1 = \CSUM (0x01)
  16495. If ((Local1 != \CHKE))
  16496. {
  16497. Local0 = 0x01
  16498. \CHKE = Local1
  16499. }
  16500.  
  16501. If (Local0)
  16502. {
  16503. Notify (\_SB, 0x00) // Bus Check
  16504. }
  16505. }
  16506.  
  16507. \RRBF = Zero
  16508. Return (WAKI) /* \WAKI */
  16509. }
  16510.  
  16511. Scope (\_SI)
  16512. {
  16513. Method (_SST, 1, NotSerialized) // _SST: System Status
  16514. {
  16515. If ((Arg0 == 0x00))
  16516. {
  16517. \_SB.PCI0.LPC.EC.LED (0x00, 0x00)
  16518. \_SB.PCI0.LPC.EC.LED (0x0A, 0x00)
  16519. \_SB.PCI0.LPC.EC.LED (0x07, 0x00)
  16520. }
  16521.  
  16522. If ((Arg0 == 0x01))
  16523. {
  16524. If ((\SPS || \WNTF))
  16525. {
  16526. \_SB.PCI0.LPC.EC.BEEP (0x05)
  16527. }
  16528.  
  16529. \_SB.PCI0.LPC.EC.LED (0x00, 0x80)
  16530. \_SB.PCI0.LPC.EC.LED (0x0A, 0x80)
  16531. \_SB.PCI0.LPC.EC.LED (0x07, 0x00)
  16532. }
  16533.  
  16534. If ((Arg0 == 0x02))
  16535. {
  16536. \_SB.PCI0.LPC.EC.LED (0x00, 0xC0)
  16537. \_SB.PCI0.LPC.EC.LED (0x0A, 0xC0)
  16538. \_SB.PCI0.LPC.EC.LED (0x07, 0xC0)
  16539. }
  16540.  
  16541. If ((Arg0 == 0x03))
  16542. {
  16543. If ((\SPS > 0x03))
  16544. {
  16545. \_SB.PCI0.LPC.EC.BEEP (0x07)
  16546. }
  16547. Else
  16548. {
  16549. If ((\SPS == 0x03))
  16550. {
  16551. \_SB.PCI0.LPC.EC.BEEP (0x03)
  16552. }
  16553. Else
  16554. {
  16555. \_SB.PCI0.LPC.EC.BEEP (0x04)
  16556. }
  16557. }
  16558.  
  16559. If ((\SPS == 0x03)) {}
  16560. Else
  16561. {
  16562. \_SB.PCI0.LPC.EC.LED (0x00, 0x80)
  16563. \_SB.PCI0.LPC.EC.LED (0x0A, 0x80)
  16564. }
  16565.  
  16566. \_SB.PCI0.LPC.EC.LED (0x07, 0xC0)
  16567. \_SB.PCI0.LPC.EC.LED (0x00, 0xC0)
  16568. \_SB.PCI0.LPC.EC.LED (0x0A, 0xC0)
  16569. }
  16570.  
  16571. If ((Arg0 == 0x04))
  16572. {
  16573. \_SB.PCI0.LPC.EC.BEEP (0x03)
  16574. \_SB.PCI0.LPC.EC.LED (0x07, 0xC0)
  16575. \_SB.PCI0.LPC.EC.LED (0x00, 0xC0)
  16576. \_SB.PCI0.LPC.EC.LED (0x0A, 0xC0)
  16577. }
  16578. }
  16579. }
  16580.  
  16581. Scope (\_GPE)
  16582. {
  16583. Method (_L0D, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  16584. {
  16585. Local0 = \_SB.PCI0.LPC.EC.HWAC
  16586. \RRBF = Local0
  16587. Sleep (0x0A)
  16588. If ((Local0 & 0x02)) {}
  16589. If ((Local0 & 0x04))
  16590. {
  16591. Notify (\_SB.LID, 0x02) // Device Wake
  16592. }
  16593.  
  16594. If ((Local0 & 0x08))
  16595. {
  16596. Notify (\_SB.SLPB, 0x02) // Device Wake
  16597. }
  16598.  
  16599. If ((Local0 & 0x10))
  16600. {
  16601. Notify (\_SB.SLPB, 0x02) // Device Wake
  16602. }
  16603.  
  16604. If ((Local0 & 0x40)) {}
  16605. If ((Local0 & 0x80))
  16606. {
  16607. Notify (\_SB.SLPB, 0x02) // Device Wake
  16608. }
  16609. }
  16610.  
  16611. Method (_L69, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  16612. {
  16613. If (\_SB.PCI0.EXP1.PS)
  16614. {
  16615. \_SB.PCI0.EXP1.PS = 0x01
  16616. \_SB.PCI0.EXP1.PMCS = 0x01
  16617. Notify (\_SB.PCI0.EXP1, 0x02) // Device Wake
  16618. }
  16619.  
  16620. If (\_SB.PCI0.EXP2.PS)
  16621. {
  16622. \_SB.PCI0.EXP2.PS = 0x01
  16623. \_SB.PCI0.EXP2.PMCS = 0x01
  16624. Notify (\_SB.PCI0.EXP2, 0x02) // Device Wake
  16625. }
  16626.  
  16627. If (\_SB.PCI0.EXP3.PS)
  16628. {
  16629. \_SB.PCI0.EXP3.PS = 0x01
  16630. \_SB.PCI0.EXP3.PMCS = 0x01
  16631. Notify (\_SB.PCI0.EXP3, 0x02) // Device Wake
  16632. }
  16633. }
  16634.  
  16635. Method (_L61, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  16636. {
  16637. }
  16638.  
  16639. Method (_L62, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  16640. {
  16641. \_SB.PCI0.LPC.SWGE = 0x00
  16642. If (CondRefOf (\_SB.PCCD.PENB))
  16643. {
  16644. If ((\_SB.PCCD.PENB == 0x01))
  16645. {
  16646. Notify (\_SB.PCCD, 0x80) // Status Change
  16647. }
  16648. }
  16649. }
  16650.  
  16651. Method (_L66, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  16652. {
  16653. If (\_SB.PCI0.VID.GSSE (\_SB.PCI0.VID.GSCI ())) {}
  16654. Else
  16655. {
  16656. \_SB.PCI0.LPC.SCIS = 0x01
  16657. }
  16658. }
  16659.  
  16660. Name (GPFG, 0x00)
  16661. Method (_L0B, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  16662. {
  16663. If ((GPFG && \_SB.PCI0.LPC.NFCI))
  16664. {
  16665. GPFG = 0x00
  16666. Notify (\_SB.PCI0.SMBU.NFC, 0xC0) // Hardware-Specific
  16667. }
  16668. }
  16669. }
  16670.  
  16671. Scope (\_SB.PCI0.LPC.EC.HKEY)
  16672. {
  16673. Method (MHQT, 1, NotSerialized)
  16674. {
  16675. If ((\WNTF && \TATC))
  16676. {
  16677. If ((Arg0 == 0x00))
  16678. {
  16679. Local0 = \TATC
  16680. Return (Local0)
  16681. }
  16682. Else
  16683. {
  16684. If ((Arg0 == 0x01))
  16685. {
  16686. Local0 = \TDFA
  16687. Local0 += (\TDTA << 0x04)
  16688. Local0 += (\TDFD << 0x08)
  16689. Local0 += (\TDTD << 0x0C)
  16690. Local0 += (\TNFT << 0x10)
  16691. Local0 += (\TNTT << 0x14)
  16692. Return (Local0)
  16693. }
  16694. Else
  16695. {
  16696. If ((Arg0 == 0x02))
  16697. {
  16698. Local0 = \TCFA
  16699. Local0 += (\TCTA << 0x04)
  16700. Local0 += (\TCFD << 0x08)
  16701. Local0 += (\TCTD << 0x0C)
  16702. Return (Local0)
  16703. }
  16704. Else
  16705. {
  16706. If ((Arg0 == 0x03)) {}
  16707. Else
  16708. {
  16709. If ((Arg0 == 0x04))
  16710. {
  16711. Local0 = \TATW
  16712. Return (Local0)
  16713. }
  16714. Else
  16715. {
  16716. Noop
  16717. }
  16718. }
  16719. }
  16720. }
  16721. }
  16722. }
  16723.  
  16724. Return (0x00)
  16725. }
  16726.  
  16727. Method (MHAT, 1, NotSerialized)
  16728. {
  16729. If ((\WNTF && \TATC))
  16730. {
  16731. Local0 = (Arg0 & 0xFF)
  16732. If (!ATMV (Local0))
  16733. {
  16734. Return (0x00)
  16735. }
  16736.  
  16737. Local0 = ((Arg0 >> 0x08) & 0xFF)
  16738. If (!ATMV (Local0))
  16739. {
  16740. Return (0x00)
  16741. }
  16742.  
  16743. \TCFA = (Arg0 & 0x0F)
  16744. \TCTA = ((Arg0 >> 0x04) & 0x0F)
  16745. \TCFD = ((Arg0 >> 0x08) & 0x0F)
  16746. \TCTD = ((Arg0 >> 0x0C) & 0x0F)
  16747. ATMC ()
  16748. If ((\PPMF & 0x0100))
  16749. {
  16750. Local1 = \FTPS
  16751. If ((Arg0 & 0x00010000))
  16752. {
  16753. If (\_PR.CLVL)
  16754. {
  16755. \FTPS = \CTDP
  16756. \FTPS++
  16757. }
  16758. Else
  16759. {
  16760. \FTPS = 0x01
  16761. }
  16762. }
  16763. Else
  16764. {
  16765. If (\_PR.CLVL)
  16766. {
  16767. \FTPS = \CTDP
  16768. }
  16769. Else
  16770. {
  16771. \FTPS = 0x00
  16772. }
  16773. }
  16774.  
  16775. If ((\FTPS ^ Local1))
  16776. {
  16777. If ((\OSPX || \CPPX))
  16778. {
  16779. \PNTF (0x80)
  16780. }
  16781. }
  16782. }
  16783.  
  16784. Local2 = \SCRM
  16785. If ((Arg0 & 0x00040000))
  16786. {
  16787. \SCRM = 0x01
  16788. \_SB.PCI0.LPC.EC.HFSP = 0x07
  16789. }
  16790. Else
  16791. {
  16792. \SCRM = 0x00
  16793. \_SB.PCI0.LPC.EC.HFSP = 0x80
  16794. }
  16795.  
  16796. Local3 = \ETAU
  16797. If ((Arg0 & 0x00020000))
  16798. {
  16799. \ETAU = 0x01
  16800. }
  16801. Else
  16802. {
  16803. \ETAU = 0x00
  16804. }
  16805.  
  16806. If (\MTAU)
  16807. {
  16808. If (((\SCRM ^ Local2) || (\ETAU ^ Local3)))
  16809. {
  16810. Local4 = 0x03E8
  16811. While (\_SB.PCI0.LPC.EC.PIBS)
  16812. {
  16813. Sleep (0x01)
  16814. Local4--
  16815. If (!Local4)
  16816. {
  16817. Return (0x00)
  16818. }
  16819. }
  16820.  
  16821. \_SB.PCI0.LPC.EC.PLSL = 0x01
  16822. If ((Arg0 & 0x00060000))
  16823. {
  16824. \_SB.PCI0.LPC.EC.PLTU = \MTAU
  16825. }
  16826. Else
  16827. {
  16828. \_SB.PCI0.LPC.EC.PLTU = 0x1C
  16829. }
  16830.  
  16831. \_SB.PCI0.LPC.EC.PLLS = \PL1L
  16832. \_SB.PCI0.LPC.EC.PLMS = \PL1M
  16833. }
  16834. }
  16835.  
  16836. Return (0x01)
  16837. }
  16838.  
  16839. Return (0x00)
  16840. }
  16841.  
  16842. Method (MHGT, 1, NotSerialized)
  16843. {
  16844. If ((\WNTF && \TATC))
  16845. {
  16846. Local0 = 0x01000000
  16847. If ((\PPMF & 0x0100))
  16848. {
  16849. Local0 |= 0x08000000
  16850. }
  16851.  
  16852. If (\SCRM)
  16853. {
  16854. Local0 |= 0x10000000
  16855. }
  16856.  
  16857. If (\ETAU)
  16858. {
  16859. Local0 |= 0x04000000
  16860. }
  16861.  
  16862. If ((\CTDP < \FTPS))
  16863. {
  16864. Local0 |= 0x02000000
  16865. }
  16866.  
  16867. Local0 += (\TSFT << 0x10)
  16868. Local0 += (\TSTT << 0x14)
  16869. Local1 = (Arg0 & 0xFF)
  16870. If (!ATMV (Local1))
  16871. {
  16872. Local0 |= 0xFFFF
  16873. Return (Local0)
  16874. }
  16875.  
  16876. Local1 = (Arg0 & 0x0F)
  16877. If ((Local1 == 0x00))
  16878. {
  16879. Local0 += \TIF0
  16880. }
  16881. Else
  16882. {
  16883. If ((Local1 == 0x01))
  16884. {
  16885. Local0 += \TIF1
  16886. }
  16887. Else
  16888. {
  16889. If ((Local1 == 0x02))
  16890. {
  16891. Local0 += \TIF2
  16892. }
  16893. Else
  16894. {
  16895. Local0 += 0xFF
  16896. }
  16897. }
  16898. }
  16899.  
  16900. Local1 = ((Arg0 >> 0x04) & 0x0F)
  16901. If ((Local1 == 0x00))
  16902. {
  16903. Local0 += (\TIT0 << 0x08)
  16904. }
  16905. Else
  16906. {
  16907. If ((Local1 == 0x01))
  16908. {
  16909. Local0 += (\TIT1 << 0x08)
  16910. }
  16911. Else
  16912. {
  16913. If ((Local1 == 0x02))
  16914. {
  16915. Local0 += (\TIT2 << 0x08)
  16916. }
  16917. Else
  16918. {
  16919. Local0 += (0xFF << 0x08)
  16920. }
  16921. }
  16922. }
  16923.  
  16924. Return (Local0)
  16925. }
  16926.  
  16927. Return (0x00)
  16928. }
  16929.  
  16930. Method (ATMV, 1, NotSerialized)
  16931. {
  16932. Local1 = (Arg0 & 0x0F)
  16933. Local0 = \TNFT
  16934. If ((Local1 >= Local0))
  16935. {
  16936. Return (0x00)
  16937. }
  16938.  
  16939. Local2 = ((Arg0 >> 0x04) & 0x0F)
  16940. Local0 = \TNTT
  16941. If ((Local2 >= Local0))
  16942. {
  16943. Return (0x00)
  16944. }
  16945.  
  16946. If (\TATL)
  16947. {
  16948. If ((Local1 ^ Local2))
  16949. {
  16950. Return (0x00)
  16951. }
  16952. }
  16953.  
  16954. Return (0x01)
  16955. }
  16956.  
  16957. Method (MHCT, 1, NotSerialized)
  16958. {
  16959. Local0 = 0x00
  16960. If (\SPEN)
  16961. {
  16962. Local0 = \LWST
  16963. Local0++
  16964. Local0 <<= 0x08
  16965. }
  16966.  
  16967. Local1 = 0x08
  16968. Local1 <<= 0x08
  16969. If ((Arg0 == 0xFFFFFFFF))
  16970. {
  16971. Local1 |= \TPCR
  16972. If (\SPEN)
  16973. {
  16974. Local0 |= \PPCR
  16975. If (!(\PPMF && 0x02000000))
  16976. {
  16977. Local1 |= 0x80
  16978. }
  16979.  
  16980. If (!(\PPMF && 0x08000000))
  16981. {
  16982. Local1 |= 0x40
  16983. }
  16984. }
  16985. Else
  16986. {
  16987. Local1 |= 0xC0
  16988. }
  16989. }
  16990. Else
  16991. {
  16992. If (((\OSPX || \CPPX) && \SPEN))
  16993. {
  16994. Local2 = (Arg0 & 0x00FF0000)
  16995. Local2 >>= 0x10
  16996. Local0 |= Local2
  16997. If ((Local2 ^ \PPCR))
  16998. {
  16999. \PPCA = Local2
  17000. \PNTF (0x80)
  17001. }
  17002. }
  17003.  
  17004. If (\WVIS)
  17005. {
  17006. Local2 = (Arg0 & 0x1F)
  17007. Local1 |= Local2
  17008. If ((Local2 ^ \TPCR))
  17009. {
  17010. \TPCA = Local2
  17011. \PNTF (0x82)
  17012. }
  17013. }
  17014. }
  17015.  
  17016. Local0 <<= 0x10
  17017. Local0 |= Local1
  17018. Return (Local0)
  17019. }
  17020. }
  17021.  
  17022. Scope (\_SB.PCI0.LPC.EC)
  17023. {
  17024. Method (ATMC, 0, NotSerialized)
  17025. {
  17026. If ((\WNTF && \TATC))
  17027. {
  17028. If (HPAC)
  17029. {
  17030. Local0 = \TCFA
  17031. Local1 = \TCTA
  17032. Local2 = ((Local1 << 0x04) | Local0)
  17033. Local3 = (Local2 ^ ATMX) /* \_SB_.PCI0.LPC_.EC__.ATMX */
  17034. ATMX = Local2
  17035. If ((\TCTA == 0x00))
  17036. {
  17037. \TCRT = \TCR0
  17038. \TPSV = \TPS0
  17039. }
  17040. Else
  17041. {
  17042. If ((\TCTA == 0x01))
  17043. {
  17044. \TCRT = \TCR1
  17045. \TPSV = \TPS1
  17046. }
  17047. Else
  17048. {
  17049. }
  17050. }
  17051. }
  17052. Else
  17053. {
  17054. Local0 = \TCFD
  17055. Local1 = \TCTD
  17056. Local2 = ((Local1 << 0x04) | Local0)
  17057. Local3 = (Local2 ^ ATMX) /* \_SB_.PCI0.LPC_.EC__.ATMX */
  17058. ATMX = Local2
  17059. If ((\TCTD == 0x00))
  17060. {
  17061. \TCRT = \TCR0
  17062. \TPSV = \TPS0
  17063. }
  17064. Else
  17065. {
  17066. If ((\TCTD == 0x01))
  17067. {
  17068. \TCRT = \TCR1
  17069. \TPSV = \TPS1
  17070. }
  17071. Else
  17072. {
  17073. }
  17074. }
  17075. }
  17076.  
  17077. If (Local3)
  17078. {
  17079. If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
  17080. {
  17081. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6030)
  17082. }
  17083. }
  17084.  
  17085. Notify (\_TZ.THM0, 0x81) // Thermal Trip Point Change
  17086. }
  17087. }
  17088. }
  17089.  
  17090. Scope (\_TZ)
  17091. {
  17092. ThermalZone (THM0)
  17093. {
  17094. Method (_CRT, 0, NotSerialized) // _CRT: Critical Temperature
  17095. {
  17096. Return (\TCRT)
  17097. }
  17098.  
  17099. Method (_TMP, 0, NotSerialized) // _TMP: Temperature
  17100. {
  17101. If (\H8DR)
  17102. {
  17103. Local0 = \_SB.PCI0.LPC.EC.TMP0
  17104. Local1 = \_SB.PCI0.LPC.EC.TSL2
  17105. Local2 = \_SB.PCI0.LPC.EC.TSL3
  17106. }
  17107. Else
  17108. {
  17109. Local0 = \RBEC (0x78)
  17110. Local1 = (\RBEC (0x8A) & 0x7F)
  17111. Local2 = (\RBEC (0x8B) & 0x7F)
  17112. }
  17113.  
  17114. If ((Local0 == 0x80))
  17115. {
  17116. Local0 = 0x30
  17117. }
  17118.  
  17119. If (Local2)
  17120. {
  17121. \TSDL ()
  17122. Return (C2K (0x80))
  17123. }
  17124.  
  17125. If (!\_SB.PCI0.LPC.EC.HKEY.DHKC)
  17126. {
  17127. If (Local1)
  17128. {
  17129. \TSDL ()
  17130. Return (C2K (0x80))
  17131. }
  17132. }
  17133.  
  17134. Return (C2K (Local0))
  17135. }
  17136. }
  17137.  
  17138. Method (C2K, 1, NotSerialized)
  17139. {
  17140. Local0 = ((Arg0 * 0x0A) + 0x0AAC)
  17141. If ((Local0 <= 0x0AAC))
  17142. {
  17143. Local0 = 0x0BB8
  17144. }
  17145.  
  17146. If ((Local0 > 0x0FAC))
  17147. {
  17148. Local0 = 0x0BB8
  17149. }
  17150.  
  17151. Return (Local0)
  17152. }
  17153. }
  17154.  
  17155. Scope (\_SB.PCI0.LPC.EC)
  17156. {
  17157. Method (_Q40, 0, NotSerialized) // _Qxx: EC Query
  17158. {
  17159. Notify (\_TZ.THM0, 0x80) // Thermal Status Change
  17160. If (\H8DR)
  17161. {
  17162. Local1 = \_SB.PCI0.LPC.EC.TSL2
  17163. }
  17164. Else
  17165. {
  17166. Local1 = (\RBEC (0x8A) & 0x7F)
  17167. }
  17168.  
  17169. If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
  17170. {
  17171. If (Local1)
  17172. {
  17173. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6022)
  17174. }
  17175. }
  17176.  
  17177. If (VIGD)
  17178. {
  17179. Noop
  17180. }
  17181. Else
  17182. {
  17183. \VTHR ()
  17184. }
  17185.  
  17186. If ((\PPMF & 0x01))
  17187. {
  17188. If ((\OSPX || \CPPX))
  17189. {
  17190. \PNTF (0x80)
  17191. }
  17192. Else
  17193. {
  17194. Local2 = (\_SB.PCI0.LPC.EC.TSL0 & 0x77)
  17195. If (Local2)
  17196. {
  17197. \STEP (0x09)
  17198. }
  17199. Else
  17200. {
  17201. \STEP (0x0A)
  17202. }
  17203. }
  17204. }
  17205. }
  17206. }
  17207.  
  17208. Name (GPIC, 0x00)
  17209. Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
  17210. {
  17211. \GPIC = Arg0
  17212. }
  17213.  
  17214. OperationRegion (SMI0, SystemIO, 0xB2, 0x01)
  17215. Field (SMI0, ByteAcc, NoLock, Preserve)
  17216. {
  17217. APMC, 8
  17218. }
  17219.  
  17220. Field (MNVS, AnyAcc, NoLock, Preserve)
  17221. {
  17222. Offset (0xFC0),
  17223. CMD, 8,
  17224. ERR, 32,
  17225. PAR0, 32,
  17226. PAR1, 32,
  17227. PAR2, 32,
  17228. PAR3, 32
  17229. }
  17230.  
  17231. Mutex (MSMI, 0x07)
  17232. Method (SMI, 5, NotSerialized)
  17233. {
  17234. Acquire (MSMI, 0xFFFF)
  17235. CMD = Arg0
  17236. ERR = 0x01
  17237. PAR0 = Arg1
  17238. PAR1 = Arg2
  17239. PAR2 = Arg3
  17240. PAR3 = Arg4
  17241. APMC = 0xF5
  17242. While ((ERR == 0x01))
  17243. {
  17244. Sleep (0x01)
  17245. APMC = 0xF5
  17246. }
  17247.  
  17248. Local0 = PAR0 /* \PAR0 */
  17249. Release (MSMI)
  17250. Return (Local0)
  17251. }
  17252.  
  17253. Method (RPCI, 1, NotSerialized)
  17254. {
  17255. Return (SMI (0x00, 0x00, Arg0, 0x00, 0x00))
  17256. }
  17257.  
  17258. Method (WPCI, 2, NotSerialized)
  17259. {
  17260. SMI (0x00, 0x01, Arg0, Arg1, 0x00)
  17261. }
  17262.  
  17263. Method (MPCI, 3, NotSerialized)
  17264. {
  17265. SMI (0x00, 0x02, Arg0, Arg1, Arg2)
  17266. }
  17267.  
  17268. Method (RBEC, 1, NotSerialized)
  17269. {
  17270. Return (SMI (0x00, 0x03, Arg0, 0x00, 0x00))
  17271. }
  17272.  
  17273. Method (WBEC, 2, NotSerialized)
  17274. {
  17275. SMI (0x00, 0x04, Arg0, Arg1, 0x00)
  17276. }
  17277.  
  17278. Method (MBEC, 3, NotSerialized)
  17279. {
  17280. SMI (0x00, 0x05, Arg0, Arg1, Arg2)
  17281. }
  17282.  
  17283. Method (RISA, 1, NotSerialized)
  17284. {
  17285. Return (SMI (0x00, 0x06, Arg0, 0x00, 0x00))
  17286. }
  17287.  
  17288. Method (WISA, 2, NotSerialized)
  17289. {
  17290. SMI (0x00, 0x07, Arg0, Arg1, 0x00)
  17291. }
  17292.  
  17293. Method (MISA, 3, NotSerialized)
  17294. {
  17295. SMI (0x00, 0x08, Arg0, Arg1, Arg2)
  17296. }
  17297.  
  17298. Method (VEXP, 0, NotSerialized)
  17299. {
  17300. SMI (0x01, 0x00, 0x00, 0x00, 0x00)
  17301. }
  17302.  
  17303. Method (VUPS, 1, NotSerialized)
  17304. {
  17305. SMI (0x01, 0x01, Arg0, 0x00, 0x00)
  17306. }
  17307.  
  17308. Method (VSDS, 2, NotSerialized)
  17309. {
  17310. SMI (0x01, 0x02, Arg0, Arg1, 0x00)
  17311. }
  17312.  
  17313. Method (VDDC, 0, NotSerialized)
  17314. {
  17315. SMI (0x01, 0x03, 0x00, 0x00, 0x00)
  17316. }
  17317.  
  17318. Method (VVPD, 1, NotSerialized)
  17319. {
  17320. SMI (0x01, 0x04, Arg0, 0x00, 0x00)
  17321. }
  17322.  
  17323. Method (VNRS, 1, NotSerialized)
  17324. {
  17325. SMI (0x01, 0x05, Arg0, 0x00, 0x00)
  17326. }
  17327.  
  17328. Method (GLPW, 0, NotSerialized)
  17329. {
  17330. Return (SMI (0x01, 0x06, 0x00, 0x00, 0x00))
  17331. }
  17332.  
  17333. Method (VSLD, 1, NotSerialized)
  17334. {
  17335. SMI (0x01, 0x07, Arg0, 0x00, 0x00)
  17336. }
  17337.  
  17338. Method (VEVT, 1, NotSerialized)
  17339. {
  17340. Return (SMI (0x01, 0x08, Arg0, 0x00, 0x00))
  17341. }
  17342.  
  17343. Method (VTHR, 0, NotSerialized)
  17344. {
  17345. Return (SMI (0x01, 0x09, 0x00, 0x00, 0x00))
  17346. }
  17347.  
  17348. Method (VBRC, 1, NotSerialized)
  17349. {
  17350. SMI (0x01, 0x0A, Arg0, 0x00, 0x00)
  17351. }
  17352.  
  17353. Method (VBRG, 0, NotSerialized)
  17354. {
  17355. Return (SMI (0x01, 0x0E, 0x00, 0x00, 0x00))
  17356. }
  17357.  
  17358. Method (VCMS, 2, NotSerialized)
  17359. {
  17360. Return (SMI (0x01, 0x0B, Arg0, Arg1, 0x00))
  17361. }
  17362.  
  17363. Method (VBTD, 0, NotSerialized)
  17364. {
  17365. Return (SMI (0x01, 0x0F, 0x00, 0x00, 0x00))
  17366. }
  17367.  
  17368. Method (VHYB, 2, NotSerialized)
  17369. {
  17370. Return (SMI (0x01, 0x10, Arg0, Arg1, 0x00))
  17371. }
  17372.  
  17373. Method (VDYN, 2, NotSerialized)
  17374. {
  17375. Return (SMI (0x01, 0x11, Arg0, Arg1, 0x00))
  17376. }
  17377.  
  17378. Method (UCMS, 1, NotSerialized)
  17379. {
  17380. Return (SMI (0x02, Arg0, 0x00, 0x00, 0x00))
  17381. }
  17382.  
  17383. Method (BHDP, 2, NotSerialized)
  17384. {
  17385. Return (SMI (0x03, 0x00, Arg0, Arg1, 0x00))
  17386. }
  17387.  
  17388. Method (STEP, 1, NotSerialized)
  17389. {
  17390. SMI (0x04, Arg0, 0x00, 0x00, 0x00)
  17391. }
  17392.  
  17393. Method (TRAP, 0, NotSerialized)
  17394. {
  17395. SMI (0x05, 0x00, 0x00, 0x00, 0x00)
  17396. }
  17397.  
  17398. Method (CBRI, 0, NotSerialized)
  17399. {
  17400. SMI (0x05, 0x01, 0x00, 0x00, 0x00)
  17401. }
  17402.  
  17403. Method (BCHK, 0, NotSerialized)
  17404. {
  17405. Return (SMI (0x05, 0x04, 0x00, 0x00, 0x00))
  17406. }
  17407.  
  17408. Method (BYRS, 0, NotSerialized)
  17409. {
  17410. SMI (0x05, 0x05, 0x00, 0x00, 0x00)
  17411. }
  17412.  
  17413. Method (LCHK, 1, NotSerialized)
  17414. {
  17415. Return (SMI (0x05, 0x06, Arg0, 0x00, 0x00))
  17416. }
  17417.  
  17418. Method (BLTH, 1, NotSerialized)
  17419. {
  17420. Return (SMI (0x06, Arg0, 0x00, 0x00, 0x00))
  17421. }
  17422.  
  17423. Method (PRSM, 2, NotSerialized)
  17424. {
  17425. Return (SMI (0x07, 0x00, Arg0, Arg1, 0x00))
  17426. }
  17427.  
  17428. Method (IFRS, 2, NotSerialized)
  17429. {
  17430. Return (SMI (0x07, 0x01, Arg0, Arg1, 0x00))
  17431. }
  17432.  
  17433. Method (TDPC, 1, NotSerialized)
  17434. {
  17435. Return (SMI (0x07, 0x02, Arg0, 0x00, 0x00))
  17436. }
  17437.  
  17438. Method (ISOC, 1, NotSerialized)
  17439. {
  17440. Return (SMI (0x07, 0x03, Arg0, 0x00, 0x00))
  17441. }
  17442.  
  17443. Method (WGSV, 1, NotSerialized)
  17444. {
  17445. Return (SMI (0x09, Arg0, 0x00, 0x00, 0x00))
  17446. }
  17447.  
  17448. Method (SWTT, 1, NotSerialized)
  17449. {
  17450. If (SMI (0x0A, 0x02, Arg0, 0x00, 0x00))
  17451. {
  17452. If (\_SB.PCI0.LPC.EC.HKEY.DHKC)
  17453. {
  17454. \_SB.PCI0.LPC.EC.HKEY.MHKQ (0x6030)
  17455. }
  17456. }
  17457. }
  17458.  
  17459. Method (TSDL, 0, NotSerialized)
  17460. {
  17461. Return (SMI (0x0A, 0x03, 0x00, 0x00, 0x00))
  17462. }
  17463.  
  17464. Method (SITT, 1, NotSerialized)
  17465. {
  17466. Return (SMI (0x0A, 0x04, Arg0, 0x00, 0x00))
  17467. }
  17468.  
  17469. Method (TPHY, 1, NotSerialized)
  17470. {
  17471. SMI (0x0C, Arg0, 0x00, 0x00, 0x00)
  17472. }
  17473.  
  17474. Method (CSUM, 1, NotSerialized)
  17475. {
  17476. Return (SMI (0x0E, Arg0, 0x00, 0x00, 0x00))
  17477. }
  17478.  
  17479. Method (NVSS, 1, NotSerialized)
  17480. {
  17481. Return (SMI (0x0F, Arg0, 0x00, 0x00, 0x00))
  17482. }
  17483.  
  17484. Method (WMIS, 2, NotSerialized)
  17485. {
  17486. Return (SMI (0x10, Arg0, Arg1, 0x00, 0x00))
  17487. }
  17488.  
  17489. Method (AWON, 1, NotSerialized)
  17490. {
  17491. Return (SMI (0x12, Arg0, 0x00, 0x00, 0x00))
  17492. }
  17493.  
  17494. Method (PMON, 2, NotSerialized)
  17495. {
  17496. Local0 = SizeOf (Arg0)
  17497. Name (TSTR, Buffer (Local0) {})
  17498. TSTR = Arg0
  17499. \DBGS = TSTR /* \PMON.TSTR */
  17500. SMI (0x11, Arg1, 0x00, 0x00, 0x00)
  17501. }
  17502.  
  17503. Method (UAWS, 1, NotSerialized)
  17504. {
  17505. Return (SMI (0x13, Arg0, 0x00, 0x00, 0x00))
  17506. }
  17507.  
  17508. Method (BFWC, 1, NotSerialized)
  17509. {
  17510. Return (SMI (0x14, 0x00, Arg0, 0x00, 0x00))
  17511. }
  17512.  
  17513. Method (BFWP, 0, NotSerialized)
  17514. {
  17515. Return (SMI (0x14, 0x01, 0x00, 0x00, 0x00))
  17516. }
  17517.  
  17518. Method (BFWL, 0, NotSerialized)
  17519. {
  17520. SMI (0x14, 0x02, 0x00, 0x00, 0x00)
  17521. }
  17522.  
  17523. Method (BFWG, 1, NotSerialized)
  17524. {
  17525. SMI (0x14, 0x03, Arg0, 0x00, 0x00)
  17526. }
  17527.  
  17528. Method (BDMC, 1, NotSerialized)
  17529. {
  17530. SMI (0x14, 0x04, Arg0, 0x00, 0x00)
  17531. }
  17532.  
  17533. Method (PSIF, 2, NotSerialized)
  17534. {
  17535. Return (SMI (0x14, 0x05, Arg0, Arg1, 0x00))
  17536. }
  17537.  
  17538. Method (FNSC, 2, NotSerialized)
  17539. {
  17540. Return (SMI (0x14, 0x06, Arg0, Arg1, 0x00))
  17541. }
  17542.  
  17543. Method (AUDC, 2, NotSerialized)
  17544. {
  17545. Return (SMI (0x14, 0x07, Arg0, Arg1, 0x00))
  17546. }
  17547.  
  17548. Method (SYBC, 2, NotSerialized)
  17549. {
  17550. Return (SMI (0x14, 0x08, Arg0, Arg1, 0x00))
  17551. }
  17552.  
  17553. Method (KBLS, 2, NotSerialized)
  17554. {
  17555. Return (SMI (0x14, 0x09, Arg0, Arg1, 0x00))
  17556. }
  17557.  
  17558. Method (UBIS, 1, NotSerialized)
  17559. {
  17560. Return (SMI (0x15, 0x00, Arg0, 0x00, 0x00))
  17561. }
  17562.  
  17563. Method (DPIO, 2, NotSerialized)
  17564. {
  17565. If (!Arg0)
  17566. {
  17567. Return (0x00)
  17568. }
  17569.  
  17570. If ((Arg0 > 0xF0))
  17571. {
  17572. Return (0x00)
  17573. }
  17574.  
  17575. If ((Arg0 > 0xB4))
  17576. {
  17577. If (Arg1)
  17578. {
  17579. Return (0x02)
  17580. }
  17581. Else
  17582. {
  17583. Return (0x01)
  17584. }
  17585. }
  17586.  
  17587. If ((Arg0 > 0x78))
  17588. {
  17589. Return (0x03)
  17590. }
  17591.  
  17592. Return (0x04)
  17593. }
  17594.  
  17595. Method (DUDM, 2, NotSerialized)
  17596. {
  17597. If (!Arg1)
  17598. {
  17599. Return (0xFF)
  17600. }
  17601.  
  17602. If ((Arg0 > 0x5A))
  17603. {
  17604. Return (0x00)
  17605. }
  17606.  
  17607. If ((Arg0 > 0x3C))
  17608. {
  17609. Return (0x01)
  17610. }
  17611.  
  17612. If ((Arg0 > 0x2D))
  17613. {
  17614. Return (0x02)
  17615. }
  17616.  
  17617. If ((Arg0 > 0x1E))
  17618. {
  17619. Return (0x03)
  17620. }
  17621.  
  17622. If ((Arg0 > 0x14))
  17623. {
  17624. Return (0x04)
  17625. }
  17626.  
  17627. Return (0x05)
  17628. }
  17629.  
  17630. Method (DMDM, 2, NotSerialized)
  17631. {
  17632. If (Arg1)
  17633. {
  17634. Return (0x00)
  17635. }
  17636.  
  17637. If (!Arg0)
  17638. {
  17639. Return (0x00)
  17640. }
  17641.  
  17642. If ((Arg0 > 0x96))
  17643. {
  17644. Return (0x01)
  17645. }
  17646.  
  17647. If ((Arg0 > 0x78))
  17648. {
  17649. Return (0x02)
  17650. }
  17651.  
  17652. Return (0x03)
  17653. }
  17654.  
  17655. Method (UUDM, 2, NotSerialized)
  17656. {
  17657. If (!(Arg0 & 0x04))
  17658. {
  17659. Return (0x00)
  17660. }
  17661.  
  17662. If ((Arg1 & 0x20))
  17663. {
  17664. Return (0x14)
  17665. }
  17666.  
  17667. If ((Arg1 & 0x10))
  17668. {
  17669. Return (0x1E)
  17670. }
  17671.  
  17672. If ((Arg1 & 0x08))
  17673. {
  17674. Return (0x2D)
  17675. }
  17676.  
  17677. If ((Arg1 & 0x04))
  17678. {
  17679. Return (0x3C)
  17680. }
  17681.  
  17682. If ((Arg1 & 0x02))
  17683. {
  17684. Return (0x5A)
  17685. }
  17686.  
  17687. If ((Arg1 & 0x01))
  17688. {
  17689. Return (0x78)
  17690. }
  17691.  
  17692. Return (0x00)
  17693. }
  17694.  
  17695. Method (UMDM, 4, NotSerialized)
  17696. {
  17697. If (!(Arg0 & 0x02))
  17698. {
  17699. Return (0x00)
  17700. }
  17701.  
  17702. If ((Arg1 & 0x04))
  17703. {
  17704. Return (Arg3)
  17705. }
  17706.  
  17707. If ((Arg1 & 0x02))
  17708. {
  17709. If ((Arg3 <= 0x78))
  17710. {
  17711. Return (0xB4)
  17712. }
  17713. Else
  17714. {
  17715. Return (Arg3)
  17716. }
  17717. }
  17718.  
  17719. If ((Arg2 & 0x04))
  17720. {
  17721. If ((Arg3 <= 0xB4))
  17722. {
  17723. Return (0xF0)
  17724. }
  17725. Else
  17726. {
  17727. Return (Arg3)
  17728. }
  17729. }
  17730.  
  17731. Return (0x00)
  17732. }
  17733.  
  17734. Method (UPIO, 4, NotSerialized)
  17735. {
  17736. If (!(Arg0 & 0x02))
  17737. {
  17738. If ((Arg2 == 0x02))
  17739. {
  17740. Return (0xF0)
  17741. }
  17742. Else
  17743. {
  17744. Return (0x0384)
  17745. }
  17746. }
  17747.  
  17748. If ((Arg1 & 0x02))
  17749. {
  17750. Return (Arg3)
  17751. }
  17752.  
  17753. If ((Arg1 & 0x01))
  17754. {
  17755. If ((Arg3 <= 0x78))
  17756. {
  17757. Return (0xB4)
  17758. }
  17759. Else
  17760. {
  17761. Return (Arg3)
  17762. }
  17763. }
  17764.  
  17765. If ((Arg2 == 0x02))
  17766. {
  17767. Return (0xF0)
  17768. }
  17769. Else
  17770. {
  17771. Return (0x0384)
  17772. }
  17773. }
  17774.  
  17775. Method (FDMA, 2, NotSerialized)
  17776. {
  17777. If ((Arg1 != 0xFF))
  17778. {
  17779. Return ((Arg1 | 0x40))
  17780. }
  17781.  
  17782. If ((Arg0 >= 0x03))
  17783. {
  17784. Return (((Arg0 - 0x02) | 0x20))
  17785. }
  17786.  
  17787. If (Arg0)
  17788. {
  17789. Return (0x12)
  17790. }
  17791.  
  17792. Return (0x00)
  17793. }
  17794.  
  17795. Method (FPIO, 1, NotSerialized)
  17796. {
  17797. If ((Arg0 >= 0x03))
  17798. {
  17799. Return ((Arg0 | 0x08))
  17800. }
  17801.  
  17802. If ((Arg0 == 0x01))
  17803. {
  17804. Return (0x01)
  17805. }
  17806.  
  17807. Return (0x00)
  17808. }
  17809.  
  17810. Method (SCMP, 2, NotSerialized)
  17811. {
  17812. Local0 = SizeOf (Arg0)
  17813. If ((Local0 != SizeOf (Arg1)))
  17814. {
  17815. Return (One)
  17816. }
  17817.  
  17818. Local0++
  17819. Name (STR1, Buffer (Local0) {})
  17820. Name (STR2, Buffer (Local0) {})
  17821. STR1 = Arg0
  17822. STR2 = Arg1
  17823. Local1 = Zero
  17824. While ((Local1 < Local0))
  17825. {
  17826. Local2 = DerefOf (Index (STR1, Local1))
  17827. Local3 = DerefOf (Index (STR2, Local1))
  17828. If ((Local2 != Local3))
  17829. {
  17830. Return (One)
  17831. }
  17832.  
  17833. Local1++
  17834. }
  17835.  
  17836. Return (Zero)
  17837. }
  17838.  
  17839. Name (SPS, 0x00)
  17840. Name (OSIF, 0x00)
  17841. Name (WNTF, 0x00)
  17842. Name (WXPF, 0x00)
  17843. Name (WVIS, 0x00)
  17844. Name (WIN7, 0x00)
  17845. Name (WIN8, 0x00)
  17846. Name (WSPV, 0x00)
  17847. Name (LNUX, 0x00)
  17848. Name (H8DR, 0x00)
  17849. Name (MEMX, 0x00)
  17850. Name (ACST, 0x00)
  17851. Name (FMBL, 0x01)
  17852. Name (FDTP, 0x02)
  17853. Name (FUPS, 0x03)
  17854. Name (FNID, 0x00)
  17855. Name (RRBF, 0x00)
  17856. Name (NBCF, 0x00)
  17857. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement