Advertisement
Guest User

Untitled

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