Advertisement
Guest User

adrien

a guest
Feb 18th, 2008
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 121.70 KB | None | 0 0
  1. /*
  2. * Intel ACPI Component Architecture
  3. * AML Disassembler version 20061109
  4. *
  5. * Disassembly of dsdt.dat, Thu Feb 14 12:19:21 2008
  6. *
  7. *
  8. * Original Table Header:
  9. * Signature "DSDT"
  10. * Length 0x00003499 (13465)
  11. * Revision 0x01
  12. * OEM ID "UW "
  13. * OEM Table ID "F09_____"
  14. * OEM Revision 0x00000000 (0)
  15. * Creator ID "INTL"
  16. * Creator Revision 0x02002026 (33562662)
  17. */
  18. DefinitionBlock ("dsdt.aml", "DSDT", 1, "UW ", "F09_____", 0x00000000)
  19. {
  20. External (\_SB_.PCI0.SBRG.EC0_.ACIN, IntObj)
  21.  
  22. OperationRegion (BIOS, SystemMemory, 0x1DFDF064, 0xFF)
  23. Field (BIOS, ByteAcc, NoLock, Preserve)
  24. {
  25. SS1, 1,
  26. SS2, 1,
  27. SS3, 1,
  28. SS4, 1,
  29. Offset (0x01),
  30. IOST, 16,
  31. TOPM, 32,
  32. ROMS, 32,
  33. MG1B, 32,
  34. MG1L, 32,
  35. MG2B, 32,
  36. MG2L, 32,
  37. Offset (0x48),
  38. PWLV, 8
  39. }
  40.  
  41. Name (APCB, 0xFEC00000)
  42. Name (APCL, 0x1000)
  43. Name (PMBS, 0x0800)
  44. Name (PMLN, 0x80)
  45. Name (GPBS, 0x00)
  46. Name (GPLN, 0x00)
  47. Name (SMBS, 0x0C00)
  48. Name (SMBL, 0x20)
  49. Method (RRIO, 4, NotSerialized)
  50. {
  51. Store ("RRIO", Debug)
  52. }
  53.  
  54. Method (RDMA, 3, NotSerialized)
  55. {
  56. Store ("rDMA", Debug)
  57. }
  58.  
  59. Name (PICM, 0x00)
  60. Method (_PIC, 1, NotSerialized)
  61. {
  62. If (Arg0)
  63. {
  64. Store (0xAA, DBG8)
  65. }
  66. Else
  67. {
  68. Store (0xAC, DBG8)
  69. }
  70.  
  71. Store (Arg0, PICM)
  72. }
  73.  
  74. Name (OSVR, Ones)
  75. Method (OSFL, 0, NotSerialized)
  76. {
  77. If (LNotEqual (OSVR, Ones))
  78. {
  79. Return (OSVR)
  80. }
  81.  
  82. If (LEqual (PICM, 0x00))
  83. {
  84. Store (0xAC, DBG8)
  85. }
  86.  
  87. Store (0x01, OSVR)
  88. If (MCTH (\_OS, "Microsoft Windows NT"))
  89. {
  90. Store (0x00, OSVR)
  91. }
  92. Else
  93. {
  94. If (MCTH (\_OS, "Microsoft WindowsME: Millennium Edition"))
  95. {
  96. Store (0x02, OSVR)
  97. }
  98. }
  99.  
  100. Return (OSVR)
  101. }
  102.  
  103. Method (MCTH, 2, NotSerialized)
  104. {
  105. If (LLess (SizeOf (Arg0), SizeOf (Arg1)))
  106. {
  107. Return (Zero)
  108. }
  109.  
  110. Add (SizeOf (Arg0), 0x01, Local0)
  111. Name (BUF0, Buffer (Local0) {})
  112. Name (BUF1, Buffer (Local0) {})
  113. Store (Arg0, BUF0)
  114. Store (Arg1, BUF1)
  115. While (Local0)
  116. {
  117. Decrement (Local0)
  118. If (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (
  119. BUF1, Local0))))
  120. {
  121. Return (Zero)
  122. }
  123. }
  124.  
  125. Return (One)
  126. }
  127.  
  128. Name (PRWP, Package (0x02)
  129. {
  130. Zero,
  131. Zero
  132. })
  133. Method (GPRW, 2, NotSerialized)
  134. {
  135. Store (Arg0, Index (PRWP, 0x00))
  136. Store (ShiftLeft (SS1, 0x01), Local0)
  137. Or (Local0, ShiftLeft (SS2, 0x02), Local0)
  138. Or (Local0, ShiftLeft (SS3, 0x03), Local0)
  139. Or (Local0, ShiftLeft (SS4, 0x04), Local0)
  140. If (And (ShiftLeft (0x01, Arg1), Local0))
  141. {
  142. Store (Arg1, Index (PRWP, 0x01))
  143. }
  144. Else
  145. {
  146. ShiftRight (Local0, 0x01, Local0)
  147. If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02)))
  148. {
  149. FindSetLeftBit (Local0, Index (PRWP, 0x01))
  150. }
  151. Else
  152. {
  153. FindSetRightBit (Local0, Index (PRWP, 0x01))
  154. }
  155. }
  156.  
  157. Return (PRWP)
  158. }
  159.  
  160. Name (WAKP, Package (0x02)
  161. {
  162. Zero,
  163. Zero
  164. })
  165. OperationRegion (DEB0, SystemIO, 0x80, 0x01)
  166. Field (DEB0, ByteAcc, NoLock, Preserve)
  167. {
  168. DBG8, 8
  169. }
  170.  
  171. OperationRegion (DEB1, SystemIO, 0x90, 0x02)
  172. Field (DEB1, WordAcc, NoLock, Preserve)
  173. {
  174. DBG9, 16
  175. }
  176.  
  177. Scope (\_SB)
  178. {
  179. Name (PR00, Package (0x12)
  180. {
  181. Package (0x04)
  182. {
  183. 0x0001FFFF,
  184. 0x00,
  185. LNKA,
  186. 0x00
  187. },
  188.  
  189. Package (0x04)
  190. {
  191. 0x0001FFFF,
  192. 0x01,
  193. LNKB,
  194. 0x00
  195. },
  196.  
  197. Package (0x04)
  198. {
  199. 0x0001FFFF,
  200. 0x02,
  201. LNKC,
  202. 0x00
  203. },
  204.  
  205. Package (0x04)
  206. {
  207. 0x0001FFFF,
  208. 0x03,
  209. LNKD,
  210. 0x00
  211. },
  212.  
  213. Package (0x04)
  214. {
  215. 0x0002FFFF,
  216. 0x00,
  217. LNKA,
  218. 0x00
  219. },
  220.  
  221. Package (0x04)
  222. {
  223. 0x0002FFFF,
  224. 0x01,
  225. LNKB,
  226. 0x00
  227. },
  228.  
  229. Package (0x04)
  230. {
  231. 0x0002FFFF,
  232. 0x02,
  233. LNKC,
  234. 0x00
  235. },
  236.  
  237. Package (0x04)
  238. {
  239. 0x0002FFFF,
  240. 0x03,
  241. LNKD,
  242. 0x00
  243. },
  244.  
  245. Package (0x04)
  246. {
  247. 0x0003FFFF,
  248. 0x03,
  249. LNKH,
  250. 0x00
  251. },
  252.  
  253. Package (0x04)
  254. {
  255. 0x0003FFFF,
  256. 0x00,
  257. LNKE,
  258. 0x00
  259. },
  260.  
  261. Package (0x04)
  262. {
  263. 0x0003FFFF,
  264. 0x01,
  265. LNKF,
  266. 0x00
  267. },
  268.  
  269. Package (0x04)
  270. {
  271. 0x0003FFFF,
  272. 0x02,
  273. LNKG,
  274. 0x00
  275. },
  276.  
  277. Package (0x04)
  278. {
  279. 0x0004FFFF,
  280. 0x00,
  281. LNKD,
  282. 0x00
  283. },
  284.  
  285. Package (0x04)
  286. {
  287. 0x000AFFFF,
  288. 0x00,
  289. LNKA,
  290. 0x00
  291. },
  292.  
  293. Package (0x04)
  294. {
  295. 0x000BFFFF,
  296. 0x00,
  297. LNKD,
  298. 0x00
  299. },
  300.  
  301. Package (0x04)
  302. {
  303. 0x000BFFFF,
  304. 0x01,
  305. LNKB,
  306. 0x00
  307. },
  308.  
  309. Package (0x04)
  310. {
  311. 0x0006FFFF,
  312. 0x00,
  313. LNKD,
  314. 0x00
  315. },
  316.  
  317. Package (0x04)
  318. {
  319. 0x0009FFFF,
  320. 0x00,
  321. LNKB,
  322. 0x00
  323. }
  324. })
  325. Name (AR00, Package (0x12)
  326. {
  327. Package (0x04)
  328. {
  329. 0x0001FFFF,
  330. 0x00,
  331. 0x00,
  332. 0x10
  333. },
  334.  
  335. Package (0x04)
  336. {
  337. 0x0001FFFF,
  338. 0x01,
  339. 0x00,
  340. 0x11
  341. },
  342.  
  343. Package (0x04)
  344. {
  345. 0x0001FFFF,
  346. 0x02,
  347. 0x00,
  348. 0x12
  349. },
  350.  
  351. Package (0x04)
  352. {
  353. 0x0001FFFF,
  354. 0x03,
  355. 0x00,
  356. 0x13
  357. },
  358.  
  359. Package (0x04)
  360. {
  361. 0x0002FFFF,
  362. 0x00,
  363. 0x00,
  364. 0x10
  365. },
  366.  
  367. Package (0x04)
  368. {
  369. 0x0002FFFF,
  370. 0x01,
  371. 0x00,
  372. 0x11
  373. },
  374.  
  375. Package (0x04)
  376. {
  377. 0x0002FFFF,
  378. 0x02,
  379. 0x00,
  380. 0x12
  381. },
  382.  
  383. Package (0x04)
  384. {
  385. 0x0002FFFF,
  386. 0x03,
  387. 0x00,
  388. 0x13
  389. },
  390.  
  391. Package (0x04)
  392. {
  393. 0x0003FFFF,
  394. 0x03,
  395. 0x00,
  396. 0x17
  397. },
  398.  
  399. Package (0x04)
  400. {
  401. 0x0003FFFF,
  402. 0x00,
  403. 0x00,
  404. 0x14
  405. },
  406.  
  407. Package (0x04)
  408. {
  409. 0x0003FFFF,
  410. 0x01,
  411. 0x00,
  412. 0x15
  413. },
  414.  
  415. Package (0x04)
  416. {
  417. 0x0003FFFF,
  418. 0x02,
  419. 0x00,
  420. 0x16
  421. },
  422.  
  423. Package (0x04)
  424. {
  425. 0x0004FFFF,
  426. 0x00,
  427. 0x00,
  428. 0x13
  429. },
  430.  
  431. Package (0x04)
  432. {
  433. 0x000AFFFF,
  434. 0x00,
  435. 0x00,
  436. 0x10
  437. },
  438.  
  439. Package (0x04)
  440. {
  441. 0x000BFFFF,
  442. 0x00,
  443. 0x00,
  444. 0x13
  445. },
  446.  
  447. Package (0x04)
  448. {
  449. 0x000BFFFF,
  450. 0x01,
  451. 0x00,
  452. 0x11
  453. },
  454.  
  455. Package (0x04)
  456. {
  457. 0x0006FFFF,
  458. 0x00,
  459. 0x00,
  460. 0x13
  461. },
  462.  
  463. Package (0x04)
  464. {
  465. 0x0009FFFF,
  466. 0x00,
  467. 0x00,
  468. 0x11
  469. }
  470. })
  471. Name (PRSA, ResourceTemplate ()
  472. {
  473. IRQ (Level, ActiveLow, Shared, )
  474. {3,4,5,7,10,11,12,14,15}
  475. })
  476. Alias (PRSA, PRSB)
  477. Alias (PRSA, PRSC)
  478. Alias (PRSA, PRSD)
  479. Alias (PRSA, PRSE)
  480. Alias (PRSA, PRSF)
  481. Alias (PRSA, PRSG)
  482. Alias (PRSA, PRSH)
  483. Device (PCI0)
  484. {
  485. Name (_HID, EisaId ("PNP0A03"))
  486. Name (_ADR, 0x00180000)
  487. Method (^BN00, 0, NotSerialized)
  488. {
  489. Return (0x00)
  490. }
  491.  
  492. Method (_BBN, 0, NotSerialized)
  493. {
  494. Return (BN00 ())
  495. }
  496.  
  497. Name (_UID, 0x00)
  498. Method (_PRT, 0, NotSerialized)
  499. {
  500. If (PICM)
  501. {
  502. Return (AR00)
  503. }
  504.  
  505. Return (PR00)
  506. }
  507.  
  508. Device (AGP)
  509. {
  510. Name (_ADR, 0x00010000)
  511. Device (VGA)
  512. {
  513. Name (_ADR, 0x00)
  514. Method (_DOS, 1, NotSerialized)
  515. {
  516. Store (Arg0, SWIT)
  517. }
  518.  
  519. Name (_DOD, Package (0x02)
  520. {
  521. 0x00010100,
  522. 0x00010110
  523. })
  524. Device (CRT)
  525. {
  526. Name (_ADR, 0x0100)
  527. Name (_DCS, 0x1F)
  528. Name (_DGS, 0x01)
  529. Method (_DSS, 1, NotSerialized)
  530. {
  531. }
  532. }
  533.  
  534. Device (LCD)
  535. {
  536. Name (_ADR, 0x0110)
  537. Name (_DCS, 0x1F)
  538. Name (_DGS, 0x01)
  539. Method (_DSS, 1, NotSerialized)
  540. {
  541. }
  542.  
  543. Method (_BCM, 1, NotSerialized)
  544. {
  545. }
  546.  
  547. Name (PBCL, Package (0x07)
  548. {
  549. 0x50,
  550. 0x32,
  551. 0x14,
  552. 0x28,
  553. 0x3C,
  554. 0x50,
  555. 0x64
  556. })
  557. Method (_BCL, 0, NotSerialized)
  558. {
  559. Return (PBCL)
  560. }
  561. }
  562.  
  563. Name (SWIT, 0x00)
  564. Name (GDCS, 0x02)
  565. Name (GDGS, 0x01)
  566. Name (GDTS, 0x00)
  567. Name (GDFG, 0x01)
  568. }
  569. }
  570.  
  571. Device (SBRG)
  572. {
  573. Name (_ADR, 0x00020000)
  574. Device (PIC)
  575. {
  576. Name (_HID, EisaId ("PNP0000"))
  577. Name (_CRS, ResourceTemplate ()
  578. {
  579. IO (Decode16,
  580. 0x0020, // Range Minimum
  581. 0x0020, // Range Maximum
  582. 0x00, // Alignment
  583. 0x02, // Length
  584. )
  585. IO (Decode16,
  586. 0x00A0, // Range Minimum
  587. 0x00A0, // Range Maximum
  588. 0x00, // Alignment
  589. 0x02, // Length
  590. )
  591. IRQNoFlags ()
  592. {2}
  593. })
  594. }
  595.  
  596. Device (DMAD)
  597. {
  598. Name (_HID, EisaId ("PNP0200"))
  599. Name (_CRS, ResourceTemplate ()
  600. {
  601. DMA (Compatibility, BusMaster, Transfer8, )
  602. {4}
  603. IO (Decode16,
  604. 0x0000, // Range Minimum
  605. 0x0000, // Range Maximum
  606. 0x00, // Alignment
  607. 0x10, // Length
  608. )
  609. IO (Decode16,
  610. 0x0081, // Range Minimum
  611. 0x0081, // Range Maximum
  612. 0x00, // Alignment
  613. 0x03, // Length
  614. )
  615. IO (Decode16,
  616. 0x0087, // Range Minimum
  617. 0x0087, // Range Maximum
  618. 0x00, // Alignment
  619. 0x01, // Length
  620. )
  621. IO (Decode16,
  622. 0x0089, // Range Minimum
  623. 0x0089, // Range Maximum
  624. 0x00, // Alignment
  625. 0x03, // Length
  626. )
  627. IO (Decode16,
  628. 0x008F, // Range Minimum
  629. 0x008F, // Range Maximum
  630. 0x00, // Alignment
  631. 0x01, // Length
  632. )
  633. IO (Decode16,
  634. 0x00C0, // Range Minimum
  635. 0x00C0, // Range Maximum
  636. 0x00, // Alignment
  637. 0x20, // Length
  638. )
  639. })
  640. }
  641.  
  642. Device (TMR)
  643. {
  644. Name (_HID, EisaId ("PNP0100"))
  645. Name (_CRS, ResourceTemplate ()
  646. {
  647. IO (Decode16,
  648. 0x0040, // Range Minimum
  649. 0x0040, // Range Maximum
  650. 0x00, // Alignment
  651. 0x04, // Length
  652. )
  653. IRQNoFlags ()
  654. {0}
  655. })
  656. }
  657.  
  658. Device (RTC0)
  659. {
  660. Name (_HID, EisaId ("PNP0B00"))
  661. Name (_CRS, ResourceTemplate ()
  662. {
  663. IO (Decode16,
  664. 0x0070, // Range Minimum
  665. 0x0070, // Range Maximum
  666. 0x00, // Alignment
  667. 0x02, // Length
  668. )
  669. IRQNoFlags ()
  670. {8}
  671. })
  672. }
  673.  
  674. Device (PS2K)
  675. {
  676. Name (_HID, EisaId ("PNP030B"))
  677. Name (_CID, 0x0B03D041)
  678. Method (_STA, 0, NotSerialized)
  679. {
  680. ShiftLeft (0x01, 0x0A, Local0)
  681. If (And (IOST, Local0))
  682. {
  683. Return (0x0F)
  684. }
  685.  
  686. Return (0x00)
  687. }
  688.  
  689. Name (_CRS, ResourceTemplate ()
  690. {
  691. IO (Decode16,
  692. 0x0060, // Range Minimum
  693. 0x0060, // Range Maximum
  694. 0x00, // Alignment
  695. 0x01, // Length
  696. )
  697. IO (Decode16,
  698. 0x0064, // Range Minimum
  699. 0x0064, // Range Maximum
  700. 0x00, // Alignment
  701. 0x01, // Length
  702. )
  703. IRQNoFlags ()
  704. {1}
  705. })
  706. }
  707.  
  708. Device (PS2M)
  709. {
  710. Name (_HID, EisaId ("SYN0801"))
  711. Name (_CID, Package (0x02)
  712. {
  713. 0x00082E4F,
  714. 0x130FD041
  715. })
  716. Method (_STA, 0, NotSerialized)
  717. {
  718. ShiftLeft (0x01, 0x0C, Local0)
  719. If (And (IOST, Local0))
  720. {
  721. Return (0x0F)
  722. }
  723.  
  724. Return (0x00)
  725. }
  726.  
  727. Name (CRS1, ResourceTemplate ()
  728. {
  729. IRQNoFlags ()
  730. {12}
  731. })
  732. Name (CRS2, ResourceTemplate ()
  733. {
  734. IO (Decode16,
  735. 0x0060, // Range Minimum
  736. 0x0060, // Range Maximum
  737. 0x00, // Alignment
  738. 0x01, // Length
  739. )
  740. IO (Decode16,
  741. 0x0064, // Range Minimum
  742. 0x0064, // Range Maximum
  743. 0x00, // Alignment
  744. 0x01, // Length
  745. )
  746. IRQNoFlags ()
  747. {12}
  748. })
  749. Method (_CRS, 0, NotSerialized)
  750. {
  751. ShiftLeft (0x01, 0x0A, Local0)
  752. If (And (IOST, Local0))
  753. {
  754. Return (CRS1)
  755. }
  756. Else
  757. {
  758. Return (CRS2)
  759. }
  760. }
  761. }
  762.  
  763. Device (SPKR)
  764. {
  765. Name (_HID, EisaId ("PNP0800"))
  766. Name (_CRS, ResourceTemplate ()
  767. {
  768. IO (Decode16,
  769. 0x0061, // Range Minimum
  770. 0x0061, // Range Maximum
  771. 0x00, // Alignment
  772. 0x01, // Length
  773. )
  774. })
  775. }
  776.  
  777. Device (COPR)
  778. {
  779. Name (_HID, EisaId ("PNP0C04"))
  780. Name (_CRS, ResourceTemplate ()
  781. {
  782. IO (Decode16,
  783. 0x00F0, // Range Minimum
  784. 0x00F0, // Range Maximum
  785. 0x00, // Alignment
  786. 0x10, // Length
  787. )
  788. IRQNoFlags ()
  789. {13}
  790. })
  791. }
  792.  
  793. Device (RMSC)
  794. {
  795. Name (_HID, EisaId ("PNP0C02"))
  796. Name (_UID, 0x10)
  797. Name (CRS, ResourceTemplate ()
  798. {
  799. IO (Decode16,
  800. 0x0010, // Range Minimum
  801. 0x0010, // Range Maximum
  802. 0x00, // Alignment
  803. 0x10, // Length
  804. )
  805. IO (Decode16,
  806. 0x0022, // Range Minimum
  807. 0x0022, // Range Maximum
  808. 0x00, // Alignment
  809. 0x1E, // Length
  810. )
  811. IO (Decode16,
  812. 0x0044, // Range Minimum
  813. 0x0044, // Range Maximum
  814. 0x00, // Alignment
  815. 0x1C, // Length
  816. )
  817. IO (Decode16,
  818. 0x0068, // Range Minimum
  819. 0x0068, // Range Maximum
  820. 0x00, // Alignment
  821. 0x01, // Length
  822. )
  823. IO (Decode16,
  824. 0x006C, // Range Minimum
  825. 0x006C, // Range Maximum
  826. 0x00, // Alignment
  827. 0x04, // Length
  828. )
  829. IO (Decode16,
  830. 0x0072, // Range Minimum
  831. 0x0072, // Range Maximum
  832. 0x00, // Alignment
  833. 0x0E, // Length
  834. )
  835. IO (Decode16,
  836. 0x0080, // Range Minimum
  837. 0x0080, // Range Maximum
  838. 0x00, // Alignment
  839. 0x01, // Length
  840. )
  841. IO (Decode16,
  842. 0x0084, // Range Minimum
  843. 0x0084, // Range Maximum
  844. 0x00, // Alignment
  845. 0x03, // Length
  846. )
  847. IO (Decode16,
  848. 0x0088, // Range Minimum
  849. 0x0088, // Range Maximum
  850. 0x00, // Alignment
  851. 0x01, // Length
  852. )
  853. IO (Decode16,
  854. 0x008C, // Range Minimum
  855. 0x008C, // Range Maximum
  856. 0x00, // Alignment
  857. 0x03, // Length
  858. )
  859. IO (Decode16,
  860. 0x0090, // Range Minimum
  861. 0x0090, // Range Maximum
  862. 0x00, // Alignment
  863. 0x10, // Length
  864. )
  865. IO (Decode16,
  866. 0x00A2, // Range Minimum
  867. 0x00A2, // Range Maximum
  868. 0x00, // Alignment
  869. 0x1E, // Length
  870. )
  871. IO (Decode16,
  872. 0x00E0, // Range Minimum
  873. 0x00E0, // Range Maximum
  874. 0x00, // Alignment
  875. 0x10, // Length
  876. )
  877. IO (Decode16,
  878. 0x0480, // Range Minimum
  879. 0x0480, // Range Maximum
  880. 0x00, // Alignment
  881. 0x10, // Length
  882. )
  883. IO (Decode16,
  884. 0x04D0, // Range Minimum
  885. 0x04D0, // Range Maximum
  886. 0x00, // Alignment
  887. 0x02, // Length
  888. )
  889. IO (Decode16,
  890. 0x0000, // Range Minimum
  891. 0x0000, // Range Maximum
  892. 0x00, // Alignment
  893. 0x00, // Length
  894. _Y00)
  895. IO (Decode16,
  896. 0x0000, // Range Minimum
  897. 0x0000, // Range Maximum
  898. 0x00, // Alignment
  899. 0x00, // Length
  900. _Y01)
  901. IO (Decode16,
  902. 0x0000, // Range Minimum
  903. 0x0000, // Range Maximum
  904. 0x00, // Alignment
  905. 0x00, // Length
  906. _Y02)
  907. IO (Decode16,
  908. 0x0000, // Range Minimum
  909. 0x0000, // Range Maximum
  910. 0x00, // Alignment
  911. 0x00, // Length
  912. _Y03)
  913. Memory32Fixed (ReadOnly,
  914. 0xFFF80000, // Address Base
  915. 0x00080000, // Address Length
  916. )
  917. Memory32 (ReadOnly,
  918. 0xFFE80000, // Range Minimum
  919. 0xFFE80000, // Range Maximum
  920. 0x00000000, // Alignment
  921. 0x00080000, // Length
  922. )
  923. Memory32 (ReadOnly,
  924. 0xFED00000, // Range Minimum
  925. 0xFED00000, // Range Maximum
  926. 0x00000000, // Alignment
  927. 0x00000400, // Length
  928. )
  929. })
  930. Method (_CRS, 0, NotSerialized)
  931. {
  932. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y00._MIN, GP00)
  933. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y00._MAX, GP01)
  934. CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y00._LEN, GP0L)
  935. Store (PMBS, GP00)
  936. Store (PMBS, GP01)
  937. Store (PMLN, GP0L)
  938. If (LNotEqual (SMBS, 0x08E0))
  939. {
  940. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y01._MIN, GP30)
  941. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y01._MAX, GP31)
  942. CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y01._LEN, GP3L)
  943. Add (0x80, PMBS, Local0)
  944. Store (Local0, GP30)
  945. Store (Local0, GP31)
  946. Store (0x80, GP3L)
  947. }
  948.  
  949. If (SMBS)
  950. {
  951. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y02._MIN, GP10)
  952. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y02._MAX, GP11)
  953. CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y02._LEN, GP1L)
  954. Store (SMBS, GP10)
  955. Store (SMBS, GP11)
  956. Store (SMBL, GP1L)
  957. }
  958.  
  959. If (GPBS)
  960. {
  961. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y03._MIN, GP20)
  962. CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y03._MAX, GP21)
  963. CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y03._LEN, GP2L)
  964. Store (GPBS, GP20)
  965. Store (GPBS, GP21)
  966. Store (GPLN, GP2L)
  967. }
  968.  
  969. Return (CRS)
  970. }
  971. }
  972.  
  973. Scope (\_PR)
  974. {
  975. Processor (CPU1, 0x01, 0x00000810, 0x06)
  976. {
  977. Name (_PCT, Package (0x02)
  978. {
  979. ResourceTemplate ()
  980. {
  981. Register (FFixedHW,
  982. 0x00, // Bit Width
  983. 0x00, // Bit Offset
  984. 0x0000000000000000, // Address
  985. ,)
  986. },
  987.  
  988. ResourceTemplate ()
  989. {
  990. Register (FFixedHW,
  991. 0x00, // Bit Width
  992. 0x00, // Bit Offset
  993. 0x0000000000000000, // Address
  994. ,)
  995. }
  996. })
  997. Name (_PSS, Package (0x03)
  998. {
  999. Package (0x06)
  1000. {
  1001. 0x00000708,
  1002. 0x0000F230,
  1003. 0x00000064,
  1004. 0x00000007,
  1005. 0xE0202A4A,
  1006. 0x0000024A
  1007. },
  1008.  
  1009. Package (0x06)
  1010. {
  1011. 0x00000640,
  1012. 0x0000A7F8,
  1013. 0x00000064,
  1014. 0x00000007,
  1015. 0xE0202A88,
  1016. 0x00000288
  1017. },
  1018.  
  1019. Package (0x06)
  1020. {
  1021. 0x00000320,
  1022. 0x000032C8,
  1023. 0x00000064,
  1024. 0x00000007,
  1025. 0xE0202E00,
  1026. 0x00000600
  1027. }
  1028. })
  1029. Name (PSXH, Buffer (0x18)
  1030. {
  1031. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1032. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1033. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  1034. })
  1035. Name (PSXG, Buffer (0x18)
  1036. {
  1037. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1038. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1039. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  1040. })
  1041. Name (PSXF, Buffer (0x18)
  1042. {
  1043. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1044. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1045. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  1046. })
  1047. Name (PSXE, Buffer (0x18)
  1048. {
  1049. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1050. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1051. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  1052. })
  1053. Name (PSXD, Buffer (0x18)
  1054. {
  1055. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1056. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1057. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  1058. })
  1059. Name (PSXC, Buffer (0x18)
  1060. {
  1061. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1062. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1063. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  1064. })
  1065. Name (PSXB, Buffer (0x18)
  1066. {
  1067. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1068. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  1069. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  1070. })
  1071. Method (_PPC, 0, NotSerialized)
  1072. {
  1073. If (LAnd (\_SB.PCI0.SBRG.EC0.XTIN, LNot (\_SB.PCI0.SBRG.EC0.XCIN)))
  1074. {
  1075. Store (0x11, DBG8)
  1076. Store (\PWLV, Local0)
  1077. Return (Decrement (Local0))
  1078. }
  1079. Else
  1080. {
  1081. If (LNot (\SLMS))
  1082. {
  1083. Store (0x22, DBG8)
  1084. Return (0x00)
  1085. }
  1086. Else
  1087. {
  1088. Store (0x33, DBG8)
  1089. Store (\PWLV, Local0)
  1090. Return (Decrement (Local0))
  1091. }
  1092. }
  1093. }
  1094. }
  1095. }
  1096.  
  1097. Device (OMSC)
  1098. {
  1099. Name (_HID, EisaId ("PNP0C02"))
  1100. Name (_UID, 0x00)
  1101. Name (CRS, ResourceTemplate ()
  1102. {
  1103. Memory32Fixed (ReadOnly,
  1104. 0x00000000, // Address Base
  1105. 0x00000000, // Address Length
  1106. _Y04)
  1107. Memory32Fixed (ReadOnly,
  1108. 0x00000000, // Address Base
  1109. 0x00000000, // Address Length
  1110. _Y05)
  1111. })
  1112. Method (_CRS, 0, NotSerialized)
  1113. {
  1114. If (APCB)
  1115. {
  1116. CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y04._LEN, ML01)
  1117. CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y04._BAS, MB01)
  1118. CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y05._LEN, ML02)
  1119. CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y05._BAS, MB02)
  1120. Store (APCB, MB01)
  1121. Store (APCL, ML01)
  1122. Store (0xFEE00000, MB02)
  1123. Store (0x1000, ML02)
  1124. }
  1125.  
  1126. Return (CRS)
  1127. }
  1128. }
  1129.  
  1130. Device (\_SB.RMEM)
  1131. {
  1132. Name (_HID, EisaId ("PNP0C01"))
  1133. Name (_UID, 0x01)
  1134. Name (CRS, ResourceTemplate ()
  1135. {
  1136. Memory32Fixed (ReadWrite,
  1137. 0x00000000, // Address Base
  1138. 0x000A0000, // Address Length
  1139. )
  1140. Memory32Fixed (ReadOnly,
  1141. 0x00000000, // Address Base
  1142. 0x00000000, // Address Length
  1143. _Y06)
  1144. Memory32Fixed (ReadOnly,
  1145. 0x000E0000, // Address Base
  1146. 0x00020000, // Address Length
  1147. _Y07)
  1148. Memory32Fixed (ReadWrite,
  1149. 0x00100000, // Address Base
  1150. 0x00000000, // Address Length
  1151. _Y08)
  1152. Memory32Fixed (ReadOnly,
  1153. 0x00000000, // Address Base
  1154. 0x00000000, // Address Length
  1155. _Y09)
  1156. })
  1157. Method (_CRS, 0, NotSerialized)
  1158. {
  1159. CreateDWordField (CRS, \_SB.RMEM._Y06._BAS, BAS1)
  1160. CreateDWordField (CRS, \_SB.RMEM._Y06._LEN, LEN1)
  1161. CreateDWordField (CRS, \_SB.RMEM._Y07._BAS, BAS2)
  1162. CreateDWordField (CRS, \_SB.RMEM._Y07._LEN, LEN2)
  1163. CreateDWordField (CRS, \_SB.RMEM._Y08._LEN, LEN3)
  1164. CreateDWordField (CRS, \_SB.RMEM._Y09._BAS, BAS4)
  1165. CreateDWordField (CRS, \_SB.RMEM._Y09._LEN, LEN4)
  1166. If (OSFL ()) {}
  1167. Else
  1168. {
  1169. If (MG1B)
  1170. {
  1171. If (LGreater (MG1B, 0x000C0000))
  1172. {
  1173. Store (0x000C0000, BAS1)
  1174. Subtract (MG1B, BAS1, LEN1)
  1175. }
  1176. }
  1177. Else
  1178. {
  1179. Store (0x000C0000, BAS1)
  1180. Store (0x00020000, LEN1)
  1181. }
  1182.  
  1183. If (Add (MG1B, MG1L, Local0))
  1184. {
  1185. Store (Local0, BAS2)
  1186. Subtract (0x00100000, BAS2, LEN2)
  1187. }
  1188. }
  1189.  
  1190. Subtract (MG2B, 0x00100000, LEN3)
  1191. Add (MG2B, MG2L, BAS4)
  1192. Subtract (0x00, BAS4, LEN4)
  1193. Return (CRS)
  1194. }
  1195. }
  1196.  
  1197. Device (EC0)
  1198. {
  1199. Name (_HID, EisaId ("PNP0C09"))
  1200. Name (_CRS, ResourceTemplate ()
  1201. {
  1202. IO (Decode16,
  1203. 0x0062, // Range Minimum
  1204. 0x0062, // Range Maximum
  1205. 0x00, // Alignment
  1206. 0x01, // Length
  1207. )
  1208. IO (Decode16,
  1209. 0x0066, // Range Minimum
  1210. 0x0066, // Range Maximum
  1211. 0x00, // Alignment
  1212. 0x01, // Length
  1213. )
  1214. })
  1215. Name (FGEC, 0x00)
  1216. Method (_REG, 2, NotSerialized)
  1217. {
  1218. If (LEqual (Arg0, 0x03))
  1219. {
  1220. Store (Arg1, FGEC)
  1221. Store (0x00, THPP)
  1222. }
  1223.  
  1224. If (LEqual (OSFL (), 0x01))
  1225. {
  1226. Store (0x01, OSEC)
  1227. }
  1228. Else
  1229. {
  1230. If (LEqual (OSFL (), 0x00))
  1231. {
  1232. Store (0x02, OSEC)
  1233. If (CondRefOf (_OSI, Local0))
  1234. {
  1235. If (\_OSI ("Windows 2001"))
  1236. {
  1237. Store (0x04, OSEC)
  1238. }
  1239. }
  1240. }
  1241. Else
  1242. {
  1243. If (LEqual (OSFL (), 0x02))
  1244. {
  1245. Store (0x03, OSEC)
  1246. }
  1247. }
  1248. }
  1249.  
  1250. Store (0xC8, SSMI)
  1251. }
  1252.  
  1253. OperationRegion (ECXP, EmbeddedControl, 0x00, 0x0100)
  1254. Field (ECXP, ByteAcc, Lock, Preserve)
  1255. {
  1256. XIF0, 16,
  1257. XIF1, 16,
  1258. XIF2, 16,
  1259. XIF3, 16,
  1260. XIF4, 16,
  1261. XIF5, 16,
  1262. XIF6, 16,
  1263. XIF7, 16,
  1264. XIF8, 16,
  1265. XIF9, 64,
  1266. XIFA, 64,
  1267. XIFB, 64,
  1268. XIFC, 64,
  1269. XST0, 16,
  1270. XST1, 16,
  1271. XST2, 16,
  1272. XST3, 16,
  1273. XTP0, 16,
  1274. XCIN, 1,
  1275. , 1,
  1276. XTIN, 1,
  1277. Offset (0x3D),
  1278. Offset (0x3E),
  1279. XHPP, 7,
  1280. Offset (0x3F),
  1281. Offset (0x40),
  1282. XSEC, 3,
  1283. Offset (0x41),
  1284. XLPT, 8
  1285. }
  1286.  
  1287. Name (_GPE, 0x02)
  1288. Method (_Q00, 0, NotSerialized)
  1289. {
  1290. }
  1291.  
  1292. Method (_Q18, 0, NotSerialized)
  1293. {
  1294. Store ("Trip Point Event", Debug)
  1295. Notify (\_SB.PCI0.BAT0, 0x80)
  1296. }
  1297.  
  1298. Method (_Q06, 0, NotSerialized)
  1299. {
  1300. Notify (\_PR.CPU1, 0x80)
  1301. Store (0x06, DBG8)
  1302. Store ("Battery Change Event", Debug)
  1303. If (LEqual (OSFL (), 0x01))
  1304. {
  1305. If (BTIN)
  1306. {
  1307. Notify (\_SB.PCI0.BAT0, 0x01)
  1308. }
  1309. Else
  1310. {
  1311. Notify (\_SB.PCI0.BAT0, 0x00)
  1312. }
  1313.  
  1314. Notify (\_SB.PCI0.BAT0, 0x80)
  1315. Notify (\_SB.PCI0, 0x00)
  1316. }
  1317.  
  1318. If (LEqual (OSFL (), 0x02))
  1319. {
  1320. Store (0x01, FAKE)
  1321. Notify (\_SB.PCI0.AC0, 0x00)
  1322. Store (0x00, FAKE)
  1323. Notify (\_SB.PCI0.AC0, 0x00)
  1324. If (BTIN)
  1325. {
  1326. Notify (\_SB.PCI0.BAT0, 0x00)
  1327. }
  1328. Else
  1329. {
  1330. Notify (\_SB.PCI0.BAT0, 0x03)
  1331. }
  1332.  
  1333. Notify (\_SB.PCI0.BAT0, 0x81)
  1334. Notify (\_SB.PCI0.BAT0, 0x80)
  1335. }
  1336.  
  1337. If (LEqual (OSFL (), 0x00))
  1338. {
  1339. Sleep (0x01F4)
  1340. If (BTIN)
  1341. {
  1342. Notify (\_SB.PCI0.BAT0, 0x01)
  1343. }
  1344. Else
  1345. {
  1346. Notify (\_SB.PCI0.BAT0, 0x00)
  1347. }
  1348.  
  1349. Notify (\_SB.PCI0.BAT0, 0x80)
  1350. }
  1351. }
  1352.  
  1353. Method (_Q07, 0, NotSerialized)
  1354. {
  1355. Notify (\_PR.CPU1, 0x80)
  1356. Store (0x07, DBG8)
  1357. Store ("AC Change", Debug)
  1358. If (LEqual (OSFL (), 0x01))
  1359. {
  1360. Store (0x00, FAKE)
  1361. Notify (\_SB.PCI0.AC0, 0x00)
  1362. }
  1363.  
  1364. If (LEqual (OSFL (), 0x02))
  1365. {
  1366. Store (0x00, FAKE)
  1367. Notify (\_SB.PCI0.AC0, 0x00)
  1368. }
  1369.  
  1370. If (LEqual (OSFL (), 0x00))
  1371. {
  1372. Notify (\_SB.PCI0.AC0, 0x80)
  1373. Notify (\_SB.PCI0.BAT0, 0x80)
  1374. }
  1375. }
  1376.  
  1377. Method (_Q0A, 0, NotSerialized)
  1378. {
  1379. Store ("FN+F1 Event", Debug)
  1380. Notify (\_SB.SLPB, 0x80)
  1381. }
  1382.  
  1383. Method (_Q0C, 0, NotSerialized)
  1384. {
  1385. Store ("FN+F3 Event", Debug)
  1386. Store (0xB2, SSMI)
  1387. }
  1388.  
  1389. Method (_Q0D, 0, NotSerialized)
  1390. {
  1391. Store ("FN+F4 Event", Debug)
  1392. If (LEqual (\_SB.PCI0.AGP.VGA.SWIT, 0x00))
  1393. {
  1394. If (LEqual (\_SB.PCI0.AGP.VGA.GDFG, 0x01))
  1395. {
  1396. Notify (\_SB.PCI0.AGP.VGA, 0x80)
  1397. Store (0x00, \_SB.PCI0.AGP.VGA.GDFG)
  1398. Sleep (0x07D0)
  1399. }
  1400.  
  1401. If (LEqual (\_SB.PCI0.AGP.VGA.GDTS, 0x00))
  1402. {
  1403. If (LEqual (\_SB.PCI0.AGP.VGA.GDGS, 0x01))
  1404. {
  1405. Store (0x00, \_SB.PCI0.AGP.VGA.LCD._DGS)
  1406. Store (0x01, \_SB.PCI0.AGP.VGA.CRT._DGS)
  1407. }
  1408.  
  1409. If (LEqual (\_SB.PCI0.AGP.VGA.GDGS, 0x02))
  1410. {
  1411. Store (0x01, \_SB.PCI0.AGP.VGA.LCD._DGS)
  1412. Store (0x00, \_SB.PCI0.AGP.VGA.CRT._DGS)
  1413. }
  1414.  
  1415. If (LEqual (\_SB.PCI0.AGP.VGA.GDGS, 0x03))
  1416. {
  1417. Store (0x01, \_SB.PCI0.AGP.VGA.LCD._DGS)
  1418. Store (0x01, \_SB.PCI0.AGP.VGA.CRT._DGS)
  1419. }
  1420.  
  1421. Notify (\_SB.PCI0.AGP.VGA, 0x80)
  1422. If (LEqual (\_SB.PCI0.AGP.VGA.GDGS, 0x03))
  1423. {
  1424. Store (0x01, \_SB.PCI0.AGP.VGA.GDGS)
  1425. }
  1426. Else
  1427. {
  1428. Add (0x01, \_SB.PCI0.AGP.VGA.GDGS, \_SB.PCI0.AGP.VGA.GDGS)
  1429. }
  1430. }
  1431. }
  1432. }
  1433.  
  1434. Method (_Q10, 0, NotSerialized)
  1435. {
  1436. Store ("FN+F7 Event", Debug)
  1437. Store (0xB6, SSMI)
  1438. }
  1439.  
  1440. Method (_Q11, 0, NotSerialized)
  1441. {
  1442. Store ("FN+F8 Event", Debug)
  1443. Store (0xB7, SSMI)
  1444. }
  1445.  
  1446. Method (_Q12, 0, NotSerialized)
  1447. {
  1448. }
  1449.  
  1450. Method (_Q13, 0, NotSerialized)
  1451. {
  1452. }
  1453.  
  1454. Method (_Q14, 0, NotSerialized)
  1455. {
  1456. }
  1457.  
  1458. Method (_Q15, 0, NotSerialized)
  1459. {
  1460. }
  1461.  
  1462. Method (_Q16, 0, NotSerialized)
  1463. {
  1464. Store (0x01, LIDS)
  1465. Notify (\_SB.PCI0.SBRG.LID, 0x80)
  1466. }
  1467.  
  1468. Method (_Q19, 0, NotSerialized)
  1469. {
  1470. Store (0x00, LIDS)
  1471. Notify (\_SB.PCI0.SBRG.LID, 0x80)
  1472. }
  1473.  
  1474. Method (_Q1E, 0, NotSerialized)
  1475. {
  1476. }
  1477.  
  1478. Method (_Q1F, 0, NotSerialized)
  1479. {
  1480. }
  1481.  
  1482. Method (_Q20, 0, NotSerialized)
  1483. {
  1484. }
  1485.  
  1486. Method (_Q21, 0, NotSerialized)
  1487. {
  1488. }
  1489.  
  1490. Method (_Q22, 0, NotSerialized)
  1491. {
  1492. }
  1493.  
  1494. Method (_Q23, 0, NotSerialized)
  1495. {
  1496. }
  1497.  
  1498. Method (_Q24, 0, NotSerialized)
  1499. {
  1500. }
  1501.  
  1502. Method (_Q25, 0, NotSerialized)
  1503. {
  1504. }
  1505.  
  1506. Method (_Q27, 0, NotSerialized)
  1507. {
  1508. Store (0x7D, THPP)
  1509. Notify (\_TZ.THRM, 0x80)
  1510. }
  1511.  
  1512. Method (_Q2E, 0, NotSerialized)
  1513. {
  1514. Not (\SLMS, \SLMS)
  1515. If (\SLMS)
  1516. {
  1517. Store (0xD4, SSMI)
  1518. }
  1519. Else
  1520. {
  1521. Store (0xD5, SSMI)
  1522. }
  1523.  
  1524. Notify (\_PR.CPU1, 0x80)
  1525. }
  1526.  
  1527. Method (_Q40, 0, NotSerialized)
  1528. {
  1529. If (XCIN)
  1530. {
  1531. Store (0xCC, SSMI)
  1532. Store (0xCC, DBG8)
  1533. }
  1534. }
  1535.  
  1536. Method (_Q41, 0, NotSerialized)
  1537. {
  1538. If (XCIN)
  1539. {
  1540. Store (0xCD, SSMI)
  1541. Store (0xCD, DBG8)
  1542. }
  1543. }
  1544.  
  1545. Method (_Q42, 0, NotSerialized)
  1546. {
  1547. If (XCIN)
  1548. {
  1549. Store (0xCE, SSMI)
  1550. Store (0xCE, DBG8)
  1551. }
  1552. }
  1553.  
  1554. Method (_Q43, 0, NotSerialized)
  1555. {
  1556. If (XCIN)
  1557. {
  1558. Store (0xCF, SSMI)
  1559. Store (0xCF, DBG8)
  1560. }
  1561. }
  1562.  
  1563. Method (_Q44, 0, NotSerialized)
  1564. {
  1565. If (XCIN)
  1566. {
  1567. Store (0xD0, SSMI)
  1568. Store (0xD0, DBG8)
  1569. }
  1570. }
  1571.  
  1572. Method (_Q45, 0, NotSerialized)
  1573. {
  1574. If (XCIN)
  1575. {
  1576. Store (0xD1, SSMI)
  1577. Store (0xD1, DBG8)
  1578. }
  1579. }
  1580.  
  1581. Method (_Q46, 0, NotSerialized)
  1582. {
  1583. If (XCIN)
  1584. {
  1585. Store (0xD2, SSMI)
  1586. Store (0xD2, DBG8)
  1587. }
  1588. }
  1589.  
  1590. Method (_Q47, 0, NotSerialized)
  1591. {
  1592. If (XCIN)
  1593. {
  1594. Store (0xD3, SSMI)
  1595. Store (0xD3, DBG8)
  1596. }
  1597. }
  1598.  
  1599. Device (\_SB.PCI0.BAT0)
  1600. {
  1601. Name (_HID, EisaId ("PNP0C0A"))
  1602. Name (_UID, 0x00)
  1603. Name (_PCL, Package (0x01)
  1604. {
  1605. \_SB.PCI0.SBRG.EC0
  1606. })
  1607. Name (PAK1, Package (0x0D)
  1608. {
  1609. 0x00,
  1610. 0x0C56,
  1611. 0x0C56,
  1612. 0x00,
  1613. 0x2A30,
  1614. 0x013B,
  1615. 0x9D,
  1616. 0x10,
  1617. 0x08,
  1618. "255/259",
  1619. "00001",
  1620. "LiON",
  1621. "OEM"
  1622. })
  1623. Method (_BIF, 0, NotSerialized)
  1624. {
  1625. Store ("BIf", Debug)
  1626. If (LEqual (OSFL (), 0x00))
  1627. {
  1628. Store (\_SB.PCI0.SBRG.EC0.XIF0, Index (PAK1, 0x00))
  1629. Store (\_SB.PCI0.SBRG.EC0.XIF1, Index (PAK1, 0x01))
  1630. Store (\_SB.PCI0.SBRG.EC0.XIF2, Local0)
  1631. Store (Local0, Index (PAK1, 0x02))
  1632. Store (\_SB.PCI0.SBRG.EC0.XIF3, Index (PAK1, 0x03))
  1633. Store (\_SB.PCI0.SBRG.EC0.XIF4, Index (PAK1, 0x04))
  1634. Store (Divide (Local0, 0x0A, ), Index (PAK1, 0x05))
  1635. Store (Divide (Local0, 0x14, ), Index (PAK1, 0x06))
  1636. Store (\_SB.PCI0.SBRG.EC0.XIF7, Index (PAK1, 0x07))
  1637. }
  1638. Else
  1639. {
  1640. Store (0xC9, SSMI)
  1641. Store (BIF0, Index (PAK1, 0x00))
  1642. Store (BIF1, Index (PAK1, 0x01))
  1643. Store (BIF2, Local0)
  1644. Store (Local0, Index (PAK1, 0x02))
  1645. Store (BIF3, Index (PAK1, 0x03))
  1646. Store (BIF4, Index (PAK1, 0x04))
  1647. Store (Divide (Local0, 0x0A, ), Index (PAK1, 0x05))
  1648. Store (Divide (Local0, 0x14, ), Index (PAK1, 0x06))
  1649. Store (BIF7, Index (PAK1, 0x07))
  1650. }
  1651.  
  1652. Return (PAK1)
  1653. }
  1654.  
  1655. Name (BFB0, Package (0x04)
  1656. {
  1657. 0x00,
  1658. 0x00,
  1659. 0x1034,
  1660. 0x2A30
  1661. })
  1662. Method (_BST, 0, NotSerialized)
  1663. {
  1664. Store ("BST Start", Debug)
  1665. If (LEqual (OSFL (), 0x00))
  1666. {
  1667. Store (\_SB.PCI0.SBRG.EC0.XST0, Index (BFB0, 0x00))
  1668. Store (\_SB.PCI0.SBRG.EC0.XST2, Index (BFB0, 0x02))
  1669. Store (\_SB.PCI0.SBRG.EC0.XST3, Index (BFB0, 0x03))
  1670. }
  1671. Else
  1672. {
  1673. Store (0xCA, SSMI)
  1674. Store (BST0, Index (BFB0, 0x00))
  1675. Store (BST2, Index (BFB0, 0x02))
  1676. Store (BST3, Index (BFB0, 0x03))
  1677. }
  1678.  
  1679. Store ("BST End", Debug)
  1680. Return (BFB0)
  1681. }
  1682.  
  1683. Method (_STA, 0, NotSerialized)
  1684. {
  1685. Store ("BAT_STA Start", Debug)
  1686. If (LEqual (OSFL (), 0x00))
  1687. {
  1688. If (LEqual (\_SB.PCI0.SBRG.EC0.FGEC, 0x00))
  1689. {
  1690. Store (0xC8, SSMI)
  1691. Store (BTIN, Local0)
  1692. }
  1693. Else
  1694. {
  1695. Store (\_SB.PCI0.SBRG.EC0.XTIN, Local0)
  1696. }
  1697.  
  1698. If (Local0)
  1699. {
  1700. Return (0x1F)
  1701. }
  1702. Else
  1703. {
  1704. Return (0x0F)
  1705. }
  1706. }
  1707. Else
  1708. {
  1709. Store (0xC8, SSMI)
  1710. Store (BTIN, Local0)
  1711. If (Local0)
  1712. {
  1713. Return (0x1F)
  1714. }
  1715. Else
  1716. {
  1717. Return (0x0F)
  1718. }
  1719.  
  1720. Store ("BAT_STA END", Debug)
  1721. }
  1722. }
  1723. }
  1724.  
  1725. Device (\_SB.PCI0.AC0)
  1726. {
  1727. Name (_HID, "ACPI0003")
  1728. Name (_PCL, Package (0x01)
  1729. {
  1730. \_SB.PCI0.SBRG.EC0
  1731. })
  1732. Method (_PSR, 0, NotSerialized)
  1733. {
  1734. If (LNotEqual (FAKE, 0x00))
  1735. {
  1736. Return (0x00)
  1737. }
  1738. Else
  1739. {
  1740. If (LEqual (OSFL (), 0x00))
  1741. {
  1742. Store (\_SB.PCI0.SBRG.EC0.XCIN, Local0)
  1743. }
  1744. Else
  1745. {
  1746. Store (\_SB.PCI0.SBRG.EC0.ACIN, Local0)
  1747. }
  1748.  
  1749. Return (Local0)
  1750. }
  1751. }
  1752. }
  1753.  
  1754. Scope (\_TZ)
  1755. {
  1756. ThermalZone (THRM)
  1757. {
  1758. Method (KELV, 1, NotSerialized)
  1759. {
  1760. If (LGreater (Arg0, 0x7F))
  1761. {
  1762. XOr (Arg0, 0xFF, Local0)
  1763. Add (Local0, 0x01, Local0)
  1764. Multiply (Local0, 0x0A, Local0)
  1765. Subtract (0x0AAC, Local0, Local1)
  1766. }
  1767. Else
  1768. {
  1769. Multiply (Arg0, 0x0A, Local0)
  1770. Add (Local0, 0x0AAC, Local1)
  1771. }
  1772.  
  1773. Return (Local1)
  1774. }
  1775.  
  1776. Method (_TMP, 0, NotSerialized)
  1777. {
  1778. If (LEqual (\_SB.PCI0.SBRG.EC0.FGEC, 0x00))
  1779. {
  1780. Return (KELV (0x1E))
  1781. }
  1782.  
  1783. If (THPP)
  1784. {
  1785. Return (KELV (THPP))
  1786. }
  1787. Else
  1788. {
  1789. Return (KELV (\_SB.PCI0.SBRG.EC0.XHPP))
  1790. }
  1791. }
  1792.  
  1793. Method (_CRT, 0, NotSerialized)
  1794. {
  1795. Return (KELV (0x78))
  1796. }
  1797. }
  1798. }
  1799. }
  1800.  
  1801. Scope (\_GPE)
  1802. {
  1803. Method (_L02, 0, NotSerialized)
  1804. {
  1805. Notify (\_SB.PCI0, 0x02)
  1806. }
  1807. }
  1808.  
  1809. Name (LIDS, 0x01)
  1810. Device (\_SB.PCI0.SBRG.LID)
  1811. {
  1812. Name (_HID, EisaId ("PNP0C0D"))
  1813. Name (_PRW, Package (0x02)
  1814. {
  1815. 0x02,
  1816. 0x04
  1817. })
  1818. Method (_LID, 0, NotSerialized)
  1819. {
  1820. Return (LIDS)
  1821. }
  1822. }
  1823.  
  1824. Device (\_SB.SLPB)
  1825. {
  1826. Name (_HID, EisaId ("PNP0C0E"))
  1827. Method (_STA, 0, NotSerialized)
  1828. {
  1829. Return (0x0B)
  1830. }
  1831.  
  1832. Method (SBEV, 0, NotSerialized)
  1833. {
  1834. If (SLPS)
  1835. {
  1836. Store (0x00, SLPS)
  1837. Notify (SLPB, 0x02)
  1838. }
  1839. Else
  1840. {
  1841. Store (0x01, SLPS)
  1842. Notify (SLPB, 0x80)
  1843. }
  1844. }
  1845.  
  1846. Name (_PRW, Package (0x02)
  1847. {
  1848. 0x0F,
  1849. 0x04
  1850. })
  1851. }
  1852.  
  1853. Scope (\)
  1854. {
  1855. OperationRegion (PMRG, SystemIO, 0x0800, 0x80)
  1856. Field (PMRG, ByteAcc, NoLock, Preserve)
  1857. {
  1858. Offset (0x01),
  1859. WWAK, 8,
  1860. Offset (0x04),
  1861. SCIF, 1,
  1862. Offset (0x06),
  1863. RTCS, 8,
  1864. Offset (0x10),
  1865. THRT, 8,
  1866. Offset (0x48),
  1867. SSMI, 8
  1868. }
  1869.  
  1870. Mutex (ECKP, 0x00)
  1871. Name (FGEC, 0x00)
  1872. Name (TEM1, 0x00)
  1873. Name (FAKE, 0x00)
  1874. Name (SLPS, 0x00)
  1875. Name (SLMS, 0x00)
  1876. Field (BIOS, ByteAcc, NoLock, Preserve)
  1877. {
  1878. Offset (0x50),
  1879. BIF0, 16,
  1880. BIF1, 16,
  1881. BIF2, 16,
  1882. BIF3, 16,
  1883. BIF4, 16,
  1884. BIF5, 16,
  1885. BIF6, 16,
  1886. BIF7, 16,
  1887. BIF8, 16,
  1888. BIF9, 64,
  1889. BIFA, 64,
  1890. BIFB, 64,
  1891. BIFC, 64,
  1892. BST0, 16,
  1893. BST1, 16,
  1894. BST2, 16,
  1895. BST3, 16,
  1896. BTP0, 16,
  1897. ACIN, 1,
  1898. , 1,
  1899. BTIN, 1,
  1900. Offset (0x8E),
  1901. THPP, 7,
  1902. Offset (0x8F),
  1903. Offset (0x90),
  1904. OSEC, 3,
  1905. Offset (0x91),
  1906. SLPT, 8
  1907. }
  1908. }
  1909. }
  1910.  
  1911. Device (IDEC)
  1912. {
  1913. Name (_ADR, 0x00020005)
  1914. Name (IO5T, Package (0x03)
  1915. {
  1916. Package (0x07)
  1917. {
  1918. 0x78,
  1919. 0xB4,
  1920. 0x014A,
  1921. 0x0186,
  1922. 0x0258,
  1923. 0x78,
  1924. 0x96
  1925. },
  1926.  
  1927. Package (0x07)
  1928. {
  1929. 0x06,
  1930. 0x07,
  1931. 0x1C,
  1932. 0x1C,
  1933. 0x1C,
  1934. 0x06,
  1935. 0x07
  1936. },
  1937.  
  1938. Package (0x07)
  1939. {
  1940. 0x04,
  1941. 0x09,
  1942. 0x03,
  1943. 0x09,
  1944. 0x1E,
  1945. 0x04,
  1946. 0x06
  1947. }
  1948. })
  1949. Name (IO6T, Package (0x03)
  1950. {
  1951. Package (0x07)
  1952. {
  1953. 0x78,
  1954. 0xB4,
  1955. 0x014A,
  1956. 0x0186,
  1957. 0x0258,
  1958. 0x78,
  1959. 0xB4
  1960. },
  1961.  
  1962. Package (0x07)
  1963. {
  1964. 0x09,
  1965. 0x0A,
  1966. 0x26,
  1967. 0x26,
  1968. 0x26,
  1969. 0x09,
  1970. 0x0A
  1971. },
  1972.  
  1973. Package (0x07)
  1974. {
  1975. 0x05,
  1976. 0x0C,
  1977. 0x04,
  1978. 0x0C,
  1979. 0x28,
  1980. 0x05,
  1981. 0x0C
  1982. }
  1983. })
  1984. Name (UM5T, Package (0x06)
  1985. {
  1986. 0x0B,
  1987. 0x07,
  1988. 0x05,
  1989. 0x04,
  1990. 0x02,
  1991. 0x01
  1992. })
  1993. Name (UM6T, Package (0x07)
  1994. {
  1995. 0x0F,
  1996. 0x0A,
  1997. 0x07,
  1998. 0x05,
  1999. 0x03,
  2000. 0x02,
  2001. 0x01
  2002. })
  2003. Name (PIO5, Package (0x05)
  2004. {
  2005. 0x3A,
  2006. 0x25,
  2007. 0x1F,
  2008. 0x10,
  2009. 0x0A
  2010. })
  2011. Name (PIO6, Package (0x05)
  2012. {
  2013. 0x4E,
  2014. 0x32,
  2015. 0x2A,
  2016. 0x16,
  2017. 0x0E
  2018. })
  2019. Name (CRCT, Package (0x07)
  2020. {
  2021. 0x06,
  2022. 0x04,
  2023. 0x03,
  2024. 0x01,
  2025. 0x01,
  2026. 0x01,
  2027. 0x01
  2028. })
  2029. Name (INTT, Package (0x05)
  2030. {
  2031. 0x02,
  2032. 0x02,
  2033. 0x02,
  2034. 0x04,
  2035. 0x06
  2036. })
  2037. Name (DMAT, Package (0x05)
  2038. {
  2039. 0x00,
  2040. 0x01,
  2041. 0x01,
  2042. 0x01,
  2043. 0x02
  2044. })
  2045. Name (RMFL, 0x01)
  2046. OperationRegion (CF40, PCI_Config, 0x40, 0x18)
  2047. Field (CF40, WordAcc, NoLock, Preserve)
  2048. {
  2049. , 1,
  2050. IOR0, 1,
  2051. UDM0, 1,
  2052. UM60, 1,
  2053. UCT0, 4,
  2054. CRC0, 4,
  2055. INI0, 4,
  2056. ATT0, 6,
  2057. Offset (0x03),
  2058. RCT0, 6,
  2059. Offset (0x04),
  2060. , 1,
  2061. IOR1, 1,
  2062. UDM1, 1,
  2063. UM61, 1,
  2064. UCT1, 4,
  2065. CRC1, 4,
  2066. INI1, 4,
  2067. ATT1, 6,
  2068. Offset (0x07),
  2069. RCT1, 6,
  2070. Offset (0x08),
  2071. , 1,
  2072. IOR2, 1,
  2073. UDM2, 1,
  2074. UM62, 1,
  2075. UCT2, 4,
  2076. CRC2, 4,
  2077. INI2, 4,
  2078. ATT2, 6,
  2079. Offset (0x0B),
  2080. RCT2, 6,
  2081. Offset (0x0C),
  2082. , 1,
  2083. IOR3, 1,
  2084. UDM3, 1,
  2085. UM63, 1,
  2086. UCT3, 4,
  2087. CRC3, 4,
  2088. INI3, 4,
  2089. ATT3, 6,
  2090. Offset (0x0F),
  2091. RCT3, 6,
  2092. Offset (0x10),
  2093. , 1,
  2094. CHE0, 1,
  2095. Offset (0x12),
  2096. , 1,
  2097. CHE1, 1,
  2098. Offset (0x14),
  2099. , 30,
  2100. REMP, 1,
  2101. Offset (0x18)
  2102. }
  2103.  
  2104. Name (IDEP, Buffer (0x14) {})
  2105. CreateDWordField (IDEP, 0x00, GTM0)
  2106. CreateDWordField (IDEP, 0x04, GTM1)
  2107. CreateDWordField (IDEP, 0x08, GTM2)
  2108. CreateDWordField (IDEP, 0x0C, GTM3)
  2109. CreateDWordField (IDEP, 0x10, GTM4)
  2110. Device (IDE0)
  2111. {
  2112. Name (_ADR, 0x00)
  2113. Method (_GTM, 0, NotSerialized)
  2114. {
  2115. Store (0xFFFFFFFF, Local0)
  2116. Store (0xFFFFFFFF, Local1)
  2117. Store (0xFFFFFFFF, Local2)
  2118. Store (0xFFFFFFFF, Local3)
  2119. Store (0x10, Local4)
  2120. Store (REMP, RMFL)
  2121. Store (0x00, REMP)
  2122. If (CHE0)
  2123. {
  2124. If (LNotEqual (ATT0, 0x00))
  2125. {
  2126. Add (RCT0, 0x01, Local5)
  2127. Add (ATT0, 0x01, Local6)
  2128. Add (Local5, Local6, Local5)
  2129. Multiply (UM60, 0x05, Local6)
  2130. Subtract (0x14, Local6, Local7)
  2131. Multiply (Local5, Local7, Local0)
  2132. ShiftRight (Local0, 0x01, Local0)
  2133. If (LLessEqual (Local0, 0xB4))
  2134. {
  2135. Store (Local0, Local1)
  2136. }
  2137.  
  2138. If (IOR0)
  2139. {
  2140. Or (Local4, 0x02, Local4)
  2141. }
  2142.  
  2143. If (UDM0)
  2144. {
  2145. Add (UCT0, 0x01, Local5)
  2146. Multiply (Local5, Local7, Local6)
  2147. ShiftRight (Local6, 0x01, Local1)
  2148. Or (Local4, 0x01, Local4)
  2149. }
  2150. }
  2151.  
  2152. If (LNotEqual (ATT1, 0x00))
  2153. {
  2154. Add (RCT1, 0x01, Local5)
  2155. Add (ATT1, 0x01, Local6)
  2156. Add (Local5, Local6, Local5)
  2157. Multiply (UM61, 0x05, Local6)
  2158. Subtract (0x14, Local6, Local7)
  2159. Multiply (Local5, Local7, Local2)
  2160. ShiftRight (Local2, 0x01, Local2)
  2161. If (LLessEqual (Local2, 0xB4))
  2162. {
  2163. Store (Local2, Local3)
  2164. }
  2165.  
  2166. If (IOR1)
  2167. {
  2168. Or (Local4, 0x08, Local4)
  2169. }
  2170.  
  2171. If (UDM1)
  2172. {
  2173. Add (UCT1, 0x01, Local5)
  2174. Multiply (Local5, Local7, Local6)
  2175. ShiftRight (Local6, 0x01, Local3)
  2176. Or (Local4, 0x04, Local4)
  2177. }
  2178. }
  2179. }
  2180.  
  2181. Store (RMFL, REMP)
  2182. Store (Local0, GTM0)
  2183. Store (Local1, GTM1)
  2184. Store (Local2, GTM2)
  2185. Store (Local3, GTM3)
  2186. Store (Local4, GTM4)
  2187. Return (IDEP)
  2188. }
  2189.  
  2190. Method (_STM, 3, NotSerialized)
  2191. {
  2192. Store (Arg0, IDEP)
  2193. Store (GTM0, Local0)
  2194. Store (GTM1, Local1)
  2195. Store (GTM2, Local2)
  2196. Store (GTM3, Local3)
  2197. Store (GTM4, Local4)
  2198. Store (REMP, RMFL)
  2199. Store (0x00, REMP)
  2200. If (LAnd (LNotEqual (Local1, 0xFFFFFFFF), LNotEqual (Local1, 0x00)))
  2201. {
  2202. If (And (Local4, 0x01))
  2203. {
  2204. Store (0x01, UDM0)
  2205. If (LLess (Local1, 0x14))
  2206. {
  2207. Store (0x01, UM60)
  2208. Store (0x01, UCT0)
  2209. }
  2210. Else
  2211. {
  2212. Store (0x00, UM60)
  2213. Divide (Local1, 0x0A, Local6, Local5)
  2214. Decrement (Local5)
  2215. Store (Local5, UCT0)
  2216. Store (Match (UM5T, MEQ, Local5, MTR, 0x00, 0x00), Local5)
  2217. Store (DerefOf (Index (CRCT, Local5)), CRC0)
  2218. }
  2219. }
  2220. }
  2221.  
  2222. If (LAnd (LNotEqual (Local0, 0xFFFFFFFF), LNotEqual (Local0, 0x00)))
  2223. {
  2224. If (UM60)
  2225. {
  2226. Store (Match (DerefOf (Index (IO6T, 0x00)), MEQ, Local0, MTR,
  2227. 0x00, 0x00), Local6)
  2228. Store (DerefOf (Index (DerefOf (Index (IO6T, 0x01)), Local6)),
  2229. ATT0)
  2230. Store (DerefOf (Index (DerefOf (Index (IO6T, 0x02)), Local6)),
  2231. RCT0)
  2232. }
  2233. Else
  2234. {
  2235. Store (Match (DerefOf (Index (IO5T, 0x00)), MEQ, Local0, MTR,
  2236. 0x00, 0x00), Local6)
  2237. Store (DerefOf (Index (DerefOf (Index (IO5T, 0x01)), Local6)),
  2238. ATT0)
  2239. Store (DerefOf (Index (DerefOf (Index (IO5T, 0x02)), Local6)),
  2240. RCT0)
  2241. Store (DerefOf (Index (INTT, Local6)), INI0)
  2242. }
  2243. }
  2244.  
  2245. If (LAnd (LNotEqual (Local3, 0xFFFFFFFF), LNotEqual (Local3, 0x00)))
  2246. {
  2247. If (And (Local4, 0x04))
  2248. {
  2249. Store (0x01, UDM1)
  2250. If (LLess (Local3, 0x14))
  2251. {
  2252. Store (0x01, UM61)
  2253. Store (0x01, UCT1)
  2254. }
  2255. Else
  2256. {
  2257. Store (0x00, UM61)
  2258. Divide (Local3, 0x0A, Local6, Local5)
  2259. Decrement (Local5)
  2260. Store (Local5, UCT1)
  2261. Store (Match (UM5T, MEQ, Local5, MTR, 0x00, 0x00), Local5)
  2262. Store (DerefOf (Index (CRCT, Local5)), CRC1)
  2263. }
  2264. }
  2265. }
  2266.  
  2267. If (LAnd (LNotEqual (Local2, 0xFFFFFFFF), LNotEqual (Local2, 0x00)))
  2268. {
  2269. If (UM61)
  2270. {
  2271. Store (Match (DerefOf (Index (IO6T, 0x00)), MEQ, Local2, MTR,
  2272. 0x00, 0x00), Local6)
  2273. Store (DerefOf (Index (DerefOf (Index (IO6T, 0x01)), Local6)),
  2274. ATT1)
  2275. Store (DerefOf (Index (DerefOf (Index (IO6T, 0x02)), Local6)),
  2276. RCT1)
  2277. }
  2278. Else
  2279. {
  2280. Store (Match (DerefOf (Index (IO5T, 0x00)), MEQ, Local2, MTR,
  2281. 0x00, 0x00), Local6)
  2282. Store (DerefOf (Index (DerefOf (Index (IO5T, 0x01)), Local6)),
  2283. ATT1)
  2284. Store (DerefOf (Index (DerefOf (Index (IO5T, 0x02)), Local6)),
  2285. RCT1)
  2286. Store (DerefOf (Index (INTT, Local6)), INI1)
  2287. }
  2288. }
  2289.  
  2290. Store (RMFL, REMP)
  2291. }
  2292.  
  2293. Device (DRV0)
  2294. {
  2295. Name (_ADR, 0x00)
  2296. Method (_GTF, 0, NotSerialized)
  2297. {
  2298. Store (Buffer (0x07)
  2299. {
  2300. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  2301. }, Local6)
  2302. Store (Buffer (0x07)
  2303. {
  2304. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  2305. }, Local7)
  2306. CreateByteField (Local6, 0x01, MODE)
  2307. CreateByteField (Local7, 0x01, UMOD)
  2308. Store (REMP, RMFL)
  2309. Store (0x00, REMP)
  2310. If (LNotEqual (ATT0, 0x00))
  2311. {
  2312. Add (ATT0, RCT0, Local5)
  2313. If (UM60)
  2314. {
  2315. Store (Match (PIO6, MEQ, Local5, MTR, 0x00, 0x00), MODE)
  2316. }
  2317. Else
  2318. {
  2319. Store (Match (PIO5, MEQ, Local5, MTR, 0x00, 0x00), MODE)
  2320. }
  2321.  
  2322. If (UDM0)
  2323. {
  2324. If (UM60)
  2325. {
  2326. Store (Match (UM6T, MEQ, UCT0, MTR, 0x00, 0x00), UMOD)
  2327. }
  2328. Else
  2329. {
  2330. Store (Match (UM5T, MEQ, UCT0, MTR, 0x00, 0x00), UMOD)
  2331. }
  2332.  
  2333. Or (UMOD, 0x40, UMOD)
  2334. }
  2335. Else
  2336. {
  2337. Store (DerefOf (Index (DMAT, MODE)), UMOD)
  2338. Or (UMOD, 0x20, UMOD)
  2339. }
  2340.  
  2341. Or (MODE, 0x08, MODE)
  2342. }
  2343.  
  2344. Store (RMFL, REMP)
  2345. Concatenate (Local6, Local7, Local5)
  2346. Return (Local5)
  2347. }
  2348. }
  2349.  
  2350. Device (DRV1)
  2351. {
  2352. Name (_ADR, 0x01)
  2353. Method (_GTF, 0, NotSerialized)
  2354. {
  2355. Store (Buffer (0x07)
  2356. {
  2357. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  2358. }, Local6)
  2359. Store (Buffer (0x07)
  2360. {
  2361. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  2362. }, Local7)
  2363. CreateByteField (Local6, 0x01, MODE)
  2364. CreateByteField (Local7, 0x01, UMOD)
  2365. Store (REMP, RMFL)
  2366. Store (0x00, REMP)
  2367. If (LNotEqual (ATT1, 0x00))
  2368. {
  2369. Add (ATT1, RCT1, Local5)
  2370. If (UM61)
  2371. {
  2372. Store (Match (PIO6, MEQ, Local5, MTR, 0x00, 0x00), MODE)
  2373. }
  2374. Else
  2375. {
  2376. Store (Match (PIO5, MEQ, Local5, MTR, 0x00, 0x00), MODE)
  2377. }
  2378.  
  2379. If (UDM1)
  2380. {
  2381. If (UM61)
  2382. {
  2383. Store (Match (UM6T, MEQ, UCT1, MTR, 0x00, 0x00), UMOD)
  2384. }
  2385. Else
  2386. {
  2387. Store (Match (UM5T, MEQ, UCT1, MTR, 0x00, 0x00), UMOD)
  2388. }
  2389.  
  2390. Or (UMOD, 0x40, UMOD)
  2391. }
  2392. Else
  2393. {
  2394. Store (DerefOf (Index (DMAT, MODE)), UMOD)
  2395. Or (UMOD, 0x20, UMOD)
  2396. }
  2397.  
  2398. Or (MODE, 0x08, MODE)
  2399. }
  2400.  
  2401. Store (RMFL, REMP)
  2402. Concatenate (Local6, Local7, Local5)
  2403. Return (Local5)
  2404. }
  2405. }
  2406. }
  2407.  
  2408. Device (IDE1)
  2409. {
  2410. Name (_ADR, 0x01)
  2411. Method (_GTM, 0, NotSerialized)
  2412. {
  2413. Store (0xFFFFFFFF, Local0)
  2414. Store (0xFFFFFFFF, Local1)
  2415. Store (0xFFFFFFFF, Local2)
  2416. Store (0xFFFFFFFF, Local3)
  2417. Store (0x10, Local4)
  2418. Store (REMP, RMFL)
  2419. Store (0x00, REMP)
  2420. If (CHE1)
  2421. {
  2422. If (LNotEqual (ATT2, 0x00))
  2423. {
  2424. Add (RCT2, 0x01, Local5)
  2425. Add (ATT2, 0x01, Local6)
  2426. Add (Local5, Local6, Local5)
  2427. Multiply (UM62, 0x05, Local6)
  2428. Subtract (0x14, Local6, Local7)
  2429. Multiply (Local5, Local7, Local0)
  2430. ShiftRight (Local0, 0x01, Local0)
  2431. If (LLessEqual (Local0, 0xB4))
  2432. {
  2433. Store (Local0, Local1)
  2434. }
  2435.  
  2436. If (IOR2)
  2437. {
  2438. Or (Local4, 0x02, Local4)
  2439. }
  2440.  
  2441. If (UDM2)
  2442. {
  2443. Add (UCT2, 0x01, Local5)
  2444. Multiply (Local5, Local7, Local6)
  2445. ShiftRight (Local6, 0x01, Local1)
  2446. Or (Local4, 0x01, Local4)
  2447. }
  2448. }
  2449.  
  2450. If (LNotEqual (ATT3, 0x00))
  2451. {
  2452. Add (RCT3, 0x01, Local5)
  2453. Add (ATT3, 0x01, Local6)
  2454. Add (Local5, Local6, Local5)
  2455. Multiply (UM63, 0x05, Local6)
  2456. Subtract (0x14, Local6, Local7)
  2457. Multiply (Local5, Local7, Local2)
  2458. ShiftRight (Local2, 0x01, Local2)
  2459. If (LLessEqual (Local2, 0xB4))
  2460. {
  2461. Store (Local2, Local3)
  2462. }
  2463.  
  2464. If (IOR3)
  2465. {
  2466. Or (Local4, 0x08, Local4)
  2467. }
  2468.  
  2469. If (UDM3)
  2470. {
  2471. Add (UCT3, 0x01, Local5)
  2472. Multiply (Local5, Local7, Local6)
  2473. ShiftRight (Local6, 0x01, Local3)
  2474. Or (Local4, 0x04, Local4)
  2475. }
  2476. }
  2477. }
  2478.  
  2479. Store (RMFL, REMP)
  2480. Store (Local0, GTM0)
  2481. Store (Local1, GTM1)
  2482. Store (Local2, GTM2)
  2483. Store (Local3, GTM3)
  2484. Store (Local4, GTM4)
  2485. Return (IDEP)
  2486. }
  2487.  
  2488. Method (_STM, 3, NotSerialized)
  2489. {
  2490. Store (Arg0, IDEP)
  2491. Store (GTM0, Local0)
  2492. Store (GTM1, Local1)
  2493. Store (GTM2, Local2)
  2494. Store (GTM3, Local3)
  2495. Store (GTM4, Local4)
  2496. Store (REMP, RMFL)
  2497. Store (0x00, REMP)
  2498. If (LAnd (LNotEqual (Local1, 0xFFFFFFFF), LNotEqual (Local1, 0x00)))
  2499. {
  2500. If (And (Local4, 0x01))
  2501. {
  2502. Store (0x01, UDM2)
  2503. If (LLess (Local1, 0x14))
  2504. {
  2505. Store (0x01, UM62)
  2506. Store (0x01, UCT2)
  2507. }
  2508. Else
  2509. {
  2510. Store (0x00, UM62)
  2511. Divide (Local1, 0x0A, Local6, Local5)
  2512. Decrement (Local5)
  2513. Store (Local5, UCT2)
  2514. Store (Match (UM5T, MEQ, Local5, MTR, 0x00, 0x00), Local5)
  2515. Store (DerefOf (Index (CRCT, Local5)), CRC2)
  2516. }
  2517. }
  2518. }
  2519.  
  2520. If (LAnd (LNotEqual (Local0, 0xFFFFFFFF), LNotEqual (Local0, 0x00)))
  2521. {
  2522. If (UM62)
  2523. {
  2524. Store (Match (DerefOf (Index (IO6T, 0x00)), MEQ, Local0, MTR,
  2525. 0x00, 0x00), Local6)
  2526. Store (DerefOf (Index (DerefOf (Index (IO6T, 0x01)), Local6)),
  2527. ATT2)
  2528. Store (DerefOf (Index (DerefOf (Index (IO6T, 0x02)), Local6)),
  2529. RCT2)
  2530. }
  2531. Else
  2532. {
  2533. Store (Match (DerefOf (Index (IO5T, 0x00)), MEQ, Local0, MTR,
  2534. 0x00, 0x00), Local6)
  2535. Store (DerefOf (Index (DerefOf (Index (IO5T, 0x01)), Local6)),
  2536. ATT2)
  2537. Store (DerefOf (Index (DerefOf (Index (IO5T, 0x02)), Local6)),
  2538. RCT2)
  2539. Store (DerefOf (Index (INTT, Local6)), INI2)
  2540. }
  2541. }
  2542.  
  2543. If (LAnd (LNotEqual (Local3, 0xFFFFFFFF), LNotEqual (Local3, 0x00)))
  2544. {
  2545. If (And (Local4, 0x04))
  2546. {
  2547. Store (0x01, UDM3)
  2548. If (LLess (Local3, 0x14))
  2549. {
  2550. Store (0x01, UM63)
  2551. Store (0x01, UCT3)
  2552. }
  2553. Else
  2554. {
  2555. Store (0x00, UM63)
  2556. Divide (Local3, 0x0A, Local6, Local5)
  2557. Decrement (Local5)
  2558. Store (Local5, UCT3)
  2559. Store (Match (UM5T, MEQ, Local5, MTR, 0x00, 0x00), Local5)
  2560. Store (DerefOf (Index (CRCT, Local5)), CRC3)
  2561. }
  2562. }
  2563. }
  2564.  
  2565. If (LAnd (LNotEqual (Local2, 0xFFFFFFFF), LNotEqual (Local2, 0x00)))
  2566. {
  2567. If (UM63)
  2568. {
  2569. Store (Match (DerefOf (Index (IO6T, 0x00)), MEQ, Local2, MTR,
  2570. 0x00, 0x00), Local6)
  2571. Store (DerefOf (Index (DerefOf (Index (IO6T, 0x01)), Local6)),
  2572. ATT3)
  2573. Store (DerefOf (Index (DerefOf (Index (IO6T, 0x02)), Local6)),
  2574. RCT3)
  2575. }
  2576. Else
  2577. {
  2578. Store (Match (DerefOf (Index (IO5T, 0x00)), MEQ, Local2, MTR,
  2579. 0x00, 0x00), Local6)
  2580. Store (DerefOf (Index (DerefOf (Index (IO5T, 0x01)), Local6)),
  2581. ATT3)
  2582. Store (DerefOf (Index (DerefOf (Index (IO5T, 0x02)), Local6)),
  2583. RCT3)
  2584. Store (DerefOf (Index (INTT, Local6)), INI3)
  2585. }
  2586. }
  2587.  
  2588. Store (RMFL, REMP)
  2589. }
  2590.  
  2591. Device (DRV0)
  2592. {
  2593. Name (_ADR, 0x00)
  2594. Method (_GTF, 0, NotSerialized)
  2595. {
  2596. Store (Buffer (0x07)
  2597. {
  2598. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  2599. }, Local6)
  2600. Store (Buffer (0x07)
  2601. {
  2602. 0x03, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF
  2603. }, Local7)
  2604. CreateByteField (Local6, 0x01, MODE)
  2605. CreateByteField (Local7, 0x01, UMOD)
  2606. Store (REMP, RMFL)
  2607. Store (0x00, REMP)
  2608. If (LNotEqual (ATT2, 0x00))
  2609. {
  2610. Add (ATT2, RCT2, Local5)
  2611. If (UM62)
  2612. {
  2613. Store (Match (PIO6, MEQ, Local5, MTR, 0x00, 0x00), MODE)
  2614. }
  2615. Else
  2616. {
  2617. Store (Match (PIO5, MEQ, Local5, MTR, 0x00, 0x00), MODE)
  2618. }
  2619.  
  2620. If (UDM2)
  2621. {
  2622. If (UM62)
  2623. {
  2624. Store (Match (UM6T, MEQ, UCT2, MTR, 0x00, 0x00), UMOD)
  2625. }
  2626. Else
  2627. {
  2628. Store (Match (UM5T, MEQ, UCT2, MTR, 0x00, 0x00), UMOD)
  2629. }
  2630.  
  2631. Or (UMOD, 0x40, UMOD)
  2632. }
  2633. Else
  2634. {
  2635. Store (DerefOf (Index (DMAT, MODE)), UMOD)
  2636. Or (UMOD, 0x20, UMOD)
  2637. }
  2638.  
  2639. Or (MODE, 0x08, MODE)
  2640. }
  2641.  
  2642. Store (RMFL, REMP)
  2643. Concatenate (Local6, Local7, Local5)
  2644. Return (Local5)
  2645. }
  2646. }
  2647.  
  2648. Device (DRV1)
  2649. {
  2650. Name (_ADR, 0x01)
  2651. Method (_GTF, 0, NotSerialized)
  2652. {
  2653. Store (Buffer (0x07)
  2654. {
  2655. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  2656. }, Local6)
  2657. Store (Buffer (0x07)
  2658. {
  2659. 0x03, 0x00, 0x00, 0x00, 0x00, 0xB0, 0xEF
  2660. }, Local7)
  2661. CreateByteField (Local6, 0x01, MODE)
  2662. CreateByteField (Local7, 0x01, UMOD)
  2663. Store (REMP, RMFL)
  2664. Store (0x00, REMP)
  2665. If (LNotEqual (ATT3, 0x00))
  2666. {
  2667. Add (ATT3, RCT3, Local5)
  2668. If (UM63)
  2669. {
  2670. Store (Match (PIO6, MEQ, Local5, MTR, 0x00, 0x00), MODE)
  2671. }
  2672. Else
  2673. {
  2674. Store (Match (PIO5, MEQ, Local5, MTR, 0x00, 0x00), MODE)
  2675. }
  2676.  
  2677. If (UDM3)
  2678. {
  2679. If (UM63)
  2680. {
  2681. Store (Match (UM6T, MEQ, UCT3, MTR, 0x00, 0x00), UMOD)
  2682. }
  2683. Else
  2684. {
  2685. Store (Match (UM5T, MEQ, UCT3, MTR, 0x00, 0x00), UMOD)
  2686. }
  2687.  
  2688. Or (UMOD, 0x40, UMOD)
  2689. }
  2690. Else
  2691. {
  2692. Store (DerefOf (Index (DMAT, MODE)), UMOD)
  2693. Or (UMOD, 0x20, UMOD)
  2694. }
  2695.  
  2696. Or (MODE, 0x08, MODE)
  2697. }
  2698.  
  2699. Store (RMFL, REMP)
  2700. Concatenate (Local6, Local7, Local5)
  2701. Return (Local5)
  2702. }
  2703. }
  2704. }
  2705. }
  2706.  
  2707. Device (EUSB)
  2708. {
  2709. Name (_ADR, 0x00030003)
  2710. }
  2711.  
  2712. Device (USB)
  2713. {
  2714. Name (_ADR, 0x00030000)
  2715. }
  2716.  
  2717. Device (USB2)
  2718. {
  2719. Name (_ADR, 0x00030001)
  2720. }
  2721.  
  2722. Device (USB3)
  2723. {
  2724. Name (_ADR, 0x00030002)
  2725. }
  2726.  
  2727. Device (MAC)
  2728. {
  2729. Name (_ADR, 0x00040000)
  2730. Method (_PRW, 0, NotSerialized)
  2731. {
  2732. Return (GPRW (0x0C, 0x04))
  2733. }
  2734. }
  2735.  
  2736. Device (AC97)
  2737. {
  2738. Name (_ADR, 0x00020007)
  2739. Method (_PRW, 0, NotSerialized)
  2740. {
  2741. Return (GPRW (0x0A, 0x04))
  2742. }
  2743. }
  2744.  
  2745. Device (MC97)
  2746. {
  2747. Name (_ADR, 0x00020006)
  2748. Method (_PRW, 0, NotSerialized)
  2749. {
  2750. Return (GPRW (0x05, 0x04))
  2751. }
  2752. }
  2753. }
  2754.  
  2755. Scope (\_GPE)
  2756. {
  2757. Method (_L0C, 0, NotSerialized)
  2758. {
  2759. Notify (\_SB.PCI0.MAC, 0x02)
  2760. Notify (\_SB.PWRB, 0x02)
  2761. }
  2762.  
  2763. Method (_L0A, 0, NotSerialized)
  2764. {
  2765. Notify (\_SB.PCI0.AC97, 0x02)
  2766. Notify (\_SB.PWRB, 0x02)
  2767. }
  2768.  
  2769. Method (_L05, 0, NotSerialized)
  2770. {
  2771. Notify (\_SB.PCI0.MC97, 0x02)
  2772. Notify (\_SB.PWRB, 0x02)
  2773. }
  2774. }
  2775.  
  2776. Device (PWRB)
  2777. {
  2778. Name (_HID, EisaId ("PNP0C0C"))
  2779. Name (_UID, 0xAA)
  2780. Name (_STA, 0x0B)
  2781. }
  2782. }
  2783.  
  2784. Scope (\_SB)
  2785. {
  2786. OperationRegion (\_SB.PCI0.SBRG.PIX0, PCI_Config, 0x41, 0x04)
  2787. OperationRegion (\_SB.PCI0.SBRG.PIX1, PCI_Config, 0x60, 0x04)
  2788. Field (\_SB.PCI0.SBRG.PIX0, ByteAcc, NoLock, Preserve)
  2789. {
  2790. PIRA, 8,
  2791. PIRB, 8,
  2792. PIRC, 8,
  2793. PIRD, 8
  2794. }
  2795.  
  2796. Field (\_SB.PCI0.SBRG.PIX1, ByteAcc, NoLock, Preserve)
  2797. {
  2798. PIRE, 8,
  2799. PIRF, 8,
  2800. PIRG, 8,
  2801. PIRH, 8
  2802. }
  2803.  
  2804. Name (BUFA, ResourceTemplate ()
  2805. {
  2806. IRQ (Level, ActiveLow, Shared, _Y0A)
  2807. {15}
  2808. })
  2809. Device (LNKA)
  2810. {
  2811. Name (_HID, EisaId ("PNP0C0F"))
  2812. Name (_UID, 0x01)
  2813. Method (_STA, 0, NotSerialized)
  2814. {
  2815. And (PIRA, 0x80, Local0)
  2816. If (Local0)
  2817. {
  2818. Return (0x09)
  2819. }
  2820. Else
  2821. {
  2822. Return (0x0B)
  2823. }
  2824. }
  2825.  
  2826. Method (_PRS, 0, NotSerialized)
  2827. {
  2828. Return (PRSA)
  2829. }
  2830.  
  2831. Method (_DIS, 0, NotSerialized)
  2832. {
  2833. Or (PIRA, 0x80, PIRA)
  2834. }
  2835.  
  2836. Method (_CRS, 0, NotSerialized)
  2837. {
  2838. CreateWordField (BUFA, \_SB._Y0A._INT, IRA0)
  2839. And (PIRA, 0x0F, Local0)
  2840. Store (One, Local1)
  2841. ShiftLeft (Local1, Local0, IRA0)
  2842. Return (BUFA)
  2843. }
  2844.  
  2845. Method (_SRS, 1, NotSerialized)
  2846. {
  2847. CreateWordField (Arg0, 0x01, IRA)
  2848. FindSetRightBit (IRA, Local0)
  2849. Decrement (Local0)
  2850. Store (Local0, PIRA)
  2851. }
  2852. }
  2853.  
  2854. Device (LNKB)
  2855. {
  2856. Name (_HID, EisaId ("PNP0C0F"))
  2857. Name (_UID, 0x02)
  2858. Method (_STA, 0, NotSerialized)
  2859. {
  2860. And (PIRB, 0x80, Local0)
  2861. If (Local0)
  2862. {
  2863. Return (0x09)
  2864. }
  2865. Else
  2866. {
  2867. Return (0x0B)
  2868. }
  2869. }
  2870.  
  2871. Method (_PRS, 0, NotSerialized)
  2872. {
  2873. Return (PRSB)
  2874. }
  2875.  
  2876. Method (_DIS, 0, NotSerialized)
  2877. {
  2878. Or (PIRB, 0x80, PIRB)
  2879. }
  2880.  
  2881. Method (_CRS, 0, NotSerialized)
  2882. {
  2883. CreateWordField (BUFA, \_SB._Y0A._INT, IRA0)
  2884. And (PIRB, 0x0F, Local0)
  2885. Store (One, Local1)
  2886. ShiftLeft (Local1, Local0, IRA0)
  2887. Return (BUFA)
  2888. }
  2889.  
  2890. Method (_SRS, 1, NotSerialized)
  2891. {
  2892. CreateWordField (Arg0, 0x01, IRA)
  2893. FindSetRightBit (IRA, Local0)
  2894. Decrement (Local0)
  2895. Store (Local0, PIRB)
  2896. }
  2897. }
  2898.  
  2899. Device (LNKC)
  2900. {
  2901. Name (_HID, EisaId ("PNP0C0F"))
  2902. Name (_UID, 0x03)
  2903. Method (_STA, 0, NotSerialized)
  2904. {
  2905. And (PIRC, 0x80, Local0)
  2906. If (Local0)
  2907. {
  2908. Return (0x09)
  2909. }
  2910. Else
  2911. {
  2912. Return (0x0B)
  2913. }
  2914. }
  2915.  
  2916. Method (_PRS, 0, NotSerialized)
  2917. {
  2918. Return (PRSC)
  2919. }
  2920.  
  2921. Method (_DIS, 0, NotSerialized)
  2922. {
  2923. Or (PIRC, 0x80, PIRC)
  2924. }
  2925.  
  2926. Method (_CRS, 0, NotSerialized)
  2927. {
  2928. CreateWordField (BUFA, \_SB._Y0A._INT, IRA0)
  2929. And (PIRC, 0x0F, Local0)
  2930. Store (One, Local1)
  2931. ShiftLeft (Local1, Local0, IRA0)
  2932. Return (BUFA)
  2933. }
  2934.  
  2935. Method (_SRS, 1, NotSerialized)
  2936. {
  2937. CreateWordField (Arg0, 0x01, IRA)
  2938. FindSetRightBit (IRA, Local0)
  2939. Decrement (Local0)
  2940. Store (Local0, PIRC)
  2941. }
  2942. }
  2943.  
  2944. Device (LNKD)
  2945. {
  2946. Name (_HID, EisaId ("PNP0C0F"))
  2947. Name (_UID, 0x04)
  2948. Method (_STA, 0, NotSerialized)
  2949. {
  2950. And (PIRD, 0x80, Local0)
  2951. If (Local0)
  2952. {
  2953. Return (0x09)
  2954. }
  2955. Else
  2956. {
  2957. Return (0x0B)
  2958. }
  2959. }
  2960.  
  2961. Method (_PRS, 0, NotSerialized)
  2962. {
  2963. Return (PRSD)
  2964. }
  2965.  
  2966. Method (_DIS, 0, NotSerialized)
  2967. {
  2968. Or (PIRD, 0x80, PIRD)
  2969. }
  2970.  
  2971. Method (_CRS, 0, NotSerialized)
  2972. {
  2973. CreateWordField (BUFA, \_SB._Y0A._INT, IRA0)
  2974. And (PIRD, 0x0F, Local0)
  2975. Store (One, Local1)
  2976. ShiftLeft (Local1, Local0, IRA0)
  2977. Return (BUFA)
  2978. }
  2979.  
  2980. Method (_SRS, 1, NotSerialized)
  2981. {
  2982. CreateWordField (Arg0, 0x01, IRA)
  2983. FindSetRightBit (IRA, Local0)
  2984. Decrement (Local0)
  2985. Store (Local0, PIRD)
  2986. }
  2987. }
  2988.  
  2989. Device (LNKE)
  2990. {
  2991. Name (_HID, EisaId ("PNP0C0F"))
  2992. Name (_UID, 0x05)
  2993. Method (_STA, 0, NotSerialized)
  2994. {
  2995. And (PIRE, 0x80, Local0)
  2996. If (Local0)
  2997. {
  2998. Return (0x09)
  2999. }
  3000. Else
  3001. {
  3002. Return (0x0B)
  3003. }
  3004. }
  3005.  
  3006. Method (_PRS, 0, NotSerialized)
  3007. {
  3008. Return (PRSE)
  3009. }
  3010.  
  3011. Method (_DIS, 0, NotSerialized)
  3012. {
  3013. Or (PIRE, 0x80, PIRE)
  3014. }
  3015.  
  3016. Method (_CRS, 0, NotSerialized)
  3017. {
  3018. CreateWordField (BUFA, \_SB._Y0A._INT, IRA0)
  3019. And (PIRE, 0x0F, Local0)
  3020. Store (One, Local1)
  3021. ShiftLeft (Local1, Local0, IRA0)
  3022. Return (BUFA)
  3023. }
  3024.  
  3025. Method (_SRS, 1, NotSerialized)
  3026. {
  3027. CreateWordField (Arg0, 0x01, IRA)
  3028. FindSetRightBit (IRA, Local0)
  3029. Decrement (Local0)
  3030. Store (Local0, PIRE)
  3031. }
  3032. }
  3033.  
  3034. Device (LNKF)
  3035. {
  3036. Name (_HID, EisaId ("PNP0C0F"))
  3037. Name (_UID, 0x06)
  3038. Method (_STA, 0, NotSerialized)
  3039. {
  3040. And (PIRF, 0x80, Local0)
  3041. If (Local0)
  3042. {
  3043. Return (0x09)
  3044. }
  3045. Else
  3046. {
  3047. Return (0x0B)
  3048. }
  3049. }
  3050.  
  3051. Method (_PRS, 0, NotSerialized)
  3052. {
  3053. Return (PRSF)
  3054. }
  3055.  
  3056. Method (_DIS, 0, NotSerialized)
  3057. {
  3058. Or (PIRF, 0x80, PIRF)
  3059. }
  3060.  
  3061. Method (_CRS, 0, NotSerialized)
  3062. {
  3063. CreateWordField (BUFA, \_SB._Y0A._INT, IRA0)
  3064. And (PIRF, 0x0F, Local0)
  3065. Store (One, Local1)
  3066. ShiftLeft (Local1, Local0, IRA0)
  3067. Return (BUFA)
  3068. }
  3069.  
  3070. Method (_SRS, 1, NotSerialized)
  3071. {
  3072. CreateWordField (Arg0, 0x01, IRA)
  3073. FindSetRightBit (IRA, Local0)
  3074. Decrement (Local0)
  3075. Store (Local0, PIRF)
  3076. }
  3077. }
  3078.  
  3079. Device (LNKG)
  3080. {
  3081. Name (_HID, EisaId ("PNP0C0F"))
  3082. Name (_UID, 0x07)
  3083. Method (_STA, 0, NotSerialized)
  3084. {
  3085. And (PIRG, 0x80, Local0)
  3086. If (Local0)
  3087. {
  3088. Return (0x09)
  3089. }
  3090. Else
  3091. {
  3092. Return (0x0B)
  3093. }
  3094. }
  3095.  
  3096. Method (_PRS, 0, NotSerialized)
  3097. {
  3098. Return (PRSG)
  3099. }
  3100.  
  3101. Method (_DIS, 0, NotSerialized)
  3102. {
  3103. Or (PIRG, 0x80, PIRG)
  3104. }
  3105.  
  3106. Method (_CRS, 0, NotSerialized)
  3107. {
  3108. CreateWordField (BUFA, \_SB._Y0A._INT, IRA0)
  3109. And (PIRG, 0x0F, Local0)
  3110. Store (One, Local1)
  3111. ShiftLeft (Local1, Local0, IRA0)
  3112. Return (BUFA)
  3113. }
  3114.  
  3115. Method (_SRS, 1, NotSerialized)
  3116. {
  3117. CreateWordField (Arg0, 0x01, IRA)
  3118. FindSetRightBit (IRA, Local0)
  3119. Decrement (Local0)
  3120. Store (Local0, PIRG)
  3121. }
  3122. }
  3123.  
  3124. Device (LNKH)
  3125. {
  3126. Name (_HID, EisaId ("PNP0C0F"))
  3127. Name (_UID, 0x08)
  3128. Method (_STA, 0, NotSerialized)
  3129. {
  3130. And (PIRH, 0x80, Local0)
  3131. If (Local0)
  3132. {
  3133. Return (0x09)
  3134. }
  3135. Else
  3136. {
  3137. Return (0x0B)
  3138. }
  3139. }
  3140.  
  3141. Method (_PRS, 0, NotSerialized)
  3142. {
  3143. Return (PRSH)
  3144. }
  3145.  
  3146. Method (_DIS, 0, NotSerialized)
  3147. {
  3148. Or (PIRH, 0x80, PIRH)
  3149. }
  3150.  
  3151. Method (_CRS, 0, NotSerialized)
  3152. {
  3153. CreateWordField (BUFA, \_SB._Y0A._INT, IRA0)
  3154. And (PIRH, 0x0F, Local0)
  3155. Store (One, Local1)
  3156. ShiftLeft (Local1, Local0, IRA0)
  3157. Return (BUFA)
  3158. }
  3159.  
  3160. Method (_SRS, 1, NotSerialized)
  3161. {
  3162. CreateWordField (Arg0, 0x01, IRA)
  3163. FindSetRightBit (IRA, Local0)
  3164. Decrement (Local0)
  3165. Store (Local0, PIRH)
  3166. }
  3167. }
  3168. }
  3169.  
  3170. Scope (\_SB)
  3171. {
  3172. Scope (PCI0)
  3173. {
  3174. Name (CRS, ResourceTemplate ()
  3175. {
  3176. WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
  3177. 0x0000, // Granularity
  3178. 0x0000, // Range Minimum
  3179. 0x00FF, // Range Maximum
  3180. 0x0000, // Translation Offset
  3181. 0x0100, // Length
  3182. ,, )
  3183. IO (Decode16,
  3184. 0x0CF8, // Range Minimum
  3185. 0x0CF8, // Range Maximum
  3186. 0x01, // Alignment
  3187. 0x08, // Length
  3188. )
  3189. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  3190. 0x0000, // Granularity
  3191. 0x0000, // Range Minimum
  3192. 0x0CF7, // Range Maximum
  3193. 0x0000, // Translation Offset
  3194. 0x0CF8, // Length
  3195. ,, , TypeStatic)
  3196. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  3197. 0x0000, // Granularity
  3198. 0x0D00, // Range Minimum
  3199. 0xFFFF, // Range Maximum
  3200. 0x0000, // Translation Offset
  3201. 0xF300, // Length
  3202. ,, , TypeStatic)
  3203. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  3204. 0x00000000, // Granularity
  3205. 0x000A0000, // Range Minimum
  3206. 0x000BFFFF, // Range Maximum
  3207. 0x00000000, // Translation Offset
  3208. 0x00020000, // Length
  3209. ,, , AddressRangeMemory, TypeStatic)
  3210. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  3211. 0x00000000, // Granularity
  3212. 0x000D0000, // Range Minimum
  3213. 0x000D3FFF, // Range Maximum
  3214. 0x00000000, // Translation Offset
  3215. 0x00004000, // Length
  3216. ,, , AddressRangeMemory, TypeStatic)
  3217. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  3218. 0x00000000, // Granularity
  3219. 0x000D4000, // Range Minimum
  3220. 0x000D7FFF, // Range Maximum
  3221. 0x00000000, // Translation Offset
  3222. 0x00004000, // Length
  3223. ,, , AddressRangeMemory, TypeStatic)
  3224. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  3225. 0x00000000, // Granularity
  3226. 0x000DE000, // Range Minimum
  3227. 0x000DFFFF, // Range Maximum
  3228. 0x00000000, // Translation Offset
  3229. 0x00002000, // Length
  3230. ,, , AddressRangeMemory, TypeStatic)
  3231. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  3232. 0x00000000, // Granularity
  3233. 0x00000000, // Range Minimum
  3234. 0x00000000, // Range Maximum
  3235. 0x00000000, // Translation Offset
  3236. 0x00000000, // Length
  3237. ,, _Y0B, AddressRangeMemory, TypeStatic)
  3238. })
  3239. CreateDWordField (CRS, \_SB.PCI0._Y0B._MIN, MIN6)
  3240. CreateDWordField (CRS, \_SB.PCI0._Y0B._MAX, MAX6)
  3241. CreateDWordField (CRS, \_SB.PCI0._Y0B._LEN, LEN6)
  3242. Method (_CRS, 0, NotSerialized)
  3243. {
  3244. Store (MG2B, MIN6)
  3245. Store (MG2L, LEN6)
  3246. Store (MG2L, Local0)
  3247. Add (MIN6, Decrement (Local0), MAX6)
  3248. Return (CRS)
  3249. }
  3250.  
  3251. Method (_S3D, 0, NotSerialized)
  3252. {
  3253. If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02)))
  3254. {
  3255. Return (0x02)
  3256. }
  3257. Else
  3258. {
  3259. Return (0x03)
  3260. }
  3261. }
  3262.  
  3263. Scope (EUSB)
  3264. {
  3265. Method (_S3D, 0, NotSerialized)
  3266. {
  3267. If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02)))
  3268. {
  3269. Return (0x02)
  3270. }
  3271. Else
  3272. {
  3273. Return (0x03)
  3274. }
  3275. }
  3276. }
  3277.  
  3278. Scope (USB)
  3279. {
  3280. Method (_S3D, 0, NotSerialized)
  3281. {
  3282. If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02)))
  3283. {
  3284. Return (0x02)
  3285. }
  3286. Else
  3287. {
  3288. Return (0x03)
  3289. }
  3290. }
  3291. }
  3292.  
  3293. Scope (USB2)
  3294. {
  3295. Method (_S3D, 0, NotSerialized)
  3296. {
  3297. If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02)))
  3298. {
  3299. Return (0x02)
  3300. }
  3301. Else
  3302. {
  3303. Return (0x03)
  3304. }
  3305. }
  3306. }
  3307.  
  3308. Scope (USB3)
  3309. {
  3310. Method (_S3D, 0, NotSerialized)
  3311. {
  3312. If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02)))
  3313. {
  3314. Return (0x02)
  3315. }
  3316. Else
  3317. {
  3318. Return (0x03)
  3319. }
  3320. }
  3321. }
  3322. }
  3323. }
  3324.  
  3325. Method (_PTS, 1, NotSerialized)
  3326. {
  3327. If (LGreaterEqual (Arg0, 0x03)) {}
  3328. Store (Arg0, DBG8)
  3329. PTS (Arg0)
  3330. Or (P42, 0x40, P42)
  3331. Store (OSFL (), P49)
  3332. Store (0x00, Index (WAKP, 0x00))
  3333. Store (0x00, Index (WAKP, 0x01))
  3334. }
  3335.  
  3336. Method (_WAK, 1, NotSerialized)
  3337. {
  3338. ShiftLeft (Arg0, 0x04, DBG8)
  3339. If (LEqual (Arg0, 0x01))
  3340. {
  3341. And (RTCE, RTC1, RTCE)
  3342. If (RTCE)
  3343. {
  3344. Store (0xC1, DBG8)
  3345. }
  3346. Else
  3347. {
  3348. Store (0xC8, DBG8)
  3349. Notify (\_SB.PWRB, 0x02)
  3350. Sleep (0x0294)
  3351. }
  3352. }
  3353.  
  3354. If (LEqual (Arg0, 0x03))
  3355. {
  3356. If (RTC3)
  3357. {
  3358. Store (0xC3, DBG8)
  3359. }
  3360. Else
  3361. {
  3362. Notify (\_SB.PWRB, 0x02)
  3363. Sleep (0x0294)
  3364. }
  3365. }
  3366.  
  3367. If (LEqual (Arg0, 0x04))
  3368. {
  3369. Store (0xC8, SSMI)
  3370. }
  3371.  
  3372. Or (Arg0, 0xA0, Local0)
  3373. Store (Local0, P48)
  3374. WAK (Arg0)
  3375. If (DerefOf (Index (WAKP, 0x00)))
  3376. {
  3377. Store (0x00, Index (WAKP, 0x01))
  3378. }
  3379. Else
  3380. {
  3381. Store (Arg0, Index (WAKP, 0x01))
  3382. }
  3383.  
  3384. Return (WAKP)
  3385. }
  3386.  
  3387. OperationRegion (PR48, SystemIO, 0x0848, 0x01)
  3388. Field (PR48, ByteAcc, NoLock, Preserve)
  3389. {
  3390. P48, 8
  3391. }
  3392.  
  3393. OperationRegion (S3WK, SystemIO, 0x0860, 0x02)
  3394. Field (S3WK, ByteAcc, NoLock, Preserve)
  3395. {
  3396. , 14,
  3397. RTC3, 1
  3398. }
  3399.  
  3400. OperationRegion (PR42, SystemIO, 0x0842, 0x01)
  3401. Field (PR42, ByteAcc, NoLock, Preserve)
  3402. {
  3403. P42, 8
  3404. }
  3405.  
  3406. OperationRegion (PR49, SystemIO, 0x0849, 0x01)
  3407. Field (PR49, ByteAcc, NoLock, Preserve)
  3408. {
  3409. P49, 8
  3410. }
  3411.  
  3412. OperationRegion (S1WK, SystemIO, 0x0800, 0x02)
  3413. Field (S1WK, ByteAcc, NoLock, Preserve)
  3414. {
  3415. , 10,
  3416. RTC1, 1
  3417. }
  3418.  
  3419. OperationRegion (PP49, SystemIO, 0x0849, 0x01)
  3420. Field (PP49, ByteAcc, NoLock, Preserve)
  3421. {
  3422. , 4,
  3423. RTCE, 1
  3424. }
  3425.  
  3426. Name (\_S0, Package (0x04)
  3427. {
  3428. 0x00,
  3429. 0x00,
  3430. 0x00,
  3431. 0x00
  3432. })
  3433. If (SS1)
  3434. {
  3435. Name (\_S1, Package (0x04)
  3436. {
  3437. 0x01,
  3438. 0x00,
  3439. 0x00,
  3440. 0x00
  3441. })
  3442. }
  3443.  
  3444. If (SS3)
  3445. {
  3446. Name (\_S3, Package (0x04)
  3447. {
  3448. 0x03,
  3449. 0x00,
  3450. 0x00,
  3451. 0x00
  3452. })
  3453. }
  3454.  
  3455. If (SS4)
  3456. {
  3457. Name (\_S4, Package (0x04)
  3458. {
  3459. 0x04,
  3460. 0x00,
  3461. 0x00,
  3462. 0x00
  3463. })
  3464. }
  3465.  
  3466. Name (\_S5, Package (0x04)
  3467. {
  3468. 0x05,
  3469. 0x00,
  3470. 0x00,
  3471. 0x00
  3472. })
  3473. Method (PTS, 1, NotSerialized)
  3474. {
  3475. If (Arg0) {}
  3476. }
  3477.  
  3478. Method (WAK, 1, NotSerialized)
  3479. {
  3480. }
  3481. }
  3482.  
  3483.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement