Advertisement
mauser_270

Untitled

Sep 12th, 2016
1,379
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 MB | None | 0 0
  1. /*
  2. * Intel ACPI Component Architecture
  3. * AML/ASL+ Disassembler version 20160108-64
  4. * Copyright (c) 2000 - 2016 Intel Corporation
  5. *
  6. * Disassembly of APIC.dat, Mon Sep 12 10:24:46 2016
  7. *
  8. * ACPI Data Table [APIC]
  9. *
  10. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  11. */
  12.  
  13. [000h 0000 4] Signature : "APIC" [Multiple APIC Description Table (MADT)]
  14. [004h 0004 4] Table Length : 00000084
  15. [008h 0008 1] Revision : 03
  16. [009h 0009 1] Checksum : D4
  17. [00Ah 0010 6] Oem ID : "ALASKA"
  18. [010h 0016 8] Oem Table ID : "A M I "
  19. [018h 0024 4] Oem Revision : 01072009
  20. [01Ch 0028 4] Asl Compiler ID : "AMI "
  21. [020h 0032 4] Asl Compiler Revision : 00010013
  22.  
  23. [024h 0036 4] Local Apic Address : FEE00000
  24. [028h 0040 4] Flags (decoded below) : 00000001
  25. PC-AT Compatibility : 1
  26.  
  27. [02Ch 0044 1] Subtable Type : 00 [Processor Local APIC]
  28. [02Dh 0045 1] Length : 08
  29. [02Eh 0046 1] Processor ID : 01
  30. [02Fh 0047 1] Local Apic ID : 00
  31. [030h 0048 4] Flags (decoded below) : 00000001
  32. Processor Enabled : 1
  33.  
  34. [034h 0052 1] Subtable Type : 04 [Local APIC NMI]
  35. [035h 0053 1] Length : 06
  36. [036h 0054 1] Processor ID : 01
  37. [037h 0055 2] Flags (decoded below) : 0005
  38. Polarity : 1
  39. Trigger Mode : 1
  40. [039h 0057 1] Interrupt Input LINT : 01
  41.  
  42. [03Ah 0058 1] Subtable Type : 00 [Processor Local APIC]
  43. [03Bh 0059 1] Length : 08
  44. [03Ch 0060 1] Processor ID : 02
  45. [03Dh 0061 1] Local Apic ID : 02
  46. [03Eh 0062 4] Flags (decoded below) : 00000001
  47. Processor Enabled : 1
  48.  
  49. [042h 0066 1] Subtable Type : 04 [Local APIC NMI]
  50. [043h 0067 1] Length : 06
  51. [044h 0068 1] Processor ID : 02
  52. [045h 0069 2] Flags (decoded below) : 0005
  53. Polarity : 1
  54. Trigger Mode : 1
  55. [047h 0071 1] Interrupt Input LINT : 01
  56.  
  57. [048h 0072 1] Subtable Type : 00 [Processor Local APIC]
  58. [049h 0073 1] Length : 08
  59. [04Ah 0074 1] Processor ID : 03
  60. [04Bh 0075 1] Local Apic ID : 04
  61. [04Ch 0076 4] Flags (decoded below) : 00000001
  62. Processor Enabled : 1
  63.  
  64. [050h 0080 1] Subtable Type : 04 [Local APIC NMI]
  65. [051h 0081 1] Length : 06
  66. [052h 0082 1] Processor ID : 03
  67. [053h 0083 2] Flags (decoded below) : 0005
  68. Polarity : 1
  69. Trigger Mode : 1
  70. [055h 0085 1] Interrupt Input LINT : 01
  71.  
  72. [056h 0086 1] Subtable Type : 00 [Processor Local APIC]
  73. [057h 0087 1] Length : 08
  74. [058h 0088 1] Processor ID : 04
  75. [059h 0089 1] Local Apic ID : 06
  76. [05Ah 0090 4] Flags (decoded below) : 00000001
  77. Processor Enabled : 1
  78.  
  79. [05Eh 0094 1] Subtable Type : 04 [Local APIC NMI]
  80. [05Fh 0095 1] Length : 06
  81. [060h 0096 1] Processor ID : 04
  82. [061h 0097 2] Flags (decoded below) : 0005
  83. Polarity : 1
  84. Trigger Mode : 1
  85. [063h 0099 1] Interrupt Input LINT : 01
  86.  
  87. [064h 0100 1] Subtable Type : 01 [I/O APIC]
  88. [065h 0101 1] Length : 0C
  89. [066h 0102 1] I/O Apic ID : 01
  90. [067h 0103 1] Reserved : 00
  91. [068h 0104 4] Address : FEC00000
  92. [06Ch 0108 4] Interrupt : 00000000
  93.  
  94. [070h 0112 1] Subtable Type : 02 [Interrupt Source Override]
  95. [071h 0113 1] Length : 0A
  96. [072h 0114 1] Bus : 00
  97. [073h 0115 1] Source : 00
  98. [074h 0116 4] Interrupt : 00000002
  99. [078h 0120 2] Flags (decoded below) : 0000
  100. Polarity : 0
  101. Trigger Mode : 0
  102.  
  103. [07Ah 0122 1] Subtable Type : 02 [Interrupt Source Override]
  104. [07Bh 0123 1] Length : 0A
  105. [07Ch 0124 1] Bus : 00
  106. [07Dh 0125 1] Source : 09
  107. [07Eh 0126 4] Interrupt : 00000009
  108. [082h 0130 2] Flags (decoded below) : 000D
  109. Polarity : 1
  110. Trigger Mode : 3
  111.  
  112. Raw Table Data: Length 132 (0x84)
  113.  
  114. 0000: 41 50 49 43 84 00 00 00 03 D4 41 4C 41 53 4B 41 // APIC......ALASKA
  115. 0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 20 // A M I ... ..AMI
  116. 0020: 13 00 01 00 00 00 E0 FE 01 00 00 00 00 08 01 00 // ................
  117. 0030: 01 00 00 00 04 06 01 05 00 01 00 08 02 02 01 00 // ................
  118. 0040: 00 00 04 06 02 05 00 01 00 08 03 04 01 00 00 00 // ................
  119. 0050: 04 06 03 05 00 01 00 08 04 06 01 00 00 00 04 06 // ................
  120. 0060: 04 05 00 01 01 0C 01 00 00 00 C0 FE 00 00 00 00 // ................
  121. 0070: 02 0A 00 00 02 00 00 00 00 00 02 0A 00 09 09 00 // ................
  122. 0080: 00 00 0D 00 // ....
  123. /*
  124. * Intel ACPI Component Architecture
  125. * AML/ASL+ Disassembler version 20160108-64
  126. * Copyright (c) 2000 - 2016 Intel Corporation
  127. *
  128. * Disassembly of BCFG.dat, Mon Sep 12 10:24:46 2016
  129. *
  130. * ACPI Data Table [BCFG]
  131. *
  132. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  133. */
  134.  
  135. [000h 0000 4] Signature : "BCFG"
  136. [004h 0004 4] Table Length : 00000139
  137. [008h 0008 1] Revision : 01
  138. [009h 0009 1] Checksum : A8
  139. [00Ah 0010 6] Oem ID : "INTEL "
  140. [010h 0016 8] Oem Table ID : "BATTCONF"
  141. [018h 0024 4] Oem Revision : 00000001
  142. [01Ch 0028 4] Asl Compiler ID : "ACPI"
  143. [020h 0032 4] Asl Compiler Revision : 00000000
  144.  
  145.  
  146. **** Unknown ACPI table signature [BCFG]
  147.  
  148.  
  149. Raw Table Data: Length 313 (0x139)
  150.  
  151. 0000: 42 43 46 47 39 01 00 00 01 A8 49 4E 54 45 4C 20 // BCFG9.....INTEL
  152. 0010: 42 41 54 54 43 4F 4E 46 01 00 00 00 41 43 50 49 // BATTCONF....ACPI
  153. 0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  154. 0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  155. 0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  156. 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  157. 0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  158. 0070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  159. 0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  160. 0090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  161. 00A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  162. 00B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  163. 00C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  164. 00D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  165. 00E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  166. 00F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  167. 0100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  168. 0110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  169. 0120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  170. 0130: 00 00 00 00 00 00 00 00 00 // .........
  171. /*
  172. * Intel ACPI Component Architecture
  173. * AML/ASL+ Disassembler version 20160108-64
  174. * Copyright (c) 2000 - 2016 Intel Corporation
  175. *
  176. * Disassembly of BGRT.dat, Mon Sep 12 10:24:46 2016
  177. *
  178. * ACPI Data Table [BGRT]
  179. *
  180. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  181. */
  182.  
  183. [000h 0000 4] Signature : "BGRT" [Boot Graphics Resource Table]
  184. [004h 0004 4] Table Length : 00000038
  185. [008h 0008 1] Revision : 01
  186. [009h 0009 1] Checksum : 65
  187. [00Ah 0010 6] Oem ID : "ALASKA"
  188. [010h 0016 8] Oem Table ID : "A M I "
  189. [018h 0024 4] Oem Revision : 01072009
  190. [01Ch 0028 4] Asl Compiler ID : "AMI "
  191. [020h 0032 4] Asl Compiler Revision : 00010013
  192.  
  193. [024h 0036 2] Version : 0001
  194. [026h 0038 1] Status : 00
  195. [027h 0039 1] Image Type : 00
  196. [028h 0040 8] Image Address : 00000000699F2018
  197. [030h 0048 4] Image OffsetX : 00000370
  198. [034h 0052 4] Image OffsetY : 0000015E
  199.  
  200. Raw Table Data: Length 56 (0x38)
  201.  
  202. 0000: 42 47 52 54 38 00 00 00 01 65 41 4C 41 53 4B 41 // BGRT8....eALASKA
  203. 0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 20 // A M I ... ..AMI
  204. 0020: 13 00 01 00 01 00 00 00 18 20 9F 69 00 00 00 00 // ......... .i....
  205. 0030: 70 03 00 00 5E 01 00 00 // p...^...
  206. /*
  207. * Intel ACPI Component Architecture
  208. * AML/ASL+ Disassembler version 20160108-64
  209. * Copyright (c) 2000 - 2016 Intel Corporation
  210. *
  211. * Disassembly of CSRT.dat, Mon Sep 12 10:24:46 2016
  212. *
  213. * ACPI Data Table [CSRT]
  214. *
  215. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  216. */
  217.  
  218. [000h 0000 4] Signature : "CSRT" [Core System Resource Table]
  219. [004h 0004 4] Table Length : 0000014C
  220. [008h 0008 1] Revision : 00
  221. [009h 0009 1] Checksum : 4E
  222. [00Ah 0010 6] Oem ID : "INTEL "
  223. [010h 0016 8] Oem Table ID : "LANFORDC"
  224. [018h 0024 4] Oem Revision : 00000005
  225. [01Ch 0028 4] Asl Compiler ID : "MSFT"
  226. [020h 0032 4] Asl Compiler Revision : 0100000D
  227.  
  228.  
  229. [024h 0036 4] Length : 00000088
  230. [028h 0040 4] Vendor ID : 4C544E49
  231. [02Ch 0044 4] Subvendor ID : 00000000
  232. [030h 0048 2] Device ID : 9C60
  233. [032h 0050 2] Subdevice ID : 0000
  234. [034h 0052 2] Revision : 0002
  235. [036h 0054 2] Reserved : 0000
  236. [038h 0056 4] Shared Info Length : 0000001C
  237.  
  238. [03Ch 0060 2] Major Version : 0001
  239. [03Eh 0062 2] Minor Version : 0000
  240. [040h 0064 4] MMIO Base Address Low : 91810000
  241. [044h 0068 4] MMIO Base Address High : 00000000
  242. [048h 0072 4] GSI Interrupt : 0000002A
  243. [04Ch 0076 1] Interrupt Polarity : 02
  244. [04Dh 0077 1] Interrupt Mode : 00
  245. [04Eh 0078 1] Num Channels : 06
  246. [04Fh 0079 1] DMA Address Width : 20
  247. [050h 0080 2] Base Request Line : 0000
  248. [052h 0082 2] Num Handshake Signals : 0010
  249. [054h 0084 4] Max Block Size : 00001000
  250.  
  251. [058h 0088 4] Length : 0000000C
  252. [05Ch 0092 2] Type : 0003
  253. [05Eh 0094 2] Subtype : 0001
  254. [060h 0096 4] UID : 20495053
  255.  
  256. [064h 0100 4] Length : 0000000C
  257. [068h 0104 2] Type : 0003
  258. [06Ah 0106 2] Subtype : 0000
  259. [06Ch 0108 4] UID : 30414843
  260.  
  261. [070h 0112 4] Length : 0000000C
  262. [074h 0116 2] Type : 0003
  263. [076h 0118 2] Subtype : 0000
  264. [078h 0120 4] UID : 31414843
  265.  
  266. [07Ch 0124 4] Length : 0000000C
  267. [080h 0128 2] Type : 0003
  268. [082h 0130 2] Subtype : 0000
  269. [084h 0132 4] UID : 32414843
  270.  
  271. [088h 0136 4] Length : 0000000C
  272. [08Ch 0140 2] Type : 0003
  273. [08Eh 0142 2] Subtype : 0000
  274. [090h 0144 4] UID : 33414843
  275.  
  276. [094h 0148 4] Length : 0000000C
  277. [098h 0152 2] Type : 0003
  278. [09Ah 0154 2] Subtype : 0000
  279. [09Ch 0156 4] UID : 34414843
  280.  
  281. [0A0h 0160 4] Length : 0000000C
  282. [0A4h 0164 2] Type : 0003
  283. [0A6h 0166 2] Subtype : 0000
  284. [0A8h 0168 4] UID : 35414843
  285.  
  286. [0ACh 0172 4] Length : 000000A0
  287. [0B0h 0176 4] Vendor ID : 4C544E49
  288. [0B4h 0180 4] Subvendor ID : 00000000
  289. [0B8h 0184 2] Device ID : 9C60
  290. [0BAh 0186 2] Subdevice ID : 0000
  291. [0BCh 0188 2] Revision : 0003
  292. [0BEh 0190 2] Reserved : 0000
  293. [0C0h 0192 4] Shared Info Length : 0000001C
  294.  
  295. [0C4h 0196 2] Major Version : 0001
  296. [0C6h 0198 2] Minor Version : 0000
  297. [0C8h 0200 4] MMIO Base Address Low : 91814000
  298. [0CCh 0204 4] MMIO Base Address High : 00000000
  299. [0D0h 0208 4] GSI Interrupt : 0000002B
  300. [0D4h 0212 1] Interrupt Polarity : 02
  301. [0D5h 0213 1] Interrupt Mode : 00
  302. [0D6h 0214 1] Num Channels : 08
  303. [0D7h 0215 1] DMA Address Width : 20
  304. [0D8h 0216 2] Base Request Line : 0010
  305. [0DAh 0218 2] Num Handshake Signals : 0010
  306. [0DCh 0220 4] Max Block Size : 00001000
  307.  
  308. [0E0h 0224 4] Length : 0000000C
  309. [0E4h 0228 2] Type : 0003
  310. [0E6h 0230 2] Subtype : 0001
  311. [0E8h 0232 4] UID : 20433249
  312.  
  313. [0ECh 0236 4] Length : 0000000C
  314. [0F0h 0240 2] Type : 0003
  315. [0F2h 0242 2] Subtype : 0000
  316. [0F4h 0244 4] UID : 30414843
  317.  
  318. [0F8h 0248 4] Length : 0000000C
  319. [0FCh 0252 2] Type : 0003
  320. [0FEh 0254 2] Subtype : 0000
  321. [100h 0256 4] UID : 31414843
  322.  
  323. [104h 0260 4] Length : 0000000C
  324. [108h 0264 2] Type : 0003
  325. [10Ah 0266 2] Subtype : 0000
  326. [10Ch 0268 4] UID : 32414843
  327.  
  328. [110h 0272 4] Length : 0000000C
  329. [114h 0276 2] Type : 0003
  330. [116h 0278 2] Subtype : 0000
  331. [118h 0280 4] UID : 33414843
  332.  
  333. [11Ch 0284 4] Length : 0000000C
  334. [120h 0288 2] Type : 0003
  335. [122h 0290 2] Subtype : 0000
  336. [124h 0292 4] UID : 34414843
  337.  
  338. [128h 0296 4] Length : 0000000C
  339. [12Ch 0300 2] Type : 0003
  340. [12Eh 0302 2] Subtype : 0000
  341. [130h 0304 4] UID : 35414843
  342.  
  343. [134h 0308 4] Length : 0000000C
  344. [138h 0312 2] Type : 0003
  345. [13Ah 0314 2] Subtype : 0000
  346. [13Ch 0316 4] UID : 36414843
  347.  
  348. [140h 0320 4] Length : 0000000C
  349. [144h 0324 2] Type : 0003
  350. [146h 0326 2] Subtype : 0000
  351. [148h 0328 4] UID : 37414843
  352.  
  353. Raw Table Data: Length 332 (0x14C)
  354.  
  355. 0000: 43 53 52 54 4C 01 00 00 00 4E 49 4E 54 45 4C 20 // CSRTL....NINTEL
  356. 0010: 4C 41 4E 46 4F 52 44 43 05 00 00 00 4D 53 46 54 // LANFORDC....MSFT
  357. 0020: 0D 00 00 01 88 00 00 00 49 4E 54 4C 00 00 00 00 // ........INTL....
  358. 0030: 60 9C 00 00 02 00 00 00 1C 00 00 00 01 00 00 00 // `...............
  359. 0040: 00 00 81 91 00 00 00 00 2A 00 00 00 02 00 06 20 // ........*......
  360. 0050: 00 00 10 00 00 10 00 00 0C 00 00 00 03 00 01 00 // ................
  361. 0060: 53 50 49 20 0C 00 00 00 03 00 00 00 43 48 41 30 // SPI ........CHA0
  362. 0070: 0C 00 00 00 03 00 00 00 43 48 41 31 0C 00 00 00 // ........CHA1....
  363. 0080: 03 00 00 00 43 48 41 32 0C 00 00 00 03 00 00 00 // ....CHA2........
  364. 0090: 43 48 41 33 0C 00 00 00 03 00 00 00 43 48 41 34 // CHA3........CHA4
  365. 00A0: 0C 00 00 00 03 00 00 00 43 48 41 35 A0 00 00 00 // ........CHA5....
  366. 00B0: 49 4E 54 4C 00 00 00 00 60 9C 00 00 03 00 00 00 // INTL....`.......
  367. 00C0: 1C 00 00 00 01 00 00 00 00 40 81 91 00 00 00 00 // .........@......
  368. 00D0: 2B 00 00 00 02 00 08 20 10 00 10 00 00 10 00 00 // +...... ........
  369. 00E0: 0C 00 00 00 03 00 01 00 49 32 43 20 0C 00 00 00 // ........I2C ....
  370. 00F0: 03 00 00 00 43 48 41 30 0C 00 00 00 03 00 00 00 // ....CHA0........
  371. 0100: 43 48 41 31 0C 00 00 00 03 00 00 00 43 48 41 32 // CHA1........CHA2
  372. 0110: 0C 00 00 00 03 00 00 00 43 48 41 33 0C 00 00 00 // ........CHA3....
  373. 0120: 03 00 00 00 43 48 41 34 0C 00 00 00 03 00 00 00 // ....CHA4........
  374. 0130: 43 48 41 35 0C 00 00 00 03 00 00 00 43 48 41 36 // CHA5........CHA6
  375. 0140: 0C 00 00 00 03 00 00 00 43 48 41 37 // ........CHA7
  376. /*
  377. * Intel ACPI Component Architecture
  378. * AML/ASL+ Disassembler version 20160108-64
  379. * Copyright (c) 2000 - 2016 Intel Corporation
  380. *
  381. * Disassembling to symbolic ASL+ operators
  382. *
  383. * Disassembly of DSDT.dat, Mon Sep 12 10:24:46 2016
  384. *
  385. * Original Table Header:
  386. * Signature "DSDT"
  387. * Length 0x0001CE49 (118345)
  388. * Revision 0x02
  389. * Checksum 0x09
  390. * OEM ID "ALASKA"
  391. * OEM Table ID "A M I "
  392. * OEM Revision 0x01072009 (17244169)
  393. * Compiler ID "INTL"
  394. * Compiler Version 0x20120913 (538052883)
  395. */
  396. DefinitionBlock ("DSDT.aml", "DSDT", 2, "ALASKA", "A M I ", 0x01072009)
  397. {
  398. /*
  399. * iASL Warning: There were 2 external control methods found during
  400. * disassembly, but additional ACPI tables to resolve these externals
  401. * were not specified. This resulting disassembler output file may not
  402. * compile because the disassembler did not know how many arguments
  403. * to assign to these methods. To specify the tables needed to resolve
  404. * external control method references, the -e option can be used to
  405. * specify the filenames. Note: SSDTs can be dynamically loaded at
  406. * runtime and may or may not be available via the host OS.
  407. * Example iASL invocations:
  408. * iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
  409. * iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
  410. * iasl -e ssdt*.aml -d dsdt.aml
  411. *
  412. * In addition, the -fe option can be used to specify a file containing
  413. * control method external declarations with the associated method
  414. * argument counts. Each line of the file must be of the form:
  415. * External (<method pathname>, MethodObj, <argument count>)
  416. * Invocation:
  417. * iasl -fe refs.txt -d dsdt.aml
  418. *
  419. * The following methods were unresolved and many not compile properly
  420. * because the disassembler had to guess at the number of arguments
  421. * required for each:
  422. */
  423. External (_SB_.PCI0.LPCB.TPM_.PTS_, MethodObj) // Warning: Unresolved method, guessing 1 arguments
  424. External (NDN3, MethodObj) // Warning: Unresolved method, guessing 1 arguments
  425.  
  426. External (_PR_.CPU0._PPC, UnknownObj)
  427. External (_SB_.DPTF, UnknownObj)
  428. External (CFGD, UnknownObj)
  429. External (DPTF, UnknownObj)
  430. External (PDC0, UnknownObj)
  431. External (PDC1, UnknownObj)
  432. External (PDC2, UnknownObj)
  433. External (PDC3, UnknownObj)
  434. External (TCHG, UnknownObj)
  435. External (UBTC, UnknownObj)
  436.  
  437. Name (LAPB, 0xFEE00000)
  438. Name (CPVD, Zero)
  439. Name (SMBS, 0xEFA0)
  440. Name (SMBL, 0x20)
  441. Name (SRCB, 0xFED1C000)
  442. Name (SRCL, 0x4000)
  443. Name (PMBS, 0x0400)
  444. Name (PMLN, 0x80)
  445. Name (SMIP, 0xB2)
  446. Name (APCB, 0xFEC00000)
  447. Name (APCL, 0x1000)
  448. Name (RCRB, 0xFED1C000)
  449. Name (RCRL, 0x4000)
  450. Name (HPTB, 0xFED00000)
  451. Name (HPTC, 0xFED1F404)
  452. Name (ASSB, Zero)
  453. Name (AOTB, Zero)
  454. Name (AAXB, Zero)
  455. Name (PEHP, One)
  456. Name (SHPC, Zero)
  457. Name (PEPM, One)
  458. Name (PEER, One)
  459. Name (PECS, One)
  460. Name (ITKE, Zero)
  461. Name (MBEC, 0xFFFF)
  462. Name (PEBS, 0xE0000000)
  463. Name (PELN, 0x10000000)
  464. Name (SRSI, 0xB2)
  465. Name (CSMI, 0x61)
  466. Name (SMIA, 0xB2)
  467. Name (SMIB, 0xB3)
  468. Name (OFST, 0x35)
  469. Name (TRST, 0x02)
  470. Name (TCMF, Zero)
  471. Name (TMF1, Zero)
  472. Name (TMF2, Zero)
  473. Name (TMF3, Zero)
  474. Name (TTPF, Zero)
  475. Name (DTPT, Zero)
  476. Name (TTDP, One)
  477. Name (TPMB, 0xFFFFFFFF)
  478. Name (TPMC, 0xFFFFFFFF)
  479. Name (TPMM, 0xFED40000)
  480. Name (FTPM, 0xFFFFFFFF)
  481. Name (AMDT, Zero)
  482. Name (TPMF, Zero)
  483. Name (PMCB, 0xFED03000)
  484. Name (PMCP, 0xFED030A0)
  485. Name (PUNB, 0xFED06000)
  486. Name (IBAS, 0xFED08000)
  487. Name (FMBL, One)
  488. Name (FDTP, 0x02)
  489. Name (RCOM, 0xFED98000)
  490. OperationRegion (GNVS, SystemMemory, 0x6AF52000, 0x0368)
  491. Field (GNVS, AnyAcc, Lock, Preserve)
  492. {
  493. OSYS, 16,
  494. SMIF, 8,
  495. PRM0, 8,
  496. PRM1, 8,
  497. SCIF, 8,
  498. PRM2, 8,
  499. PRM3, 8,
  500. LCKF, 8,
  501. PRM4, 8,
  502. PRM5, 8,
  503. P80D, 32,
  504. LIDS, 8,
  505. PWRS, 8,
  506. DBGS, 8,
  507. THOF, 8,
  508. ACT1, 8,
  509. ACTT, 8,
  510. PSVT, 8,
  511. TC1V, 8,
  512. TC2V, 8,
  513. TSPV, 8,
  514. CRTT, 8,
  515. DTSE, 8,
  516. DTS1, 8,
  517. DTS2, 8,
  518. DTSF, 8,
  519. BNUM, 8,
  520. B0SC, 8,
  521. B1SC, 8,
  522. B2SC, 8,
  523. B0SS, 8,
  524. B1SS, 8,
  525. B2SS, 8,
  526. REVS, 8,
  527. OSID, 8,
  528. ADED, 8,
  529. APIC, 8,
  530. MPEN, 8,
  531. PCP0, 8,
  532. PCP1, 8,
  533. PPCM, 8,
  534. PPMF, 32,
  535. Offset (0x32),
  536. NATP, 8,
  537. CMAP, 8,
  538. CMBP, 8,
  539. LPTP, 8,
  540. FDCP, 8,
  541. CMCP, 8,
  542. CIRP, 8,
  543. W381, 8,
  544. NPCE, 8,
  545. Offset (0x3C),
  546. IGDS, 8,
  547. TLST, 8,
  548. CADL, 8,
  549. PADL, 8,
  550. CSTE, 16,
  551. NSTE, 16,
  552. SSTE, 16,
  553. NDID, 8,
  554. DID1, 32,
  555. DID2, 32,
  556. DID3, 32,
  557. DID4, 32,
  558. DID5, 32,
  559. KSV0, 32,
  560. KSV1, 8,
  561. Offset (0x67),
  562. BLCS, 8,
  563. BRTL, 8,
  564. ALSE, 8,
  565. ALAF, 8,
  566. LLOW, 8,
  567. LHIH, 8,
  568. Offset (0x6E),
  569. EMAE, 8,
  570. EMAP, 16,
  571. EMAL, 16,
  572. Offset (0x74),
  573. MEFE, 8,
  574. DSTS, 8,
  575. Offset (0x78),
  576. TPMP, 8,
  577. TM2E, 8,
  578. MORD, 8,
  579. TCGP, 8,
  580. PPRP, 32,
  581. PPRQ, 8,
  582. LPPR, 8,
  583. GTF0, 56,
  584. GTF2, 56,
  585. IDEM, 8,
  586. GTF1, 56,
  587. Offset (0xAA),
  588. ASLB, 32,
  589. IBTT, 8,
  590. IPAT, 8,
  591. ITVF, 8,
  592. ITVM, 8,
  593. IPSC, 8,
  594. IBLC, 8,
  595. IBIA, 8,
  596. ISSC, 8,
  597. I409, 8,
  598. I509, 8,
  599. I609, 8,
  600. I709, 8,
  601. IDMM, 8,
  602. IDMS, 8,
  603. IF1E, 8,
  604. HVCO, 8,
  605. NXD1, 32,
  606. NXD2, 32,
  607. NXD3, 32,
  608. NXD4, 32,
  609. NXD5, 32,
  610. NXD6, 32,
  611. NXD7, 32,
  612. NXD8, 32,
  613. GSMI, 8,
  614. PAVP, 8,
  615. Offset (0xE1),
  616. OSCC, 8,
  617. NEXP, 8,
  618. Offset (0xEB),
  619. DSEN, 8,
  620. ECON, 8,
  621. GPIC, 8,
  622. CTYP, 8,
  623. L01C, 8,
  624. VFN0, 8,
  625. VFN1, 8,
  626. Offset (0x100),
  627. NVGA, 32,
  628. NVHA, 32,
  629. AMDA, 32,
  630. DID6, 32,
  631. DID7, 32,
  632. DID8, 32,
  633. Offset (0x147),
  634. OTG0, 32,
  635. OTG1, 32,
  636. LPE0, 32,
  637. LPE1, 32,
  638. LPE2, 32,
  639. ACST, 8,
  640. BTST, 8,
  641. PFLV, 8,
  642. BREV, 8,
  643. AOAC, 8,
  644. XHCI, 8,
  645. PMEN, 8,
  646. USEL, 8,
  647. ISPA, 32,
  648. ISPD, 8,
  649. D10A, 32,
  650. D10L, 32,
  651. D11A, 32,
  652. D11L, 32,
  653. P10A, 32,
  654. P10L, 32,
  655. P11A, 32,
  656. P11L, 32,
  657. P20A, 32,
  658. P20L, 32,
  659. P21A, 32,
  660. P21L, 32,
  661. U10A, 32,
  662. U10L, 32,
  663. U11A, 32,
  664. U11L, 32,
  665. U20A, 32,
  666. U20L, 32,
  667. U21A, 32,
  668. U21L, 32,
  669. SP0A, 32,
  670. SP0L, 32,
  671. SP1A, 32,
  672. SP1L, 32,
  673. S20A, 32,
  674. S20L, 32,
  675. S21A, 32,
  676. S21L, 32,
  677. S30A, 32,
  678. S30L, 32,
  679. S31A, 32,
  680. S31L, 32,
  681. D20A, 32,
  682. D20L, 32,
  683. D21A, 32,
  684. D21L, 32,
  685. I10A, 32,
  686. I10L, 32,
  687. I11A, 32,
  688. I11L, 32,
  689. I20A, 32,
  690. I20L, 32,
  691. I21A, 32,
  692. I21L, 32,
  693. I30A, 32,
  694. I30L, 32,
  695. I31A, 32,
  696. I31L, 32,
  697. I40A, 32,
  698. I40L, 32,
  699. I41A, 32,
  700. I41L, 32,
  701. I50A, 32,
  702. I50L, 32,
  703. I51A, 32,
  704. I51L, 32,
  705. I60A, 32,
  706. I60L, 32,
  707. I61A, 32,
  708. I61L, 32,
  709. I70A, 32,
  710. I70L, 32,
  711. I71A, 32,
  712. I71L, 32,
  713. EM0A, 32,
  714. EM0L, 32,
  715. EM1A, 32,
  716. EM1L, 32,
  717. SI0A, 32,
  718. SI0L, 32,
  719. SI1A, 32,
  720. SI1L, 32,
  721. SD0A, 32,
  722. SD0L, 32,
  723. SD1A, 32,
  724. SD1L, 32,
  725. ISH0, 32,
  726. ISH1, 32,
  727. Offset (0x2A4),
  728. Offset (0x2A8),
  729. DPTE, 8,
  730. THM0, 8,
  731. THM1, 8,
  732. THM2, 8,
  733. THM3, 8,
  734. THM4, 8,
  735. CHGR, 8,
  736. DDSP, 8,
  737. DSOC, 8,
  738. DPSR, 8,
  739. DPCT, 32,
  740. DPPT, 32,
  741. DGC0, 32,
  742. DGP0, 32,
  743. DGC1, 32,
  744. DGP1, 32,
  745. DGC2, 32,
  746. DGP2, 32,
  747. DGC3, 32,
  748. DGP3, 32,
  749. DGC4, 32,
  750. DGP4, 32,
  751. DLPM, 8,
  752. DSC0, 32,
  753. DSC1, 32,
  754. DSC2, 32,
  755. DSC3, 32,
  756. DSC4, 32,
  757. DDBG, 8,
  758. LPOE, 32,
  759. LPPS, 32,
  760. LPST, 32,
  761. LPPC, 32,
  762. LPPF, 32,
  763. DPME, 8,
  764. BCSL, 8,
  765. RSVD, 8,
  766. BTHS, 8,
  767. TM2A, 32,
  768. TM2L, 32,
  769. PSSD, 8,
  770. ITSA, 8,
  771. S0IX, 8,
  772. SDMD, 8,
  773. EMVR, 8,
  774. BMBD, 32,
  775. FSAS, 8,
  776. BDID, 8,
  777. FBID, 8,
  778. OTGM, 8,
  779. STEP, 8,
  780. SOCS, 8,
  781. AMTE, 8,
  782. ABC0, 8,
  783. ABC1, 8,
  784. ABC2, 8,
  785. ABC3, 8,
  786. ABC4, 8,
  787. ABC5, 8,
  788. DPHL, 8,
  789. DPLL, 8,
  790. DBAT, 8,
  791. DTPM, 8,
  792. RSV, 8,
  793. PSDE, 8,
  794. RSD2, 8,
  795. MODS, 8,
  796. WWEN, 8,
  797. WWCR, 32,
  798. WWPS, 32,
  799. ABS0, 8,
  800. ABS1, 8,
  801. ABS2, 8,
  802. ABS3, 8,
  803. ABS4, 8,
  804. ABS5, 8,
  805. RCAM, 8,
  806. ECAM, 8,
  807. AUCD, 8,
  808. BTHM, 8,
  809. PMID, 8,
  810. MPNL, 8,
  811. VTSP, 16,
  812. Offset (0x34E),
  813. Offset (0x34F),
  814. FMDM, 8,
  815. SDVL, 8,
  816. MLSD, 8,
  817. SCDD, 8,
  818. HPME, 8,
  819. GPSD, 8,
  820. PAVB, 32,
  821. PAVL, 32,
  822. NUSB, 8,
  823. DSFG, 8,
  824. DAMT, 8,
  825. MODM, 8,
  826. UBCB, 32,
  827. PSSE, 8,
  828. MFCS, 8,
  829. MRCS, 8
  830. }
  831.  
  832. Method (ADBG, 1, Serialized)
  833. {
  834. Return (Zero)
  835. }
  836.  
  837. Name (WAKP, Package (0x02)
  838. {
  839. Zero,
  840. Zero
  841. })
  842. Name (SS1, Zero)
  843. Name (SS2, Zero)
  844. Name (SS3, Zero)
  845. Name (SS4, One)
  846. Name (IOST, 0xFFFF)
  847. Name (TOPM, 0x00000000)
  848. Name (ROMS, 0xFFE00000)
  849. Name (VGAF, One)
  850. Scope (_SB)
  851. {
  852. Name (PRSA, ResourceTemplate ()
  853. {
  854. IRQ (Level, ActiveLow, Shared, )
  855. {3,4,5,6,10,11,12,14,15}
  856. })
  857. Alias (PRSA, PRSB)
  858. Alias (PRSA, PRSC)
  859. Alias (PRSA, PRSD)
  860. Alias (PRSA, PRSE)
  861. Alias (PRSA, PRSF)
  862. Alias (PRSA, PRSG)
  863. Alias (PRSA, PRSH)
  864. Name (PR00, Package (0x17)
  865. {
  866. Package (0x04)
  867. {
  868. 0x0002FFFF,
  869. Zero,
  870. LNKA,
  871. Zero
  872. },
  873.  
  874. Package (0x04)
  875. {
  876. 0x0003FFFF,
  877. Zero,
  878. LNKB,
  879. Zero
  880. },
  881.  
  882. Package (0x04)
  883. {
  884. 0x000AFFFF,
  885. Zero,
  886. LNKE,
  887. Zero
  888. },
  889.  
  890. Package (0x04)
  891. {
  892. 0x000BFFFF,
  893. Zero,
  894. LNKF,
  895. Zero
  896. },
  897.  
  898. Package (0x04)
  899. {
  900. 0x001CFFFF,
  901. Zero,
  902. LNKA,
  903. Zero
  904. },
  905.  
  906. Package (0x04)
  907. {
  908. 0x001CFFFF,
  909. One,
  910. LNKB,
  911. Zero
  912. },
  913.  
  914. Package (0x04)
  915. {
  916. 0x001CFFFF,
  917. 0x02,
  918. LNKC,
  919. Zero
  920. },
  921.  
  922. Package (0x04)
  923. {
  924. 0x001CFFFF,
  925. 0x03,
  926. LNKD,
  927. Zero
  928. },
  929.  
  930. Package (0x04)
  931. {
  932. 0x0010FFFF,
  933. Zero,
  934. LNKA,
  935. Zero
  936. },
  937.  
  938. Package (0x04)
  939. {
  940. 0x0011FFFF,
  941. Zero,
  942. LNKB,
  943. Zero
  944. },
  945.  
  946. Package (0x04)
  947. {
  948. 0x0012FFFF,
  949. Zero,
  950. LNKC,
  951. Zero
  952. },
  953.  
  954. Package (0x04)
  955. {
  956. 0x0014FFFF,
  957. Zero,
  958. LNKE,
  959. Zero
  960. },
  961.  
  962. Package (0x04)
  963. {
  964. 0x0015FFFF,
  965. Zero,
  966. LNKF,
  967. Zero
  968. },
  969.  
  970. Package (0x04)
  971. {
  972. 0x0016FFFF,
  973. Zero,
  974. LNKH,
  975. Zero
  976. },
  977.  
  978. Package (0x04)
  979. {
  980. 0x0018FFFF,
  981. Zero,
  982. LNKB,
  983. Zero
  984. },
  985.  
  986. Package (0x04)
  987. {
  988. 0x0018FFFF,
  989. 0x02,
  990. LNKD,
  991. Zero
  992. },
  993.  
  994. Package (0x04)
  995. {
  996. 0x0018FFFF,
  997. 0x03,
  998. LNKC,
  999. Zero
  1000. },
  1001.  
  1002. Package (0x04)
  1003. {
  1004. 0x0018FFFF,
  1005. One,
  1006. LNKA,
  1007. Zero
  1008. },
  1009.  
  1010. Package (0x04)
  1011. {
  1012. 0x001AFFFF,
  1013. Zero,
  1014. LNKF,
  1015. Zero
  1016. },
  1017.  
  1018. Package (0x04)
  1019. {
  1020. 0x001EFFFF,
  1021. Zero,
  1022. LNKD,
  1023. Zero
  1024. },
  1025.  
  1026. Package (0x04)
  1027. {
  1028. 0x001EFFFF,
  1029. 0x03,
  1030. LNKA,
  1031. Zero
  1032. },
  1033.  
  1034. Package (0x04)
  1035. {
  1036. 0x001EFFFF,
  1037. One,
  1038. LNKB,
  1039. Zero
  1040. },
  1041.  
  1042. Package (0x04)
  1043. {
  1044. 0x001EFFFF,
  1045. 0x02,
  1046. LNKC,
  1047. Zero
  1048. }
  1049. })
  1050. Name (AR00, Package (0x17)
  1051. {
  1052. Package (0x04)
  1053. {
  1054. 0x0002FFFF,
  1055. Zero,
  1056. Zero,
  1057. 0x10
  1058. },
  1059.  
  1060. Package (0x04)
  1061. {
  1062. 0x0003FFFF,
  1063. Zero,
  1064. Zero,
  1065. 0x11
  1066. },
  1067.  
  1068. Package (0x04)
  1069. {
  1070. 0x000AFFFF,
  1071. Zero,
  1072. Zero,
  1073. 0x14
  1074. },
  1075.  
  1076. Package (0x04)
  1077. {
  1078. 0x000BFFFF,
  1079. Zero,
  1080. Zero,
  1081. 0x15
  1082. },
  1083.  
  1084. Package (0x04)
  1085. {
  1086. 0x001CFFFF,
  1087. Zero,
  1088. Zero,
  1089. 0x10
  1090. },
  1091.  
  1092. Package (0x04)
  1093. {
  1094. 0x001CFFFF,
  1095. One,
  1096. Zero,
  1097. 0x11
  1098. },
  1099.  
  1100. Package (0x04)
  1101. {
  1102. 0x001CFFFF,
  1103. 0x02,
  1104. Zero,
  1105. 0x12
  1106. },
  1107.  
  1108. Package (0x04)
  1109. {
  1110. 0x001CFFFF,
  1111. 0x03,
  1112. Zero,
  1113. 0x13
  1114. },
  1115.  
  1116. Package (0x04)
  1117. {
  1118. 0x0010FFFF,
  1119. Zero,
  1120. Zero,
  1121. 0x10
  1122. },
  1123.  
  1124. Package (0x04)
  1125. {
  1126. 0x0011FFFF,
  1127. Zero,
  1128. Zero,
  1129. 0x11
  1130. },
  1131.  
  1132. Package (0x04)
  1133. {
  1134. 0x0012FFFF,
  1135. Zero,
  1136. Zero,
  1137. 0x12
  1138. },
  1139.  
  1140. Package (0x04)
  1141. {
  1142. 0x0014FFFF,
  1143. Zero,
  1144. Zero,
  1145. 0x14
  1146. },
  1147.  
  1148. Package (0x04)
  1149. {
  1150. 0x0015FFFF,
  1151. Zero,
  1152. Zero,
  1153. 0x15
  1154. },
  1155.  
  1156. Package (0x04)
  1157. {
  1158. 0x0016FFFF,
  1159. Zero,
  1160. Zero,
  1161. 0x17
  1162. },
  1163.  
  1164. Package (0x04)
  1165. {
  1166. 0x0018FFFF,
  1167. Zero,
  1168. Zero,
  1169. 0x11
  1170. },
  1171.  
  1172. Package (0x04)
  1173. {
  1174. 0x0018FFFF,
  1175. 0x02,
  1176. Zero,
  1177. 0x13
  1178. },
  1179.  
  1180. Package (0x04)
  1181. {
  1182. 0x0018FFFF,
  1183. 0x03,
  1184. Zero,
  1185. 0x12
  1186. },
  1187.  
  1188. Package (0x04)
  1189. {
  1190. 0x0018FFFF,
  1191. One,
  1192. Zero,
  1193. 0x10
  1194. },
  1195.  
  1196. Package (0x04)
  1197. {
  1198. 0x001AFFFF,
  1199. Zero,
  1200. Zero,
  1201. 0x15
  1202. },
  1203.  
  1204. Package (0x04)
  1205. {
  1206. 0x001EFFFF,
  1207. Zero,
  1208. Zero,
  1209. 0x13
  1210. },
  1211.  
  1212. Package (0x04)
  1213. {
  1214. 0x001EFFFF,
  1215. 0x03,
  1216. Zero,
  1217. 0x10
  1218. },
  1219.  
  1220. Package (0x04)
  1221. {
  1222. 0x001EFFFF,
  1223. One,
  1224. Zero,
  1225. 0x11
  1226. },
  1227.  
  1228. Package (0x04)
  1229. {
  1230. 0x001EFFFF,
  1231. 0x02,
  1232. Zero,
  1233. 0x12
  1234. }
  1235. })
  1236. Name (PR01, Package (0x04)
  1237. {
  1238. Package (0x04)
  1239. {
  1240. 0xFFFF,
  1241. Zero,
  1242. LNKA,
  1243. Zero
  1244. },
  1245.  
  1246. Package (0x04)
  1247. {
  1248. 0xFFFF,
  1249. One,
  1250. LNKB,
  1251. Zero
  1252. },
  1253.  
  1254. Package (0x04)
  1255. {
  1256. 0xFFFF,
  1257. 0x02,
  1258. LNKC,
  1259. Zero
  1260. },
  1261.  
  1262. Package (0x04)
  1263. {
  1264. 0xFFFF,
  1265. 0x03,
  1266. LNKD,
  1267. Zero
  1268. }
  1269. })
  1270. Name (AR01, Package (0x04)
  1271. {
  1272. Package (0x04)
  1273. {
  1274. 0xFFFF,
  1275. Zero,
  1276. Zero,
  1277. 0x10
  1278. },
  1279.  
  1280. Package (0x04)
  1281. {
  1282. 0xFFFF,
  1283. One,
  1284. Zero,
  1285. 0x11
  1286. },
  1287.  
  1288. Package (0x04)
  1289. {
  1290. 0xFFFF,
  1291. 0x02,
  1292. Zero,
  1293. 0x12
  1294. },
  1295.  
  1296. Package (0x04)
  1297. {
  1298. 0xFFFF,
  1299. 0x03,
  1300. Zero,
  1301. 0x13
  1302. }
  1303. })
  1304. Name (PR02, Package (0x04)
  1305. {
  1306. Package (0x04)
  1307. {
  1308. 0xFFFF,
  1309. Zero,
  1310. LNKB,
  1311. Zero
  1312. },
  1313.  
  1314. Package (0x04)
  1315. {
  1316. 0xFFFF,
  1317. One,
  1318. LNKC,
  1319. Zero
  1320. },
  1321.  
  1322. Package (0x04)
  1323. {
  1324. 0xFFFF,
  1325. 0x02,
  1326. LNKD,
  1327. Zero
  1328. },
  1329.  
  1330. Package (0x04)
  1331. {
  1332. 0xFFFF,
  1333. 0x03,
  1334. LNKA,
  1335. Zero
  1336. }
  1337. })
  1338. Name (AR02, Package (0x04)
  1339. {
  1340. Package (0x04)
  1341. {
  1342. 0xFFFF,
  1343. Zero,
  1344. Zero,
  1345. 0x11
  1346. },
  1347.  
  1348. Package (0x04)
  1349. {
  1350. 0xFFFF,
  1351. One,
  1352. Zero,
  1353. 0x12
  1354. },
  1355.  
  1356. Package (0x04)
  1357. {
  1358. 0xFFFF,
  1359. 0x02,
  1360. Zero,
  1361. 0x13
  1362. },
  1363.  
  1364. Package (0x04)
  1365. {
  1366. 0xFFFF,
  1367. 0x03,
  1368. Zero,
  1369. 0x10
  1370. }
  1371. })
  1372. Name (PR03, Package (0x04)
  1373. {
  1374. Package (0x04)
  1375. {
  1376. 0xFFFF,
  1377. Zero,
  1378. LNKC,
  1379. Zero
  1380. },
  1381.  
  1382. Package (0x04)
  1383. {
  1384. 0xFFFF,
  1385. One,
  1386. LNKD,
  1387. Zero
  1388. },
  1389.  
  1390. Package (0x04)
  1391. {
  1392. 0xFFFF,
  1393. 0x02,
  1394. LNKA,
  1395. Zero
  1396. },
  1397.  
  1398. Package (0x04)
  1399. {
  1400. 0xFFFF,
  1401. 0x03,
  1402. LNKB,
  1403. Zero
  1404. }
  1405. })
  1406. Name (AR03, Package (0x04)
  1407. {
  1408. Package (0x04)
  1409. {
  1410. 0xFFFF,
  1411. Zero,
  1412. Zero,
  1413. 0x12
  1414. },
  1415.  
  1416. Package (0x04)
  1417. {
  1418. 0xFFFF,
  1419. One,
  1420. Zero,
  1421. 0x13
  1422. },
  1423.  
  1424. Package (0x04)
  1425. {
  1426. 0xFFFF,
  1427. 0x02,
  1428. Zero,
  1429. 0x10
  1430. },
  1431.  
  1432. Package (0x04)
  1433. {
  1434. 0xFFFF,
  1435. 0x03,
  1436. Zero,
  1437. 0x11
  1438. }
  1439. })
  1440. Name (PR04, Package (0x04)
  1441. {
  1442. Package (0x04)
  1443. {
  1444. 0xFFFF,
  1445. Zero,
  1446. LNKD,
  1447. Zero
  1448. },
  1449.  
  1450. Package (0x04)
  1451. {
  1452. 0xFFFF,
  1453. One,
  1454. LNKA,
  1455. Zero
  1456. },
  1457.  
  1458. Package (0x04)
  1459. {
  1460. 0xFFFF,
  1461. 0x02,
  1462. LNKB,
  1463. Zero
  1464. },
  1465.  
  1466. Package (0x04)
  1467. {
  1468. 0xFFFF,
  1469. 0x03,
  1470. LNKC,
  1471. Zero
  1472. }
  1473. })
  1474. Name (AR04, Package (0x04)
  1475. {
  1476. Package (0x04)
  1477. {
  1478. 0xFFFF,
  1479. Zero,
  1480. Zero,
  1481. 0x13
  1482. },
  1483.  
  1484. Package (0x04)
  1485. {
  1486. 0xFFFF,
  1487. One,
  1488. Zero,
  1489. 0x10
  1490. },
  1491.  
  1492. Package (0x04)
  1493. {
  1494. 0xFFFF,
  1495. 0x02,
  1496. Zero,
  1497. 0x11
  1498. },
  1499.  
  1500. Package (0x04)
  1501. {
  1502. 0xFFFF,
  1503. 0x03,
  1504. Zero,
  1505. 0x12
  1506. }
  1507. })
  1508. }
  1509.  
  1510. Scope (_SB)
  1511. {
  1512. Device (PCI0)
  1513. {
  1514. Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */) // _HID: Hardware ID
  1515. Name (_CID, EisaId ("PNP0A03") /* PCI Bus */) // _CID: Compatible ID
  1516. Name (_ADR, Zero) // _ADR: Address
  1517. Method (^BN00, 0, NotSerialized)
  1518. {
  1519. Return (Zero)
  1520. }
  1521.  
  1522. Method (_BBN, 0, NotSerialized) // _BBN: BIOS Bus Number
  1523. {
  1524. Return (BN00 ())
  1525. }
  1526.  
  1527. Name (_UID, Zero) // _UID: Unique ID
  1528. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  1529. {
  1530. If (PICM)
  1531. {
  1532. Return (AR00) /* \_SB_.AR00 */
  1533. }
  1534.  
  1535. Return (PR00) /* \_SB_.PR00 */
  1536. }
  1537.  
  1538. Device (CHVC)
  1539. {
  1540. Name (_ADR, Zero) // _ADR: Address
  1541. OperationRegion (HBUS, PCI_Config, Zero, 0xFF)
  1542. Field (HBUS, DWordAcc, NoLock, Preserve)
  1543. {
  1544. Offset (0xD0),
  1545. SMCR, 32,
  1546. SMDR, 32,
  1547. MCRX, 32,
  1548. MCXX, 32
  1549. }
  1550.  
  1551. Method (RMBR, 2, Serialized)
  1552. {
  1553. Local0 = ((Arg0 << 0x10) | (Arg1 << 0x08))
  1554. SMCR = (0x100000F0 | Local0)
  1555. Return (SMDR) /* \_SB_.PCI0.CHVC.SMDR */
  1556. }
  1557.  
  1558. Method (WMBR, 3, Serialized)
  1559. {
  1560. SMDR = Arg2
  1561. Local0 = ((Arg0 << 0x10) | (Arg1 << 0x08))
  1562. SMCR = (0x110000F0 | Local0)
  1563. }
  1564.  
  1565. Method (RMBX, 6, Serialized)
  1566. {
  1567. Local4 = (Arg3 & 0x07)
  1568. Local4 = (Local4 << 0x08)
  1569. Local5 = ((Arg4 << 0x03) | Arg5)
  1570. Local5 &= 0xFF
  1571. MCXX = (Local4 | Local5)
  1572. Local3 = (Arg1 & 0xFFFFFF00)
  1573. MCRX = Local3
  1574. Local0 = (Arg1 & 0xFF)
  1575. Local1 = ((Arg2 << 0x18) | (Arg0 << 0x10))
  1576. Local1 &= 0xFFFF0000
  1577. Local2 = ((Local0 << 0x08) | 0xF0)
  1578. Local2 &= 0xFFFF
  1579. SMCR = (Local1 | Local2)
  1580. Return (SMDR) /* \_SB_.PCI0.CHVC.SMDR */
  1581. }
  1582.  
  1583. Method (WMBX, 7, Serialized)
  1584. {
  1585. Local4 = (Arg4 & 0x07)
  1586. Local4 = (Local4 << 0x08)
  1587. Local5 = ((Arg5 << 0x03) | Arg6)
  1588. Local5 &= 0xFF
  1589. MCXX = (Local4 | Local5)
  1590. Local3 = (Arg1 & 0xFFFFFF00)
  1591. MCRX = Local3
  1592. SMDR = Arg2
  1593. Local0 = (Arg1 & 0xFF)
  1594. Local1 = ((Arg3 << 0x18) | (Arg0 << 0x10))
  1595. Local1 &= 0xFFFF0000
  1596. Local2 = ((Local0 << 0x08) | 0xF0)
  1597. Local2 &= 0xFFFF
  1598. SMCR = (Local1 | Local2)
  1599. }
  1600. }
  1601.  
  1602. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  1603. {
  1604. Name (FTSZ, 0x00100000)
  1605. CreateDWordField (RES0, \_SB.PCI0._Y00._MIN, LPMN) // _MIN: Minimum Base Address
  1606. CreateDWordField (RES0, \_SB.PCI0._Y00._MAX, LPMX) // _MAX: Maximum Base Address
  1607. CreateDWordField (RES0, \_SB.PCI0._Y00._LEN, LPLN) // _LEN: Length
  1608. If (((LPE2 != Zero) && (LPED == Zero)))
  1609. {
  1610. LPMN = LPE2 /* \LPE2 */
  1611. LPMX = (LPMN + LPLN) /* \_SB_.PCI0._CRS.LPLN */
  1612. LPMX -= One
  1613. }
  1614. Else
  1615. {
  1616. LPMN = Zero
  1617. LPMX = Zero
  1618. LPLN = Zero
  1619. }
  1620.  
  1621. CreateDWordField (RES0, \_SB.PCI0._Y01._MIN, ISMN) // _MIN: Minimum Base Address
  1622. CreateDWordField (RES0, \_SB.PCI0._Y01._MAX, ISMX) // _MAX: Maximum Base Address
  1623. CreateDWordField (RES0, \_SB.PCI0._Y01._LEN, ISLN) // _LEN: Length
  1624. If ((ISPD == One))
  1625. {
  1626. ISMN = ISPA /* \ISPA */
  1627. ISMX = (ISMN + ISLN) /* \_SB_.PCI0._CRS.ISLN */
  1628. ISMX -= One
  1629. }
  1630. Else
  1631. {
  1632. ISMN = Zero
  1633. ISMX = Zero
  1634. ISLN = Zero
  1635. }
  1636.  
  1637. CreateDWordField (RES0, \_SB.PCI0._Y02._MIN, M1MN) // _MIN: Minimum Base Address
  1638. CreateDWordField (RES0, \_SB.PCI0._Y02._MAX, M1MX) // _MAX: Maximum Base Address
  1639. CreateDWordField (RES0, \_SB.PCI0._Y02._LEN, M1LN) // _LEN: Length
  1640. M1MN = (BMBD & 0xFF000000)
  1641. M1LN = ((M1MX - M1MN) + One)
  1642. CreateDWordField (RES0, \_SB.PCI0._Y03._MIN, GSMN) // _MIN: Minimum Base Address
  1643. CreateDWordField (RES0, \_SB.PCI0._Y03._MAX, GSMX) // _MAX: Maximum Base Address
  1644. CreateDWordField (RES0, \_SB.PCI0._Y03._LEN, GSLN) // _LEN: Length
  1645. GSMN = ^GFX0.GSTM /* \_SB_.PCI0.GFX0.GSTM */
  1646. GSLN = (^GFX0.GUMA << 0x19)
  1647. GSMX = (GSMN + GSLN) /* \_SB_.PCI0._CRS.GSLN */
  1648. GSMX -= One
  1649. Return (RES0) /* \_SB_.PCI0.RES0 */
  1650. }
  1651.  
  1652. Name (RES0, ResourceTemplate ()
  1653. {
  1654. WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
  1655. 0x0000, // Granularity
  1656. 0x0000, // Range Minimum
  1657. 0x00FF, // Range Maximum
  1658. 0x0000, // Translation Offset
  1659. 0x0100, // Length
  1660. ,, )
  1661. IO (Decode16,
  1662. 0x0070, // Range Minimum
  1663. 0x0077, // Range Maximum
  1664. 0x01, // Alignment
  1665. 0x08, // Length
  1666. )
  1667. IO (Decode16,
  1668. 0x0CF8, // Range Minimum
  1669. 0x0CF8, // Range Maximum
  1670. 0x01, // Alignment
  1671. 0x08, // Length
  1672. )
  1673. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  1674. 0x0000, // Granularity
  1675. 0x0000, // Range Minimum
  1676. 0x006F, // Range Maximum
  1677. 0x0000, // Translation Offset
  1678. 0x0070, // Length
  1679. ,, , TypeStatic)
  1680. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  1681. 0x0000, // Granularity
  1682. 0x0078, // Range Minimum
  1683. 0x0CF7, // Range Maximum
  1684. 0x0000, // Translation Offset
  1685. 0x0C80, // Length
  1686. ,, , TypeStatic)
  1687. WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  1688. 0x0000, // Granularity
  1689. 0x0D00, // Range Minimum
  1690. 0xFFFF, // Range Maximum
  1691. 0x0000, // Translation Offset
  1692. 0xF300, // Length
  1693. ,, , TypeStatic)
  1694. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1695. 0x00000000, // Granularity
  1696. 0x000A0000, // Range Minimum
  1697. 0x000BFFFF, // Range Maximum
  1698. 0x00000000, // Translation Offset
  1699. 0x00020000, // Length
  1700. ,, , AddressRangeMemory, TypeStatic)
  1701. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1702. 0x00000000, // Granularity
  1703. 0x000C0000, // Range Minimum
  1704. 0x000DFFFF, // Range Maximum
  1705. 0x00000000, // Translation Offset
  1706. 0x00020000, // Length
  1707. ,, , AddressRangeMemory, TypeStatic)
  1708. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1709. 0x00000000, // Granularity
  1710. 0x000E0000, // Range Minimum
  1711. 0x000FFFFF, // Range Maximum
  1712. 0x00000000, // Translation Offset
  1713. 0x00020000, // Length
  1714. ,, , AddressRangeMemory, TypeStatic)
  1715. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1716. 0x00000000, // Granularity
  1717. 0x20000000, // Range Minimum
  1718. 0x201FFFFF, // Range Maximum
  1719. 0x00000000, // Translation Offset
  1720. 0x00200000, // Length
  1721. ,, _Y00, AddressRangeMemory, TypeStatic)
  1722. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1723. 0x00000000, // Granularity
  1724. 0x7A000000, // Range Minimum
  1725. 0x7A3FFFFF, // Range Maximum
  1726. 0x00000000, // Translation Offset
  1727. 0x00400000, // Length
  1728. ,, _Y01, AddressRangeMemory, TypeStatic)
  1729. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1730. 0x00000000, // Granularity
  1731. 0x7C000000, // Range Minimum
  1732. 0x7FFFFFFF, // Range Maximum
  1733. 0x00000000, // Translation Offset
  1734. 0x04000000, // Length
  1735. ,, _Y03, AddressRangeMemory, TypeStatic)
  1736. DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1737. 0x00000000, // Granularity
  1738. 0x80000000, // Range Minimum
  1739. 0xDFFFFFFF, // Range Maximum
  1740. 0x00000000, // Translation Offset
  1741. 0x60000000, // Length
  1742. ,, _Y02, AddressRangeMemory, TypeStatic)
  1743. })
  1744. Name (GUID, ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */)
  1745. Name (SUPP, Zero)
  1746. Name (CTRL, Zero)
  1747. Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
  1748. {
  1749. Local0 = Arg3
  1750. CreateDWordField (Local0, Zero, CDW1)
  1751. CreateDWordField (Local0, 0x04, CDW2)
  1752. CreateDWordField (Local0, 0x08, CDW3)
  1753. If ((Arg0 == GUID))
  1754. {
  1755. SUPP = CDW2 /* \_SB_.PCI0._OSC.CDW2 */
  1756. CTRL = CDW3 /* \_SB_.PCI0._OSC.CDW3 */
  1757. If (~(CDW1 & One))
  1758. {
  1759. If ((CTRL & 0x02))
  1760. {
  1761. NHPG ()
  1762. }
  1763.  
  1764. If ((CTRL & 0x04))
  1765. {
  1766. NPME ()
  1767. }
  1768. }
  1769.  
  1770. If ((Arg1 != One))
  1771. {
  1772. CDW1 |= 0x08
  1773. }
  1774.  
  1775. If ((CDW3 != CTRL))
  1776. {
  1777. CDW1 |= 0x10
  1778. }
  1779.  
  1780. CDW3 = CTRL /* \_SB_.PCI0.CTRL */
  1781. OSCC = CTRL /* \_SB_.PCI0.CTRL */
  1782. Return (Local0)
  1783. }
  1784. Else
  1785. {
  1786. CDW1 |= 0x04
  1787. Return (Local0)
  1788. }
  1789. }
  1790.  
  1791. Device (GFX0)
  1792. {
  1793. Name (_ADR, 0x00020000) // _ADR: Address
  1794. }
  1795.  
  1796. Device (ISP3)
  1797. {
  1798. Name (_ADR, 0x00030000) // _ADR: Address
  1799. }
  1800.  
  1801. Device (LPCB)
  1802. {
  1803. Name (_ADR, 0x001F0000) // _ADR: Address
  1804. Scope (\_SB)
  1805. {
  1806. OperationRegion (ILBR, SystemMemory, IBAS, 0x8C)
  1807. Field (ILBR, AnyAcc, NoLock, Preserve)
  1808. {
  1809. Offset (0x08),
  1810. PARC, 8,
  1811. PBRC, 8,
  1812. PCRC, 8,
  1813. PDRC, 8,
  1814. PERC, 8,
  1815. PFRC, 8,
  1816. PGRC, 8,
  1817. PHRC, 8,
  1818. Offset (0x88),
  1819. , 4,
  1820. UI4E, 1
  1821. }
  1822.  
  1823. Device (LNKA)
  1824. {
  1825. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1826. Name (_UID, One) // _UID: Unique ID
  1827. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  1828. {
  1829. PARC |= 0x80
  1830. }
  1831.  
  1832. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  1833. {
  1834. Return (PRSA) /* \_SB_.PRSA */
  1835. }
  1836.  
  1837. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  1838. {
  1839. Name (RTLA, ResourceTemplate ()
  1840. {
  1841. IRQ (Level, ActiveLow, Shared, )
  1842. {}
  1843. })
  1844. CreateWordField (RTLA, One, IRQ0)
  1845. IRQ0 = Zero
  1846. IRQ0 = (One << (PARC & 0x0F))
  1847. Return (RTLA) /* \_SB_.LNKA._CRS.RTLA */
  1848. }
  1849.  
  1850. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  1851. {
  1852. CreateWordField (Arg0, One, IRQ0)
  1853. FindSetRightBit (IRQ0, Local0)
  1854. Local0--
  1855. PARC = Local0
  1856. }
  1857.  
  1858. Method (_STA, 0, Serialized) // _STA: Status
  1859. {
  1860. If ((PARC & 0x80))
  1861. {
  1862. Return (0x09)
  1863. }
  1864. Else
  1865. {
  1866. Return (0x0B)
  1867. }
  1868. }
  1869. }
  1870.  
  1871. Device (LNKB)
  1872. {
  1873. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1874. Name (_UID, 0x02) // _UID: Unique ID
  1875. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  1876. {
  1877. PBRC |= 0x80
  1878. }
  1879.  
  1880. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  1881. {
  1882. Return (PRSB) /* \_SB_.PRSB */
  1883. }
  1884.  
  1885. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  1886. {
  1887. Name (RTLB, ResourceTemplate ()
  1888. {
  1889. IRQ (Level, ActiveLow, Shared, )
  1890. {}
  1891. })
  1892. CreateWordField (RTLB, One, IRQ0)
  1893. IRQ0 = Zero
  1894. IRQ0 = (One << (PBRC & 0x0F))
  1895. Return (RTLB) /* \_SB_.LNKB._CRS.RTLB */
  1896. }
  1897.  
  1898. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  1899. {
  1900. CreateWordField (Arg0, One, IRQ0)
  1901. FindSetRightBit (IRQ0, Local0)
  1902. Local0--
  1903. PBRC = Local0
  1904. }
  1905.  
  1906. Method (_STA, 0, Serialized) // _STA: Status
  1907. {
  1908. If ((PBRC & 0x80))
  1909. {
  1910. Return (0x09)
  1911. }
  1912. Else
  1913. {
  1914. Return (0x0B)
  1915. }
  1916. }
  1917. }
  1918.  
  1919. Device (LNKC)
  1920. {
  1921. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1922. Name (_UID, 0x03) // _UID: Unique ID
  1923. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  1924. {
  1925. PCRC |= 0x80
  1926. }
  1927.  
  1928. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  1929. {
  1930. Return (PRSC) /* \_SB_.PRSC */
  1931. }
  1932.  
  1933. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  1934. {
  1935. Name (RTLC, ResourceTemplate ()
  1936. {
  1937. IRQ (Level, ActiveLow, Shared, )
  1938. {}
  1939. })
  1940. CreateWordField (RTLC, One, IRQ0)
  1941. IRQ0 = Zero
  1942. IRQ0 = (One << (PCRC & 0x0F))
  1943. Return (RTLC) /* \_SB_.LNKC._CRS.RTLC */
  1944. }
  1945.  
  1946. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  1947. {
  1948. CreateWordField (Arg0, One, IRQ0)
  1949. FindSetRightBit (IRQ0, Local0)
  1950. Local0--
  1951. PCRC = Local0
  1952. }
  1953.  
  1954. Method (_STA, 0, Serialized) // _STA: Status
  1955. {
  1956. If ((PCRC & 0x80))
  1957. {
  1958. Return (0x09)
  1959. }
  1960. Else
  1961. {
  1962. Return (0x0B)
  1963. }
  1964. }
  1965. }
  1966.  
  1967. Device (LNKD)
  1968. {
  1969. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  1970. Name (_UID, 0x04) // _UID: Unique ID
  1971. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  1972. {
  1973. PDRC |= 0x80
  1974. }
  1975.  
  1976. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  1977. {
  1978. Return (PRSD) /* \_SB_.PRSD */
  1979. }
  1980.  
  1981. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  1982. {
  1983. Name (RTLD, ResourceTemplate ()
  1984. {
  1985. IRQ (Level, ActiveLow, Shared, )
  1986. {}
  1987. })
  1988. CreateWordField (RTLD, One, IRQ0)
  1989. IRQ0 = Zero
  1990. IRQ0 = (One << (PDRC & 0x0F))
  1991. Return (RTLD) /* \_SB_.LNKD._CRS.RTLD */
  1992. }
  1993.  
  1994. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  1995. {
  1996. CreateWordField (Arg0, One, IRQ0)
  1997. FindSetRightBit (IRQ0, Local0)
  1998. Local0--
  1999. PDRC = Local0
  2000. }
  2001.  
  2002. Method (_STA, 0, Serialized) // _STA: Status
  2003. {
  2004. If ((PDRC & 0x80))
  2005. {
  2006. Return (0x09)
  2007. }
  2008. Else
  2009. {
  2010. Return (0x0B)
  2011. }
  2012. }
  2013. }
  2014.  
  2015. Device (LNKE)
  2016. {
  2017. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  2018. Name (_UID, 0x05) // _UID: Unique ID
  2019. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2020. {
  2021. PERC |= 0x80
  2022. }
  2023.  
  2024. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2025. {
  2026. Return (PRSE) /* \_SB_.PRSE */
  2027. }
  2028.  
  2029. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2030. {
  2031. Name (RTLE, ResourceTemplate ()
  2032. {
  2033. IRQ (Level, ActiveLow, Shared, )
  2034. {}
  2035. })
  2036. CreateWordField (RTLE, One, IRQ0)
  2037. IRQ0 = Zero
  2038. IRQ0 = (One << (PERC & 0x0F))
  2039. Return (RTLE) /* \_SB_.LNKE._CRS.RTLE */
  2040. }
  2041.  
  2042. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2043. {
  2044. CreateWordField (Arg0, One, IRQ0)
  2045. FindSetRightBit (IRQ0, Local0)
  2046. Local0--
  2047. PERC = Local0
  2048. }
  2049.  
  2050. Method (_STA, 0, Serialized) // _STA: Status
  2051. {
  2052. If ((PERC & 0x80))
  2053. {
  2054. Return (0x09)
  2055. }
  2056. Else
  2057. {
  2058. Return (0x0B)
  2059. }
  2060. }
  2061. }
  2062.  
  2063. Device (LNKF)
  2064. {
  2065. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  2066. Name (_UID, 0x06) // _UID: Unique ID
  2067. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2068. {
  2069. PFRC |= 0x80
  2070. }
  2071.  
  2072. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2073. {
  2074. Return (PRSF) /* \_SB_.PRSF */
  2075. }
  2076.  
  2077. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2078. {
  2079. Name (RTLF, ResourceTemplate ()
  2080. {
  2081. IRQ (Level, ActiveLow, Shared, )
  2082. {}
  2083. })
  2084. CreateWordField (RTLF, One, IRQ0)
  2085. IRQ0 = Zero
  2086. IRQ0 = (One << (PFRC & 0x0F))
  2087. Return (RTLF) /* \_SB_.LNKF._CRS.RTLF */
  2088. }
  2089.  
  2090. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2091. {
  2092. CreateWordField (Arg0, One, IRQ0)
  2093. FindSetRightBit (IRQ0, Local0)
  2094. Local0--
  2095. PFRC = Local0
  2096. }
  2097.  
  2098. Method (_STA, 0, Serialized) // _STA: Status
  2099. {
  2100. If ((PFRC & 0x80))
  2101. {
  2102. Return (0x09)
  2103. }
  2104. Else
  2105. {
  2106. Return (0x0B)
  2107. }
  2108. }
  2109. }
  2110.  
  2111. Device (LNKG)
  2112. {
  2113. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  2114. Name (_UID, 0x07) // _UID: Unique ID
  2115. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2116. {
  2117. PGRC |= 0x80
  2118. }
  2119.  
  2120. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2121. {
  2122. Return (PRSG) /* \_SB_.PRSG */
  2123. }
  2124.  
  2125. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2126. {
  2127. Name (RTLG, ResourceTemplate ()
  2128. {
  2129. IRQ (Level, ActiveLow, Shared, )
  2130. {}
  2131. })
  2132. CreateWordField (RTLG, One, IRQ0)
  2133. IRQ0 = Zero
  2134. IRQ0 = (One << (PGRC & 0x0F))
  2135. Return (RTLG) /* \_SB_.LNKG._CRS.RTLG */
  2136. }
  2137.  
  2138. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2139. {
  2140. CreateWordField (Arg0, One, IRQ0)
  2141. FindSetRightBit (IRQ0, Local0)
  2142. Local0--
  2143. PGRC = Local0
  2144. }
  2145.  
  2146. Method (_STA, 0, Serialized) // _STA: Status
  2147. {
  2148. If ((PGRC & 0x80))
  2149. {
  2150. Return (0x09)
  2151. }
  2152. Else
  2153. {
  2154. Return (0x0B)
  2155. }
  2156. }
  2157. }
  2158.  
  2159. Device (LNKH)
  2160. {
  2161. Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */) // _HID: Hardware ID
  2162. Name (_UID, 0x08) // _UID: Unique ID
  2163. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2164. {
  2165. PHRC |= 0x80
  2166. }
  2167.  
  2168. Method (_PRS, 0, Serialized) // _PRS: Possible Resource Settings
  2169. {
  2170. Return (PRSH) /* \_SB_.PRSH */
  2171. }
  2172.  
  2173. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2174. {
  2175. Name (RTLH, ResourceTemplate ()
  2176. {
  2177. IRQ (Level, ActiveLow, Shared, )
  2178. {}
  2179. })
  2180. CreateWordField (RTLH, One, IRQ0)
  2181. IRQ0 = Zero
  2182. IRQ0 = (One << (PHRC & 0x0F))
  2183. Return (RTLH) /* \_SB_.LNKH._CRS.RTLH */
  2184. }
  2185.  
  2186. Method (_SRS, 1, Serialized) // _SRS: Set Resource Settings
  2187. {
  2188. CreateWordField (Arg0, One, IRQ0)
  2189. FindSetRightBit (IRQ0, Local0)
  2190. Local0--
  2191. PHRC = Local0
  2192. }
  2193.  
  2194. Method (_STA, 0, Serialized) // _STA: Status
  2195. {
  2196. If ((PHRC & 0x80))
  2197. {
  2198. Return (0x09)
  2199. }
  2200. Else
  2201. {
  2202. Return (0x0B)
  2203. }
  2204. }
  2205. }
  2206. }
  2207.  
  2208. OperationRegion (LPC0, PCI_Config, Zero, 0xC0)
  2209. Field (LPC0, AnyAcc, NoLock, Preserve)
  2210. {
  2211. Offset (0x08),
  2212. SRID, 8,
  2213. Offset (0x80),
  2214. C1EN, 1,
  2215. Offset (0x84)
  2216. }
  2217.  
  2218. Device (FWHD)
  2219. {
  2220. Name (_HID, EisaId ("INT0800") /* Intel 82802 Firmware Hub Device */) // _HID: Hardware ID
  2221. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2222. {
  2223. Memory32Fixed (ReadOnly,
  2224. 0xFF000000, // Address Base
  2225. 0x01000000, // Address Length
  2226. )
  2227. })
  2228. }
  2229.  
  2230. Scope (\_SB)
  2231. {
  2232. Device (RTC)
  2233. {
  2234. Name (_HID, EisaId ("PNP0B00") /* AT Real-Time Clock */) // _HID: Hardware ID
  2235. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2236. {
  2237. IO (Decode16,
  2238. 0x0070, // Range Minimum
  2239. 0x0070, // Range Maximum
  2240. 0x01, // Alignment
  2241. 0x08, // Length
  2242. )
  2243. })
  2244. }
  2245.  
  2246. Device (HPET)
  2247. {
  2248. Name (_HID, EisaId ("PNP0103") /* HPET System Timer */) // _HID: Hardware ID
  2249. Name (_UID, Zero) // _UID: Unique ID
  2250. Method (_STA, 0, NotSerialized) // _STA: Status
  2251. {
  2252. Return (0x0F)
  2253. }
  2254.  
  2255. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2256. {
  2257. Name (RBUF, ResourceTemplate ()
  2258. {
  2259. Memory32Fixed (ReadWrite,
  2260. 0xFED00000, // Address Base
  2261. 0x00000400, // Address Length
  2262. )
  2263. Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
  2264. {
  2265. 0x00000008,
  2266. }
  2267. })
  2268. Name (GBUF, ResourceTemplate ()
  2269. {
  2270. Memory32Fixed (ReadWrite,
  2271. 0xFED00000, // Address Base
  2272. 0x00000400, // Address Length
  2273. )
  2274. Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
  2275. {
  2276. 0x00000008,
  2277. }
  2278. })
  2279. If ((OSID == One))
  2280. {
  2281. Return (RBUF) /* \_SB_.HPET._CRS.RBUF */
  2282. }
  2283.  
  2284. Return (GBUF) /* \_SB_.HPET._CRS.GBUF */
  2285. }
  2286. }
  2287. }
  2288.  
  2289. Device (IPIC)
  2290. {
  2291. Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */) // _HID: Hardware ID
  2292. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2293. {
  2294. IO (Decode16,
  2295. 0x0020, // Range Minimum
  2296. 0x0020, // Range Maximum
  2297. 0x01, // Alignment
  2298. 0x02, // Length
  2299. )
  2300. IO (Decode16,
  2301. 0x0024, // Range Minimum
  2302. 0x0024, // Range Maximum
  2303. 0x01, // Alignment
  2304. 0x02, // Length
  2305. )
  2306. IO (Decode16,
  2307. 0x0028, // Range Minimum
  2308. 0x0028, // Range Maximum
  2309. 0x01, // Alignment
  2310. 0x02, // Length
  2311. )
  2312. IO (Decode16,
  2313. 0x002C, // Range Minimum
  2314. 0x002C, // Range Maximum
  2315. 0x01, // Alignment
  2316. 0x02, // Length
  2317. )
  2318. IO (Decode16,
  2319. 0x0030, // Range Minimum
  2320. 0x0030, // Range Maximum
  2321. 0x01, // Alignment
  2322. 0x02, // Length
  2323. )
  2324. IO (Decode16,
  2325. 0x0034, // Range Minimum
  2326. 0x0034, // Range Maximum
  2327. 0x01, // Alignment
  2328. 0x02, // Length
  2329. )
  2330. IO (Decode16,
  2331. 0x0038, // Range Minimum
  2332. 0x0038, // Range Maximum
  2333. 0x01, // Alignment
  2334. 0x02, // Length
  2335. )
  2336. IO (Decode16,
  2337. 0x003C, // Range Minimum
  2338. 0x003C, // Range Maximum
  2339. 0x01, // Alignment
  2340. 0x02, // Length
  2341. )
  2342. IO (Decode16,
  2343. 0x00A0, // Range Minimum
  2344. 0x00A0, // Range Maximum
  2345. 0x01, // Alignment
  2346. 0x02, // Length
  2347. )
  2348. IO (Decode16,
  2349. 0x00A4, // Range Minimum
  2350. 0x00A4, // Range Maximum
  2351. 0x01, // Alignment
  2352. 0x02, // Length
  2353. )
  2354. IO (Decode16,
  2355. 0x00A8, // Range Minimum
  2356. 0x00A8, // Range Maximum
  2357. 0x01, // Alignment
  2358. 0x02, // Length
  2359. )
  2360. IO (Decode16,
  2361. 0x00AC, // Range Minimum
  2362. 0x00AC, // Range Maximum
  2363. 0x01, // Alignment
  2364. 0x02, // Length
  2365. )
  2366. IO (Decode16,
  2367. 0x00B0, // Range Minimum
  2368. 0x00B0, // Range Maximum
  2369. 0x01, // Alignment
  2370. 0x02, // Length
  2371. )
  2372. IO (Decode16,
  2373. 0x00B4, // Range Minimum
  2374. 0x00B4, // Range Maximum
  2375. 0x01, // Alignment
  2376. 0x02, // Length
  2377. )
  2378. IO (Decode16,
  2379. 0x00B8, // Range Minimum
  2380. 0x00B8, // Range Maximum
  2381. 0x01, // Alignment
  2382. 0x02, // Length
  2383. )
  2384. IO (Decode16,
  2385. 0x00BC, // Range Minimum
  2386. 0x00BC, // Range Maximum
  2387. 0x01, // Alignment
  2388. 0x02, // Length
  2389. )
  2390. IO (Decode16,
  2391. 0x04D0, // Range Minimum
  2392. 0x04D0, // Range Maximum
  2393. 0x01, // Alignment
  2394. 0x02, // Length
  2395. )
  2396. IRQNoFlags ()
  2397. {2}
  2398. })
  2399. }
  2400.  
  2401. Device (LDRC)
  2402. {
  2403. Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
  2404. Name (_UID, 0x02) // _UID: Unique ID
  2405. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2406. {
  2407. IO (Decode16,
  2408. 0x004E, // Range Minimum
  2409. 0x004E, // Range Maximum
  2410. 0x01, // Alignment
  2411. 0x02, // Length
  2412. )
  2413. IO (Decode16,
  2414. 0x0061, // Range Minimum
  2415. 0x0061, // Range Maximum
  2416. 0x01, // Alignment
  2417. 0x01, // Length
  2418. )
  2419. IO (Decode16,
  2420. 0x0063, // Range Minimum
  2421. 0x0063, // Range Maximum
  2422. 0x01, // Alignment
  2423. 0x01, // Length
  2424. )
  2425. IO (Decode16,
  2426. 0x0065, // Range Minimum
  2427. 0x0065, // Range Maximum
  2428. 0x01, // Alignment
  2429. 0x01, // Length
  2430. )
  2431. IO (Decode16,
  2432. 0x0067, // Range Minimum
  2433. 0x0067, // Range Maximum
  2434. 0x01, // Alignment
  2435. 0x01, // Length
  2436. )
  2437. IO (Decode16,
  2438. 0x0070, // Range Minimum
  2439. 0x0070, // Range Maximum
  2440. 0x01, // Alignment
  2441. 0x01, // Length
  2442. )
  2443. IO (Decode16,
  2444. 0x0080, // Range Minimum
  2445. 0x0080, // Range Maximum
  2446. 0x01, // Alignment
  2447. 0x10, // Length
  2448. )
  2449. IO (Decode16,
  2450. 0x0092, // Range Minimum
  2451. 0x0092, // Range Maximum
  2452. 0x01, // Alignment
  2453. 0x01, // Length
  2454. )
  2455. IO (Decode16,
  2456. 0x00B2, // Range Minimum
  2457. 0x00B2, // Range Maximum
  2458. 0x01, // Alignment
  2459. 0x02, // Length
  2460. )
  2461. IO (Decode16,
  2462. 0x0680, // Range Minimum
  2463. 0x0680, // Range Maximum
  2464. 0x01, // Alignment
  2465. 0x20, // Length
  2466. )
  2467. IO (Decode16,
  2468. 0x0400, // Range Minimum
  2469. 0x0400, // Range Maximum
  2470. 0x01, // Alignment
  2471. 0x80, // Length
  2472. )
  2473. IO (Decode16,
  2474. 0x0500, // Range Minimum
  2475. 0x0500, // Range Maximum
  2476. 0x01, // Alignment
  2477. 0xFF, // Length
  2478. )
  2479. })
  2480. }
  2481.  
  2482. Device (TIMR)
  2483. {
  2484. Name (_HID, EisaId ("PNP0100") /* PC-class System Timer */) // _HID: Hardware ID
  2485. Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
  2486. {
  2487. IO (Decode16,
  2488. 0x0040, // Range Minimum
  2489. 0x0040, // Range Maximum
  2490. 0x01, // Alignment
  2491. 0x04, // Length
  2492. )
  2493. IO (Decode16,
  2494. 0x0050, // Range Minimum
  2495. 0x0050, // Range Maximum
  2496. 0x10, // Alignment
  2497. 0x04, // Length
  2498. )
  2499. IRQNoFlags ()
  2500. {0}
  2501. })
  2502. }
  2503.  
  2504. Device (IURT)
  2505. {
  2506. Name (_HID, EisaId ("PNP0501") /* 16550A-compatible COM Serial Port */) // _HID: Hardware ID
  2507. Name (_UID, One) // _UID: Unique ID
  2508. Method (_STA, 0, Serialized) // _STA: Status
  2509. {
  2510. If ((USEL == Zero))
  2511. {
  2512. UI4E = One
  2513. C1EN = One
  2514. Return (0x0F)
  2515. }
  2516.  
  2517. Return (Zero)
  2518. }
  2519.  
  2520. Method (_DIS, 0, Serialized) // _DIS: Disable Device
  2521. {
  2522. If (((BDID != One) && ((BDID != 0x0A) &&
  2523. (BDID != 0x09))))
  2524. {
  2525. UI4E = Zero
  2526. C1EN = Zero
  2527. }
  2528. }
  2529.  
  2530. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  2531. {
  2532. Name (BUF0, ResourceTemplate ()
  2533. {
  2534. IO (Decode16,
  2535. 0x03F8, // Range Minimum
  2536. 0x03F8, // Range Maximum
  2537. 0x01, // Alignment
  2538. 0x08, // Length
  2539. )
  2540. IRQNoFlags ()
  2541. {4}
  2542. })
  2543. Return (BUF0) /* \_SB_.PCI0.LPCB.IURT._CRS.BUF0 */
  2544. }
  2545. }
  2546. }
  2547.  
  2548. Device (PISH)
  2549. {
  2550. Name (_ADR, 0x000A0000) // _ADR: Address
  2551. }
  2552.  
  2553. Device (D006)
  2554. {
  2555. Name (_ADR, 0x000B0000) // _ADR: Address
  2556. }
  2557.  
  2558. Device (RP01)
  2559. {
  2560. Name (_ADR, 0x001C0000) // _ADR: Address
  2561. OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  2562. Field (PXCS, AnyAcc, NoLock, Preserve)
  2563. {
  2564. Offset (0x10),
  2565. L0SE, 1,
  2566. Offset (0x11),
  2567. Offset (0x12),
  2568. , 13,
  2569. LASX, 1,
  2570. Offset (0x1A),
  2571. ABPX, 1,
  2572. , 2,
  2573. PDCX, 1,
  2574. , 2,
  2575. PDSX, 1,
  2576. Offset (0x1B),
  2577. Offset (0x20),
  2578. Offset (0x22),
  2579. PSPX, 1,
  2580. Offset (0x98),
  2581. , 30,
  2582. HPEX, 1,
  2583. PMEX, 1
  2584. }
  2585.  
  2586. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  2587. {
  2588. Offset (0x9C),
  2589. , 30,
  2590. HPSX, 1,
  2591. PMSX, 1
  2592. }
  2593.  
  2594. Device (PXSX)
  2595. {
  2596. Name (_ADR, Zero) // _ADR: Address
  2597. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  2598. {
  2599. }
  2600. }
  2601.  
  2602. Method (HPME, 0, Serialized)
  2603. {
  2604. If (PMSX)
  2605. {
  2606. Local0 = 0xC8
  2607. While (Local0)
  2608. {
  2609. PMSX = One
  2610. If (PMSX)
  2611. {
  2612. Local0--
  2613. }
  2614. Else
  2615. {
  2616. Local0 = Zero
  2617. }
  2618. }
  2619.  
  2620. Notify (PXSX, 0x02) // Device Wake
  2621. }
  2622. }
  2623.  
  2624. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  2625. {
  2626. }
  2627.  
  2628. Method (_S0W, 0, NotSerialized) // _S0W: S0 Device Wake State
  2629. {
  2630. Return (Zero)
  2631. }
  2632.  
  2633. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  2634. {
  2635. If (PICM)
  2636. {
  2637. Return (AR01) /* \_SB_.AR01 */
  2638. }
  2639.  
  2640. Return (PR01) /* \_SB_.PR01 */
  2641. }
  2642.  
  2643. Device (D00B)
  2644. {
  2645. Name (_ADR, 0xFF) // _ADR: Address
  2646. }
  2647. }
  2648.  
  2649. Device (RP02)
  2650. {
  2651. Name (_ADR, 0x001C0001) // _ADR: Address
  2652. OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  2653. Field (PXCS, AnyAcc, NoLock, Preserve)
  2654. {
  2655. Offset (0x10),
  2656. L0SE, 1,
  2657. Offset (0x11),
  2658. Offset (0x12),
  2659. , 13,
  2660. LASX, 1,
  2661. Offset (0x1A),
  2662. ABPX, 1,
  2663. , 2,
  2664. PDCX, 1,
  2665. , 2,
  2666. PDSX, 1,
  2667. Offset (0x1B),
  2668. Offset (0x20),
  2669. Offset (0x22),
  2670. PSPX, 1,
  2671. Offset (0x98),
  2672. , 30,
  2673. HPEX, 1,
  2674. PMEX, 1
  2675. }
  2676.  
  2677. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  2678. {
  2679. Offset (0x9C),
  2680. , 30,
  2681. HPSX, 1,
  2682. PMSX, 1
  2683. }
  2684.  
  2685. Device (PXSX)
  2686. {
  2687. Name (_ADR, Zero) // _ADR: Address
  2688. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  2689. {
  2690. }
  2691.  
  2692. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  2693. {
  2694. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  2695. If ((Arg0 == ToUUID ("1730e71d-e5dd-4a34-be57-4d76b6a2fe37")))
  2696. {
  2697. If ((Arg2 == Zero))
  2698. {
  2699. If ((Arg1 == Zero))
  2700. {
  2701. Return (Buffer (One)
  2702. {
  2703. 0x03 /* . */
  2704. })
  2705. }
  2706. Else
  2707. {
  2708. Return (Buffer (One)
  2709. {
  2710. 0x00 /* . */
  2711. })
  2712. }
  2713. }
  2714.  
  2715. If ((Arg2 == One))
  2716. {
  2717. While (One)
  2718. {
  2719. _T_0 = DerefOf (Arg3 [Zero])
  2720. If ((_T_0 == Zero))
  2721. {
  2722. ^^^HIDD.HPEM (0x1B)
  2723. }
  2724. ElseIf ((_T_0 == One))
  2725. {
  2726. ^^^HIDD.HPEM (0x0B)
  2727. }
  2728.  
  2729. Break
  2730. }
  2731.  
  2732. Return (Zero)
  2733. }
  2734.  
  2735. Return (Zero)
  2736. }
  2737. Else
  2738. {
  2739. Return (Zero)
  2740. }
  2741. }
  2742. }
  2743.  
  2744. Method (HPME, 0, Serialized)
  2745. {
  2746. If (PMSX)
  2747. {
  2748. Local0 = 0xC8
  2749. While (Local0)
  2750. {
  2751. PMSX = One
  2752. If (PMSX)
  2753. {
  2754. Local0--
  2755. }
  2756. Else
  2757. {
  2758. Local0 = Zero
  2759. }
  2760. }
  2761.  
  2762. Notify (PXSX, 0x02) // Device Wake
  2763. }
  2764. }
  2765.  
  2766. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  2767. {
  2768. If (PICM)
  2769. {
  2770. Return (AR02) /* \_SB_.AR02 */
  2771. }
  2772.  
  2773. Return (PR02) /* \_SB_.PR02 */
  2774. }
  2775.  
  2776. Device (D00C)
  2777. {
  2778. Name (_ADR, 0xFF) // _ADR: Address
  2779. }
  2780. }
  2781.  
  2782. Device (RP03)
  2783. {
  2784. Name (_ADR, 0x001C0002) // _ADR: Address
  2785. OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  2786. Field (PXCS, AnyAcc, NoLock, Preserve)
  2787. {
  2788. Offset (0x10),
  2789. L0SE, 1,
  2790. Offset (0x11),
  2791. Offset (0x12),
  2792. , 13,
  2793. LASX, 1,
  2794. Offset (0x1A),
  2795. ABPX, 1,
  2796. , 2,
  2797. PDCX, 1,
  2798. , 2,
  2799. PDSX, 1,
  2800. Offset (0x1B),
  2801. Offset (0x20),
  2802. Offset (0x22),
  2803. PSPX, 1,
  2804. Offset (0x98),
  2805. , 30,
  2806. HPEX, 1,
  2807. PMEX, 1
  2808. }
  2809.  
  2810. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  2811. {
  2812. Offset (0x9C),
  2813. , 30,
  2814. HPSX, 1,
  2815. PMSX, 1
  2816. }
  2817.  
  2818. Device (PXSX)
  2819. {
  2820. Name (_ADR, Zero) // _ADR: Address
  2821. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  2822. {
  2823. }
  2824. }
  2825.  
  2826. Method (HPME, 0, Serialized)
  2827. {
  2828. If (PMSX)
  2829. {
  2830. Local0 = 0xC8
  2831. While (Local0)
  2832. {
  2833. PMSX = One
  2834. If (PMSX)
  2835. {
  2836. Local0--
  2837. }
  2838. Else
  2839. {
  2840. Local0 = Zero
  2841. }
  2842. }
  2843.  
  2844. Notify (PXSX, 0x02) // Device Wake
  2845. }
  2846. }
  2847.  
  2848. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  2849. {
  2850. If (PICM)
  2851. {
  2852. Return (AR03) /* \_SB_.AR03 */
  2853. }
  2854.  
  2855. Return (PR03) /* \_SB_.PR03 */
  2856. }
  2857.  
  2858. Device (D00D)
  2859. {
  2860. Name (_ADR, 0xFF) // _ADR: Address
  2861. }
  2862. }
  2863.  
  2864. Device (RP04)
  2865. {
  2866. Name (_ADR, 0x001C0003) // _ADR: Address
  2867. OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  2868. Field (PXCS, AnyAcc, NoLock, Preserve)
  2869. {
  2870. Offset (0x10),
  2871. L0SE, 1,
  2872. Offset (0x11),
  2873. Offset (0x12),
  2874. , 13,
  2875. LASX, 1,
  2876. Offset (0x1A),
  2877. ABPX, 1,
  2878. , 2,
  2879. PDCX, 1,
  2880. , 2,
  2881. PDSX, 1,
  2882. Offset (0x1B),
  2883. Offset (0x20),
  2884. Offset (0x22),
  2885. PSPX, 1,
  2886. Offset (0x98),
  2887. , 30,
  2888. HPEX, 1,
  2889. PMEX, 1
  2890. }
  2891.  
  2892. Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  2893. {
  2894. Offset (0x9C),
  2895. , 30,
  2896. HPSX, 1,
  2897. PMSX, 1
  2898. }
  2899.  
  2900. Device (PXSX)
  2901. {
  2902. Name (_ADR, Zero) // _ADR: Address
  2903. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  2904. {
  2905. }
  2906. }
  2907.  
  2908. Method (HPME, 0, Serialized)
  2909. {
  2910. If (PMSX)
  2911. {
  2912. Local0 = 0xC8
  2913. While (Local0)
  2914. {
  2915. PMSX = One
  2916. If (PMSX)
  2917. {
  2918. Local0--
  2919. }
  2920. Else
  2921. {
  2922. Local0 = Zero
  2923. }
  2924. }
  2925.  
  2926. Notify (PXSX, 0x02) // Device Wake
  2927. }
  2928. }
  2929.  
  2930. Method (_PRT, 0, NotSerialized) // _PRT: PCI Routing Table
  2931. {
  2932. If (PICM)
  2933. {
  2934. Return (AR04) /* \_SB_.AR04 */
  2935. }
  2936.  
  2937. Return (PR04) /* \_SB_.PR04 */
  2938. }
  2939.  
  2940. Device (D00E)
  2941. {
  2942. Name (_ADR, 0xFF) // _ADR: Address
  2943. }
  2944. }
  2945.  
  2946. Device (D00F)
  2947. {
  2948. Name (_ADR, 0x00100000) // _ADR: Address
  2949. }
  2950.  
  2951. Device (D010)
  2952. {
  2953. Name (_ADR, 0x00110000) // _ADR: Address
  2954. }
  2955.  
  2956. Device (D011)
  2957. {
  2958. Name (_ADR, 0x00120000) // _ADR: Address
  2959. }
  2960.  
  2961. Device (XHC1)
  2962. {
  2963. Name (_ADR, 0x00140000) // _ADR: Address
  2964. }
  2965.  
  2966. Device (D013)
  2967. {
  2968. Name (_ADR, 0x00150000) // _ADR: Address
  2969. }
  2970.  
  2971. Device (D014)
  2972. {
  2973. Name (_ADR, 0x00160000) // _ADR: Address
  2974. }
  2975.  
  2976. Device (D015)
  2977. {
  2978. Name (_ADR, 0x00180000) // _ADR: Address
  2979. }
  2980.  
  2981. Device (D016)
  2982. {
  2983. Name (_ADR, 0x00180001) // _ADR: Address
  2984. }
  2985.  
  2986. Device (D017)
  2987. {
  2988. Name (_ADR, 0x00180002) // _ADR: Address
  2989. }
  2990.  
  2991. Device (D018)
  2992. {
  2993. Name (_ADR, 0x00180003) // _ADR: Address
  2994. }
  2995.  
  2996. Device (D019)
  2997. {
  2998. Name (_ADR, 0x00180004) // _ADR: Address
  2999. }
  3000.  
  3001. Device (D01A)
  3002. {
  3003. Name (_ADR, 0x00180005) // _ADR: Address
  3004. }
  3005.  
  3006. Device (D01B)
  3007. {
  3008. Name (_ADR, 0x00180006) // _ADR: Address
  3009. }
  3010.  
  3011. Device (D01C)
  3012. {
  3013. Name (_ADR, 0x00180007) // _ADR: Address
  3014. }
  3015.  
  3016. Device (SEC0)
  3017. {
  3018. Name (_ADR, 0x001A0000) // _ADR: Address
  3019. }
  3020.  
  3021. Device (D01E)
  3022. {
  3023. Name (_ADR, 0x001E0000) // _ADR: Address
  3024. }
  3025.  
  3026. Device (D01F)
  3027. {
  3028. Name (_ADR, 0x001E0001) // _ADR: Address
  3029. }
  3030.  
  3031. Device (D020)
  3032. {
  3033. Name (_ADR, 0x001E0002) // _ADR: Address
  3034. }
  3035.  
  3036. Device (D021)
  3037. {
  3038. Name (_ADR, 0x001E0003) // _ADR: Address
  3039. }
  3040.  
  3041. Device (D022)
  3042. {
  3043. Name (_ADR, 0x001E0004) // _ADR: Address
  3044. }
  3045.  
  3046. Device (D023)
  3047. {
  3048. Name (_ADR, 0x001E0005) // _ADR: Address
  3049. }
  3050.  
  3051. Device (D024)
  3052. {
  3053. Name (_ADR, 0x001E0006) // _ADR: Address
  3054. }
  3055.  
  3056. Device (D025)
  3057. {
  3058. Name (_ADR, 0x001E0007) // _ADR: Address
  3059. }
  3060. }
  3061. }
  3062.  
  3063. Scope (_GPE)
  3064. {
  3065. }
  3066.  
  3067. Name (_S0, Package (0x04) // _S0_: S0 System State
  3068. {
  3069. Zero,
  3070. Zero,
  3071. Zero,
  3072. Zero
  3073. })
  3074. Name (_S4, Package (0x04) // _S4_: S4 System State
  3075. {
  3076. 0x06,
  3077. Zero,
  3078. Zero,
  3079. Zero
  3080. })
  3081. Name (_S5, Package (0x04) // _S5_: S5 System State
  3082. {
  3083. 0x07,
  3084. Zero,
  3085. Zero,
  3086. Zero
  3087. })
  3088. Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep
  3089. {
  3090. If (Arg0)
  3091. {
  3092. PPTS (Arg0)
  3093. }
  3094. }
  3095.  
  3096. Method (_WAK, 1, NotSerialized) // _WAK: Wake
  3097. {
  3098. PWAK (Arg0)
  3099. Return (WAKP) /* \WAKP */
  3100. }
  3101.  
  3102. Scope (\)
  3103. {
  3104. OperationRegion (PMIO, SystemIO, PMBS, 0x46)
  3105. Field (PMIO, ByteAcc, NoLock, Preserve)
  3106. {
  3107. Offset (0x01),
  3108. PWBS, 1,
  3109. Offset (0x20),
  3110. , 13,
  3111. PMEB, 1,
  3112. Offset (0x30),
  3113. , 4,
  3114. SLPE, 1,
  3115. Offset (0x34),
  3116. , 4,
  3117. SLPS, 1,
  3118. Offset (0x35),
  3119. PM1S, 1,
  3120. Offset (0x42),
  3121. , 1,
  3122. GPEC, 1
  3123. }
  3124.  
  3125. Field (PMIO, ByteAcc, NoLock, WriteAsZeros)
  3126. {
  3127. Offset (0x20),
  3128. , 4,
  3129. PSCI, 1,
  3130. SCIS, 1
  3131. }
  3132.  
  3133. OperationRegion (PMCR, SystemMemory, PMCB, 0x0100)
  3134. Field (PMCR, DWordAcc, Lock, Preserve)
  3135. {
  3136. Offset (0x34),
  3137. L10D, 1,
  3138. L11D, 1,
  3139. L12D, 1,
  3140. L13D, 1,
  3141. L14D, 1,
  3142. L15D, 1,
  3143. L16D, 1,
  3144. L17D, 1,
  3145. SD1D, 1,
  3146. SD2D, 1,
  3147. SD3D, 1,
  3148. , 1,
  3149. , 1,
  3150. LPED, 1,
  3151. OTGD, 1,
  3152. Offset (0x36),
  3153. , 1,
  3154. , 1,
  3155. , 1,
  3156. , 1,
  3157. RP1D, 1,
  3158. RP2D, 1,
  3159. RP3D, 1,
  3160. RP4D, 1,
  3161. L20D, 1,
  3162. L21D, 1,
  3163. L22D, 1,
  3164. L23D, 1,
  3165. L24D, 1,
  3166. L25D, 1,
  3167. L26D, 1,
  3168. L27D, 1,
  3169. , 1,
  3170. , 1,
  3171. , 1,
  3172. , 1,
  3173. ISHD, 1,
  3174. Offset (0x3C),
  3175. Offset (0x60),
  3176. CKC0, 2,
  3177. CKF0, 1,
  3178. Offset (0x64),
  3179. CKC1, 2,
  3180. CKF1, 1,
  3181. Offset (0x68),
  3182. CKC2, 2,
  3183. CKF2, 1,
  3184. Offset (0x6C),
  3185. CKC3, 2,
  3186. CKF3, 1,
  3187. Offset (0x70),
  3188. CKC4, 2,
  3189. CKF4, 1,
  3190. Offset (0x74),
  3191. CKC5, 2,
  3192. CKF5, 1,
  3193. Offset (0x78),
  3194. Offset (0xA0),
  3195. PMCD, 32,
  3196. Offset (0xEC),
  3197. PMCC, 32
  3198. }
  3199.  
  3200. OperationRegion (PPSC, SystemMemory, PMCP, 0x08)
  3201. Field (PPSC, DWordAcc, Lock, Preserve)
  3202. {
  3203. DM1P, 1,
  3204. PW1P, 1,
  3205. PW2P, 1,
  3206. UR1P, 1,
  3207. UR2P, 1,
  3208. SP1P, 1,
  3209. SP2P, 1,
  3210. SP3P, 1,
  3211. EMMP, 1,
  3212. SDI1, 1,
  3213. SDI2, 1,
  3214. , 2,
  3215. LPEP, 1,
  3216. , 1,
  3217. Offset (0x02),
  3218. , 1,
  3219. SATP, 1,
  3220. USBP, 1,
  3221. SECP, 1,
  3222. PRP1, 1,
  3223. PRP2, 1,
  3224. PRP3, 1,
  3225. PRP4, 1,
  3226. DM2P, 1,
  3227. IC1P, 1,
  3228. IC2P, 1,
  3229. IC3P, 1,
  3230. IC4P, 1,
  3231. IC5P, 1,
  3232. IC6P, 1,
  3233. IC7P, 1,
  3234. , 2,
  3235. ISHP, 1,
  3236. Offset (0x08)
  3237. }
  3238. }
  3239.  
  3240. Scope (_SB.PCI0)
  3241. {
  3242. Scope (XHC1)
  3243. {
  3244. Name (_DDN, "Baytrail XHCI controller (CCG core/Host only)") // _DDN: DOS Device Name
  3245. Name (XHD3, Zero)
  3246. Name (XCD3, Zero)
  3247. Name (_STR, Unicode ("Baytrail XHCI controller (CCG core/Host only)")) // _STR: Description String
  3248. Name (MSET, Zero)
  3249. Name (DDST, Zero)
  3250. Name (XFLT, Zero)
  3251. Method (MINF, 0, NotSerialized)
  3252. {
  3253. If ((OSYS != 0x07DF))
  3254. {
  3255. Return (Package (0x03)
  3256. {
  3257. PSSE,
  3258. 0x05,
  3259. MODM
  3260. })
  3261. }
  3262. }
  3263.  
  3264. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  3265. {
  3266. }
  3267.  
  3268. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  3269. {
  3270. }
  3271.  
  3272. OperationRegion (XHOP, SystemMemory, 0xE00A0000, 0x40)
  3273. Field (XHOP, DWordAcc, NoLock, Preserve)
  3274. {
  3275. Offset (0x10),
  3276. XBAR, 32
  3277. }
  3278.  
  3279. OperationRegion (XOP1, SystemMemory, XBAR, 0x884C)
  3280. Field (XOP1, DWordAcc, NoLock, Preserve)
  3281. {
  3282. Offset (0x52C),
  3283. CCS, 1,
  3284. , 4,
  3285. PLS, 4,
  3286. PP, 1,
  3287. Offset (0x869C),
  3288. , 18,
  3289. D3HE, 1,
  3290. Offset (0x8808),
  3291. , 30,
  3292. S1PD, 1,
  3293. S1PU, 1
  3294. }
  3295.  
  3296. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  3297. {
  3298. If ((Arg0 == ToUUID ("ac340cb7-e901-45bf-b7e6-2b34ec931e23")))
  3299. {
  3300. If ((Arg1 == 0x03))
  3301. {
  3302. XFLT = Arg1
  3303. }
  3304.  
  3305. If ((Arg1 == 0x05))
  3306. {
  3307. If ((PSSE == One))
  3308. {
  3309. XCD3 = Zero
  3310. If ((XHD3 == One))
  3311. {
  3312. XHD3 = Zero
  3313. D3HE = Zero
  3314. Stall (0xFF)
  3315. ^^^FLDM.MOFF ()
  3316. S1PD = Zero
  3317. S1PU = One
  3318. S1PD = One
  3319. Stall (0xFF)
  3320. ^^^FLDM.MDON ()
  3321. S1PD = Zero
  3322. S1PU = Zero
  3323. S1PD = One
  3324. Stall (0xFF)
  3325. }
  3326.  
  3327. If ((((CCS == Zero) || (PP == Zero)) || ((
  3328. PLS >= 0x04) && (PLS <= 0x0F))))
  3329. {
  3330. D3HE = Zero
  3331. }
  3332. Else
  3333. {
  3334. D3HE = One
  3335. }
  3336. }
  3337. }
  3338.  
  3339. If ((Arg1 == 0x06))
  3340. {
  3341. If ((PSSE == One))
  3342. {
  3343. XCD3 = One
  3344. If ((((CCS == Zero) || (PP == Zero)) || ((
  3345. PLS >= 0x04) && (PLS <= 0x0F))))
  3346. {
  3347. D3HE = Zero
  3348. }
  3349. Else
  3350. {
  3351. D3HE = One
  3352. }
  3353. }
  3354. }
  3355. }
  3356. }
  3357.  
  3358. Method (_S0W, 0, NotSerialized) // _S0W: S0 Device Wake State
  3359. {
  3360. If (((OSID == 0x02) || (OSID == 0x04)))
  3361. {
  3362. Return (0x03)
  3363. }
  3364.  
  3365. If ((XFLT == Zero))
  3366. {
  3367. Return (Zero)
  3368. }
  3369. Else
  3370. {
  3371. Return (0x03)
  3372. }
  3373. }
  3374.  
  3375. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  3376. {
  3377. Name (UBUF, ResourceTemplate ()
  3378. {
  3379. GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
  3380. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  3381. )
  3382. { // Pin list
  3383. 0x004E
  3384. }
  3385. GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
  3386. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  3387. )
  3388. { // Pin list
  3389. 0x0007
  3390. }
  3391. })
  3392. Name (WBUF, ResourceTemplate ()
  3393. {
  3394. })
  3395. If (((BDID != One) && ((OSID == 0x02) || (OSID ==
  3396. 0x04))))
  3397. {
  3398. Return (UBUF) /* \_SB_.PCI0.XHC1._CRS.UBUF */
  3399. }
  3400. Else
  3401. {
  3402. Return (WBUF) /* \_SB_.PCI0.XHC1._CRS.WBUF */
  3403. }
  3404. }
  3405.  
  3406. OperationRegion (XHCR, PCI_Config, 0x75, One)
  3407. Field (XHCR, ByteAcc, NoLock, WriteAsZeros)
  3408. {
  3409. PMEE, 1,
  3410. , 6,
  3411. PMES, 1
  3412. }
  3413.  
  3414. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  3415. {
  3416. Return (Zero)
  3417. }
  3418.  
  3419. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  3420. {
  3421. }
  3422.  
  3423. Name (IPRW, Package (0x02)
  3424. {
  3425. 0x0D,
  3426. 0x04
  3427. })
  3428. Method (_PR3, 0, NotSerialized) // _PR3: Power Resources for D3hot
  3429. {
  3430. Return (Package (0x01)
  3431. {
  3432. USBC
  3433. })
  3434. }
  3435.  
  3436. Method (_STA, 0, NotSerialized) // _STA: Status
  3437. {
  3438. If ((XHCI != Zero))
  3439. {
  3440. Return (0x0F)
  3441. }
  3442. Else
  3443. {
  3444. Return (Zero)
  3445. }
  3446. }
  3447.  
  3448. OperationRegion (XPRT, PCI_Config, 0xD0, 0x10)
  3449. Field (XPRT, DWordAcc, NoLock, Preserve)
  3450. {
  3451. PR2, 32,
  3452. PR2M, 32,
  3453. PR3, 32,
  3454. PR3M, 32
  3455. }
  3456.  
  3457. Device (RHUB)
  3458. {
  3459. Name (_ADR, Zero) // _ADR: Address
  3460. Method (TPLD, 2, Serialized)
  3461. {
  3462. Name (PCKG, Package (0x01)
  3463. {
  3464. Buffer (0x10) {}
  3465. })
  3466. CreateField (DerefOf (PCKG [Zero]), Zero, 0x07, REV)
  3467. REV = One
  3468. CreateField (DerefOf (PCKG [Zero]), 0x40, One, VISI)
  3469. VISI = Arg0
  3470. CreateField (DerefOf (PCKG [Zero]), 0x57, 0x08, GPOS)
  3471. GPOS = Arg1
  3472. CreateField (DerefOf (PCKG [Zero]), 0x4A, 0x04, SHAP)
  3473. SHAP = One
  3474. CreateField (DerefOf (PCKG [Zero]), 0x20, 0x10, WID)
  3475. WID = 0x08
  3476. CreateField (DerefOf (PCKG [Zero]), 0x30, 0x10, HGT)
  3477. HGT = 0x03
  3478. Return (PCKG) /* \_SB_.PCI0.XHC1.RHUB.TPLD.PCKG */
  3479. }
  3480.  
  3481. Device (SSP1)
  3482. {
  3483. Name (_ADR, 0x08) // _ADR: Address
  3484. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  3485. {
  3486. Name (UPCP, Package (0x04)
  3487. {
  3488. Zero,
  3489. 0x06,
  3490. Zero,
  3491. Zero
  3492. })
  3493. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSP1._UPC.UPCP */
  3494. }
  3495.  
  3496. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  3497. {
  3498. Name (PLDP, Package (0x01)
  3499. {
  3500. Buffer (0x14)
  3501. {
  3502. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  3503. /* 0008 */ 0x4A, 0x19, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* J....... */
  3504. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  3505. }
  3506. })
  3507. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSP1._PLD.PLDP */
  3508. }
  3509. }
  3510.  
  3511. Device (HS01)
  3512. {
  3513. Name (_ADR, One) // _ADR: Address
  3514. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  3515. {
  3516. Name (UPCP, Package (0x04)
  3517. {
  3518. 0xFF,
  3519. 0x06,
  3520. Zero,
  3521. Zero
  3522. })
  3523. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HS01._UPC.UPCP */
  3524. }
  3525.  
  3526. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  3527. {
  3528. Name (PLDP, Package (0x01)
  3529. {
  3530. Buffer (0x14)
  3531. {
  3532. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  3533. /* 0008 */ 0x4B, 0x19, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* K....... */
  3534. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  3535. }
  3536. })
  3537. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HS01._PLD.PLDP */
  3538. }
  3539. }
  3540.  
  3541. Device (SSP2)
  3542. {
  3543. Name (_ADR, 0x09) // _ADR: Address
  3544. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  3545. {
  3546. Name (UPCD, Package (0x04)
  3547. {
  3548. Zero,
  3549. 0xFF,
  3550. Zero,
  3551. Zero
  3552. })
  3553. Name (UPCR, Package (0x04)
  3554. {
  3555. 0xFF,
  3556. 0x03,
  3557. Zero,
  3558. Zero
  3559. })
  3560. Name (UPCP, Package (0x04)
  3561. {
  3562. Zero,
  3563. 0xFF,
  3564. Zero,
  3565. Zero
  3566. })
  3567. If ((NUSB == One))
  3568. {
  3569. Return (UPCD) /* \_SB_.PCI0.XHC1.RHUB.SSP2._UPC.UPCD */
  3570. }
  3571. ElseIf ((BDID == 0x02))
  3572. {
  3573. Return (UPCR) /* \_SB_.PCI0.XHC1.RHUB.SSP2._UPC.UPCR */
  3574. }
  3575. Else
  3576. {
  3577. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSP2._UPC.UPCP */
  3578. }
  3579. }
  3580.  
  3581. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  3582. {
  3583. Name (PLDP, Package (0x01)
  3584. {
  3585. Buffer (0x14)
  3586. {
  3587. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  3588. /* 0008 */ 0x42, 0x08, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, /* B....... */
  3589. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  3590. }
  3591. })
  3592. Name (PLDR, Package (0x01)
  3593. {
  3594. Buffer (0x14)
  3595. {
  3596. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  3597. /* 0008 */ 0x43, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* C....... */
  3598. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  3599. }
  3600. })
  3601. If ((BDID == 0x02))
  3602. {
  3603. Return (PLDR) /* \_SB_.PCI0.XHC1.RHUB.SSP2._PLD.PLDR */
  3604. }
  3605. Else
  3606. {
  3607. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSP2._PLD.PLDP */
  3608. }
  3609. }
  3610. }
  3611.  
  3612. Device (HS02)
  3613. {
  3614. Name (_ADR, 0x02) // _ADR: Address
  3615. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  3616. {
  3617. Name (UPCD, Package (0x04)
  3618. {
  3619. Zero,
  3620. 0xFF,
  3621. Zero,
  3622. Zero
  3623. })
  3624. Name (UPCR, Package (0x04)
  3625. {
  3626. 0xFF,
  3627. 0x03,
  3628. Zero,
  3629. Zero
  3630. })
  3631. Name (UPCP, Package (0x04)
  3632. {
  3633. 0xFF,
  3634. 0xFF,
  3635. Zero,
  3636. Zero
  3637. })
  3638. If ((NUSB == One))
  3639. {
  3640. Return (UPCD) /* \_SB_.PCI0.XHC1.RHUB.HS02._UPC.UPCD */
  3641. }
  3642. ElseIf ((BDID == 0x02))
  3643. {
  3644. Return (UPCR) /* \_SB_.PCI0.XHC1.RHUB.HS02._UPC.UPCR */
  3645. }
  3646. Else
  3647. {
  3648. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HS02._UPC.UPCP */
  3649. }
  3650. }
  3651.  
  3652. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  3653. {
  3654. Name (PLDP, Package (0x01)
  3655. {
  3656. Buffer (0x14)
  3657. {
  3658. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  3659. /* 0008 */ 0x43, 0x08, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, /* C....... */
  3660. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  3661. }
  3662. })
  3663. Name (PLDR, Package (0x01)
  3664. {
  3665. Buffer (0x14)
  3666. {
  3667. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  3668. /* 0008 */ 0x43, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* C....... */
  3669. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  3670. }
  3671. })
  3672. If ((BDID == 0x02))
  3673. {
  3674. Return (PLDR) /* \_SB_.PCI0.XHC1.RHUB.HS02._PLD.PLDR */
  3675. }
  3676. Else
  3677. {
  3678. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HS02._PLD.PLDP */
  3679. }
  3680. }
  3681. }
  3682.  
  3683. Device (SSP3)
  3684. {
  3685. Name (_ADR, 0x0A) // _ADR: Address
  3686. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  3687. Name (_DEP, Package (0x02) // _DEP: Dependencies
  3688. {
  3689. GPO1,
  3690. ^^^I2C7.PMIC
  3691. })
  3692. Method (_STA, 0, NotSerialized) // _STA: Status
  3693. {
  3694. If ((PMID == Zero))
  3695. {
  3696. Return (0x0F)
  3697. }
  3698.  
  3699. Return (Zero)
  3700. }
  3701.  
  3702. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  3703. {
  3704. Name (UPCP, Package (0x04)
  3705. {
  3706. 0xFF,
  3707. 0xFF,
  3708. Zero,
  3709. Zero
  3710. })
  3711. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSP3._UPC.UPCP */
  3712. }
  3713.  
  3714. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  3715. {
  3716. Name (PLDP, Package (0x01)
  3717. {
  3718. Buffer (0x14)
  3719. {
  3720. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  3721. /* 0008 */ 0x30, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  3722. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  3723. }
  3724. })
  3725. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSP3._PLD.PLDP */
  3726. }
  3727. }
  3728.  
  3729. Device (HS03)
  3730. {
  3731. Name (_ADR, 0x03) // _ADR: Address
  3732. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  3733. Name (_DEP, Package (0x02) // _DEP: Dependencies
  3734. {
  3735. GPO1,
  3736. ^^^I2C7.PMIC
  3737. })
  3738. Method (_STA, 0, NotSerialized) // _STA: Status
  3739. {
  3740. If ((PMID == Zero))
  3741. {
  3742. Return (0x0F)
  3743. }
  3744.  
  3745. Return (Zero)
  3746. }
  3747.  
  3748. OperationRegion (BAD0, SystemMemory, 0xFED8C410, 0x08)
  3749. Field (BAD0, DWordAcc, NoLock, Preserve)
  3750. {
  3751. MRB0, 32,
  3752. MRB1, 32
  3753. }
  3754.  
  3755. OperationRegion (BAD1, SystemMemory, 0xFED8C400, 0x08)
  3756. Field (BAD1, DWordAcc, NoLock, Preserve)
  3757. {
  3758. MRP0, 32,
  3759. MRP1, 32
  3760. }
  3761.  
  3762. PowerResource (WWPR, 0x00, 0x0000)
  3763. {
  3764. Name (_DEP, Package (0x02) // _DEP: Dependencies
  3765. {
  3766. GPO1,
  3767. ^^^^I2C7.PMIC
  3768. })
  3769. Method (_STA, 0, NotSerialized) // _STA: Status
  3770. {
  3771. If ((^^^^^I2C7.PMIC.AVBG == One))
  3772. {
  3773. Return (^^^^^I2C7.PMIC.MOXX) /* \_SB_.PCI0.I2C7.PMIC.MOXX */
  3774. }
  3775.  
  3776. Return (Zero)
  3777. }
  3778.  
  3779. Method (_ON, 0, NotSerialized) // _ON_: Power On
  3780. {
  3781. If ((FMDM == Zero))
  3782. {
  3783. If ((OSID == One))
  3784. {
  3785. If ((^^^^^I2C7.PMIC.AVBG == One))
  3786. {
  3787. ^^^^^I2C7.PMIC.MOXX = One
  3788. Stall (0x0A)
  3789. }
  3790.  
  3791. If ((\_SB.GPO1.AVBL == One))
  3792. {
  3793. \_SB.GPO1.MRD3 = One
  3794. Stall (0x0A)
  3795. \_SB.GPO1.MPD3 = Zero
  3796. Stall (0x0A)
  3797. \_SB.GPO1.MPD3 = One
  3798. Stall (0x5B)
  3799. \_SB.GPO1.MPD3 = Zero
  3800. }
  3801. Else
  3802. {
  3803. MRB0 &= 0xFFFFFFFD
  3804. MRB0 |= 0x02
  3805. Stall (0x0A)
  3806. MRP0 &= 0xFFFFFFFD
  3807. MRP0 |= Zero
  3808. Stall (0x0A)
  3809. MRP0 &= 0xFFFFFFFD
  3810. MRP0 |= 0x02
  3811. Stall (0x5B)
  3812. MRP0 &= 0xFFFFFFFD
  3813. MRP0 |= Zero
  3814. }
  3815. }
  3816. }
  3817. }
  3818.  
  3819. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  3820. {
  3821. }
  3822. }
  3823.  
  3824. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  3825. {
  3826. WWPR
  3827. })
  3828. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  3829. {
  3830. WWPR
  3831. })
  3832. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  3833. {
  3834. WWPR
  3835. })
  3836. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  3837. {
  3838. Name (UPCP, Package (0x04)
  3839. {
  3840. 0xFF,
  3841. 0xFF,
  3842. Zero,
  3843. Zero
  3844. })
  3845. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HS03._UPC.UPCP */
  3846. }
  3847.  
  3848. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  3849. {
  3850. Return (Zero)
  3851. }
  3852.  
  3853. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  3854. {
  3855. Name (PLDP, Package (0x01)
  3856. {
  3857. Buffer (0x14)
  3858. {
  3859. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  3860. /* 0008 */ 0x30, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  3861. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  3862. }
  3863. })
  3864. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HS03._PLD.PLDP */
  3865. }
  3866.  
  3867. Device (MDM1)
  3868. {
  3869. Name (_ADR, 0x03) // _ADR: Address
  3870. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  3871. {
  3872. WWPR
  3873. })
  3874. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  3875. {
  3876. WWPR
  3877. })
  3878. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  3879. {
  3880. WWPR
  3881. })
  3882. }
  3883. }
  3884.  
  3885. Device (HS13)
  3886. {
  3887. Name (_ADR, 0x03) // _ADR: Address
  3888. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  3889. Name (_DEP, Package (0x02) // _DEP: Dependencies
  3890. {
  3891. GPO1,
  3892. ^^^I2C7.PMI5
  3893. })
  3894. Method (_STA, 0, NotSerialized) // _STA: Status
  3895. {
  3896. If ((PMID == 0x03))
  3897. {
  3898. Return (0x0F)
  3899. }
  3900.  
  3901. Return (Zero)
  3902. }
  3903.  
  3904. OperationRegion (BADR, SystemMemory, 0xFED8C410, 0x08)
  3905. Field (BADR, DWordAcc, NoLock, Preserve)
  3906. {
  3907. MRB0, 32,
  3908. MRB1, 32
  3909. }
  3910.  
  3911. OperationRegion (BAD1, SystemMemory, 0xFED8C400, 0x08)
  3912. Field (BAD1, DWordAcc, NoLock, Preserve)
  3913. {
  3914. MRP0, 32,
  3915. MRP1, 32
  3916. }
  3917.  
  3918. PowerResource (WWPR, 0x00, 0x0000)
  3919. {
  3920. Name (_DEP, Package (0x02) // _DEP: Dependencies
  3921. {
  3922. GPO1,
  3923. ^^^^I2C7.PMI5
  3924. })
  3925. Method (_STA, 0, NotSerialized) // _STA: Status
  3926. {
  3927. If (((OSID == One) && (^^^^^I2C7.PMI5.AVBG == One)))
  3928. {
  3929. Return (^^^^^I2C7.PMI5.MOXX) /* \_SB_.PCI0.I2C7.PMI5.MOXX */
  3930. }
  3931.  
  3932. Return (Zero)
  3933. }
  3934.  
  3935. Method (_ON, 0, NotSerialized) // _ON_: Power On
  3936. {
  3937. If ((FMDM == Zero))
  3938. {
  3939. If ((OSID == One))
  3940. {
  3941. If ((^^^^^I2C7.PMI5.AVBG == One))
  3942. {
  3943. ^^^^^I2C7.PMI5.MOXX = One
  3944. Stall (0x0A)
  3945. }
  3946.  
  3947. If ((\_SB.GPO1.AVBL == One))
  3948. {
  3949. \_SB.GPO1.MRD3 = One
  3950. Stall (0x0A)
  3951. \_SB.GPO1.MPD3 = Zero
  3952. Stall (0x0A)
  3953. \_SB.GPO1.MPD3 = One
  3954. Stall (0x5B)
  3955. \_SB.GPO1.MPD3 = Zero
  3956. }
  3957. Else
  3958. {
  3959. MRB0 &= 0xFFFFFFFD
  3960. MRB0 |= 0x02
  3961. Stall (0x0A)
  3962. MRP0 &= 0xFFFFFFFD
  3963. MRP0 |= Zero
  3964. Stall (0x0A)
  3965. MRP0 &= 0xFFFFFFFD
  3966. MRP0 |= 0x02
  3967. Stall (0x5B)
  3968. MRP0 &= 0xFFFFFFFD
  3969. MRP0 |= Zero
  3970. }
  3971. }
  3972. }
  3973. }
  3974.  
  3975. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  3976. {
  3977. }
  3978. }
  3979.  
  3980. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  3981. {
  3982. WWPR
  3983. })
  3984. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  3985. {
  3986. WWPR
  3987. })
  3988. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  3989. {
  3990. WWPR
  3991. })
  3992. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  3993. {
  3994. Name (UPCP, Package (0x04)
  3995. {
  3996. 0xFF,
  3997. 0xFF,
  3998. Zero,
  3999. Zero
  4000. })
  4001. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HS13._UPC.UPCP */
  4002. }
  4003.  
  4004. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  4005. {
  4006. Return (Zero)
  4007. }
  4008.  
  4009. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4010. {
  4011. Name (PLDP, Package (0x01)
  4012. {
  4013. Buffer (0x14)
  4014. {
  4015. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4016. /* 0008 */ 0x30, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4017. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4018. }
  4019. })
  4020. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HS13._PLD.PLDP */
  4021. }
  4022.  
  4023. Device (MDM1)
  4024. {
  4025. Name (_ADR, 0x03) // _ADR: Address
  4026. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4027. {
  4028. WWPR
  4029. })
  4030. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4031. {
  4032. WWPR
  4033. })
  4034. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4035. {
  4036. WWPR
  4037. })
  4038. }
  4039. }
  4040.  
  4041. Device (SSP4)
  4042. {
  4043. Name (_ADR, 0x0B) // _ADR: Address
  4044. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4045. {
  4046. Name (UPCP, Package (0x04)
  4047. {
  4048. 0xFF,
  4049. 0xFF,
  4050. Zero,
  4051. Zero
  4052. })
  4053. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSP4._UPC.UPCP */
  4054. }
  4055.  
  4056. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4057. {
  4058. Name (PLDP, Package (0x01)
  4059. {
  4060. Buffer (0x14)
  4061. {
  4062. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4063. /* 0008 */ 0x30, 0x08, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4064. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4065. }
  4066. })
  4067. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSP4._PLD.PLDP */
  4068. }
  4069. }
  4070.  
  4071. Device (HS04)
  4072. {
  4073. Name (_ADR, 0x04) // _ADR: Address
  4074. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4075. {
  4076. Name (UPCP, Package (0x04)
  4077. {
  4078. 0xFF,
  4079. 0xFF,
  4080. Zero,
  4081. Zero
  4082. })
  4083. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HS04._UPC.UPCP */
  4084. }
  4085.  
  4086. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4087. {
  4088. Name (PLDP, Package (0x01)
  4089. {
  4090. Buffer (0x14)
  4091. {
  4092. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4093. /* 0008 */ 0x30, 0x08, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4094. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4095. }
  4096. })
  4097. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HS04._PLD.PLDP */
  4098. }
  4099. }
  4100.  
  4101. Device (SSC2)
  4102. {
  4103. Name (_ADR, 0x0D) // _ADR: Address
  4104. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4105. {
  4106. Name (UPCP, Package (0x04)
  4107. {
  4108. 0xFF,
  4109. 0xFF,
  4110. Zero,
  4111. Zero
  4112. })
  4113. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSC2._UPC.UPCP */
  4114. }
  4115.  
  4116. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4117. {
  4118. Name (PLDP, Package (0x01)
  4119. {
  4120. Buffer (0x14)
  4121. {
  4122. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4123. /* 0008 */ 0x30, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4124. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4125. }
  4126. })
  4127. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSC2._PLD.PLDP */
  4128. }
  4129. }
  4130.  
  4131. Device (HSC2)
  4132. {
  4133. Name (_ADR, 0x07) // _ADR: Address
  4134. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4135. {
  4136. Name (UPCP, Package (0x04)
  4137. {
  4138. 0xFF,
  4139. 0xFF,
  4140. Zero,
  4141. Zero
  4142. })
  4143. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HSC2._UPC.UPCP */
  4144. }
  4145.  
  4146. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4147. {
  4148. Name (PLDP, Package (0x01)
  4149. {
  4150. Buffer (0x14)
  4151. {
  4152. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4153. /* 0008 */ 0x30, 0x08, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4154. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4155. }
  4156. })
  4157. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HSC2._PLD.PLDP */
  4158. }
  4159. }
  4160.  
  4161. Device (SSC1)
  4162. {
  4163. Name (_ADR, 0x0C) // _ADR: Address
  4164. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  4165. Name (_DEP, Package (0x02) // _DEP: Dependencies
  4166. {
  4167. GPO1,
  4168. ^^^I2C7.PMIC
  4169. })
  4170. Method (_STA, 0, NotSerialized) // _STA: Status
  4171. {
  4172. If ((PMID == Zero))
  4173. {
  4174. Return (0x0F)
  4175. }
  4176.  
  4177. Return (Zero)
  4178. }
  4179.  
  4180. OperationRegion (BAD0, SystemMemory, 0xFED8C410, 0x08)
  4181. Field (BAD0, DWordAcc, NoLock, Preserve)
  4182. {
  4183. MRB0, 32,
  4184. MRB1, 32
  4185. }
  4186.  
  4187. OperationRegion (BAD1, SystemMemory, 0xFED8C400, 0x08)
  4188. Field (BAD1, DWordAcc, NoLock, Preserve)
  4189. {
  4190. MRP0, 32,
  4191. MRP1, 32
  4192. }
  4193.  
  4194. PowerResource (WWPR, 0x00, 0x0000)
  4195. {
  4196. Name (_DEP, Package (0x02) // _DEP: Dependencies
  4197. {
  4198. GPO1,
  4199. ^^^^I2C7.PMIC
  4200. })
  4201. Method (_STA, 0, NotSerialized) // _STA: Status
  4202. {
  4203. If ((^^^^^I2C7.PMIC.AVBG == One))
  4204. {
  4205. Return (^^^^^I2C7.PMIC.MOXX) /* \_SB_.PCI0.I2C7.PMIC.MOXX */
  4206. }
  4207.  
  4208. Return (Zero)
  4209. }
  4210.  
  4211. Method (_ON, 0, NotSerialized) // _ON_: Power On
  4212. {
  4213. }
  4214.  
  4215. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  4216. {
  4217. If ((OSID == 0x04))
  4218. {
  4219. If ((^^^^^I2C7.PMIC.AVBG == One))
  4220. {
  4221. If ((\_SB.GPO1.AVBL == One))
  4222. {
  4223. \_SB.GPO1.MRD3 = Zero
  4224. Sleep (One)
  4225. ^^^^^I2C7.PMIC.MOXX = Zero
  4226. Sleep (One)
  4227. }
  4228. }
  4229. }
  4230. }
  4231. }
  4232.  
  4233. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4234. {
  4235. WWPR
  4236. })
  4237. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4238. {
  4239. WWPR
  4240. })
  4241. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4242. {
  4243. WWPR
  4244. })
  4245. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4246. {
  4247. Name (UPCP, Package (0x04)
  4248. {
  4249. 0xFF,
  4250. 0xFF,
  4251. Zero,
  4252. Zero
  4253. })
  4254. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSC1._UPC.UPCP */
  4255. }
  4256.  
  4257. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4258. {
  4259. Name (PLDP, Package (0x01)
  4260. {
  4261. Buffer (0x14)
  4262. {
  4263. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4264. /* 0008 */ 0x30, 0x08, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4265. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4266. }
  4267. })
  4268. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSC1._PLD.PLDP */
  4269. }
  4270.  
  4271. Device (MDM3)
  4272. {
  4273. Name (_ADR, 0x0C) // _ADR: Address
  4274. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4275. {
  4276. WWPR
  4277. })
  4278. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4279. {
  4280. WWPR
  4281. })
  4282. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4283. {
  4284. WWPR
  4285. })
  4286. }
  4287. }
  4288.  
  4289. Device (SSCW)
  4290. {
  4291. Name (_ADR, 0x0C) // _ADR: Address
  4292. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  4293. Name (_DEP, Package (0x02) // _DEP: Dependencies
  4294. {
  4295. GPO1,
  4296. ^^^I2C7.PMI5
  4297. })
  4298. Method (_STA, 0, NotSerialized) // _STA: Status
  4299. {
  4300. If ((PMID == 0x03))
  4301. {
  4302. Return (0x0F)
  4303. }
  4304.  
  4305. Return (Zero)
  4306. }
  4307.  
  4308. OperationRegion (BAD0, SystemMemory, 0xFED8C410, 0x08)
  4309. Field (BAD0, DWordAcc, NoLock, Preserve)
  4310. {
  4311. MRB0, 32,
  4312. MRB1, 32
  4313. }
  4314.  
  4315. OperationRegion (BAD1, SystemMemory, 0xFED8C400, 0x08)
  4316. Field (BAD1, DWordAcc, NoLock, Preserve)
  4317. {
  4318. MRP0, 32,
  4319. MRP1, 32
  4320. }
  4321.  
  4322. PowerResource (WWPR, 0x00, 0x0000)
  4323. {
  4324. Name (_DEP, Package (0x02) // _DEP: Dependencies
  4325. {
  4326. GPO1,
  4327. ^^^^I2C7.PMI5
  4328. })
  4329. Method (_STA, 0, NotSerialized) // _STA: Status
  4330. {
  4331. If ((^^^^^I2C7.PMI5.AVBG == One))
  4332. {
  4333. Return (^^^^^I2C7.PMI5.MOXX) /* \_SB_.PCI0.I2C7.PMI5.MOXX */
  4334. }
  4335.  
  4336. Return (Zero)
  4337. }
  4338.  
  4339. Method (_ON, 0, NotSerialized) // _ON_: Power On
  4340. {
  4341. }
  4342.  
  4343. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  4344. {
  4345. If ((OSID == 0x04))
  4346. {
  4347. If ((^^^^^I2C7.PMI5.AVBG == One))
  4348. {
  4349. If ((\_SB.GPO1.AVBL == One))
  4350. {
  4351. \_SB.GPO1.MRD3 = Zero
  4352. Sleep (One)
  4353. ^^^^^I2C7.PMI5.MOXX = Zero
  4354. Sleep (One)
  4355. }
  4356. }
  4357. }
  4358. }
  4359. }
  4360.  
  4361. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4362. {
  4363. WWPR
  4364. })
  4365. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4366. {
  4367. WWPR
  4368. })
  4369. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4370. {
  4371. WWPR
  4372. })
  4373. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4374. {
  4375. Name (UPCP, Package (0x04)
  4376. {
  4377. 0xFF,
  4378. 0xFF,
  4379. Zero,
  4380. Zero
  4381. })
  4382. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.SSCW._UPC.UPCP */
  4383. }
  4384.  
  4385. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4386. {
  4387. Name (PLDP, Package (0x01)
  4388. {
  4389. Buffer (0x14)
  4390. {
  4391. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4392. /* 0008 */ 0x30, 0x08, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4393. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4394. }
  4395. })
  4396. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.SSCW._PLD.PLDP */
  4397. }
  4398.  
  4399. Device (MDM3)
  4400. {
  4401. Name (_ADR, 0x0C) // _ADR: Address
  4402. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4403. {
  4404. WWPR
  4405. })
  4406. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4407. {
  4408. WWPR
  4409. })
  4410. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4411. {
  4412. WWPR
  4413. })
  4414. }
  4415. }
  4416.  
  4417. Device (HSC1)
  4418. {
  4419. Name (_ADR, 0x06) // _ADR: Address
  4420. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  4421. Name (_DEP, Package (0x02) // _DEP: Dependencies
  4422. {
  4423. GPO1,
  4424. ^^^I2C7.PMIC
  4425. })
  4426. Method (_STA, 0, NotSerialized) // _STA: Status
  4427. {
  4428. If ((PMID == Zero))
  4429. {
  4430. Return (0x0F)
  4431. }
  4432.  
  4433. Return (Zero)
  4434. }
  4435.  
  4436. OperationRegion (BADR, SystemMemory, 0xFED8C410, 0x08)
  4437. Field (BADR, DWordAcc, NoLock, Preserve)
  4438. {
  4439. MRB0, 32,
  4440. MRB1, 32
  4441. }
  4442.  
  4443. OperationRegion (BAD1, SystemMemory, 0xFED8C400, 0x08)
  4444. Field (BAD1, DWordAcc, NoLock, Preserve)
  4445. {
  4446. MRP0, 32,
  4447. MRP1, 32
  4448. }
  4449.  
  4450. PowerResource (WWPR, 0x00, 0x0000)
  4451. {
  4452. Name (_DEP, Package (0x02) // _DEP: Dependencies
  4453. {
  4454. GPO1,
  4455. ^^^^I2C7.PMIC
  4456. })
  4457. Method (_STA, 0, NotSerialized) // _STA: Status
  4458. {
  4459. If (((OSID == One) && (^^^^^I2C7.PMIC.AVBG == One)))
  4460. {
  4461. Return (^^^^^I2C7.PMIC.MOXX) /* \_SB_.PCI0.I2C7.PMIC.MOXX */
  4462. }
  4463.  
  4464. Return (Zero)
  4465. }
  4466.  
  4467. Method (_ON, 0, NotSerialized) // _ON_: Power On
  4468. {
  4469. If ((FMDM == Zero))
  4470. {
  4471. If ((OSID == One))
  4472. {
  4473. If ((^^^^^I2C7.PMIC.AVBG == One))
  4474. {
  4475. ^^^^^I2C7.PMIC.MOXX = One
  4476. Stall (0x0A)
  4477. }
  4478.  
  4479. If ((\_SB.GPO1.AVBL == One))
  4480. {
  4481. \_SB.GPO1.MRD3 = One
  4482. Stall (0x0A)
  4483. \_SB.GPO1.MPD3 = Zero
  4484. Stall (0x0A)
  4485. \_SB.GPO1.MPD3 = One
  4486. Stall (0x5B)
  4487. \_SB.GPO1.MPD3 = Zero
  4488. }
  4489. Else
  4490. {
  4491. MRB0 &= 0xFFFFFFFD
  4492. MRB0 |= 0x02
  4493. Stall (0x0A)
  4494. MRP0 &= 0xFFFFFFFD
  4495. MRP0 |= Zero
  4496. Stall (0x0A)
  4497. MRP0 &= 0xFFFFFFFD
  4498. MRP0 |= 0x02
  4499. Stall (0x5B)
  4500. MRP0 &= 0xFFFFFFFD
  4501. MRP0 |= Zero
  4502. }
  4503. }
  4504. }
  4505. }
  4506.  
  4507. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  4508. {
  4509. }
  4510. }
  4511.  
  4512. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4513. {
  4514. WWPR
  4515. })
  4516. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4517. {
  4518. WWPR
  4519. })
  4520. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4521. {
  4522. WWPR
  4523. })
  4524. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4525. {
  4526. Name (UPCP, Package (0x04)
  4527. {
  4528. 0xFF,
  4529. 0xFF,
  4530. Zero,
  4531. Zero
  4532. })
  4533. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HSC1._UPC.UPCP */
  4534. }
  4535.  
  4536. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4537. {
  4538. Name (PLDP, Package (0x01)
  4539. {
  4540. Buffer (0x14)
  4541. {
  4542. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4543. /* 0008 */ 0x30, 0x08, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4544. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4545. }
  4546. })
  4547. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HSC1._PLD.PLDP */
  4548. }
  4549.  
  4550. Device (MDM2)
  4551. {
  4552. Name (_ADR, 0x06) // _ADR: Address
  4553. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4554. {
  4555. WWPR
  4556. })
  4557. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4558. {
  4559. WWPR
  4560. })
  4561. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4562. {
  4563. WWPR
  4564. })
  4565. }
  4566. }
  4567.  
  4568. Device (HSC3)
  4569. {
  4570. Name (_ADR, 0x06) // _ADR: Address
  4571. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  4572. Name (_DEP, Package (0x02) // _DEP: Dependencies
  4573. {
  4574. GPO1,
  4575. ^^^I2C7.PMI5
  4576. })
  4577. Method (_STA, 0, NotSerialized) // _STA: Status
  4578. {
  4579. If ((PMID == 0x03))
  4580. {
  4581. Return (0x0F)
  4582. }
  4583.  
  4584. Return (Zero)
  4585. }
  4586.  
  4587. OperationRegion (BAD0, SystemMemory, 0xFED8C410, 0x08)
  4588. Field (BAD0, DWordAcc, NoLock, Preserve)
  4589. {
  4590. MRB0, 32,
  4591. MRB1, 32
  4592. }
  4593.  
  4594. OperationRegion (BAD1, SystemMemory, 0xFED8C400, 0x08)
  4595. Field (BAD1, DWordAcc, NoLock, Preserve)
  4596. {
  4597. MRP0, 32,
  4598. MRP1, 32
  4599. }
  4600.  
  4601. PowerResource (WWPR, 0x00, 0x0000)
  4602. {
  4603. Name (_DEP, Package (0x02) // _DEP: Dependencies
  4604. {
  4605. GPO1,
  4606. ^^^^I2C7.PMI5
  4607. })
  4608. Method (_STA, 0, NotSerialized) // _STA: Status
  4609. {
  4610. If (((OSID == One) && (^^^^^I2C7.PMI5.AVBG == One)))
  4611. {
  4612. Return (^^^^^I2C7.PMI5.MOXX) /* \_SB_.PCI0.I2C7.PMI5.MOXX */
  4613. }
  4614.  
  4615. Return (Zero)
  4616. }
  4617.  
  4618. Method (_ON, 0, NotSerialized) // _ON_: Power On
  4619. {
  4620. If ((FMDM == Zero))
  4621. {
  4622. If ((OSID == One))
  4623. {
  4624. If ((^^^^^I2C7.PMI5.AVBG == One))
  4625. {
  4626. ^^^^^I2C7.PMI5.MOXX = One
  4627. Stall (0x0A)
  4628. }
  4629.  
  4630. If ((\_SB.GPO1.AVBL == One))
  4631. {
  4632. \_SB.GPO1.MRD3 = One
  4633. Stall (0x0A)
  4634. \_SB.GPO1.MPD3 = Zero
  4635. Stall (0x0A)
  4636. \_SB.GPO1.MPD3 = One
  4637. Stall (0x5B)
  4638. \_SB.GPO1.MPD3 = Zero
  4639. }
  4640. Else
  4641. {
  4642. MRB0 &= 0xFFFFFFFD
  4643. MRB0 |= 0x02
  4644. Stall (0x0A)
  4645. MRP0 &= 0xFFFFFFFD
  4646. MRP0 |= Zero
  4647. Stall (0x0A)
  4648. MRP0 &= 0xFFFFFFFD
  4649. MRP0 |= 0x02
  4650. Stall (0x5B)
  4651. MRP0 &= 0xFFFFFFFD
  4652. MRP0 |= Zero
  4653. }
  4654. }
  4655. }
  4656. }
  4657.  
  4658. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  4659. {
  4660. }
  4661. }
  4662.  
  4663. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4664. {
  4665. WWPR
  4666. })
  4667. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4668. {
  4669. WWPR
  4670. })
  4671. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4672. {
  4673. WWPR
  4674. })
  4675. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4676. {
  4677. Name (UPCP, Package (0x04)
  4678. {
  4679. 0xFF,
  4680. 0xFF,
  4681. Zero,
  4682. Zero
  4683. })
  4684. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HSC3._UPC.UPCP */
  4685. }
  4686.  
  4687. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4688. {
  4689. Name (PLDP, Package (0x01)
  4690. {
  4691. Buffer (0x14)
  4692. {
  4693. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4694. /* 0008 */ 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0....... */
  4695. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4696. }
  4697. })
  4698. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HSC3._PLD.PLDP */
  4699. }
  4700.  
  4701. Device (MDM4)
  4702. {
  4703. Name (_ADR, 0x06) // _ADR: Address
  4704. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  4705. {
  4706. WWPR
  4707. })
  4708. Name (_PR2, Package (0x01) // _PR2: Power Resources for D2
  4709. {
  4710. WWPR
  4711. })
  4712. Name (_PR3, Package (0x01) // _PR3: Power Resources for D3hot
  4713. {
  4714. WWPR
  4715. })
  4716. }
  4717. }
  4718.  
  4719. Device (HS05)
  4720. {
  4721. Name (_ADR, 0x05) // _ADR: Address
  4722. Method (_UPC, 0, Serialized) // _UPC: USB Port Capabilities
  4723. {
  4724. Name (UPCP, Package (0x04)
  4725. {
  4726. Zero,
  4727. 0xFF,
  4728. Zero,
  4729. Zero
  4730. })
  4731. Return (UPCP) /* \_SB_.PCI0.XHC1.RHUB.HS05._UPC.UPCP */
  4732. }
  4733.  
  4734. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  4735. {
  4736. Name (PLDP, Package (0x01)
  4737. {
  4738. Buffer (0x14)
  4739. {
  4740. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  4741. /* 0008 */ 0x00, 0x19, 0x00, 0x04, 0x03, 0x00, 0x00, 0x00, /* ........ */
  4742. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  4743. }
  4744. })
  4745. Return (PLDP) /* \_SB_.PCI0.XHC1.RHUB.HS05._PLD.PLDP */
  4746. }
  4747. }
  4748. }
  4749. }
  4750.  
  4751. Device (OTG1)
  4752. {
  4753. Name (_ADR, 0x00160000) // _ADR: Address
  4754. Name (_DDN, "Baytrail XHCI controller (Synopsys core/OTG)") // _DDN: DOS Device Name
  4755. Name (_STR, Unicode ("Baytrail XHCI controller (Synopsys core/OTG)")) // _STR: Description String
  4756. Name (_S0W, 0x03) // _S0W: S0 Device Wake State
  4757. OperationRegion (PMEB, PCI_Config, 0x84, 0x04)
  4758. Field (PMEB, WordAcc, NoLock, Preserve)
  4759. {
  4760. Offset (0x01),
  4761. PMEE, 1,
  4762. , 6,
  4763. PMES, 1
  4764. }
  4765.  
  4766. OperationRegion (GENR, PCI_Config, 0xA0, 0x10)
  4767. Field (GENR, WordAcc, NoLock, Preserve)
  4768. {
  4769. , 18,
  4770. CPME, 1,
  4771. U2EN, 1,
  4772. U3EN, 1
  4773. }
  4774.  
  4775. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  4776. {
  4777. CPME = One
  4778. U2EN = One
  4779. U3EN = One
  4780. }
  4781.  
  4782. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  4783. {
  4784. CPME = Zero
  4785. U2EN = Zero
  4786. U3EN = Zero
  4787. }
  4788.  
  4789. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  4790. {
  4791. }
  4792.  
  4793. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  4794. {
  4795. Return (Zero)
  4796. }
  4797.  
  4798. Method (_PR3, 0, NotSerialized) // _PR3: Power Resources for D3hot
  4799. {
  4800. Return (Package (0x01)
  4801. {
  4802. USBC
  4803. })
  4804. }
  4805.  
  4806. Method (_STA, 0, NotSerialized) // _STA: Status
  4807. {
  4808. If ((OTGM != Zero))
  4809. {
  4810. Return (0x0F)
  4811. }
  4812. Else
  4813. {
  4814. Return (Zero)
  4815. }
  4816. }
  4817.  
  4818. Method (SMBC, 2, NotSerialized)
  4819. {
  4820. Name (BUFF, Buffer (0x03)
  4821. {
  4822. 0x00, 0x01, 0x00 /* ... */
  4823. })
  4824. CreateByteField (BUFF, Zero, BYAT)
  4825. CreateByteField (BUFF, 0x02, DATA)
  4826. If ((Arg0 == Zero))
  4827. {
  4828. DATA = 0x50
  4829. ^^I2C1.BC00 = BUFF /* \_SB_.PCI0.OTG1.SMBC.BUFF */
  4830. }
  4831. Else
  4832. {
  4833. DATA = 0x51
  4834. ^^I2C1.BC00 = BUFF /* \_SB_.PCI0.OTG1.SMBC.BUFF */
  4835. }
  4836.  
  4837. BUFF = ^^I2C1.BC01 /* \_SB_.PCI0.I2C1.BC01 */
  4838. DATA &= 0xFD
  4839. ^^I2C1.BC01 = BUFF /* \_SB_.PCI0.OTG1.SMBC.BUFF */
  4840. If ((Arg1 == Zero))
  4841. {
  4842. BUFF = ^^I2C1.BC31 /* \_SB_.PCI0.I2C1.BC31 */
  4843. DATA &= 0xFB
  4844. ^^I2C1.BC31 = BUFF /* \_SB_.PCI0.OTG1.SMBC.BUFF */
  4845. }
  4846. Else
  4847. {
  4848. BUFF = ^^I2C1.BC31 /* \_SB_.PCI0.I2C1.BC31 */
  4849. DATA |= 0x04
  4850. ^^I2C1.BC31 = BUFF /* \_SB_.PCI0.OTG1.SMBC.BUFF */
  4851. }
  4852. }
  4853.  
  4854. Method (TIBC, 2, NotSerialized)
  4855. {
  4856. If ((Arg0 == Zero))
  4857. {
  4858. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4859. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x02)
  4860. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x42)
  4861. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4862. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4863. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x05)
  4864. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x8A)
  4865. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4866. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4867. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, Zero)
  4868. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x38)
  4869. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4870. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4871. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, One)
  4872. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
  4873. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4874. }
  4875. ElseIf ((Arg0 == One))
  4876. {
  4877. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4878. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x02)
  4879. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x42)
  4880. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4881. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4882. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x05)
  4883. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x8A)
  4884. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4885. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4886. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, Zero)
  4887. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x39)
  4888. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4889. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4890. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, One)
  4891. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
  4892. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4893. }
  4894. ElseIf ((Arg0 == 0x02))
  4895. {
  4896. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4897. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x02)
  4898. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x42)
  4899. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4900. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4901. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x05)
  4902. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x8A)
  4903. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4904. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4905. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, Zero)
  4906. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3A)
  4907. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4908. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4909. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, One)
  4910. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
  4911. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4912. }
  4913. ElseIf ((Arg0 == 0x03))
  4914. {
  4915. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4916. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x02)
  4917. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x42)
  4918. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4919. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4920. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, 0x05)
  4921. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x8A)
  4922. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4923. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4924. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, Zero)
  4925. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
  4926. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4927. ^^I2C7.PMI5.SET (One, 0x5E, 0x25, 0x6B)
  4928. ^^I2C7.PMI5.SET (One, 0x5E, 0x26, One)
  4929. ^^I2C7.PMI5.SET (One, 0x5E, 0x27, 0x3B)
  4930. ^^I2C7.PMI5.SET (One, 0x5E, 0x24, One)
  4931. }
  4932. }
  4933.  
  4934. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  4935. {
  4936. If ((Arg0 == ToUUID ("eaa3afa9-6469-4015-9041-a83634a7fa2d")))
  4937. {
  4938. If ((Arg2 == Zero))
  4939. {
  4940. Return (Zero)
  4941. }
  4942.  
  4943. If ((Arg2 == One))
  4944. {
  4945. Return (One)
  4946. }
  4947. }
  4948.  
  4949. If ((Arg0 == ToUUID ("e2528aa0-8863-48f4-aa40-865e05902449")))
  4950. {
  4951. If ((BDID == 0x08))
  4952. {
  4953. Local0 = ^^I2C7.BATC.PSRC ()
  4954. }
  4955. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  4956. {
  4957. Local0 = ^^I2C7.WIDR.PSRC ()
  4958. }
  4959. Else
  4960. {
  4961. Local0 = ^^I2C1.BATC.PSRC ()
  4962. }
  4963.  
  4964. If ((Arg2 == Zero))
  4965. {
  4966. Return (Zero)
  4967. }
  4968.  
  4969. If ((Arg2 == One))
  4970. {
  4971. If ((Local0 == One))
  4972. {
  4973. Return (0x03)
  4974. }
  4975.  
  4976. If ((Local0 == 0x02))
  4977. {
  4978. Return (Zero)
  4979. }
  4980.  
  4981. If ((Local0 == 0x03))
  4982. {
  4983. Return (0x02)
  4984. }
  4985.  
  4986. If ((Local0 == 0x04))
  4987. {
  4988. Return (One)
  4989. }
  4990.  
  4991. If ((Local0 == 0x05))
  4992. {
  4993. Return (0x04)
  4994. }
  4995.  
  4996. If ((Local0 == Zero))
  4997. {
  4998. Return (0x05)
  4999. }
  5000. }
  5001. }
  5002.  
  5003. If ((Arg0 == ToUUID ("b2090db6-9135-4ef6-bd18-d5590dda90be")))
  5004. {
  5005. Name (BUFF, Buffer (0x03)
  5006. {
  5007. 0x00, 0x01, 0x00 /* ... */
  5008. })
  5009. CreateByteField (BUFF, Zero, BYAT)
  5010. CreateByteField (BUFF, 0x02, DATA)
  5011. If ((Arg2 == Zero))
  5012. {
  5013. Return (Zero)
  5014. }
  5015.  
  5016. If ((Arg2 == One))
  5017. {
  5018. If ((BDID == 0x03))
  5019. {
  5020. SMBC (Zero, Zero)
  5021. }
  5022. ElseIf (((BDID == 0x08) || ((BDID == 0x09) || (BDID ==
  5023. 0x0A))))
  5024. {
  5025. TIBC (Zero, Zero)
  5026. }
  5027. }
  5028.  
  5029. If ((Arg2 == 0x02))
  5030. {
  5031. If ((BDID == 0x03))
  5032. {
  5033. SMBC (Zero, Zero)
  5034. }
  5035. ElseIf (((BDID == 0x08) || ((BDID == 0x09) || (BDID ==
  5036. 0x0A))))
  5037. {
  5038. TIBC (0x02, Zero)
  5039. }
  5040. }
  5041.  
  5042. If ((Arg2 == 0x03))
  5043. {
  5044. If ((BDID == 0x03))
  5045. {
  5046. SMBC (Zero, One)
  5047. }
  5048. ElseIf (((BDID == 0x08) || ((BDID == 0x09) || (BDID ==
  5049. 0x0A))))
  5050. {
  5051. TIBC (One, One)
  5052. }
  5053. }
  5054.  
  5055. If ((Arg2 == 0x04))
  5056. {
  5057. If ((BDID == 0x03))
  5058. {
  5059. SMBC (One, One)
  5060. }
  5061. ElseIf (((BDID == 0x08) || ((BDID == 0x09) || (BDID ==
  5062. 0x0A))))
  5063. {
  5064. TIBC (0x03, One)
  5065. }
  5066. }
  5067.  
  5068. If ((Arg2 == 0x05))
  5069. {
  5070. If ((BDID == 0x03))
  5071. {
  5072. BUFF = ^^I2C1.BC30 /* \_SB_.PCI0.I2C1.BC30 */
  5073. Local0 = DATA /* \_SB_.PCI0.OTG1._DSM.DATA */
  5074. Local1 = (Local0 & 0xFF)
  5075. DATA = (Local1 | 0x04)
  5076. ^^I2C1.BC30 = BUFF /* \_SB_.PCI0.OTG1._DSM.BUFF */
  5077. Return (BYAT) /* \_SB_.PCI0.OTG1._DSM.BYAT */
  5078. }
  5079. }
  5080. }
  5081. }
  5082. }
  5083.  
  5084. Device (OTG2)
  5085. {
  5086. Name (_HID, "INT3496") // _HID: Hardware ID
  5087. Name (_CID, "INT3496") // _CID: Compatible ID
  5088. Method (_STA, 0, NotSerialized) // _STA: Status
  5089. {
  5090. If (((BDID == One) && (OSID != One)))
  5091. {
  5092. Return (0x0F)
  5093. }
  5094.  
  5095. Return (Zero)
  5096. }
  5097.  
  5098. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  5099. {
  5100. Name (ABUF, ResourceTemplate ()
  5101. {
  5102. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  5103. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  5104. )
  5105. { // Pin list
  5106. 0x0003
  5107. }
  5108. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  5109. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  5110. )
  5111. { // Pin list
  5112. 0x002E
  5113. }
  5114. })
  5115. Return (ABUF) /* \_SB_.PCI0.OTG2._CRS.ABUF */
  5116. }
  5117. }
  5118.  
  5119. Device (GPTC)
  5120. {
  5121. Name (_HID, "GPTC0001") // _HID: Hardware ID
  5122. Name (_CID, "GPTC0001") // _CID: Compatible ID
  5123. Method (_STA, 0, NotSerialized) // _STA: Status
  5124. {
  5125. If (((OSID != One) && ((BDID == 0x09) || (BDID ==
  5126. 0x0A))))
  5127. {
  5128. Return (0x0F)
  5129. }
  5130.  
  5131. Return (Zero)
  5132. }
  5133.  
  5134. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  5135. {
  5136. Name (ABUF, ResourceTemplate ()
  5137. {
  5138. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  5139. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  5140. )
  5141. { // Pin list
  5142. 0x0000
  5143. }
  5144. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  5145. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  5146. )
  5147. { // Pin list
  5148. 0x0002
  5149. }
  5150. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  5151. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  5152. )
  5153. { // Pin list
  5154. 0x0003
  5155. }
  5156. })
  5157. Return (ABUF) /* \_SB_.PCI0.GPTC._CRS.ABUF */
  5158. }
  5159. }
  5160.  
  5161. Device (PEPD)
  5162. {
  5163. Name (_HID, "INT33A4") // _HID: Hardware ID
  5164. Name (_CID, EisaId ("PNP0D80") /* Windows-compatible System Power Management Controller */) // _CID: Compatible ID
  5165. Name (_UID, One) // _UID: Unique ID
  5166. Name (CDMP, Package (0x02) {})
  5167. Name (DEVY, Package (0x17)
  5168. {
  5169. Package (0x03)
  5170. {
  5171. "\\_PR.CPU0",
  5172. One,
  5173. Package (0x02)
  5174. {
  5175. Zero,
  5176. Package (0x02)
  5177. {
  5178. 0xFF,
  5179. Zero
  5180. }
  5181. }
  5182. },
  5183.  
  5184. Package (0x03)
  5185. {
  5186. "\\_PR.CPU1",
  5187. One,
  5188. Package (0x02)
  5189. {
  5190. Zero,
  5191. Package (0x02)
  5192. {
  5193. 0xFF,
  5194. Zero
  5195. }
  5196. }
  5197. },
  5198.  
  5199. Package (0x03)
  5200. {
  5201. "\\_PR.CPU2",
  5202. One,
  5203. Package (0x02)
  5204. {
  5205. Zero,
  5206. Package (0x02)
  5207. {
  5208. 0xFF,
  5209. Zero
  5210. }
  5211. }
  5212. },
  5213.  
  5214. Package (0x03)
  5215. {
  5216. "\\_PR.CPU3",
  5217. One,
  5218. Package (0x02)
  5219. {
  5220. Zero,
  5221. Package (0x02)
  5222. {
  5223. 0xFF,
  5224. Zero
  5225. }
  5226. }
  5227. },
  5228.  
  5229. Package (0x03)
  5230. {
  5231. "\\_SB.PCI0.GFX0",
  5232. One,
  5233. Package (0x02)
  5234. {
  5235. Zero,
  5236. Package (0x02)
  5237. {
  5238. 0xFF,
  5239. 0x03
  5240. }
  5241. }
  5242. },
  5243.  
  5244. Package (0x03)
  5245. {
  5246. "\\_SB.PCI0.I2C1",
  5247. One,
  5248. Package (0x05)
  5249. {
  5250. Zero,
  5251. Package (0x02)
  5252. {
  5253. Zero,
  5254. Zero
  5255. },
  5256.  
  5257. Package (0x02)
  5258. {
  5259. One,
  5260. 0x03
  5261. },
  5262.  
  5263. Package (0x02)
  5264. {
  5265. 0x02,
  5266. 0x03
  5267. },
  5268.  
  5269. Package (0x02)
  5270. {
  5271. 0x03,
  5272. 0x03
  5273. }
  5274. }
  5275. },
  5276.  
  5277. Package (0x03)
  5278. {
  5279. "\\_SB.PCI0.I2C2",
  5280. One,
  5281. Package (0x05)
  5282. {
  5283. Zero,
  5284. Package (0x02)
  5285. {
  5286. Zero,
  5287. Zero
  5288. },
  5289.  
  5290. Package (0x02)
  5291. {
  5292. One,
  5293. 0x03
  5294. },
  5295.  
  5296. Package (0x02)
  5297. {
  5298. 0x02,
  5299. 0x03
  5300. },
  5301.  
  5302. Package (0x02)
  5303. {
  5304. 0x03,
  5305. 0x03
  5306. }
  5307. }
  5308. },
  5309.  
  5310. Package (0x03)
  5311. {
  5312. "\\_SB.PCI0.I2C3",
  5313. One,
  5314. Package (0x05)
  5315. {
  5316. Zero,
  5317. Package (0x02)
  5318. {
  5319. Zero,
  5320. Zero
  5321. },
  5322.  
  5323. Package (0x02)
  5324. {
  5325. One,
  5326. 0x03
  5327. },
  5328.  
  5329. Package (0x02)
  5330. {
  5331. 0x02,
  5332. 0x03
  5333. },
  5334.  
  5335. Package (0x02)
  5336. {
  5337. 0x03,
  5338. 0x03
  5339. }
  5340. }
  5341. },
  5342.  
  5343. Package (0x03)
  5344. {
  5345. "\\_SB.PCI0.I2C4",
  5346. One,
  5347. Package (0x05)
  5348. {
  5349. Zero,
  5350. Package (0x02)
  5351. {
  5352. Zero,
  5353. Zero
  5354. },
  5355.  
  5356. Package (0x02)
  5357. {
  5358. One,
  5359. 0x03
  5360. },
  5361.  
  5362. Package (0x02)
  5363. {
  5364. 0x02,
  5365. 0x03
  5366. },
  5367.  
  5368. Package (0x02)
  5369. {
  5370. 0x03,
  5371. 0x03
  5372. }
  5373. }
  5374. },
  5375.  
  5376. Package (0x03)
  5377. {
  5378. "\\_SB.PCI0.I2C5",
  5379. One,
  5380. Package (0x05)
  5381. {
  5382. Zero,
  5383. Package (0x02)
  5384. {
  5385. Zero,
  5386. Zero
  5387. },
  5388.  
  5389. Package (0x02)
  5390. {
  5391. One,
  5392. 0x03
  5393. },
  5394.  
  5395. Package (0x02)
  5396. {
  5397. 0x02,
  5398. 0x03
  5399. },
  5400.  
  5401. Package (0x02)
  5402. {
  5403. 0x03,
  5404. 0x03
  5405. }
  5406. }
  5407. },
  5408.  
  5409. Package (0x03)
  5410. {
  5411. "\\_SB.PCI0.I2C6",
  5412. One,
  5413. Package (0x05)
  5414. {
  5415. Zero,
  5416. Package (0x02)
  5417. {
  5418. Zero,
  5419. Zero
  5420. },
  5421.  
  5422. Package (0x02)
  5423. {
  5424. One,
  5425. 0x03
  5426. },
  5427.  
  5428. Package (0x02)
  5429. {
  5430. 0x02,
  5431. 0x03
  5432. },
  5433.  
  5434. Package (0x02)
  5435. {
  5436. 0x03,
  5437. 0x03
  5438. }
  5439. }
  5440. },
  5441.  
  5442. Package (0x03)
  5443. {
  5444. "\\_SB.PCI0.I2C7",
  5445. One,
  5446. Package (0x05)
  5447. {
  5448. Zero,
  5449. Package (0x02)
  5450. {
  5451. Zero,
  5452. Zero
  5453. },
  5454.  
  5455. Package (0x02)
  5456. {
  5457. One,
  5458. 0x03
  5459. },
  5460.  
  5461. Package (0x02)
  5462. {
  5463. 0x02,
  5464. 0x03
  5465. },
  5466.  
  5467. Package (0x02)
  5468. {
  5469. 0x03,
  5470. 0x03
  5471. }
  5472. }
  5473. },
  5474.  
  5475. Package (0x03)
  5476. {
  5477. "\\_SB.PCI0.XHC1",
  5478. One,
  5479. Package (0x05)
  5480. {
  5481. Zero,
  5482. Package (0x02)
  5483. {
  5484. Zero,
  5485. Zero
  5486. },
  5487.  
  5488. Package (0x02)
  5489. {
  5490. One,
  5491. 0x03
  5492. },
  5493.  
  5494. Package (0x02)
  5495. {
  5496. 0x02,
  5497. 0x03
  5498. },
  5499.  
  5500. Package (0x02)
  5501. {
  5502. 0x03,
  5503. 0x03
  5504. }
  5505. }
  5506. },
  5507.  
  5508. Package (0x03)
  5509. {
  5510. "\\_SB.PCI0.SEC0",
  5511. One,
  5512. Package (0x05)
  5513. {
  5514. Zero,
  5515. Package (0x02)
  5516. {
  5517. Zero,
  5518. Zero
  5519. },
  5520.  
  5521. Package (0x02)
  5522. {
  5523. One,
  5524. 0x03
  5525. },
  5526.  
  5527. Package (0x02)
  5528. {
  5529. 0x02,
  5530. 0x03
  5531. },
  5532.  
  5533. Package (0x02)
  5534. {
  5535. 0x03,
  5536. 0x03
  5537. }
  5538. }
  5539. },
  5540.  
  5541. Package (0x03)
  5542. {
  5543. "\\_SB.PCI0.LPEA",
  5544. One,
  5545. Package (0x05)
  5546. {
  5547. Zero,
  5548. Package (0x02)
  5549. {
  5550. Zero,
  5551. Zero
  5552. },
  5553.  
  5554. Package (0x02)
  5555. {
  5556. One,
  5557. Zero
  5558. },
  5559.  
  5560. Package (0x02)
  5561. {
  5562. 0x02,
  5563. 0x03
  5564. },
  5565.  
  5566. Package (0x02)
  5567. {
  5568. 0x03,
  5569. 0x03
  5570. }
  5571. }
  5572. },
  5573.  
  5574. Package (0x03)
  5575. {
  5576. "\\_SB.PCI0.SDHA",
  5577. One,
  5578. Package (0x05)
  5579. {
  5580. Zero,
  5581. Package (0x02)
  5582. {
  5583. Zero,
  5584. Zero
  5585. },
  5586.  
  5587. Package (0x02)
  5588. {
  5589. One,
  5590. 0x03
  5591. },
  5592.  
  5593. Package (0x02)
  5594. {
  5595. 0x02,
  5596. 0x03
  5597. },
  5598.  
  5599. Package (0x02)
  5600. {
  5601. 0x03,
  5602. 0x03
  5603. }
  5604. }
  5605. },
  5606.  
  5607. Package (0x03)
  5608. {
  5609. "\\_SB.PCI0.SDHB",
  5610. One,
  5611. Package (0x05)
  5612. {
  5613. Zero,
  5614. Package (0x02)
  5615. {
  5616. Zero,
  5617. Zero
  5618. },
  5619.  
  5620. Package (0x02)
  5621. {
  5622. One,
  5623. 0x03
  5624. },
  5625.  
  5626. Package (0x02)
  5627. {
  5628. 0x02,
  5629. 0x03
  5630. },
  5631.  
  5632. Package (0x02)
  5633. {
  5634. 0x03,
  5635. 0x03
  5636. }
  5637. }
  5638. },
  5639.  
  5640. Package (0x03)
  5641. {
  5642. "\\_SB.PCI0.SDHC",
  5643. One,
  5644. Package (0x05)
  5645. {
  5646. Zero,
  5647. Package (0x02)
  5648. {
  5649. Zero,
  5650. Zero
  5651. },
  5652.  
  5653. Package (0x02)
  5654. {
  5655. One,
  5656. 0x03
  5657. },
  5658.  
  5659. Package (0x02)
  5660. {
  5661. 0x02,
  5662. 0x03
  5663. },
  5664.  
  5665. Package (0x02)
  5666. {
  5667. 0x03,
  5668. 0x03
  5669. }
  5670. }
  5671. },
  5672.  
  5673. Package (0x03)
  5674. {
  5675. "\\_SB.PCI0.SPI1",
  5676. One,
  5677. Package (0x05)
  5678. {
  5679. Zero,
  5680. Package (0x02)
  5681. {
  5682. Zero,
  5683. Zero
  5684. },
  5685.  
  5686. Package (0x02)
  5687. {
  5688. One,
  5689. 0x03
  5690. },
  5691.  
  5692. Package (0x02)
  5693. {
  5694. 0x02,
  5695. 0x03
  5696. },
  5697.  
  5698. Package (0x02)
  5699. {
  5700. 0x03,
  5701. 0x03
  5702. }
  5703. }
  5704. },
  5705.  
  5706. Package (0x03)
  5707. {
  5708. "\\_SB.PCI0.SPI2",
  5709. One,
  5710. Package (0x05)
  5711. {
  5712. Zero,
  5713. Package (0x02)
  5714. {
  5715. Zero,
  5716. Zero
  5717. },
  5718.  
  5719. Package (0x02)
  5720. {
  5721. One,
  5722. 0x03
  5723. },
  5724.  
  5725. Package (0x02)
  5726. {
  5727. 0x02,
  5728. 0x03
  5729. },
  5730.  
  5731. Package (0x02)
  5732. {
  5733. 0x03,
  5734. 0x03
  5735. }
  5736. }
  5737. },
  5738.  
  5739. Package (0x03)
  5740. {
  5741. "\\_SB.PCI0.SPI3",
  5742. One,
  5743. Package (0x05)
  5744. {
  5745. Zero,
  5746. Package (0x02)
  5747. {
  5748. Zero,
  5749. Zero
  5750. },
  5751.  
  5752. Package (0x02)
  5753. {
  5754. One,
  5755. 0x03
  5756. },
  5757.  
  5758. Package (0x02)
  5759. {
  5760. 0x02,
  5761. 0x03
  5762. },
  5763.  
  5764. Package (0x02)
  5765. {
  5766. 0x03,
  5767. 0x03
  5768. }
  5769. }
  5770. },
  5771.  
  5772. Package (0x03)
  5773. {
  5774. "\\_SB.PCI0.URT1",
  5775. One,
  5776. Package (0x05)
  5777. {
  5778. Zero,
  5779. Package (0x02)
  5780. {
  5781. Zero,
  5782. Zero
  5783. },
  5784.  
  5785. Package (0x02)
  5786. {
  5787. One,
  5788. 0x03
  5789. },
  5790.  
  5791. Package (0x02)
  5792. {
  5793. 0x02,
  5794. 0x03
  5795. },
  5796.  
  5797. Package (0x02)
  5798. {
  5799. 0x03,
  5800. 0x03
  5801. }
  5802. }
  5803. },
  5804.  
  5805. Package (0x03)
  5806. {
  5807. "\\_SB.PCI0.URT2",
  5808. One,
  5809. Package (0x05)
  5810. {
  5811. Zero,
  5812. Package (0x02)
  5813. {
  5814. Zero,
  5815. Zero
  5816. },
  5817.  
  5818. Package (0x02)
  5819. {
  5820. One,
  5821. 0x03
  5822. },
  5823.  
  5824. Package (0x02)
  5825. {
  5826. 0x02,
  5827. 0x03
  5828. },
  5829.  
  5830. Package (0x02)
  5831. {
  5832. 0x03,
  5833. 0x03
  5834. }
  5835. }
  5836. }
  5837. })
  5838. Name (DEVL, Package (0x17)
  5839. {
  5840. Package (0x03)
  5841. {
  5842. "\\_PR.CPU0",
  5843. One,
  5844. Package (0x02)
  5845. {
  5846. Zero,
  5847. Package (0x02)
  5848. {
  5849. 0xFF,
  5850. Zero
  5851. }
  5852. }
  5853. },
  5854.  
  5855. Package (0x03)
  5856. {
  5857. "\\_PR.CPU1",
  5858. One,
  5859. Package (0x02)
  5860. {
  5861. Zero,
  5862. Package (0x02)
  5863. {
  5864. 0xFF,
  5865. Zero
  5866. }
  5867. }
  5868. },
  5869.  
  5870. Package (0x03)
  5871. {
  5872. "\\_PR.CPU2",
  5873. One,
  5874. Package (0x02)
  5875. {
  5876. Zero,
  5877. Package (0x02)
  5878. {
  5879. 0xFF,
  5880. Zero
  5881. }
  5882. }
  5883. },
  5884.  
  5885. Package (0x03)
  5886. {
  5887. "\\_PR.CPU3",
  5888. One,
  5889. Package (0x02)
  5890. {
  5891. Zero,
  5892. Package (0x02)
  5893. {
  5894. 0xFF,
  5895. Zero
  5896. }
  5897. }
  5898. },
  5899.  
  5900. Package (0x03)
  5901. {
  5902. "\\_SB.PCI0.GFX0",
  5903. One,
  5904. Package (0x02)
  5905. {
  5906. Zero,
  5907. Package (0x02)
  5908. {
  5909. 0xFF,
  5910. 0x03
  5911. }
  5912. }
  5913. },
  5914.  
  5915. Package (0x03)
  5916. {
  5917. "\\_SB.PCI0.I2C1",
  5918. One,
  5919. Package (0x05)
  5920. {
  5921. Zero,
  5922. Package (0x02)
  5923. {
  5924. Zero,
  5925. Zero
  5926. },
  5927.  
  5928. Package (0x02)
  5929. {
  5930. One,
  5931. 0x03
  5932. },
  5933.  
  5934. Package (0x02)
  5935. {
  5936. 0x02,
  5937. 0x03
  5938. },
  5939.  
  5940. Package (0x02)
  5941. {
  5942. 0x03,
  5943. 0x03
  5944. }
  5945. }
  5946. },
  5947.  
  5948. Package (0x03)
  5949. {
  5950. "\\_SB.PCI0.I2C2",
  5951. One,
  5952. Package (0x05)
  5953. {
  5954. Zero,
  5955. Package (0x02)
  5956. {
  5957. Zero,
  5958. Zero
  5959. },
  5960.  
  5961. Package (0x02)
  5962. {
  5963. One,
  5964. 0x03
  5965. },
  5966.  
  5967. Package (0x02)
  5968. {
  5969. 0x02,
  5970. 0x03
  5971. },
  5972.  
  5973. Package (0x02)
  5974. {
  5975. 0x03,
  5976. 0x03
  5977. }
  5978. }
  5979. },
  5980.  
  5981. Package (0x03)
  5982. {
  5983. "\\_SB.PCI0.I2C3",
  5984. One,
  5985. Package (0x05)
  5986. {
  5987. Zero,
  5988. Package (0x02)
  5989. {
  5990. Zero,
  5991. Zero
  5992. },
  5993.  
  5994. Package (0x02)
  5995. {
  5996. One,
  5997. 0x03
  5998. },
  5999.  
  6000. Package (0x02)
  6001. {
  6002. 0x02,
  6003. 0x03
  6004. },
  6005.  
  6006. Package (0x02)
  6007. {
  6008. 0x03,
  6009. 0x03
  6010. }
  6011. }
  6012. },
  6013.  
  6014. Package (0x03)
  6015. {
  6016. "\\_SB.PCI0.I2C4",
  6017. One,
  6018. Package (0x05)
  6019. {
  6020. Zero,
  6021. Package (0x02)
  6022. {
  6023. Zero,
  6024. Zero
  6025. },
  6026.  
  6027. Package (0x02)
  6028. {
  6029. One,
  6030. 0x03
  6031. },
  6032.  
  6033. Package (0x02)
  6034. {
  6035. 0x02,
  6036. 0x03
  6037. },
  6038.  
  6039. Package (0x02)
  6040. {
  6041. 0x03,
  6042. 0x03
  6043. }
  6044. }
  6045. },
  6046.  
  6047. Package (0x03)
  6048. {
  6049. "\\_SB.PCI0.I2C5",
  6050. One,
  6051. Package (0x05)
  6052. {
  6053. Zero,
  6054. Package (0x02)
  6055. {
  6056. Zero,
  6057. Zero
  6058. },
  6059.  
  6060. Package (0x02)
  6061. {
  6062. One,
  6063. 0x03
  6064. },
  6065.  
  6066. Package (0x02)
  6067. {
  6068. 0x02,
  6069. 0x03
  6070. },
  6071.  
  6072. Package (0x02)
  6073. {
  6074. 0x03,
  6075. 0x03
  6076. }
  6077. }
  6078. },
  6079.  
  6080. Package (0x03)
  6081. {
  6082. "\\_SB.PCI0.I2C6",
  6083. One,
  6084. Package (0x05)
  6085. {
  6086. Zero,
  6087. Package (0x02)
  6088. {
  6089. Zero,
  6090. Zero
  6091. },
  6092.  
  6093. Package (0x02)
  6094. {
  6095. One,
  6096. 0x03
  6097. },
  6098.  
  6099. Package (0x02)
  6100. {
  6101. 0x02,
  6102. 0x03
  6103. },
  6104.  
  6105. Package (0x02)
  6106. {
  6107. 0x03,
  6108. 0x03
  6109. }
  6110. }
  6111. },
  6112.  
  6113. Package (0x03)
  6114. {
  6115. "\\_SB.PCI0.I2C7",
  6116. One,
  6117. Package (0x05)
  6118. {
  6119. Zero,
  6120. Package (0x02)
  6121. {
  6122. Zero,
  6123. Zero
  6124. },
  6125.  
  6126. Package (0x02)
  6127. {
  6128. One,
  6129. 0x03
  6130. },
  6131.  
  6132. Package (0x02)
  6133. {
  6134. 0x02,
  6135. 0x03
  6136. },
  6137.  
  6138. Package (0x02)
  6139. {
  6140. 0x03,
  6141. 0x03
  6142. }
  6143. }
  6144. },
  6145.  
  6146. Package (0x03)
  6147. {
  6148. "\\_SB.PCI0.XHC1",
  6149. One,
  6150. Package (0x05)
  6151. {
  6152. Zero,
  6153. Package (0x02)
  6154. {
  6155. Zero,
  6156. Zero
  6157. },
  6158.  
  6159. Package (0x02)
  6160. {
  6161. One,
  6162. 0x03
  6163. },
  6164.  
  6165. Package (0x02)
  6166. {
  6167. 0x02,
  6168. 0x03
  6169. },
  6170.  
  6171. Package (0x02)
  6172. {
  6173. 0x03,
  6174. 0x03
  6175. }
  6176. }
  6177. },
  6178.  
  6179. Package (0x03)
  6180. {
  6181. "\\_SB.PCI0.SEC0",
  6182. One,
  6183. Package (0x05)
  6184. {
  6185. Zero,
  6186. Package (0x02)
  6187. {
  6188. Zero,
  6189. Zero
  6190. },
  6191.  
  6192. Package (0x02)
  6193. {
  6194. One,
  6195. 0x03
  6196. },
  6197.  
  6198. Package (0x02)
  6199. {
  6200. 0x02,
  6201. 0x03
  6202. },
  6203.  
  6204. Package (0x02)
  6205. {
  6206. 0x03,
  6207. 0x03
  6208. }
  6209. }
  6210. },
  6211.  
  6212. Package (0x03)
  6213. {
  6214. "\\_SB.PCI0.LPEA",
  6215. One,
  6216. Package (0x05)
  6217. {
  6218. Zero,
  6219. Package (0x02)
  6220. {
  6221. Zero,
  6222. Zero
  6223. },
  6224.  
  6225. Package (0x02)
  6226. {
  6227. One,
  6228. Zero
  6229. },
  6230.  
  6231. Package (0x02)
  6232. {
  6233. 0x02,
  6234. 0x03
  6235. },
  6236.  
  6237. Package (0x02)
  6238. {
  6239. 0x03,
  6240. 0x03
  6241. }
  6242. }
  6243. },
  6244.  
  6245. Package (0x03)
  6246. {
  6247. "\\_SB.PCI0.SDHA",
  6248. One,
  6249. Package (0x05)
  6250. {
  6251. Zero,
  6252. Package (0x02)
  6253. {
  6254. Zero,
  6255. Zero
  6256. },
  6257.  
  6258. Package (0x02)
  6259. {
  6260. One,
  6261. 0x03
  6262. },
  6263.  
  6264. Package (0x02)
  6265. {
  6266. 0x02,
  6267. 0x03
  6268. },
  6269.  
  6270. Package (0x02)
  6271. {
  6272. 0x03,
  6273. 0x03
  6274. }
  6275. }
  6276. },
  6277.  
  6278. Package (0x03)
  6279. {
  6280. "\\_SB.PCI0.SDHB",
  6281. One,
  6282. Package (0x05)
  6283. {
  6284. Zero,
  6285. Package (0x02)
  6286. {
  6287. Zero,
  6288. Zero
  6289. },
  6290.  
  6291. Package (0x02)
  6292. {
  6293. One,
  6294. 0x03
  6295. },
  6296.  
  6297. Package (0x02)
  6298. {
  6299. 0x02,
  6300. 0x03
  6301. },
  6302.  
  6303. Package (0x02)
  6304. {
  6305. 0x03,
  6306. 0x03
  6307. }
  6308. }
  6309. },
  6310.  
  6311. Package (0x03)
  6312. {
  6313. "\\_SB.PCI0.SHC1",
  6314. One,
  6315. Package (0x05)
  6316. {
  6317. Zero,
  6318. Package (0x02)
  6319. {
  6320. Zero,
  6321. Zero
  6322. },
  6323.  
  6324. Package (0x02)
  6325. {
  6326. One,
  6327. 0x03
  6328. },
  6329.  
  6330. Package (0x02)
  6331. {
  6332. 0x02,
  6333. 0x03
  6334. },
  6335.  
  6336. Package (0x02)
  6337. {
  6338. 0x03,
  6339. 0x03
  6340. }
  6341. }
  6342. },
  6343.  
  6344. Package (0x03)
  6345. {
  6346. "\\_SB.PCI0.SPI1",
  6347. One,
  6348. Package (0x05)
  6349. {
  6350. Zero,
  6351. Package (0x02)
  6352. {
  6353. Zero,
  6354. Zero
  6355. },
  6356.  
  6357. Package (0x02)
  6358. {
  6359. One,
  6360. 0x03
  6361. },
  6362.  
  6363. Package (0x02)
  6364. {
  6365. 0x02,
  6366. 0x03
  6367. },
  6368.  
  6369. Package (0x02)
  6370. {
  6371. 0x03,
  6372. 0x03
  6373. }
  6374. }
  6375. },
  6376.  
  6377. Package (0x03)
  6378. {
  6379. "\\_SB.PCI0.SPI2",
  6380. One,
  6381. Package (0x05)
  6382. {
  6383. Zero,
  6384. Package (0x02)
  6385. {
  6386. Zero,
  6387. Zero
  6388. },
  6389.  
  6390. Package (0x02)
  6391. {
  6392. One,
  6393. 0x03
  6394. },
  6395.  
  6396. Package (0x02)
  6397. {
  6398. 0x02,
  6399. 0x03
  6400. },
  6401.  
  6402. Package (0x02)
  6403. {
  6404. 0x03,
  6405. 0x03
  6406. }
  6407. }
  6408. },
  6409.  
  6410. Package (0x03)
  6411. {
  6412. "\\_SB.PCI0.SPI3",
  6413. One,
  6414. Package (0x05)
  6415. {
  6416. Zero,
  6417. Package (0x02)
  6418. {
  6419. Zero,
  6420. Zero
  6421. },
  6422.  
  6423. Package (0x02)
  6424. {
  6425. One,
  6426. 0x03
  6427. },
  6428.  
  6429. Package (0x02)
  6430. {
  6431. 0x02,
  6432. 0x03
  6433. },
  6434.  
  6435. Package (0x02)
  6436. {
  6437. 0x03,
  6438. 0x03
  6439. }
  6440. }
  6441. },
  6442.  
  6443. Package (0x03)
  6444. {
  6445. "\\_SB.PCI0.URT1",
  6446. One,
  6447. Package (0x05)
  6448. {
  6449. Zero,
  6450. Package (0x02)
  6451. {
  6452. Zero,
  6453. Zero
  6454. },
  6455.  
  6456. Package (0x02)
  6457. {
  6458. One,
  6459. 0x03
  6460. },
  6461.  
  6462. Package (0x02)
  6463. {
  6464. 0x02,
  6465. 0x03
  6466. },
  6467.  
  6468. Package (0x02)
  6469. {
  6470. 0x03,
  6471. 0x03
  6472. }
  6473. }
  6474. },
  6475.  
  6476. Package (0x03)
  6477. {
  6478. "\\_SB.PCI0.URT2",
  6479. One,
  6480. Package (0x05)
  6481. {
  6482. Zero,
  6483. Package (0x02)
  6484. {
  6485. Zero,
  6486. Zero
  6487. },
  6488.  
  6489. Package (0x02)
  6490. {
  6491. One,
  6492. 0x03
  6493. },
  6494.  
  6495. Package (0x02)
  6496. {
  6497. 0x02,
  6498. 0x03
  6499. },
  6500.  
  6501. Package (0x02)
  6502. {
  6503. 0x03,
  6504. 0x03
  6505. }
  6506. }
  6507. }
  6508. })
  6509. Name (DEHY, Package (0x16)
  6510. {
  6511. Package (0x03)
  6512. {
  6513. "\\_PR.CPU0",
  6514. One,
  6515. Package (0x02)
  6516. {
  6517. Zero,
  6518. Package (0x02)
  6519. {
  6520. 0xFF,
  6521. Zero
  6522. }
  6523. }
  6524. },
  6525.  
  6526. Package (0x03)
  6527. {
  6528. "\\_PR.CPU1",
  6529. One,
  6530. Package (0x02)
  6531. {
  6532. Zero,
  6533. Package (0x02)
  6534. {
  6535. 0xFF,
  6536. Zero
  6537. }
  6538. }
  6539. },
  6540.  
  6541. Package (0x03)
  6542. {
  6543. "\\_PR.CPU2",
  6544. One,
  6545. Package (0x02)
  6546. {
  6547. Zero,
  6548. Package (0x02)
  6549. {
  6550. 0xFF,
  6551. Zero
  6552. }
  6553. }
  6554. },
  6555.  
  6556. Package (0x03)
  6557. {
  6558. "\\_PR.CPU3",
  6559. One,
  6560. Package (0x02)
  6561. {
  6562. Zero,
  6563. Package (0x02)
  6564. {
  6565. 0xFF,
  6566. Zero
  6567. }
  6568. }
  6569. },
  6570.  
  6571. Package (0x03)
  6572. {
  6573. "\\_SB.PCI0.GFX0",
  6574. One,
  6575. Package (0x02)
  6576. {
  6577. Zero,
  6578. Package (0x02)
  6579. {
  6580. 0xFF,
  6581. 0x03
  6582. }
  6583. }
  6584. },
  6585.  
  6586. Package (0x03)
  6587. {
  6588. "\\_SB.PCI0.I2C1",
  6589. One,
  6590. Package (0x05)
  6591. {
  6592. Zero,
  6593. Package (0x02)
  6594. {
  6595. Zero,
  6596. Zero
  6597. },
  6598.  
  6599. Package (0x02)
  6600. {
  6601. One,
  6602. 0x03
  6603. },
  6604.  
  6605. Package (0x02)
  6606. {
  6607. 0x02,
  6608. 0x03
  6609. },
  6610.  
  6611. Package (0x02)
  6612. {
  6613. 0x03,
  6614. 0x03
  6615. }
  6616. }
  6617. },
  6618.  
  6619. Package (0x03)
  6620. {
  6621. "\\_SB.PCI0.I2C2",
  6622. One,
  6623. Package (0x05)
  6624. {
  6625. Zero,
  6626. Package (0x02)
  6627. {
  6628. Zero,
  6629. Zero
  6630. },
  6631.  
  6632. Package (0x02)
  6633. {
  6634. One,
  6635. 0x03
  6636. },
  6637.  
  6638. Package (0x02)
  6639. {
  6640. 0x02,
  6641. 0x03
  6642. },
  6643.  
  6644. Package (0x02)
  6645. {
  6646. 0x03,
  6647. 0x03
  6648. }
  6649. }
  6650. },
  6651.  
  6652. Package (0x03)
  6653. {
  6654. "\\_SB.PCI0.I2C3",
  6655. One,
  6656. Package (0x05)
  6657. {
  6658. Zero,
  6659. Package (0x02)
  6660. {
  6661. Zero,
  6662. Zero
  6663. },
  6664.  
  6665. Package (0x02)
  6666. {
  6667. One,
  6668. 0x03
  6669. },
  6670.  
  6671. Package (0x02)
  6672. {
  6673. 0x02,
  6674. 0x03
  6675. },
  6676.  
  6677. Package (0x02)
  6678. {
  6679. 0x03,
  6680. 0x03
  6681. }
  6682. }
  6683. },
  6684.  
  6685. Package (0x03)
  6686. {
  6687. "\\_SB.PCI0.I2C4",
  6688. One,
  6689. Package (0x05)
  6690. {
  6691. Zero,
  6692. Package (0x02)
  6693. {
  6694. Zero,
  6695. Zero
  6696. },
  6697.  
  6698. Package (0x02)
  6699. {
  6700. One,
  6701. 0x03
  6702. },
  6703.  
  6704. Package (0x02)
  6705. {
  6706. 0x02,
  6707. 0x03
  6708. },
  6709.  
  6710. Package (0x02)
  6711. {
  6712. 0x03,
  6713. 0x03
  6714. }
  6715. }
  6716. },
  6717.  
  6718. Package (0x03)
  6719. {
  6720. "\\_SB.PCI0.I2C5",
  6721. One,
  6722. Package (0x05)
  6723. {
  6724. Zero,
  6725. Package (0x02)
  6726. {
  6727. Zero,
  6728. Zero
  6729. },
  6730.  
  6731. Package (0x02)
  6732. {
  6733. One,
  6734. 0x03
  6735. },
  6736.  
  6737. Package (0x02)
  6738. {
  6739. 0x02,
  6740. 0x03
  6741. },
  6742.  
  6743. Package (0x02)
  6744. {
  6745. 0x03,
  6746. 0x03
  6747. }
  6748. }
  6749. },
  6750.  
  6751. Package (0x03)
  6752. {
  6753. "\\_SB.PCI0.I2C6",
  6754. One,
  6755. Package (0x05)
  6756. {
  6757. Zero,
  6758. Package (0x02)
  6759. {
  6760. Zero,
  6761. Zero
  6762. },
  6763.  
  6764. Package (0x02)
  6765. {
  6766. One,
  6767. 0x03
  6768. },
  6769.  
  6770. Package (0x02)
  6771. {
  6772. 0x02,
  6773. 0x03
  6774. },
  6775.  
  6776. Package (0x02)
  6777. {
  6778. 0x03,
  6779. 0x03
  6780. }
  6781. }
  6782. },
  6783.  
  6784. Package (0x03)
  6785. {
  6786. "\\_SB.PCI0.I2C7",
  6787. One,
  6788. Package (0x05)
  6789. {
  6790. Zero,
  6791. Package (0x02)
  6792. {
  6793. Zero,
  6794. Zero
  6795. },
  6796.  
  6797. Package (0x02)
  6798. {
  6799. One,
  6800. 0x03
  6801. },
  6802.  
  6803. Package (0x02)
  6804. {
  6805. 0x02,
  6806. 0x03
  6807. },
  6808.  
  6809. Package (0x02)
  6810. {
  6811. 0x03,
  6812. 0x03
  6813. }
  6814. }
  6815. },
  6816.  
  6817. Package (0x03)
  6818. {
  6819. "\\_SB.PCI0.XHC1",
  6820. One,
  6821. Package (0x05)
  6822. {
  6823. Zero,
  6824. Package (0x02)
  6825. {
  6826. Zero,
  6827. Zero
  6828. },
  6829.  
  6830. Package (0x02)
  6831. {
  6832. One,
  6833. 0x03
  6834. },
  6835.  
  6836. Package (0x02)
  6837. {
  6838. 0x02,
  6839. 0x03
  6840. },
  6841.  
  6842. Package (0x02)
  6843. {
  6844. 0x03,
  6845. 0x03
  6846. }
  6847. }
  6848. },
  6849.  
  6850. Package (0x03)
  6851. {
  6852. "\\_SB.PCI0.SEC0",
  6853. One,
  6854. Package (0x05)
  6855. {
  6856. Zero,
  6857. Package (0x02)
  6858. {
  6859. Zero,
  6860. Zero
  6861. },
  6862.  
  6863. Package (0x02)
  6864. {
  6865. One,
  6866. 0x03
  6867. },
  6868.  
  6869. Package (0x02)
  6870. {
  6871. 0x02,
  6872. 0x03
  6873. },
  6874.  
  6875. Package (0x02)
  6876. {
  6877. 0x03,
  6878. 0x03
  6879. }
  6880. }
  6881. },
  6882.  
  6883. Package (0x03)
  6884. {
  6885. "\\_SB.PCI0.LPEA",
  6886. One,
  6887. Package (0x05)
  6888. {
  6889. Zero,
  6890. Package (0x02)
  6891. {
  6892. Zero,
  6893. Zero
  6894. },
  6895.  
  6896. Package (0x02)
  6897. {
  6898. One,
  6899. Zero
  6900. },
  6901.  
  6902. Package (0x02)
  6903. {
  6904. 0x02,
  6905. 0x03
  6906. },
  6907.  
  6908. Package (0x02)
  6909. {
  6910. 0x03,
  6911. 0x03
  6912. }
  6913. }
  6914. },
  6915.  
  6916. Package (0x03)
  6917. {
  6918. "\\_SB.PCI0.SDHA",
  6919. One,
  6920. Package (0x05)
  6921. {
  6922. Zero,
  6923. Package (0x02)
  6924. {
  6925. Zero,
  6926. Zero
  6927. },
  6928.  
  6929. Package (0x02)
  6930. {
  6931. One,
  6932. 0x03
  6933. },
  6934.  
  6935. Package (0x02)
  6936. {
  6937. 0x02,
  6938. 0x03
  6939. },
  6940.  
  6941. Package (0x02)
  6942. {
  6943. 0x03,
  6944. 0x03
  6945. }
  6946. }
  6947. },
  6948.  
  6949. Package (0x03)
  6950. {
  6951. "\\_SB.PCI0.SDHC",
  6952. One,
  6953. Package (0x05)
  6954. {
  6955. Zero,
  6956. Package (0x02)
  6957. {
  6958. Zero,
  6959. Zero
  6960. },
  6961.  
  6962. Package (0x02)
  6963. {
  6964. One,
  6965. 0x03
  6966. },
  6967.  
  6968. Package (0x02)
  6969. {
  6970. 0x02,
  6971. 0x03
  6972. },
  6973.  
  6974. Package (0x02)
  6975. {
  6976. 0x03,
  6977. 0x03
  6978. }
  6979. }
  6980. },
  6981.  
  6982. Package (0x03)
  6983. {
  6984. "\\_SB.PCI0.SPI1",
  6985. One,
  6986. Package (0x05)
  6987. {
  6988. Zero,
  6989. Package (0x02)
  6990. {
  6991. Zero,
  6992. Zero
  6993. },
  6994.  
  6995. Package (0x02)
  6996. {
  6997. One,
  6998. 0x03
  6999. },
  7000.  
  7001. Package (0x02)
  7002. {
  7003. 0x02,
  7004. 0x03
  7005. },
  7006.  
  7007. Package (0x02)
  7008. {
  7009. 0x03,
  7010. 0x03
  7011. }
  7012. }
  7013. },
  7014.  
  7015. Package (0x03)
  7016. {
  7017. "\\_SB.PCI0.SPI2",
  7018. One,
  7019. Package (0x05)
  7020. {
  7021. Zero,
  7022. Package (0x02)
  7023. {
  7024. Zero,
  7025. Zero
  7026. },
  7027.  
  7028. Package (0x02)
  7029. {
  7030. One,
  7031. 0x03
  7032. },
  7033.  
  7034. Package (0x02)
  7035. {
  7036. 0x02,
  7037. 0x03
  7038. },
  7039.  
  7040. Package (0x02)
  7041. {
  7042. 0x03,
  7043. 0x03
  7044. }
  7045. }
  7046. },
  7047.  
  7048. Package (0x03)
  7049. {
  7050. "\\_SB.PCI0.SPI3",
  7051. One,
  7052. Package (0x05)
  7053. {
  7054. Zero,
  7055. Package (0x02)
  7056. {
  7057. Zero,
  7058. Zero
  7059. },
  7060.  
  7061. Package (0x02)
  7062. {
  7063. One,
  7064. 0x03
  7065. },
  7066.  
  7067. Package (0x02)
  7068. {
  7069. 0x02,
  7070. 0x03
  7071. },
  7072.  
  7073. Package (0x02)
  7074. {
  7075. 0x03,
  7076. 0x03
  7077. }
  7078. }
  7079. },
  7080.  
  7081. Package (0x03)
  7082. {
  7083. "\\_SB.PCI0.URT1",
  7084. One,
  7085. Package (0x05)
  7086. {
  7087. Zero,
  7088. Package (0x02)
  7089. {
  7090. Zero,
  7091. Zero
  7092. },
  7093.  
  7094. Package (0x02)
  7095. {
  7096. One,
  7097. 0x03
  7098. },
  7099.  
  7100. Package (0x02)
  7101. {
  7102. 0x02,
  7103. 0x03
  7104. },
  7105.  
  7106. Package (0x02)
  7107. {
  7108. 0x03,
  7109. 0x03
  7110. }
  7111. }
  7112. },
  7113.  
  7114. Package (0x03)
  7115. {
  7116. "\\_SB.PCI0.URT2",
  7117. One,
  7118. Package (0x05)
  7119. {
  7120. Zero,
  7121. Package (0x02)
  7122. {
  7123. Zero,
  7124. Zero
  7125. },
  7126.  
  7127. Package (0x02)
  7128. {
  7129. One,
  7130. 0x03
  7131. },
  7132.  
  7133. Package (0x02)
  7134. {
  7135. 0x02,
  7136. 0x03
  7137. },
  7138.  
  7139. Package (0x02)
  7140. {
  7141. 0x03,
  7142. 0x03
  7143. }
  7144. }
  7145. }
  7146. })
  7147. Name (DEHL, Package (0x16)
  7148. {
  7149. Package (0x03)
  7150. {
  7151. "\\_PR.CPU0",
  7152. One,
  7153. Package (0x02)
  7154. {
  7155. Zero,
  7156. Package (0x02)
  7157. {
  7158. 0xFF,
  7159. Zero
  7160. }
  7161. }
  7162. },
  7163.  
  7164. Package (0x03)
  7165. {
  7166. "\\_PR.CPU1",
  7167. One,
  7168. Package (0x02)
  7169. {
  7170. Zero,
  7171. Package (0x02)
  7172. {
  7173. 0xFF,
  7174. Zero
  7175. }
  7176. }
  7177. },
  7178.  
  7179. Package (0x03)
  7180. {
  7181. "\\_PR.CPU2",
  7182. One,
  7183. Package (0x02)
  7184. {
  7185. Zero,
  7186. Package (0x02)
  7187. {
  7188. 0xFF,
  7189. Zero
  7190. }
  7191. }
  7192. },
  7193.  
  7194. Package (0x03)
  7195. {
  7196. "\\_PR.CPU3",
  7197. One,
  7198. Package (0x02)
  7199. {
  7200. Zero,
  7201. Package (0x02)
  7202. {
  7203. 0xFF,
  7204. Zero
  7205. }
  7206. }
  7207. },
  7208.  
  7209. Package (0x03)
  7210. {
  7211. "\\_SB.PCI0.GFX0",
  7212. One,
  7213. Package (0x02)
  7214. {
  7215. Zero,
  7216. Package (0x02)
  7217. {
  7218. 0xFF,
  7219. 0x03
  7220. }
  7221. }
  7222. },
  7223.  
  7224. Package (0x03)
  7225. {
  7226. "\\_SB.PCI0.I2C1",
  7227. One,
  7228. Package (0x05)
  7229. {
  7230. Zero,
  7231. Package (0x02)
  7232. {
  7233. Zero,
  7234. Zero
  7235. },
  7236.  
  7237. Package (0x02)
  7238. {
  7239. One,
  7240. 0x03
  7241. },
  7242.  
  7243. Package (0x02)
  7244. {
  7245. 0x02,
  7246. 0x03
  7247. },
  7248.  
  7249. Package (0x02)
  7250. {
  7251. 0x03,
  7252. 0x03
  7253. }
  7254. }
  7255. },
  7256.  
  7257. Package (0x03)
  7258. {
  7259. "\\_SB.PCI0.I2C2",
  7260. One,
  7261. Package (0x05)
  7262. {
  7263. Zero,
  7264. Package (0x02)
  7265. {
  7266. Zero,
  7267. Zero
  7268. },
  7269.  
  7270. Package (0x02)
  7271. {
  7272. One,
  7273. 0x03
  7274. },
  7275.  
  7276. Package (0x02)
  7277. {
  7278. 0x02,
  7279. 0x03
  7280. },
  7281.  
  7282. Package (0x02)
  7283. {
  7284. 0x03,
  7285. 0x03
  7286. }
  7287. }
  7288. },
  7289.  
  7290. Package (0x03)
  7291. {
  7292. "\\_SB.PCI0.I2C3",
  7293. One,
  7294. Package (0x05)
  7295. {
  7296. Zero,
  7297. Package (0x02)
  7298. {
  7299. Zero,
  7300. Zero
  7301. },
  7302.  
  7303. Package (0x02)
  7304. {
  7305. One,
  7306. 0x03
  7307. },
  7308.  
  7309. Package (0x02)
  7310. {
  7311. 0x02,
  7312. 0x03
  7313. },
  7314.  
  7315. Package (0x02)
  7316. {
  7317. 0x03,
  7318. 0x03
  7319. }
  7320. }
  7321. },
  7322.  
  7323. Package (0x03)
  7324. {
  7325. "\\_SB.PCI0.I2C4",
  7326. One,
  7327. Package (0x05)
  7328. {
  7329. Zero,
  7330. Package (0x02)
  7331. {
  7332. Zero,
  7333. Zero
  7334. },
  7335.  
  7336. Package (0x02)
  7337. {
  7338. One,
  7339. 0x03
  7340. },
  7341.  
  7342. Package (0x02)
  7343. {
  7344. 0x02,
  7345. 0x03
  7346. },
  7347.  
  7348. Package (0x02)
  7349. {
  7350. 0x03,
  7351. 0x03
  7352. }
  7353. }
  7354. },
  7355.  
  7356. Package (0x03)
  7357. {
  7358. "\\_SB.PCI0.I2C5",
  7359. One,
  7360. Package (0x05)
  7361. {
  7362. Zero,
  7363. Package (0x02)
  7364. {
  7365. Zero,
  7366. Zero
  7367. },
  7368.  
  7369. Package (0x02)
  7370. {
  7371. One,
  7372. 0x03
  7373. },
  7374.  
  7375. Package (0x02)
  7376. {
  7377. 0x02,
  7378. 0x03
  7379. },
  7380.  
  7381. Package (0x02)
  7382. {
  7383. 0x03,
  7384. 0x03
  7385. }
  7386. }
  7387. },
  7388.  
  7389. Package (0x03)
  7390. {
  7391. "\\_SB.PCI0.I2C6",
  7392. One,
  7393. Package (0x05)
  7394. {
  7395. Zero,
  7396. Package (0x02)
  7397. {
  7398. Zero,
  7399. Zero
  7400. },
  7401.  
  7402. Package (0x02)
  7403. {
  7404. One,
  7405. 0x03
  7406. },
  7407.  
  7408. Package (0x02)
  7409. {
  7410. 0x02,
  7411. 0x03
  7412. },
  7413.  
  7414. Package (0x02)
  7415. {
  7416. 0x03,
  7417. 0x03
  7418. }
  7419. }
  7420. },
  7421.  
  7422. Package (0x03)
  7423. {
  7424. "\\_SB.PCI0.I2C7",
  7425. One,
  7426. Package (0x05)
  7427. {
  7428. Zero,
  7429. Package (0x02)
  7430. {
  7431. Zero,
  7432. Zero
  7433. },
  7434.  
  7435. Package (0x02)
  7436. {
  7437. One,
  7438. 0x03
  7439. },
  7440.  
  7441. Package (0x02)
  7442. {
  7443. 0x02,
  7444. 0x03
  7445. },
  7446.  
  7447. Package (0x02)
  7448. {
  7449. 0x03,
  7450. 0x03
  7451. }
  7452. }
  7453. },
  7454.  
  7455. Package (0x03)
  7456. {
  7457. "\\_SB.PCI0.XHC1",
  7458. One,
  7459. Package (0x05)
  7460. {
  7461. Zero,
  7462. Package (0x02)
  7463. {
  7464. Zero,
  7465. Zero
  7466. },
  7467.  
  7468. Package (0x02)
  7469. {
  7470. One,
  7471. 0x03
  7472. },
  7473.  
  7474. Package (0x02)
  7475. {
  7476. 0x02,
  7477. 0x03
  7478. },
  7479.  
  7480. Package (0x02)
  7481. {
  7482. 0x03,
  7483. 0x03
  7484. }
  7485. }
  7486. },
  7487.  
  7488. Package (0x03)
  7489. {
  7490. "\\_SB.PCI0.SEC0",
  7491. One,
  7492. Package (0x05)
  7493. {
  7494. Zero,
  7495. Package (0x02)
  7496. {
  7497. Zero,
  7498. Zero
  7499. },
  7500.  
  7501. Package (0x02)
  7502. {
  7503. One,
  7504. 0x03
  7505. },
  7506.  
  7507. Package (0x02)
  7508. {
  7509. 0x02,
  7510. 0x03
  7511. },
  7512.  
  7513. Package (0x02)
  7514. {
  7515. 0x03,
  7516. 0x03
  7517. }
  7518. }
  7519. },
  7520.  
  7521. Package (0x03)
  7522. {
  7523. "\\_SB.PCI0.LPEA",
  7524. One,
  7525. Package (0x05)
  7526. {
  7527. Zero,
  7528. Package (0x02)
  7529. {
  7530. Zero,
  7531. Zero
  7532. },
  7533.  
  7534. Package (0x02)
  7535. {
  7536. One,
  7537. Zero
  7538. },
  7539.  
  7540. Package (0x02)
  7541. {
  7542. 0x02,
  7543. 0x03
  7544. },
  7545.  
  7546. Package (0x02)
  7547. {
  7548. 0x03,
  7549. 0x03
  7550. }
  7551. }
  7552. },
  7553.  
  7554. Package (0x03)
  7555. {
  7556. "\\_SB.PCI0.SDHA",
  7557. One,
  7558. Package (0x05)
  7559. {
  7560. Zero,
  7561. Package (0x02)
  7562. {
  7563. Zero,
  7564. Zero
  7565. },
  7566.  
  7567. Package (0x02)
  7568. {
  7569. One,
  7570. 0x03
  7571. },
  7572.  
  7573. Package (0x02)
  7574. {
  7575. 0x02,
  7576. 0x03
  7577. },
  7578.  
  7579. Package (0x02)
  7580. {
  7581. 0x03,
  7582. 0x03
  7583. }
  7584. }
  7585. },
  7586.  
  7587. Package (0x03)
  7588. {
  7589. "\\_SB.PCI0.SHC1",
  7590. One,
  7591. Package (0x05)
  7592. {
  7593. Zero,
  7594. Package (0x02)
  7595. {
  7596. Zero,
  7597. Zero
  7598. },
  7599.  
  7600. Package (0x02)
  7601. {
  7602. One,
  7603. 0x03
  7604. },
  7605.  
  7606. Package (0x02)
  7607. {
  7608. 0x02,
  7609. 0x03
  7610. },
  7611.  
  7612. Package (0x02)
  7613. {
  7614. 0x03,
  7615. 0x03
  7616. }
  7617. }
  7618. },
  7619.  
  7620. Package (0x03)
  7621. {
  7622. "\\_SB.PCI0.SPI1",
  7623. One,
  7624. Package (0x05)
  7625. {
  7626. Zero,
  7627. Package (0x02)
  7628. {
  7629. Zero,
  7630. Zero
  7631. },
  7632.  
  7633. Package (0x02)
  7634. {
  7635. One,
  7636. 0x03
  7637. },
  7638.  
  7639. Package (0x02)
  7640. {
  7641. 0x02,
  7642. 0x03
  7643. },
  7644.  
  7645. Package (0x02)
  7646. {
  7647. 0x03,
  7648. 0x03
  7649. }
  7650. }
  7651. },
  7652.  
  7653. Package (0x03)
  7654. {
  7655. "\\_SB.PCI0.SPI2",
  7656. One,
  7657. Package (0x05)
  7658. {
  7659. Zero,
  7660. Package (0x02)
  7661. {
  7662. Zero,
  7663. Zero
  7664. },
  7665.  
  7666. Package (0x02)
  7667. {
  7668. One,
  7669. 0x03
  7670. },
  7671.  
  7672. Package (0x02)
  7673. {
  7674. 0x02,
  7675. 0x03
  7676. },
  7677.  
  7678. Package (0x02)
  7679. {
  7680. 0x03,
  7681. 0x03
  7682. }
  7683. }
  7684. },
  7685.  
  7686. Package (0x03)
  7687. {
  7688. "\\_SB.PCI0.SPI3",
  7689. One,
  7690. Package (0x05)
  7691. {
  7692. Zero,
  7693. Package (0x02)
  7694. {
  7695. Zero,
  7696. Zero
  7697. },
  7698.  
  7699. Package (0x02)
  7700. {
  7701. One,
  7702. 0x03
  7703. },
  7704.  
  7705. Package (0x02)
  7706. {
  7707. 0x02,
  7708. 0x03
  7709. },
  7710.  
  7711. Package (0x02)
  7712. {
  7713. 0x03,
  7714. 0x03
  7715. }
  7716. }
  7717. },
  7718.  
  7719. Package (0x03)
  7720. {
  7721. "\\_SB.PCI0.URT1",
  7722. One,
  7723. Package (0x05)
  7724. {
  7725. Zero,
  7726. Package (0x02)
  7727. {
  7728. Zero,
  7729. Zero
  7730. },
  7731.  
  7732. Package (0x02)
  7733. {
  7734. One,
  7735. 0x03
  7736. },
  7737.  
  7738. Package (0x02)
  7739. {
  7740. 0x02,
  7741. 0x03
  7742. },
  7743.  
  7744. Package (0x02)
  7745. {
  7746. 0x03,
  7747. 0x03
  7748. }
  7749. }
  7750. },
  7751.  
  7752. Package (0x03)
  7753. {
  7754. "\\_SB.PCI0.URT2",
  7755. One,
  7756. Package (0x05)
  7757. {
  7758. Zero,
  7759. Package (0x02)
  7760. {
  7761. Zero,
  7762. Zero
  7763. },
  7764.  
  7765. Package (0x02)
  7766. {
  7767. One,
  7768. 0x03
  7769. },
  7770.  
  7771. Package (0x02)
  7772. {
  7773. 0x02,
  7774. 0x03
  7775. },
  7776.  
  7777. Package (0x02)
  7778. {
  7779. 0x03,
  7780. 0x03
  7781. }
  7782. }
  7783. }
  7784. })
  7785. Name (BCCD, Package (0x01)
  7786. {
  7787. Package (0x02)
  7788. {
  7789. "\\_SB.PCI0.SDHA",
  7790. Package (0x01)
  7791. {
  7792. Package (0x03)
  7793. {
  7794. Package (0x05)
  7795. {
  7796. Zero,
  7797. 0x20,
  7798. Zero,
  7799. 0x03,
  7800. Ones
  7801. },
  7802.  
  7803. Package (0x03)
  7804. {
  7805. 0xFFFFFFFC,
  7806. Zero,
  7807. 0x04
  7808. },
  7809.  
  7810. Zero
  7811. }
  7812. }
  7813. }
  7814. })
  7815. Method (_STA, 0, NotSerialized) // _STA: Status
  7816. {
  7817. Return (0x0F)
  7818. }
  7819.  
  7820. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  7821. {
  7822. If ((Arg0 == ToUUID ("c4eb40a0-6cd2-11e2-bcfd-0800200c9a66")))
  7823. {
  7824. If ((Arg2 == Zero))
  7825. {
  7826. Return (Buffer (One)
  7827. {
  7828. 0x07 /* . */
  7829. })
  7830. }
  7831.  
  7832. If ((Arg2 == One))
  7833. {
  7834. If ((OSYS == 0x07DF))
  7835. {
  7836. If ((((BDID == 0x09) || (BDID == 0x0A)) || (BDID == 0x08)))
  7837. {
  7838. Return (DEHL) /* \_SB_.PCI0.PEPD.DEHL */
  7839. }
  7840. Else
  7841. {
  7842. Return (DEVL) /* \_SB_.PCI0.PEPD.DEVL */
  7843. }
  7844. }
  7845. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  7846. {
  7847. Return (DEHY) /* \_SB_.PCI0.PEPD.DEHY */
  7848. }
  7849. Else
  7850. {
  7851. Return (DEVY) /* \_SB_.PCI0.PEPD.DEVY */
  7852. }
  7853. }
  7854.  
  7855. If ((Arg2 == 0x02))
  7856. {
  7857. Local0 = EM1A /* \EM1A */
  7858. Local0 += 0x84
  7859. DerefOf (DerefOf (DerefOf (DerefOf (BCCD [Zero]
  7860. ) [One]) [Zero]) [Zero]) [0x04] = Local0
  7861. Return (BCCD) /* \_SB_.PCI0.PEPD.BCCD */
  7862. }
  7863. }
  7864.  
  7865. Return (One)
  7866. }
  7867. }
  7868.  
  7869. Device (SDHA)
  7870. {
  7871. Name (_HID, "80860F14" /* Intel Baytrail SDIO/MMC Host Controller */) // _HID: Hardware ID
  7872. Name (_CID, "PNP0D40" /* SDA Standard Compliant SD Host Controller */) // _CID: Compatible ID
  7873. Name (_DDN, "Intel(R) eMMC Controller - 80862294") // _DDN: DOS Device Name
  7874. Name (_UID, One) // _UID: Unique ID
  7875. Name (_HRV, One) // _HRV: Hardware Revision
  7876. Name (_DEP, Package (0x01) // _DEP: Dependencies
  7877. {
  7878. PEPD
  7879. })
  7880. Name (RBUF, ResourceTemplate ()
  7881. {
  7882. Memory32Fixed (ReadWrite,
  7883. 0x00000000, // Address Base
  7884. 0x00001000, // Address Length
  7885. _Y04)
  7886. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  7887. {
  7888. 0x0000002D,
  7889. }
  7890. })
  7891. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  7892. {
  7893. CreateDWordField (RBUF, \_SB.PCI0.SDHA._Y04._BAS, B0BA) // _BAS: Base Address
  7894. CreateDWordField (RBUF, \_SB.PCI0.SDHA._Y04._LEN, B0LN) // _LEN: Length
  7895. B0BA = EM0A /* \EM0A */
  7896. B0LN = EM0L /* \EM0L */
  7897. Return (RBUF) /* \_SB_.PCI0.SDHA.RBUF */
  7898. }
  7899.  
  7900. Method (_STA, 0, NotSerialized) // _STA: Status
  7901. {
  7902. If (((EM0A == Zero) || (SD1D == One)))
  7903. {
  7904. Return (Zero)
  7905. }
  7906.  
  7907. Return (0x0F)
  7908. }
  7909.  
  7910. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  7911. {
  7912. If ((EMMP == Zero))
  7913. {
  7914. Return (Zero)
  7915. }
  7916. Else
  7917. {
  7918. Return (0x03)
  7919. }
  7920. }
  7921.  
  7922. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  7923. {
  7924. PSAT |= 0x03
  7925. PSAT |= Zero
  7926. }
  7927.  
  7928. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  7929. {
  7930. PSAT &= 0xFFFFFFFC
  7931. PSAT |= Zero
  7932. }
  7933.  
  7934. OperationRegion (KEYS, SystemMemory, EM1A, 0x0100)
  7935. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  7936. {
  7937. Offset (0x84),
  7938. PSAT, 32
  7939. }
  7940.  
  7941. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  7942. {
  7943. }
  7944.  
  7945. Device (EMMD)
  7946. {
  7947. Name (_ADR, 0x08) // _ADR: Address
  7948. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  7949. {
  7950. Return (Zero)
  7951. }
  7952. }
  7953. }
  7954.  
  7955. Device (PEMC)
  7956. {
  7957. Name (_ADR, 0x00100000) // _ADR: Address
  7958. OperationRegion (SDIO, PCI_Config, 0x84, 0x04)
  7959. Field (SDIO, WordAcc, NoLock, Preserve)
  7960. {
  7961. Offset (0x01),
  7962. PMEE, 1,
  7963. , 6,
  7964. PMES, 1
  7965. }
  7966.  
  7967. Method (_STA, 0, NotSerialized) // _STA: Status
  7968. {
  7969. If (((EM0A == Zero) && (SD1D == Zero)))
  7970. {
  7971. Return (0x0F)
  7972. }
  7973. Else
  7974. {
  7975. Return (Zero)
  7976. }
  7977. }
  7978.  
  7979. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  7980. {
  7981. }
  7982.  
  7983. Device (CARD)
  7984. {
  7985. Name (_ADR, 0x08) // _ADR: Address
  7986. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  7987. {
  7988. Return (Zero)
  7989. }
  7990. }
  7991. }
  7992.  
  7993. Device (SDHB)
  7994. {
  7995. Name (_ADR, Zero) // _ADR: Address
  7996. Name (_HID, "80860F14" /* Intel Baytrail SDIO/MMC Host Controller */) // _HID: Hardware ID
  7997. Name (AHID, "INT33BB")
  7998. Name (_CID, "PNP0D40" /* SDA Standard Compliant SD Host Controller */) // _CID: Compatible ID
  7999. Name (_DDN, "Intel(R) SDIO Controller - 80862295") // _DDN: DOS Device Name
  8000. Name (_UID, 0x02) // _UID: Unique ID
  8001. Name (_HRV, One) // _HRV: Hardware Revision
  8002. Name (AHRV, 0x02)
  8003. Name (_DEP, Package (0x03) // _DEP: Dependencies
  8004. {
  8005. PEPD,
  8006. GPO1,
  8007. GPO3
  8008. })
  8009. Name (PSTS, Zero)
  8010. Name (SBUF, ResourceTemplate ()
  8011. {
  8012. Memory32Fixed (ReadWrite,
  8013. 0x00000000, // Address Base
  8014. 0x00001000, // Address Length
  8015. _Y05)
  8016. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  8017. {
  8018. 0x0000002E,
  8019. }
  8020. })
  8021. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  8022. {
  8023. CreateDWordField (SBUF, \_SB.PCI0.SDHB._Y05._BAS, B0BA) // _BAS: Base Address
  8024. CreateDWordField (SBUF, \_SB.PCI0.SDHB._Y05._LEN, B0LN) // _LEN: Length
  8025. B0BA = SI0A /* \SI0A */
  8026. B0LN = SI0L /* \SI0L */
  8027. Return (SBUF) /* \_SB_.PCI0.SDHB.SBUF */
  8028. }
  8029.  
  8030. Method (_STA, 0, NotSerialized) // _STA: Status
  8031. {
  8032. If (((SI0A == Zero) || (SD2D == One)))
  8033. {
  8034. Return (Zero)
  8035. }
  8036.  
  8037. Return (0x0F)
  8038. }
  8039.  
  8040. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  8041. {
  8042. }
  8043.  
  8044. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  8045. {
  8046. PSAT |= 0x03
  8047. PSAT |= Zero
  8048. }
  8049.  
  8050. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  8051. {
  8052. PSAT &= 0xFFFFFFFC
  8053. PSAT |= Zero
  8054. If ((OSID == One))
  8055. {
  8056. If ((PSTS == Zero))
  8057. {
  8058. If (((BDID != One) && (^^^GPO3.AVBL == One)))
  8059. {
  8060. P8XH (Zero, 0x58)
  8061. If ((((BDID != 0x09) && (BDID != 0x0A)) &&
  8062. (BDID != One)))
  8063. {
  8064. ^^^GPO3.WFD3 = One
  8065. }
  8066.  
  8067. PSTS = One
  8068. }
  8069. ElseIf ((^^^GPO1.AVBL == One))
  8070. {
  8071. If ((((BDID != 0x09) && (BDID != 0x0A)) &&
  8072. (BDID != One)))
  8073. {
  8074. If ((OSID == One))
  8075. {
  8076. ^^^GPO1.WLD3 = One
  8077. }
  8078. Else
  8079. {
  8080. ^^^GPO1.WLDA = One
  8081. }
  8082. }
  8083.  
  8084. PSTS = One
  8085. }
  8086. }
  8087. }
  8088. }
  8089.  
  8090. OperationRegion (KEYS, SystemMemory, SI1A, 0x0100)
  8091. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  8092. {
  8093. Offset (0x84),
  8094. PSAT, 32
  8095. }
  8096.  
  8097. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  8098. {
  8099. If ((SDI1 == Zero))
  8100. {
  8101. Return (Zero)
  8102. }
  8103. Else
  8104. {
  8105. Return (0x03)
  8106. }
  8107. }
  8108.  
  8109. Device (RTLW)
  8110. {
  8111. Name (AHID, "RTL8723")
  8112. Name (ACID, "RTL8723")
  8113. Name (_ADR, One) // _ADR: Address
  8114. Name (_DEP, Package (0x02) // _DEP: Dependencies
  8115. {
  8116. GPO1,
  8117. GPO2
  8118. })
  8119. Method (_STA, 0, NotSerialized) // _STA: Status
  8120. {
  8121. Return (0x0F)
  8122. }
  8123.  
  8124. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  8125. {
  8126. Return (Zero)
  8127. }
  8128.  
  8129. Name (_S4W, 0x02) // _S4W: S4 Device Wake State
  8130. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  8131. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  8132. {
  8133. Name (RBUF, ResourceTemplate ()
  8134. {
  8135. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
  8136. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  8137. )
  8138. { // Pin list
  8139. 0x000A
  8140. }
  8141. GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
  8142. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  8143. )
  8144. { // Pin list
  8145. 0x0034
  8146. }
  8147. })
  8148. Return (RBUF) /* \_SB_.PCI0.SDHB.RTLW._CRS.RBUF */
  8149. }
  8150.  
  8151. Method (APS3, 0, NotSerialized)
  8152. {
  8153. If ((^^^^GPO1.AVBL == One))
  8154. {
  8155. ^^^^GPO1.WLD3 = Zero
  8156. }
  8157. }
  8158.  
  8159. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  8160. {
  8161. If ((^^^^GPO1.AVBL == One))
  8162. {
  8163. ^^^^GPO1.WLD3 = Zero
  8164. }
  8165. }
  8166.  
  8167. Method (_PS2, 0, NotSerialized) // _PS2: Power State 2
  8168. {
  8169. }
  8170.  
  8171. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  8172. {
  8173. If ((^^^^GPO1.AVBL == One))
  8174. {
  8175. ^^^^GPO1.WLD3 = One
  8176. }
  8177. }
  8178.  
  8179. Method (APS0, 0, NotSerialized)
  8180. {
  8181. If ((^^^^GPO1.AVBL == One))
  8182. {
  8183. ^^^^GPO1.WLD3 = One
  8184. }
  8185. }
  8186. }
  8187.  
  8188. Device (RTL2)
  8189. {
  8190. Name (_ADR, 0x02) // _ADR: Address
  8191. Method (_STA, 0, NotSerialized) // _STA: Status
  8192. {
  8193. If ((OSYS == 0x07DF))
  8194. {
  8195. Return (0x0F)
  8196. }
  8197.  
  8198. Return (Zero)
  8199. }
  8200.  
  8201. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  8202. {
  8203. Return (Zero)
  8204. }
  8205.  
  8206. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  8207. {
  8208. Name (NAM, Buffer (0x14)
  8209. {
  8210. "\\_SB.PCI0.SDHB.RTLW"
  8211. })
  8212. Name (SPB, Buffer (0x0C)
  8213. {
  8214. /* 0000 */ 0x8E, 0x1D, 0x00, 0x01, 0x00, 0xC0, 0x02, 0x00, /* ........ */
  8215. /* 0008 */ 0x00, 0x01, 0x00, 0x00 /* .... */
  8216. })
  8217. Name (END, ResourceTemplate ()
  8218. {
  8219. })
  8220. Concatenate (SPB, NAM, Local0)
  8221. Concatenate (Local0, END, Local1)
  8222. Return (Local1)
  8223. }
  8224. }
  8225. }
  8226.  
  8227. Device (SDHC)
  8228. {
  8229. Name (_HID, "80860F14" /* Intel Baytrail SDIO/MMC Host Controller */) // _HID: Hardware ID
  8230. Name (AHID, "INT33BB")
  8231. Name (_CID, "PNP0D40" /* SDA Standard Compliant SD Host Controller */) // _CID: Compatible ID
  8232. Name (_DDN, "Intel(R) SD Card Controller - 80862296") // _DDN: DOS Device Name
  8233. Name (_UID, 0x03) // _UID: Unique ID
  8234. Name (_HRV, One) // _HRV: Hardware Revision
  8235. Name (CPR0, Package (0x01)
  8236. {
  8237. P33X
  8238. })
  8239. Name (WPR0, Package (0x01)
  8240. {
  8241. P33W
  8242. })
  8243. Name (CDEP, Package (0x02)
  8244. {
  8245. I2C7,
  8246. ^I2C7.PMIC
  8247. })
  8248. Name (WDEP, Package (0x02)
  8249. {
  8250. I2C7,
  8251. ^I2C7.PMI5
  8252. })
  8253. Name (ABUF, ResourceTemplate ()
  8254. {
  8255. Memory32Fixed (ReadWrite,
  8256. 0x00000000, // Address Base
  8257. 0x00001000, // Address Length
  8258. _Y06)
  8259. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  8260. {
  8261. 0x0000002F,
  8262. }
  8263. GpioInt (Edge, ActiveBoth, Shared, PullNone, 0x2710,
  8264. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8265. )
  8266. { // Pin list
  8267. 0x0051
  8268. }
  8269. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  8270. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8271. )
  8272. { // Pin list
  8273. 0x0051
  8274. }
  8275. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  8276. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8277. )
  8278. { // Pin list
  8279. 0x0055
  8280. }
  8281. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  8282. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8283. )
  8284. { // Pin list
  8285. 0x004E
  8286. }
  8287. })
  8288. Name (WBUF, ResourceTemplate ()
  8289. {
  8290. Memory32Fixed (ReadWrite,
  8291. 0x00000000, // Address Base
  8292. 0x00001000, // Address Length
  8293. _Y07)
  8294. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  8295. {
  8296. 0x0000002F,
  8297. }
  8298. GpioInt (Edge, ActiveBoth, SharedAndWake, PullNone, 0x2710,
  8299. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8300. )
  8301. { // Pin list
  8302. 0x0051
  8303. }
  8304. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  8305. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8306. )
  8307. { // Pin list
  8308. 0x0051
  8309. }
  8310. })
  8311. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  8312. {
  8313. CreateDWordField (ABUF, \_SB.PCI0.SDHC._Y06._BAS, B0BA) // _BAS: Base Address
  8314. CreateDWordField (ABUF, \_SB.PCI0.SDHC._Y06._LEN, B0LN) // _LEN: Length
  8315. B0BA = SD0A /* \SD0A */
  8316. B0LN = SD0L /* \SD0L */
  8317. CreateDWordField (WBUF, \_SB.PCI0.SDHC._Y07._BAS, B01A) // _BAS: Base Address
  8318. CreateDWordField (WBUF, \_SB.PCI0.SDHC._Y07._LEN, B01N) // _LEN: Length
  8319. B01A = SD0A /* \SD0A */
  8320. B01N = SD0L /* \SD0L */
  8321. If (((OSID == 0x02) || (OSID == 0x04)))
  8322. {
  8323. Return (ABUF) /* \_SB_.PCI0.SDHC.ABUF */
  8324. }
  8325.  
  8326. Return (WBUF) /* \_SB_.PCI0.SDHC.WBUF */
  8327. }
  8328.  
  8329. Method (_STA, 0, NotSerialized) // _STA: Status
  8330. {
  8331. If (((SD0A == Zero) || (SD3D == One)))
  8332. {
  8333. Return (Zero)
  8334. }
  8335.  
  8336. If ((OSYS == 0x07DF))
  8337. {
  8338. Return (Zero)
  8339. }
  8340.  
  8341. Return (0x0F)
  8342. }
  8343.  
  8344. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  8345. {
  8346. If ((SCDD == One))
  8347. {
  8348. Local0 = (^^CHVC.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) | One)
  8349. ^^CHVC.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
  8350. }
  8351.  
  8352. PSAT |= 0x03
  8353. PSAT |= Zero
  8354. }
  8355.  
  8356. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  8357. {
  8358. If ((SCDD == One))
  8359. {
  8360. Local0 = (^^CHVC.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) & 0xFFFFFFFC)
  8361. ^^CHVC.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
  8362. }
  8363.  
  8364. PSAT &= 0xFFFFFFFC
  8365. PSAT |= Zero
  8366. If ((OSID == One))
  8367. {
  8368. Sleep (0x03E8)
  8369. }
  8370. }
  8371.  
  8372. OperationRegion (KEYS, SystemMemory, SD1A, 0x0100)
  8373. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  8374. {
  8375. Offset (0x84),
  8376. PSAT, 32
  8377. }
  8378.  
  8379. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  8380. {
  8381. If ((SDI2 == Zero))
  8382. {
  8383. Return (Zero)
  8384. }
  8385. Else
  8386. {
  8387. Return (0x03)
  8388. }
  8389. }
  8390. }
  8391.  
  8392. Device (SHC1)
  8393. {
  8394. Name (_HID, "80860F14" /* Intel Baytrail SDIO/MMC Host Controller */) // _HID: Hardware ID
  8395. Name (_CID, "PNP0D40" /* SDA Standard Compliant SD Host Controller */) // _CID: Compatible ID
  8396. Name (_DDN, "Intel(R) SD Card Controller - 80862296") // _DDN: DOS Device Name
  8397. Name (_UID, 0x03) // _UID: Unique ID
  8398. Name (_HRV, One) // _HRV: Hardware Revision
  8399. Name (CDEP, Package (0x02)
  8400. {
  8401. MBID,
  8402. I2C7
  8403. })
  8404. Name (_DEP, Package (0x03) // _DEP: Dependencies
  8405. {
  8406. MBID,
  8407. I2C7,
  8408. ^I2C7.PMI1
  8409. })
  8410. Name (TDEP, Package (0x03)
  8411. {
  8412. MBID,
  8413. I2C7,
  8414. ^I2C7.PMI2
  8415. })
  8416. Name (WDEP, Package (0x03)
  8417. {
  8418. MBID,
  8419. I2C7,
  8420. ^I2C7.PMI5
  8421. })
  8422. Name (CPR0, Package (0x01)
  8423. {
  8424. P33X
  8425. })
  8426. Name (WPR0, Package (0x01)
  8427. {
  8428. P18W
  8429. })
  8430. Name (ABUF, ResourceTemplate ()
  8431. {
  8432. Memory32Fixed (ReadWrite,
  8433. 0x00000000, // Address Base
  8434. 0x00001000, // Address Length
  8435. _Y08)
  8436. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  8437. {
  8438. 0x0000002F,
  8439. }
  8440. GpioInt (Edge, ActiveHigh, Shared, PullNone, 0x2710,
  8441. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8442. )
  8443. { // Pin list
  8444. 0x0051
  8445. }
  8446. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  8447. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8448. )
  8449. { // Pin list
  8450. 0x0051
  8451. }
  8452. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  8453. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8454. )
  8455. { // Pin list
  8456. 0x0055
  8457. }
  8458. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  8459. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8460. )
  8461. { // Pin list
  8462. 0x004E
  8463. }
  8464. })
  8465. Name (WBUF, ResourceTemplate ()
  8466. {
  8467. Memory32Fixed (ReadWrite,
  8468. 0x00000000, // Address Base
  8469. 0x00001000, // Address Length
  8470. _Y09)
  8471. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  8472. {
  8473. 0x0000002F,
  8474. }
  8475. GpioInt (Edge, ActiveBoth, SharedAndWake, PullNone, 0x2710,
  8476. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8477. )
  8478. { // Pin list
  8479. 0x0051
  8480. }
  8481. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionInputOnly,
  8482. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  8483. )
  8484. { // Pin list
  8485. 0x0051
  8486. }
  8487. })
  8488. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  8489. {
  8490. CreateDWordField (ABUF, \_SB.PCI0.SHC1._Y08._BAS, B0BA) // _BAS: Base Address
  8491. CreateDWordField (ABUF, \_SB.PCI0.SHC1._Y08._LEN, B0LN) // _LEN: Length
  8492. B0BA = SD0A /* \SD0A */
  8493. B0LN = SD0L /* \SD0L */
  8494. CreateDWordField (WBUF, \_SB.PCI0.SHC1._Y09._BAS, B01A) // _BAS: Base Address
  8495. CreateDWordField (WBUF, \_SB.PCI0.SHC1._Y09._LEN, B01N) // _LEN: Length
  8496. B01A = SD0A /* \SD0A */
  8497. B01N = SD0L /* \SD0L */
  8498. If ((OSID == 0x02))
  8499. {
  8500. Return (ABUF) /* \_SB_.PCI0.SHC1.ABUF */
  8501. }
  8502.  
  8503. Return (WBUF) /* \_SB_.PCI0.SHC1.WBUF */
  8504. }
  8505.  
  8506. Method (_STA, 0, NotSerialized) // _STA: Status
  8507. {
  8508. If (((SD0A == Zero) || (SD3D == One)))
  8509. {
  8510. Return (Zero)
  8511. }
  8512.  
  8513. If ((OSYS == 0x07DF))
  8514. {
  8515. Return (0x0F)
  8516. }
  8517. Else
  8518. {
  8519. Return (Zero)
  8520. }
  8521. }
  8522.  
  8523. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  8524. {
  8525. If ((SCDD == One))
  8526. {
  8527. Local0 = (^^^MBID.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) | One)
  8528. ^^^MBID.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
  8529. }
  8530.  
  8531. If ((^^I2C7.AVBL == One))
  8532. {
  8533. If ((PMID == One))
  8534. {
  8535. BUFF = ^^I2C7.DL02 /* \_SB_.PCI0.I2C7.DL02 */
  8536. DATA &= 0xFE
  8537. ^^I2C7.DL02 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8538. Sleep (0x0A)
  8539. BUFF = ^^I2C7.DL03 /* \_SB_.PCI0.I2C7.DL03 */
  8540. DATA &= 0xFE
  8541. ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8542. }
  8543. ElseIf ((PMID == 0x02))
  8544. {
  8545. BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
  8546. If ((STAT == Zero))
  8547. {
  8548. DATA &= 0xEF
  8549. ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8550. Sleep (0x0A)
  8551. BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
  8552. BUFF = ^^I2C7.XD92 /* \_SB_.PCI0.I2C7.XD92 */
  8553. If ((STAT == Zero))
  8554. {
  8555. DATA &= 0xF8
  8556. DATA |= 0x04
  8557. ^^I2C7.XD92 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8558. }
  8559.  
  8560. Sleep (0x32)
  8561. }
  8562. }
  8563. ElseIf ((PMID == 0x03))
  8564. {
  8565. ADBG ("PS3")
  8566. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
  8567. Sleep (0x0A)
  8568. Local0 &= 0xF8
  8569. ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
  8570. }
  8571. }
  8572.  
  8573. PSAT |= 0x03
  8574. PSAT |= Zero
  8575. }
  8576.  
  8577. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  8578. {
  8579. If ((SCDD == One))
  8580. {
  8581. Local0 = (^^^MBID.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) & 0xFFFFFFFC)
  8582. ^^^MBID.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
  8583. }
  8584.  
  8585. If ((SDVL == Zero))
  8586. {
  8587. If ((^^I2C7.AVBL == One))
  8588. {
  8589. If ((PMID == One))
  8590. {
  8591. DATA = 0x1D
  8592. ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8593. Sleep (0x0A)
  8594. ^^I2C7.DL02 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8595. }
  8596. ElseIf ((PMID == 0x02))
  8597. {
  8598. BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
  8599. If ((STAT == Zero))
  8600. {
  8601. DATA |= 0x10
  8602. ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8603. }
  8604.  
  8605. BUFF = ^^I2C7.XD93 /* \_SB_.PCI0.I2C7.XD93 */
  8606. If ((STAT == Zero))
  8607. {
  8608. DATA |= 0x1A
  8609. DATA &= 0xFA
  8610. ^^I2C7.XD93 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8611. }
  8612.  
  8613. Sleep (0x32)
  8614. BUFF = ^^I2C7.XD92 /* \_SB_.PCI0.I2C7.XD92 */
  8615. If ((STAT == Zero))
  8616. {
  8617. DATA &= 0xF8
  8618. DATA |= 0x03
  8619. ^^I2C7.XD92 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8620. }
  8621. }
  8622. ElseIf ((PMID == 0x03))
  8623. {
  8624. ADBG ("PS0 3p3")
  8625. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
  8626. Sleep (0x0A)
  8627. Local0 |= One
  8628. Local0 &= 0xF9
  8629. ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
  8630. Sleep (0x0A)
  8631. ^^I2C7.PMI5.SET (One, 0x6E, 0xC6, 0x3D)
  8632. Sleep (0x0A)
  8633. }
  8634. }
  8635. }
  8636. ElseIf ((SDVL == One))
  8637. {
  8638. If ((^^I2C7.AVBL == One))
  8639. {
  8640. If ((PMID == One))
  8641. {
  8642. DATA = 0x59
  8643. ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8644. Sleep (0x05)
  8645. }
  8646. ElseIf ((PMID == 0x02))
  8647. {
  8648. BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
  8649. If ((STAT == Zero))
  8650. {
  8651. DATA |= 0x10
  8652. ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8653. }
  8654.  
  8655. BUFF = ^^I2C7.XD93 /* \_SB_.PCI0.I2C7.XD93 */
  8656. If ((STAT == Zero))
  8657. {
  8658. DATA |= 0x0B
  8659. DATA &= 0xEB
  8660. ^^I2C7.XD93 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8661. }
  8662.  
  8663. Sleep (0x0A)
  8664. BUFF = ^^I2C7.XD92 /* \_SB_.PCI0.I2C7.XD92 */
  8665. If ((STAT == Zero))
  8666. {
  8667. DATA &= 0xF8
  8668. DATA |= 0x03
  8669. ^^I2C7.XD92 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8670. }
  8671. }
  8672. ElseIf ((PMID == 0x03))
  8673. {
  8674. ADBG ("PS0 1p8")
  8675. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
  8676. Sleep (0x0A)
  8677. Local0 |= One
  8678. Local0 &= 0xF9
  8679. ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
  8680. Sleep (0x0A)
  8681. ^^I2C7.PMI5.SET (One, 0x6E, 0xC6, 0x1F)
  8682. Sleep (0x0A)
  8683. }
  8684. }
  8685. }
  8686.  
  8687. PSAT &= 0xFFFFFFFC
  8688. PSAT |= Zero
  8689. If ((OSID == One))
  8690. {
  8691. Sleep (0x03E8)
  8692. }
  8693. }
  8694.  
  8695. OperationRegion (KEYS, SystemMemory, SD1A, 0x0100)
  8696. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  8697. {
  8698. Offset (0x84),
  8699. PSAT, 32
  8700. }
  8701.  
  8702. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  8703. {
  8704. If ((SDI2 == Zero))
  8705. {
  8706. Return (Zero)
  8707. }
  8708. Else
  8709. {
  8710. Return (0x03)
  8711. }
  8712. }
  8713.  
  8714. Name (BUFF, Buffer (0x03) {})
  8715. CreateByteField (BUFF, Zero, STAT)
  8716. CreateByteField (BUFF, 0x02, DATA)
  8717. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  8718. {
  8719. If ((SCDD == One))
  8720. {
  8721. Local0 = (^^^MBID.RMBX (0x63, 0x0600, 0x06, Zero, Zero, Zero) & 0xFFFFFFFC)
  8722. ^^^MBID.WMBX (0x63, 0x0600, Local0, 0x07, Zero, Zero, Zero)
  8723. }
  8724.  
  8725. If ((Arg0 == ToUUID ("f6c13ea5-65cd-461f-ab7a-29f7e8d5bd61")))
  8726. {
  8727. If ((Arg1 == Zero))
  8728. {
  8729. If ((Arg2 == Zero))
  8730. {
  8731. Return (Buffer (0x04)
  8732. {
  8733. 0x1F, 0x01, 0x00, 0x00 /* .... */
  8734. })
  8735. }
  8736.  
  8737. If ((Arg2 == 0x08))
  8738. {
  8739. Return (Buffer (One)
  8740. {
  8741. 0x05 /* . */
  8742. })
  8743. }
  8744.  
  8745. If ((Arg2 == One))
  8746. {
  8747. Return (One)
  8748. }
  8749.  
  8750. If ((Arg2 == 0x02))
  8751. {
  8752. Return (0x02)
  8753. }
  8754.  
  8755. If ((Arg2 == 0x03))
  8756. {
  8757. ADBG ("DSM 1p8")
  8758. If ((^^I2C7.AVBL == One))
  8759. {
  8760. If ((PMID == One))
  8761. {
  8762. DATA = 0x59
  8763. ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8764. }
  8765. ElseIf ((PMID == 0x02))
  8766. {
  8767. BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
  8768. If ((STAT == Zero))
  8769. {
  8770. DATA |= 0x10
  8771. ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8772. }
  8773.  
  8774. BUFF = ^^I2C7.XD93 /* \_SB_.PCI0.I2C7.XD93 */
  8775. If ((STAT == Zero))
  8776. {
  8777. DATA |= 0x0B
  8778. DATA &= 0xEB
  8779. ^^I2C7.XD93 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8780. }
  8781.  
  8782. Sleep (0x0A)
  8783. BUFF = ^^I2C7.XD92 /* \_SB_.PCI0.I2C7.XD92 */
  8784. If ((STAT == Zero))
  8785. {
  8786. DATA &= 0xF8
  8787. DATA |= 0x03
  8788. ^^I2C7.XD92 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8789. }
  8790. }
  8791. ElseIf ((PMID == 0x03))
  8792. {
  8793. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
  8794. Sleep (0x0A)
  8795. Local0 &= 0xF8
  8796. ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
  8797. Sleep (0x64)
  8798. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
  8799. Sleep (0x0A)
  8800. Local0 |= One
  8801. Local0 &= 0xF9
  8802. ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
  8803. Sleep (0x0A)
  8804. ^^I2C7.PMI5.SET (One, 0x6E, 0xC6, 0x1F)
  8805. Sleep (0x0A)
  8806. }
  8807. }
  8808.  
  8809. SDVL = One
  8810. Return (0x03)
  8811. }
  8812.  
  8813. If ((Arg2 == 0x04))
  8814. {
  8815. ADBG ("DSM 3p3")
  8816. If ((^^I2C7.AVBL == One))
  8817. {
  8818. If ((PMID == One))
  8819. {
  8820. BUFF = ^^I2C7.DL02 /* \_SB_.PCI0.I2C7.DL02 */
  8821. DATA &= 0xFE
  8822. ^^I2C7.DL02 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8823. Sleep (0x0A)
  8824. BUFF = ^^I2C7.DL03 /* \_SB_.PCI0.I2C7.DL03 */
  8825. DATA &= 0xFE
  8826. ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8827. Sleep (0x32)
  8828. DATA = 0x1D
  8829. ^^I2C7.DL02 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8830. Sleep (0x0A)
  8831. DATA = 0x1D
  8832. ^^I2C7.DL03 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8833. }
  8834. ElseIf ((PMID == 0x02))
  8835. {
  8836. BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
  8837. If ((STAT == Zero))
  8838. {
  8839. DATA &= 0xEF
  8840. ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8841. }
  8842.  
  8843. Sleep (0x0A)
  8844. BUFF = ^^I2C7.XD92 /* \_SB_.PCI0.I2C7.XD92 */
  8845. If ((STAT == Zero))
  8846. {
  8847. DATA &= 0xF8
  8848. DATA |= 0x04
  8849. ^^I2C7.XD92 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8850. }
  8851.  
  8852. Sleep (0x32)
  8853. BUFF = ^^I2C7.XD93 /* \_SB_.PCI0.I2C7.XD93 */
  8854. If ((STAT == Zero))
  8855. {
  8856. DATA |= 0x1A
  8857. DATA &= 0xFA
  8858. ^^I2C7.XD93 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8859. }
  8860.  
  8861. BUFF = ^^I2C7.XD31 /* \_SB_.PCI0.I2C7.XD31 */
  8862. If ((STAT == Zero))
  8863. {
  8864. DATA |= 0x10
  8865. ^^I2C7.XD31 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8866. }
  8867.  
  8868. Sleep (0x0A)
  8869. BUFF = ^^I2C7.XD92 /* \_SB_.PCI0.I2C7.XD92 */
  8870. If ((STAT == Zero))
  8871. {
  8872. DATA &= 0xF8
  8873. DATA |= 0x03
  8874. ^^I2C7.XD92 = BUFF /* \_SB_.PCI0.SHC1.BUFF */
  8875. }
  8876. }
  8877. ElseIf ((PMID == 0x03))
  8878. {
  8879. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x5F)
  8880. Sleep (0x0A)
  8881. Local0 &= 0xF8
  8882. ^^I2C7.PMI5.SET (One, 0x6E, 0x5F, Local0)
  8883. Sleep (0x0A)
  8884. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
  8885. Sleep (0x0A)
  8886. Local0 &= 0xF8
  8887. ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
  8888. Sleep (0x03E8)
  8889. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x67)
  8890. Sleep (0x0A)
  8891. Local0 |= One
  8892. Local0 &= 0xF9
  8893. ^^I2C7.PMI5.SET (One, 0x6E, 0x67, Local0)
  8894. Sleep (0x0A)
  8895. ^^I2C7.PMI5.SET (One, 0x6E, 0xC6, 0x3D)
  8896. Sleep (0x0A)
  8897. Local0 = ^^I2C7.PMI5.GET (One, 0x6E, 0x5F)
  8898. Sleep (0x0A)
  8899. Local0 |= One
  8900. Local0 &= 0xF9
  8901. ^^I2C7.PMI5.SET (One, 0x6E, 0x5F, Local0)
  8902. Sleep (0x0A)
  8903. }
  8904. }
  8905.  
  8906. Sleep (0x32)
  8907. SDVL = Zero
  8908. Return (0x04)
  8909. }
  8910. }
  8911. Else
  8912. {
  8913. Return (Zero)
  8914. }
  8915.  
  8916. Return (Zero)
  8917. }
  8918. }
  8919. }
  8920.  
  8921. Device (GDM1)
  8922. {
  8923. Name (_HID, "INTL9C60" /* Intel Baytrail SOC DMA Controller */) // _HID: Hardware ID
  8924. Name (_DDN, "Intel(R) DMA Controller #1 - INTL9C60") // _DDN: DOS Device Name
  8925. Name (_UID, One) // _UID: Unique ID
  8926. Name (RBUF, ResourceTemplate ()
  8927. {
  8928. Memory32Fixed (ReadWrite,
  8929. 0x00000000, // Address Base
  8930. 0x00004000, // Address Length
  8931. _Y0A)
  8932. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  8933. {
  8934. 0x0000002A,
  8935. }
  8936. })
  8937. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  8938. {
  8939. CreateDWordField (RBUF, \_SB.PCI0.GDM1._Y0A._BAS, B0BA) // _BAS: Base Address
  8940. CreateDWordField (RBUF, \_SB.PCI0.GDM1._Y0A._LEN, B0LN) // _LEN: Length
  8941. B0BA = D10A /* \D10A */
  8942. B0LN = D10L /* \D10L */
  8943. Return (RBUF) /* \_SB_.PCI0.GDM1.RBUF */
  8944. }
  8945.  
  8946. Method (_STA, 0, NotSerialized) // _STA: Status
  8947. {
  8948. If (((D10A == Zero) || (L10D == One)))
  8949. {
  8950. Return (Zero)
  8951. }
  8952.  
  8953. If ((OSID == One))
  8954. {
  8955. Return (0x0F)
  8956. }
  8957.  
  8958. Return (Zero)
  8959. }
  8960.  
  8961. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  8962. {
  8963. If ((DM1P == Zero))
  8964. {
  8965. Return (Zero)
  8966. }
  8967. Else
  8968. {
  8969. Return (0x03)
  8970. }
  8971. }
  8972. }
  8973.  
  8974. Device (GDM2)
  8975. {
  8976. Name (_HID, "80862286") // _HID: Hardware ID
  8977. Name (_CID, "80862286") // _CID: Compatible ID
  8978. Name (_DDN, "Intel(R) DMA Controller #1 - 80862286") // _DDN: DOS Device Name
  8979. Name (_UID, One) // _UID: Unique ID
  8980. Name (RBUF, ResourceTemplate ()
  8981. {
  8982. Memory32Fixed (ReadWrite,
  8983. 0x00000000, // Address Base
  8984. 0x00004000, // Address Length
  8985. _Y0B)
  8986. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  8987. {
  8988. 0x0000002A,
  8989. }
  8990. })
  8991. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  8992. {
  8993. CreateDWordField (RBUF, \_SB.PCI0.GDM2._Y0B._BAS, B0BA) // _BAS: Base Address
  8994. CreateDWordField (RBUF, \_SB.PCI0.GDM2._Y0B._LEN, B0LN) // _LEN: Length
  8995. B0BA = D10A /* \D10A */
  8996. B0LN = D10L /* \D10L */
  8997. Return (RBUF) /* \_SB_.PCI0.GDM2.RBUF */
  8998. }
  8999.  
  9000. Method (_STA, 0, NotSerialized) // _STA: Status
  9001. {
  9002. If (((D10A == Zero) || (L10D == One)))
  9003. {
  9004. Return (Zero)
  9005. }
  9006.  
  9007. If ((OSID != One))
  9008. {
  9009. Return (0x0F)
  9010. }
  9011.  
  9012. Return (Zero)
  9013. }
  9014.  
  9015. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9016. {
  9017. If ((DM1P == Zero))
  9018. {
  9019. Return (Zero)
  9020. }
  9021. Else
  9022. {
  9023. Return (0x03)
  9024. }
  9025. }
  9026. }
  9027.  
  9028. Device (GDM3)
  9029. {
  9030. Name (_HID, "INTL9C60" /* Intel Baytrail SOC DMA Controller */) // _HID: Hardware ID
  9031. Name (_DDN, "Intel(R) DMA Controller #2 - INTL9C60") // _DDN: DOS Device Name
  9032. Name (_UID, 0x02) // _UID: Unique ID
  9033. Name (RBUF, ResourceTemplate ()
  9034. {
  9035. Memory32Fixed (ReadWrite,
  9036. 0x00000000, // Address Base
  9037. 0x00004000, // Address Length
  9038. _Y0C)
  9039. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9040. {
  9041. 0x0000002B,
  9042. }
  9043. })
  9044. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9045. {
  9046. CreateDWordField (RBUF, \_SB.PCI0.GDM3._Y0C._BAS, B0BA) // _BAS: Base Address
  9047. CreateDWordField (RBUF, \_SB.PCI0.GDM3._Y0C._LEN, B0LN) // _LEN: Length
  9048. B0BA = D20A /* \D20A */
  9049. B0LN = D20L /* \D20L */
  9050. Return (RBUF) /* \_SB_.PCI0.GDM3.RBUF */
  9051. }
  9052.  
  9053. Method (_STA, 0, NotSerialized) // _STA: Status
  9054. {
  9055. If (((D20A == Zero) || (L20D == One)))
  9056. {
  9057. Return (Zero)
  9058. }
  9059.  
  9060. If ((OSID == One))
  9061. {
  9062. Return (0x0F)
  9063. }
  9064.  
  9065. Return (Zero)
  9066. }
  9067.  
  9068. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9069. {
  9070. If ((DM2P == Zero))
  9071. {
  9072. Return (Zero)
  9073. }
  9074. Else
  9075. {
  9076. Return (0x03)
  9077. }
  9078. }
  9079. }
  9080.  
  9081. Device (GDM4)
  9082. {
  9083. Name (_HID, "808622C0") // _HID: Hardware ID
  9084. Name (_CID, "808622C0") // _CID: Compatible ID
  9085. Name (_DDN, "Intel(R) DMA Controller #2 - 808622C0") // _DDN: DOS Device Name
  9086. Name (_UID, 0x02) // _UID: Unique ID
  9087. Name (RBUF, ResourceTemplate ()
  9088. {
  9089. Memory32Fixed (ReadWrite,
  9090. 0x00000000, // Address Base
  9091. 0x00004000, // Address Length
  9092. _Y0D)
  9093. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9094. {
  9095. 0x0000002B,
  9096. }
  9097. })
  9098. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9099. {
  9100. CreateDWordField (RBUF, \_SB.PCI0.GDM4._Y0D._BAS, B0BA) // _BAS: Base Address
  9101. CreateDWordField (RBUF, \_SB.PCI0.GDM4._Y0D._LEN, B0LN) // _LEN: Length
  9102. B0BA = D20A /* \D20A */
  9103. B0LN = D20L /* \D20L */
  9104. Return (RBUF) /* \_SB_.PCI0.GDM4.RBUF */
  9105. }
  9106.  
  9107. Method (_STA, 0, NotSerialized) // _STA: Status
  9108. {
  9109. If (((D20A == Zero) || (L20D == One)))
  9110. {
  9111. Return (Zero)
  9112. }
  9113.  
  9114. If ((OSID != One))
  9115. {
  9116. Return (0x0F)
  9117. }
  9118.  
  9119. Return (Zero)
  9120. }
  9121.  
  9122. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9123. {
  9124. If ((DM2P == Zero))
  9125. {
  9126. Return (Zero)
  9127. }
  9128. Else
  9129. {
  9130. Return (0x03)
  9131. }
  9132. }
  9133. }
  9134.  
  9135. Device (PWM1)
  9136. {
  9137. Name (_HID, "80862288") // _HID: Hardware ID
  9138. Name (_CID, "80862288") // _CID: Compatible ID
  9139. Name (_DDN, "Intel(R) PWM Controller #1 - 80862288") // _DDN: DOS Device Name
  9140. Name (_UID, One) // _UID: Unique ID
  9141. Name (RBUF, ResourceTemplate ()
  9142. {
  9143. Memory32Fixed (ReadWrite,
  9144. 0x00000000, // Address Base
  9145. 0x00001000, // Address Length
  9146. _Y0E)
  9147. })
  9148. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9149. {
  9150. CreateDWordField (RBUF, \_SB.PCI0.PWM1._Y0E._BAS, B0BA) // _BAS: Base Address
  9151. CreateDWordField (RBUF, \_SB.PCI0.PWM1._Y0E._LEN, B0LN) // _LEN: Length
  9152. B0BA = P10A /* \P10A */
  9153. B0LN = P10L /* \P10L */
  9154. Return (RBUF) /* \_SB_.PCI0.PWM1.RBUF */
  9155. }
  9156.  
  9157. Method (_STA, 0, NotSerialized) // _STA: Status
  9158. {
  9159. If (((P10A == Zero) || (L11D == One)))
  9160. {
  9161. Return (Zero)
  9162. }
  9163.  
  9164. If ((OSID == One))
  9165. {
  9166. Return (Zero)
  9167. }
  9168.  
  9169. Return (0x0F)
  9170. }
  9171.  
  9172. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  9173. {
  9174. PSAT |= 0x03
  9175. PSAT |= Zero
  9176. }
  9177.  
  9178. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  9179. {
  9180. PSAT &= 0xFFFFFFFC
  9181. PSAT |= Zero
  9182. }
  9183.  
  9184. OperationRegion (KEYS, SystemMemory, P11A, 0x0100)
  9185. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  9186. {
  9187. Offset (0x84),
  9188. PSAT, 32
  9189. }
  9190.  
  9191. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9192. {
  9193. If ((PW1P == Zero))
  9194. {
  9195. Return (Zero)
  9196. }
  9197. Else
  9198. {
  9199. Return (0x03)
  9200. }
  9201. }
  9202. }
  9203.  
  9204. Device (PWM2)
  9205. {
  9206. Name (_HID, "80862289") // _HID: Hardware ID
  9207. Name (_CID, "80862289") // _CID: Compatible ID
  9208. Name (_DDN, "Intel(R) PWM Controller #2 - 80862289") // _DDN: DOS Device Name
  9209. Name (_UID, 0x02) // _UID: Unique ID
  9210. Name (RBUF, ResourceTemplate ()
  9211. {
  9212. Memory32Fixed (ReadWrite,
  9213. 0x00000000, // Address Base
  9214. 0x00001000, // Address Length
  9215. _Y0F)
  9216. })
  9217. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9218. {
  9219. CreateDWordField (RBUF, \_SB.PCI0.PWM2._Y0F._BAS, B0BA) // _BAS: Base Address
  9220. CreateDWordField (RBUF, \_SB.PCI0.PWM2._Y0F._LEN, B0LN) // _LEN: Length
  9221. B0BA = P20A /* \P20A */
  9222. B0LN = P20L /* \P20L */
  9223. Return (RBUF) /* \_SB_.PCI0.PWM2.RBUF */
  9224. }
  9225.  
  9226. Method (_STA, 0, NotSerialized) // _STA: Status
  9227. {
  9228. If (((P20A == Zero) || (L12D == One)))
  9229. {
  9230. Return (Zero)
  9231. }
  9232.  
  9233. If ((((BDID == 0x08) || (BDID == 0x0A)) || (OSID == One)))
  9234. {
  9235. Return (Zero)
  9236. }
  9237.  
  9238. Return (0x0F)
  9239. }
  9240.  
  9241. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  9242. {
  9243. PSAT |= 0x03
  9244. PSAT |= Zero
  9245. }
  9246.  
  9247. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  9248. {
  9249. PSAT &= 0xFFFFFFFC
  9250. PSAT |= Zero
  9251. }
  9252.  
  9253. OperationRegion (KEYS, SystemMemory, P21A, 0x0100)
  9254. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  9255. {
  9256. Offset (0x84),
  9257. PSAT, 32
  9258. }
  9259.  
  9260. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9261. {
  9262. If ((PW2P == Zero))
  9263. {
  9264. Return (Zero)
  9265. }
  9266. Else
  9267. {
  9268. Return (0x03)
  9269. }
  9270. }
  9271. }
  9272.  
  9273. Device (URT1)
  9274. {
  9275. Name (_HID, "8086228A") // _HID: Hardware ID
  9276. Name (_CID, "8086228A") // _CID: Compatible ID
  9277. Name (_DDN, "Intel(R) HS-UART Controller #1 - 8086228A") // _DDN: DOS Device Name
  9278. Name (_UID, One) // _UID: Unique ID
  9279. Name (_DEP, Package (0x01) // _DEP: Dependencies
  9280. {
  9281. PEPD
  9282. })
  9283. Name (RBUF, ResourceTemplate ()
  9284. {
  9285. Memory32Fixed (ReadWrite,
  9286. 0x00000000, // Address Base
  9287. 0x00001000, // Address Length
  9288. _Y10)
  9289. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9290. {
  9291. 0x00000027,
  9292. }
  9293. FixedDMA (0x0002, 0x0002, Width32bit, )
  9294. FixedDMA (0x0003, 0x0003, Width32bit, )
  9295. })
  9296. Name (ABUF, ResourceTemplate ()
  9297. {
  9298. Memory32Fixed (ReadWrite,
  9299. 0x00000000, // Address Base
  9300. 0x00001000, // Address Length
  9301. _Y11)
  9302. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9303. {
  9304. 0x00000027,
  9305. }
  9306. FixedDMA (0x0002, 0x0002, Width32bit, )
  9307. FixedDMA (0x0003, 0x0003, Width32bit, )
  9308. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9309. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9310. )
  9311. { // Pin list
  9312. 0x0010
  9313. }
  9314. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9315. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9316. )
  9317. { // Pin list
  9318. 0x0014
  9319. }
  9320. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9321. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9322. )
  9323. { // Pin list
  9324. 0x000F
  9325. }
  9326. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9327. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9328. )
  9329. { // Pin list
  9330. 0x0012
  9331. }
  9332. })
  9333. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9334. {
  9335. If ((OSID == One))
  9336. {
  9337. CreateDWordField (RBUF, \_SB.PCI0.URT1._Y10._BAS, B0BA) // _BAS: Base Address
  9338. CreateDWordField (RBUF, \_SB.PCI0.URT1._Y10._LEN, B0LN) // _LEN: Length
  9339. B0BA = U10A /* \U10A */
  9340. B0LN = U10L /* \U10L */
  9341. Return (RBUF) /* \_SB_.PCI0.URT1.RBUF */
  9342. }
  9343. Else
  9344. {
  9345. CreateDWordField (ABUF, \_SB.PCI0.URT1._Y11._BAS, ABBA) // _BAS: Base Address
  9346. CreateDWordField (ABUF, \_SB.PCI0.URT1._Y11._LEN, ABLN) // _LEN: Length
  9347. ABBA = U10A /* \U10A */
  9348. ABLN = U10L /* \U10L */
  9349. Return (ABUF) /* \_SB_.PCI0.URT1.ABUF */
  9350. }
  9351. }
  9352.  
  9353. Method (_STA, 0, NotSerialized) // _STA: Status
  9354. {
  9355. If (((U10A == Zero) || (L13D == One)))
  9356. {
  9357. Return (Zero)
  9358. }
  9359.  
  9360. Return (0x0F)
  9361. }
  9362.  
  9363. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  9364. {
  9365. PSAT |= 0x03
  9366. PSAT |= Zero
  9367. }
  9368.  
  9369. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  9370. {
  9371. PSAT &= 0xFFFFFFFC
  9372. PSAT |= Zero
  9373. }
  9374.  
  9375. OperationRegion (KEYS, SystemMemory, U11A, 0x0100)
  9376. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  9377. {
  9378. Offset (0x84),
  9379. PSAT, 32
  9380. }
  9381.  
  9382. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9383. {
  9384. If ((UR1P == Zero))
  9385. {
  9386. Return (Zero)
  9387. }
  9388. Else
  9389. {
  9390. Return (0x03)
  9391. }
  9392. }
  9393.  
  9394. Device (BTH1)
  9395. {
  9396. Name (_HID, "BCM2E3A") // _HID: Hardware ID
  9397. Method (_STA, 0, NotSerialized) // _STA: Status
  9398. {
  9399. If ((BDID == One))
  9400. {
  9401. Return (Zero)
  9402. }
  9403.  
  9404. If (((BTHM == One) && (BTHS == One)))
  9405. {
  9406. Return (0x0F)
  9407. }
  9408.  
  9409. Return (Zero)
  9410. }
  9411.  
  9412. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9413. {
  9414. Name (BBUF, ResourceTemplate ()
  9415. {
  9416. UartSerialBus (0x0001C200, DataBitsEight, StopBitsOne,
  9417. 0xFC, LittleEndian, ParityTypeNone, FlowControlNone,
  9418. 0x0020, 0x0020, "\\_SB.PCI0.URT1",
  9419. 0x00, ResourceConsumer, ,
  9420. )
  9421. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
  9422. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9423. )
  9424. { // Pin list
  9425. 0x004C
  9426. }
  9427. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9428. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  9429. )
  9430. { // Pin list
  9431. 0x0001
  9432. }
  9433. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9434. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  9435. )
  9436. { // Pin list
  9437. 0x0003
  9438. }
  9439. })
  9440. Return (BBUF) /* \_SB_.PCI0.URT1.BTH1._CRS.BBUF */
  9441. }
  9442. }
  9443.  
  9444. Device (BTH2)
  9445. {
  9446. Name (_HID, "BCM2E64") // _HID: Hardware ID
  9447. Method (_STA, 0, NotSerialized) // _STA: Status
  9448. {
  9449. If ((BDID == One))
  9450. {
  9451. Return (Zero)
  9452. }
  9453.  
  9454. If (((BTHM == One) && (BTHS == 0x02)))
  9455. {
  9456. Return (0x0F)
  9457. }
  9458.  
  9459. Return (Zero)
  9460. }
  9461.  
  9462. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9463. {
  9464. Name (BBUF, ResourceTemplate ()
  9465. {
  9466. UartSerialBus (0x0001C200, DataBitsEight, StopBitsOne,
  9467. 0xFC, LittleEndian, ParityTypeNone, FlowControlNone,
  9468. 0x0020, 0x0020, "\\_SB.PCI0.URT1",
  9469. 0x00, ResourceConsumer, ,
  9470. )
  9471. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
  9472. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9473. )
  9474. { // Pin list
  9475. 0x004C
  9476. }
  9477. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9478. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  9479. )
  9480. { // Pin list
  9481. 0x0001
  9482. }
  9483. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9484. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  9485. )
  9486. { // Pin list
  9487. 0x0003
  9488. }
  9489. })
  9490. Return (BBUF) /* \_SB_.PCI0.URT1.BTH2._CRS.BBUF */
  9491. }
  9492. }
  9493.  
  9494. Device (BTH4)
  9495. {
  9496. Name (_HID, "BCM2E7B") // _HID: Hardware ID
  9497. Method (_STA, 0, NotSerialized) // _STA: Status
  9498. {
  9499. If (((BTHM == 0x02) || (BDID == One)))
  9500. {
  9501. Return (Zero)
  9502. }
  9503.  
  9504. If (((BDID == 0x09) || (BDID == 0x0A)))
  9505. {
  9506. Return (Zero)
  9507. }
  9508.  
  9509. If (((BTHM == One) && (BTHS == 0x04)))
  9510. {
  9511. Return (0x0F)
  9512. }
  9513.  
  9514. Return (Zero)
  9515. }
  9516.  
  9517. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9518. {
  9519. Name (BBUF, ResourceTemplate ()
  9520. {
  9521. UartSerialBus (0x0001C200, DataBitsEight, StopBitsOne,
  9522. 0xFC, LittleEndian, ParityTypeNone, FlowControlNone,
  9523. 0x0020, 0x0020, "\\_SB.PCI0.URT1",
  9524. 0x00, ResourceConsumer, ,
  9525. )
  9526. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
  9527. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9528. )
  9529. { // Pin list
  9530. 0x004C
  9531. }
  9532. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9533. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  9534. )
  9535. { // Pin list
  9536. 0x0001
  9537. }
  9538. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9539. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  9540. )
  9541. { // Pin list
  9542. 0x0003
  9543. }
  9544. })
  9545. Return (BBUF) /* \_SB_.PCI0.URT1.BTH4._CRS.BBUF */
  9546. }
  9547. }
  9548. }
  9549.  
  9550. Device (URT2)
  9551. {
  9552. Name (_HID, "8086228A") // _HID: Hardware ID
  9553. Name (_CID, "8086228A") // _CID: Compatible ID
  9554. Name (_DDN, "Intel(R) HS-UART Controller #2 - 8086228C") // _DDN: DOS Device Name
  9555. Name (_UID, 0x02) // _UID: Unique ID
  9556. Name (_DEP, Package (0x01) // _DEP: Dependencies
  9557. {
  9558. PEPD
  9559. })
  9560. Name (RBUF, ResourceTemplate ()
  9561. {
  9562. Memory32Fixed (ReadWrite,
  9563. 0x00000000, // Address Base
  9564. 0x00001000, // Address Length
  9565. _Y12)
  9566. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9567. {
  9568. 0x00000028,
  9569. }
  9570. FixedDMA (0x0004, 0x0004, Width32bit, )
  9571. FixedDMA (0x0005, 0x0005, Width32bit, )
  9572. })
  9573. Name (ABUF, ResourceTemplate ()
  9574. {
  9575. Memory32Fixed (ReadWrite,
  9576. 0x00000000, // Address Base
  9577. 0x00001000, // Address Length
  9578. _Y13)
  9579. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9580. {
  9581. 0x00000028,
  9582. }
  9583. FixedDMA (0x0004, 0x0004, Width32bit, )
  9584. FixedDMA (0x0005, 0x0005, Width32bit, )
  9585. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9586. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9587. )
  9588. { // Pin list
  9589. 0x0011
  9590. }
  9591. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9592. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9593. )
  9594. { // Pin list
  9595. 0x0015
  9596. }
  9597. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9598. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9599. )
  9600. { // Pin list
  9601. 0x0013
  9602. }
  9603. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  9604. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  9605. )
  9606. { // Pin list
  9607. 0x0016
  9608. }
  9609. })
  9610. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9611. {
  9612. If ((OSID == One))
  9613. {
  9614. CreateDWordField (RBUF, \_SB.PCI0.URT2._Y12._BAS, B0BA) // _BAS: Base Address
  9615. CreateDWordField (RBUF, \_SB.PCI0.URT2._Y12._LEN, B0LN) // _LEN: Length
  9616. B0BA = U20A /* \U20A */
  9617. B0LN = U20L /* \U20L */
  9618. Return (RBUF) /* \_SB_.PCI0.URT2.RBUF */
  9619. }
  9620. Else
  9621. {
  9622. CreateDWordField (ABUF, \_SB.PCI0.URT2._Y13._BAS, ABBA) // _BAS: Base Address
  9623. CreateDWordField (ABUF, \_SB.PCI0.URT2._Y13._LEN, ABLN) // _LEN: Length
  9624. ABBA = U20A /* \U20A */
  9625. ABLN = U20L /* \U20L */
  9626. Return (ABUF) /* \_SB_.PCI0.URT2.ABUF */
  9627. }
  9628. }
  9629.  
  9630. Method (_STA, 0, NotSerialized) // _STA: Status
  9631. {
  9632. If (((U20A == Zero) || (L14D == One)))
  9633. {
  9634. Return (Zero)
  9635. }
  9636.  
  9637. Return (0x0F)
  9638. }
  9639.  
  9640. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  9641. {
  9642. PSAT |= 0x03
  9643. PSAT |= Zero
  9644. }
  9645.  
  9646. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  9647. {
  9648. PSAT &= 0xFFFFFFFC
  9649. PSAT |= Zero
  9650. If ((^^^GPO1.AMMR == One))
  9651. {
  9652. ^^^GPO1.GPSC = Zero
  9653. ^^^GPO1.GPSE = Zero
  9654. }
  9655. }
  9656.  
  9657. OperationRegion (KEYS, SystemMemory, U21A, 0x0100)
  9658. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  9659. {
  9660. Offset (0x84),
  9661. PSAT, 32
  9662. }
  9663.  
  9664. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9665. {
  9666. If ((UR2P == Zero))
  9667. {
  9668. Return (Zero)
  9669. }
  9670. Else
  9671. {
  9672. Return (0x03)
  9673. }
  9674. }
  9675. }
  9676.  
  9677. Device (SPI1)
  9678. {
  9679. Name (_HID, "8086228E") // _HID: Hardware ID
  9680. Name (_CID, "8086228E") // _CID: Compatible ID
  9681. Name (_DEP, Package (0x01) // _DEP: Dependencies
  9682. {
  9683. PEPD
  9684. })
  9685. Name (_DDN, "Intel(R) SPI Controller #1 - 8086228E") // _DDN: DOS Device Name
  9686. Name (_UID, One) // _UID: Unique ID
  9687. Name (RBUF, ResourceTemplate ()
  9688. {
  9689. Memory32Fixed (ReadWrite,
  9690. 0x00000000, // Address Base
  9691. 0x00001000, // Address Length
  9692. _Y14)
  9693. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9694. {
  9695. 0x00000029,
  9696. }
  9697. FixedDMA (0x0000, 0x0000, Width32bit, )
  9698. FixedDMA (0x0001, 0x0001, Width32bit, )
  9699. })
  9700. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9701. {
  9702. CreateDWordField (RBUF, \_SB.PCI0.SPI1._Y14._BAS, B0BA) // _BAS: Base Address
  9703. CreateDWordField (RBUF, \_SB.PCI0.SPI1._Y14._LEN, B0LN) // _LEN: Length
  9704. B0BA = SP0A /* \SP0A */
  9705. B0LN = SP0L /* \SP0L */
  9706. Return (RBUF) /* \_SB_.PCI0.SPI1.RBUF */
  9707. }
  9708.  
  9709. Method (_STA, 0, NotSerialized) // _STA: Status
  9710. {
  9711. If (((SP0A == Zero) || (L15D == One)))
  9712. {
  9713. Return (Zero)
  9714. }
  9715.  
  9716. Return (0x0F)
  9717. }
  9718.  
  9719. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  9720. {
  9721. PSAT |= 0x03
  9722. PSAT |= Zero
  9723. }
  9724.  
  9725. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  9726. {
  9727. PSAT &= 0xFFFFFFFC
  9728. PSAT |= Zero
  9729. }
  9730.  
  9731. OperationRegion (KEYS, SystemMemory, SP1A, 0x0100)
  9732. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  9733. {
  9734. Offset (0x84),
  9735. PSAT, 32
  9736. }
  9737.  
  9738. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9739. {
  9740. If ((SP1P == Zero))
  9741. {
  9742. Return (Zero)
  9743. }
  9744. Else
  9745. {
  9746. Return (0x03)
  9747. }
  9748. }
  9749.  
  9750. Device (FPNT)
  9751. {
  9752. Name (_HID, "AUTH2750" /* AuthenTec AES2750 */) // _HID: Hardware ID
  9753. Name (_DDN, "AuthenTec AES2750") // _DDN: DOS Device Name
  9754. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9755. {
  9756. Name (UBUF, ResourceTemplate ()
  9757. {
  9758. SpiSerialBus (0x0001, PolarityLow, FourWireMode, 0x08,
  9759. ControllerInitiated, 0x007A1200, ClockPolarityLow,
  9760. ClockPhaseSecond, "\\_SB.PCI0.SPI1",
  9761. 0x00, ResourceConsumer, ,
  9762. )
  9763. Interrupt (ResourceConsumer, Edge, ActiveHigh, Exclusive, ,, )
  9764. {
  9765. 0x00000048,
  9766. }
  9767. })
  9768. Return (UBUF) /* \_SB_.PCI0.SPI1.FPNT._CRS.UBUF */
  9769. }
  9770.  
  9771. Method (_STA, 0, NotSerialized) // _STA: Status
  9772. {
  9773. Return (Zero)
  9774. }
  9775. }
  9776. }
  9777.  
  9778. Device (SPI2)
  9779. {
  9780. Name (_HID, "8086228E") // _HID: Hardware ID
  9781. Name (_CID, "8086228E") // _CID: Compatible ID
  9782. Name (_DDN, "Intel(R) SPI Controller #2 - 80862290") // _DDN: DOS Device Name
  9783. Name (_UID, 0x02) // _UID: Unique ID
  9784. Name (RBUF, ResourceTemplate ()
  9785. {
  9786. Memory32Fixed (ReadWrite,
  9787. 0x00000000, // Address Base
  9788. 0x00001000, // Address Length
  9789. _Y15)
  9790. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9791. {
  9792. 0x00000059,
  9793. }
  9794. FixedDMA (0x0006, 0x0006, Width32bit, )
  9795. FixedDMA (0x0007, 0x0007, Width32bit, )
  9796. })
  9797. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9798. {
  9799. CreateDWordField (RBUF, \_SB.PCI0.SPI2._Y15._BAS, B0BA) // _BAS: Base Address
  9800. CreateDWordField (RBUF, \_SB.PCI0.SPI2._Y15._LEN, B0LN) // _LEN: Length
  9801. B0BA = S20A /* \S20A */
  9802. B0LN = S20L /* \S20L */
  9803. Return (RBUF) /* \_SB_.PCI0.SPI2.RBUF */
  9804. }
  9805.  
  9806. Method (_STA, 0, NotSerialized) // _STA: Status
  9807. {
  9808. If (((S20A == Zero) || (L16D == One)))
  9809. {
  9810. Return (Zero)
  9811. }
  9812.  
  9813. Return (0x0F)
  9814. }
  9815.  
  9816. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  9817. {
  9818. PSAT |= 0x03
  9819. PSAT |= Zero
  9820. }
  9821.  
  9822. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  9823. {
  9824. PSAT &= 0xFFFFFFFC
  9825. PSAT |= Zero
  9826. }
  9827.  
  9828. OperationRegion (KEYS, SystemMemory, S21A, 0x0100)
  9829. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  9830. {
  9831. Offset (0x84),
  9832. PSAT, 32
  9833. }
  9834.  
  9835. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9836. {
  9837. If ((SP2P == Zero))
  9838. {
  9839. Return (Zero)
  9840. }
  9841. Else
  9842. {
  9843. Return (0x03)
  9844. }
  9845. }
  9846. }
  9847.  
  9848. Device (SPI3)
  9849. {
  9850. Name (_HID, "8086228E") // _HID: Hardware ID
  9851. Name (_CID, "8086228E") // _CID: Compatible ID
  9852. Name (_DDN, "Intel(R) SPI Controller #3 - 808622AC") // _DDN: DOS Device Name
  9853. Name (_UID, 0x03) // _UID: Unique ID
  9854. Name (RBUF, ResourceTemplate ()
  9855. {
  9856. Memory32Fixed (ReadWrite,
  9857. 0x00000000, // Address Base
  9858. 0x00001000, // Address Length
  9859. _Y16)
  9860. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9861. {
  9862. 0x0000005A,
  9863. }
  9864. FixedDMA (0x0008, 0x0008, Width32bit, )
  9865. FixedDMA (0x0009, 0x0009, Width32bit, )
  9866. })
  9867. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9868. {
  9869. CreateDWordField (RBUF, \_SB.PCI0.SPI3._Y16._BAS, B0BA) // _BAS: Base Address
  9870. CreateDWordField (RBUF, \_SB.PCI0.SPI3._Y16._LEN, B0LN) // _LEN: Length
  9871. B0BA = S30A /* \S30A */
  9872. B0LN = S30L /* \S30L */
  9873. Return (RBUF) /* \_SB_.PCI0.SPI3.RBUF */
  9874. }
  9875.  
  9876. Method (_STA, 0, NotSerialized) // _STA: Status
  9877. {
  9878. If (((S30A == Zero) || (L16D == One)))
  9879. {
  9880. Return (Zero)
  9881. }
  9882.  
  9883. Return (0x0F)
  9884. }
  9885.  
  9886. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  9887. {
  9888. PSAT |= 0x03
  9889. PSAT |= Zero
  9890. }
  9891.  
  9892. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  9893. {
  9894. PSAT &= 0xFFFFFFFC
  9895. PSAT |= Zero
  9896. }
  9897.  
  9898. OperationRegion (KEYS, SystemMemory, S31A, 0x0100)
  9899. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  9900. {
  9901. Offset (0x84),
  9902. PSAT, 32
  9903. }
  9904.  
  9905. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9906. {
  9907. If ((SP3P == Zero))
  9908. {
  9909. Return (Zero)
  9910. }
  9911. Else
  9912. {
  9913. Return (0x03)
  9914. }
  9915. }
  9916. }
  9917.  
  9918. Device (I2C1)
  9919. {
  9920. Name (_HID, "808622C1") // _HID: Hardware ID
  9921. Name (_CID, "808622C1") // _CID: Compatible ID
  9922. Name (_DEP, Package (0x01) // _DEP: Dependencies
  9923. {
  9924. PEPD
  9925. })
  9926. Name (_DDN, "Intel(R) I2C Controller #1 - 808622C1") // _DDN: DOS Device Name
  9927. Name (_UID, One) // _UID: Unique ID
  9928. Name (RBUF, ResourceTemplate ()
  9929. {
  9930. Memory32Fixed (ReadWrite,
  9931. 0x00000000, // Address Base
  9932. 0x00001000, // Address Length
  9933. _Y17)
  9934. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  9935. {
  9936. 0x00000020,
  9937. }
  9938. FixedDMA (0x0010, 0x0000, Width32bit, )
  9939. FixedDMA (0x0011, 0x0001, Width32bit, )
  9940. })
  9941. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  9942. {
  9943. CreateDWordField (RBUF, \_SB.PCI0.I2C1._Y17._BAS, B0BA) // _BAS: Base Address
  9944. CreateDWordField (RBUF, \_SB.PCI0.I2C1._Y17._LEN, B0LN) // _LEN: Length
  9945. B0BA = I10A /* \I10A */
  9946. B0LN = I10L /* \I10L */
  9947. Return (RBUF) /* \_SB_.PCI0.I2C1.RBUF */
  9948. }
  9949.  
  9950. Method (_STA, 0, NotSerialized) // _STA: Status
  9951. {
  9952. If (((I10A == Zero) || (L21D == One)))
  9953. {
  9954. Return (Zero)
  9955. }
  9956.  
  9957. Return (0x0F)
  9958. }
  9959.  
  9960. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  9961. {
  9962. PSAT |= 0x03
  9963. PSAT |= Zero
  9964. }
  9965.  
  9966. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  9967. {
  9968. PSAT &= 0xFFFFFFFC
  9969. PSAT |= Zero
  9970. }
  9971.  
  9972. OperationRegion (KEYS, SystemMemory, I11A, 0x0100)
  9973. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  9974. {
  9975. Offset (0x84),
  9976. PSAT, 32
  9977. }
  9978.  
  9979. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  9980. {
  9981. If ((IC1P == Zero))
  9982. {
  9983. Return (Zero)
  9984. }
  9985. Else
  9986. {
  9987. Return (0x03)
  9988. }
  9989. }
  9990.  
  9991. PowerResource (CLK2, 0x00, 0x0000)
  9992. {
  9993. Method (_STA, 0, NotSerialized) // _STA: Status
  9994. {
  9995. Return (CKC2) /* \CKC2 */
  9996. }
  9997.  
  9998. Method (_ON, 0, NotSerialized) // _ON_: Power On
  9999. {
  10000. CKC2 = One
  10001. Sleep (0x05)
  10002. }
  10003.  
  10004. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  10005. {
  10006. CKC2 = 0x02
  10007. }
  10008. }
  10009.  
  10010. Device (STRA)
  10011. {
  10012. Name (_ADR, Zero) // _ADR: Address
  10013. Name (_HID, "INTCF1C") // _HID: Hardware ID
  10014. Name (_CID, "INTCF1C") // _CID: Compatible ID
  10015. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  10016. Name (_DDN, "Flash LM3554") // _DDN: DOS Device Name
  10017. Name (_UID, One) // _UID: Unique ID
  10018. Method (_STA, 0, NotSerialized) // _STA: Status
  10019. {
  10020. If ((BDID == One))
  10021. {
  10022. Return (Zero)
  10023. }
  10024.  
  10025. If ((RCAM == One))
  10026. {
  10027. Return (0x0F)
  10028. }
  10029.  
  10030. Return (Zero)
  10031. }
  10032.  
  10033. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  10034. {
  10035. Name (SBUF, ResourceTemplate ()
  10036. {
  10037. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10038. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10039. )
  10040. { // Pin list
  10041. 0x0038
  10042. }
  10043. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10044. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10045. )
  10046. { // Pin list
  10047. 0x002D
  10048. }
  10049. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10050. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10051. )
  10052. { // Pin list
  10053. 0x0035
  10054. }
  10055. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10056. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10057. )
  10058. { // Pin list
  10059. 0x002E
  10060. }
  10061. I2cSerialBus (0x0053, ControllerInitiated, 0x00061A80,
  10062. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  10063. 0x00, ResourceConsumer, ,
  10064. )
  10065. })
  10066. Return (SBUF) /* \_SB_.PCI0.I2C1.STRA._CRS.SBUF */
  10067. }
  10068.  
  10069. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  10070. {
  10071. If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
  10072. {
  10073. Return ("INTCF1C")
  10074. }
  10075.  
  10076. If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
  10077. {
  10078. Return ("LM3554")
  10079. }
  10080.  
  10081. If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
  10082. {
  10083. Return ("CHV_ITL_RVP")
  10084. }
  10085.  
  10086. If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
  10087. {
  10088. Return (Zero)
  10089. }
  10090.  
  10091. If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
  10092. {
  10093. If ((Arg2 == One))
  10094. {
  10095. Return (One)
  10096. }
  10097.  
  10098. If ((Arg2 == 0x02))
  10099. {
  10100. Return (0x04005300)
  10101. }
  10102. }
  10103.  
  10104. If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
  10105. {
  10106. If ((Arg2 == One))
  10107. {
  10108. Return (0x04)
  10109. }
  10110.  
  10111. If ((Arg2 == 0x02))
  10112. {
  10113. Return (0x01003802)
  10114. }
  10115.  
  10116. If ((Arg2 == 0x03))
  10117. {
  10118. Return (0x01002D03)
  10119. }
  10120.  
  10121. If ((Arg2 == 0x04))
  10122. {
  10123. Return (0x01003501)
  10124. }
  10125.  
  10126. If ((Arg2 == 0x05))
  10127. {
  10128. Return (0x01002E04)
  10129. }
  10130. }
  10131.  
  10132. Return (Zero)
  10133. }
  10134. }
  10135. }
  10136.  
  10137. Device (I2C2)
  10138. {
  10139. Name (_HID, "808622C1") // _HID: Hardware ID
  10140. Name (_CID, "808622C1") // _CID: Compatible ID
  10141. Name (_DEP, Package (0x01) // _DEP: Dependencies
  10142. {
  10143. PEPD
  10144. })
  10145. Name (_DDN, "Intel(R) I2C Controller #2 - 808622C2") // _DDN: DOS Device Name
  10146. Name (_UID, 0x02) // _UID: Unique ID
  10147. Name (RBUF, ResourceTemplate ()
  10148. {
  10149. Memory32Fixed (ReadWrite,
  10150. 0x00000000, // Address Base
  10151. 0x00001000, // Address Length
  10152. _Y18)
  10153. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  10154. {
  10155. 0x00000021,
  10156. }
  10157. FixedDMA (0x0012, 0x0002, Width32bit, )
  10158. FixedDMA (0x0013, 0x0003, Width32bit, )
  10159. })
  10160. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  10161. {
  10162. CreateDWordField (RBUF, \_SB.PCI0.I2C2._Y18._BAS, B0BA) // _BAS: Base Address
  10163. CreateDWordField (RBUF, \_SB.PCI0.I2C2._Y18._LEN, B0LN) // _LEN: Length
  10164. B0BA = I20A /* \I20A */
  10165. B0LN = I20L /* \I20L */
  10166. Return (RBUF) /* \_SB_.PCI0.I2C2.RBUF */
  10167. }
  10168.  
  10169. Method (_STA, 0, NotSerialized) // _STA: Status
  10170. {
  10171. If (((I20A == Zero) || (L22D == One)))
  10172. {
  10173. Return (Zero)
  10174. }
  10175.  
  10176. Return (0x0F)
  10177. }
  10178.  
  10179. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  10180. {
  10181. PSAT |= 0x03
  10182. PSAT |= Zero
  10183. }
  10184.  
  10185. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  10186. {
  10187. PSAT &= 0xFFFFFFFC
  10188. PSAT |= Zero
  10189. }
  10190.  
  10191. OperationRegion (KEYS, SystemMemory, I21A, 0x0100)
  10192. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  10193. {
  10194. Offset (0x84),
  10195. PSAT, 32
  10196. }
  10197.  
  10198. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  10199. {
  10200. If ((IC2P == Zero))
  10201. {
  10202. Return (Zero)
  10203. }
  10204. Else
  10205. {
  10206. Return (0x03)
  10207. }
  10208. }
  10209.  
  10210. PowerResource (CLK3, 0x00, 0x0000)
  10211. {
  10212. Method (_STA, 0, NotSerialized) // _STA: Status
  10213. {
  10214. Return (CKC3) /* \CKC3 */
  10215. }
  10216.  
  10217. Method (_ON, 0, NotSerialized) // _ON_: Power On
  10218. {
  10219. CKC3 = One
  10220. Sleep (0x05)
  10221. }
  10222.  
  10223. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  10224. {
  10225. CKC3 = 0x02
  10226. }
  10227. }
  10228.  
  10229. PowerResource (CLK4, 0x00, 0x0000)
  10230. {
  10231. Method (_STA, 0, NotSerialized) // _STA: Status
  10232. {
  10233. Return (CKC4) /* \CKC4 */
  10234. }
  10235.  
  10236. Method (_ON, 0, NotSerialized) // _ON_: Power On
  10237. {
  10238. CKC4 = One
  10239. Sleep (0x05)
  10240. }
  10241.  
  10242. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  10243. {
  10244. CKC4 = 0x02
  10245. }
  10246. }
  10247.  
  10248. Device (RTEK)
  10249. {
  10250. Name (_ADR, Zero) // _ADR: Address
  10251. Name (_HID, "10EC5640" /* Realtek I2S Audio Codec */) // _HID: Hardware ID
  10252. Name (_CID, "10EC5640" /* Realtek I2S Audio Codec */) // _CID: Compatible ID
  10253. Name (_DDN, "ALC5642") // _DDN: DOS Device Name
  10254. Name (_UID, One) // _UID: Unique ID
  10255. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  10256. {
  10257. CLK3
  10258. })
  10259. Name (_DEP, Package (0x01) // _DEP: Dependencies
  10260. {
  10261. PEPD
  10262. })
  10263. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  10264. {
  10265. Name (SBUF, ResourceTemplate ()
  10266. {
  10267. I2cSerialBus (0x001C, ControllerInitiated, 0x00061A80,
  10268. AddressingMode7Bit, "\\_SB.PCI0.I2C2",
  10269. 0x00, ResourceConsumer, ,
  10270. )
  10271. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  10272. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  10273. )
  10274. { // Pin list
  10275. 0x005B
  10276. }
  10277. })
  10278. Name (WBUF, ResourceTemplate ()
  10279. {
  10280. I2cSerialBus (0x001C, ControllerInitiated, 0x00061A80,
  10281. AddressingMode7Bit, "\\_SB.PCI0.I2C2",
  10282. 0x00, ResourceConsumer, ,
  10283. )
  10284. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
  10285. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  10286. )
  10287. { // Pin list
  10288. 0x004F
  10289. }
  10290. })
  10291. If (((OSID == One) && ((BDID == 0x09) || (BDID == 0x0A))))
  10292. {
  10293. Return (WBUF) /* \_SB_.PCI0.I2C2.RTEK._CRS.WBUF */
  10294. }
  10295.  
  10296. Return (SBUF) /* \_SB_.PCI0.I2C2.RTEK._CRS.SBUF */
  10297. }
  10298.  
  10299. Method (_STA, 0, NotSerialized) // _STA: Status
  10300. {
  10301. If ((BDID == One))
  10302. {
  10303. Return (Zero)
  10304. }
  10305.  
  10306. If ((OSID != One))
  10307. {
  10308. Return (Zero)
  10309. }
  10310.  
  10311. If ((OSID == 0x04))
  10312. {
  10313. Return (Zero)
  10314. }
  10315.  
  10316. If ((AUCD == Zero))
  10317. {
  10318. Return (0x0F)
  10319. }
  10320.  
  10321. Return (Zero)
  10322. }
  10323.  
  10324. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  10325. {
  10326. }
  10327. }
  10328. }
  10329.  
  10330. Device (I2C3)
  10331. {
  10332. Name (_HID, "808622C1") // _HID: Hardware ID
  10333. Name (_CID, "808622C1") // _CID: Compatible ID
  10334. Name (_DDN, "Intel(R) I2C Controller #3 - 808622C3") // _DDN: DOS Device Name
  10335. Name (_UID, 0x03) // _UID: Unique ID
  10336. Name (_DEP, Package (0x01) // _DEP: Dependencies
  10337. {
  10338. PEPD
  10339. })
  10340. Name (RBUF, ResourceTemplate ()
  10341. {
  10342. Memory32Fixed (ReadWrite,
  10343. 0x00000000, // Address Base
  10344. 0x00001000, // Address Length
  10345. _Y19)
  10346. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  10347. {
  10348. 0x00000022,
  10349. }
  10350. FixedDMA (0x0014, 0x0004, Width32bit, )
  10351. FixedDMA (0x0015, 0x0005, Width32bit, )
  10352. })
  10353. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  10354. {
  10355. CreateDWordField (RBUF, \_SB.PCI0.I2C3._Y19._BAS, B0BA) // _BAS: Base Address
  10356. CreateDWordField (RBUF, \_SB.PCI0.I2C3._Y19._LEN, B0LN) // _LEN: Length
  10357. B0BA = I30A /* \I30A */
  10358. B0LN = I30L /* \I30L */
  10359. Return (RBUF) /* \_SB_.PCI0.I2C3.RBUF */
  10360. }
  10361.  
  10362. Method (_STA, 0, NotSerialized) // _STA: Status
  10363. {
  10364. If (((I30A == Zero) || (L23D == One)))
  10365. {
  10366. Return (Zero)
  10367. }
  10368.  
  10369. Return (0x0F)
  10370. }
  10371.  
  10372. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  10373. {
  10374. PSAT |= 0x03
  10375. PSAT |= Zero
  10376. }
  10377.  
  10378. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  10379. {
  10380. PSAT &= 0xFFFFFFFC
  10381. PSAT |= Zero
  10382. }
  10383.  
  10384. OperationRegion (KEYS, SystemMemory, I31A, 0x0100)
  10385. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  10386. {
  10387. Offset (0x84),
  10388. PSAT, 32
  10389. }
  10390.  
  10391. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  10392. {
  10393. If ((IC3P == Zero))
  10394. {
  10395. Return (Zero)
  10396. }
  10397. Else
  10398. {
  10399. Return (0x03)
  10400. }
  10401. }
  10402.  
  10403. PowerResource (CLK2, 0x00, 0x0000)
  10404. {
  10405. Method (_STA, 0, NotSerialized) // _STA: Status
  10406. {
  10407. Return (CKC2) /* \CKC2 */
  10408. }
  10409.  
  10410. Method (_ON, 0, NotSerialized) // _ON_: Power On
  10411. {
  10412. CKC2 = One
  10413. Sleep (0x05)
  10414. }
  10415.  
  10416. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  10417. {
  10418. CKC2 = 0x02
  10419. }
  10420. }
  10421.  
  10422. PowerResource (CLK1, 0x00, 0x0000)
  10423. {
  10424. Method (_STA, 0, NotSerialized) // _STA: Status
  10425. {
  10426. Return (CKC1) /* \CKC1 */
  10427. }
  10428.  
  10429. Method (_ON, 0, NotSerialized) // _ON_: Power On
  10430. {
  10431. CKC1 = One
  10432. Sleep (0x05)
  10433. }
  10434.  
  10435. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  10436. {
  10437. CKC1 = 0x02
  10438. }
  10439. }
  10440.  
  10441. OperationRegion (TIP1, GenericSerialBus, Zero, 0x0100)
  10442. Field (TIP1, BufferAcc, NoLock, Preserve)
  10443. {
  10444. Connection (
  10445. I2cSerialBus (0x006B, ControllerInitiated, 0x000F4240,
  10446. AddressingMode7Bit, "\\_SB.PCI0.I2C3",
  10447. 0x00, ResourceConsumer, ,
  10448. )
  10449. ),
  10450. Offset (0x01),
  10451. AccessAs (BufferAcc, AttribByte),
  10452. RG01, 8,
  10453. Offset (0x08),
  10454. AccessAs (BufferAcc, AttribByte),
  10455. RG08, 8
  10456. }
  10457.  
  10458. Name (AVBL, Zero)
  10459. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  10460. {
  10461. If ((Arg0 == 0x09))
  10462. {
  10463. AVBL = Arg1
  10464. }
  10465. }
  10466. }
  10467.  
  10468. Device (I2C4)
  10469. {
  10470. Name (_HID, "808622C1") // _HID: Hardware ID
  10471. Name (_CID, "808622C1") // _CID: Compatible ID
  10472. Name (_DDN, "Intel(R) I2C Controller #4 - 808622C4") // _DDN: DOS Device Name
  10473. Name (_UID, 0x04) // _UID: Unique ID
  10474. Name (_DEP, Package (0x02) // _DEP: Dependencies
  10475. {
  10476. PEPD,
  10477. GPO0
  10478. })
  10479. Name (FCFG, Zero)
  10480. Name (RCFG, Zero)
  10481. Name (RBUF, ResourceTemplate ()
  10482. {
  10483. Memory32Fixed (ReadWrite,
  10484. 0x00000000, // Address Base
  10485. 0x00001000, // Address Length
  10486. _Y1A)
  10487. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  10488. {
  10489. 0x00000023,
  10490. }
  10491. FixedDMA (0x0016, 0x0006, Width32bit, )
  10492. FixedDMA (0x0017, 0x0007, Width32bit, )
  10493. })
  10494. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  10495. {
  10496. CreateDWordField (RBUF, \_SB.PCI0.I2C4._Y1A._BAS, B0BA) // _BAS: Base Address
  10497. CreateDWordField (RBUF, \_SB.PCI0.I2C4._Y1A._LEN, B0LN) // _LEN: Length
  10498. B0BA = I40A /* \I40A */
  10499. B0LN = I40L /* \I40L */
  10500. Return (RBUF) /* \_SB_.PCI0.I2C4.RBUF */
  10501. }
  10502.  
  10503. Method (_STA, 0, NotSerialized) // _STA: Status
  10504. {
  10505. If (((I40A == Zero) || (L24D == One)))
  10506. {
  10507. Return (Zero)
  10508. }
  10509.  
  10510. Return (0x0F)
  10511. }
  10512.  
  10513. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  10514. {
  10515. PSAT |= 0x03
  10516. PSAT |= Zero
  10517. If ((^^^GPO0.AMMR == One))
  10518. {
  10519. ^^^GPO0.I4AE = One
  10520. ^^^GPO0.I4CE = One
  10521. ^^^GPO0.I4AF = 0x03
  10522. ^^^GPO0.I4CF = 0x03
  10523. ^^^GPO0.I4AD = 0x0A
  10524. ^^^GPO0.I4CD = 0x0A
  10525. }
  10526. }
  10527.  
  10528. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  10529. {
  10530. PSAT &= 0xFFFFFFFC
  10531. PSAT |= Zero
  10532. If ((^^^GPO0.AMMR == One))
  10533. {
  10534. ^^^GPO0.I4AD = 0x0A
  10535. ^^^GPO0.I4CD = 0x0A
  10536. ^^^GPO0.I4AF = Zero
  10537. ^^^GPO0.I4CF = Zero
  10538. Sleep (0x03)
  10539. ^^^GPO0.I4AE = Zero
  10540. ^^^GPO0.I4CE = Zero
  10541. Sleep (0x03)
  10542. }
  10543. }
  10544.  
  10545. OperationRegion (KEYS, SystemMemory, I41A, 0x0100)
  10546. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  10547. {
  10548. Offset (0x84),
  10549. PSAT, 32
  10550. }
  10551.  
  10552. PowerResource (CLK0, 0x00, 0x0000)
  10553. {
  10554. Method (_STA, 0, NotSerialized) // _STA: Status
  10555. {
  10556. Return (CKC0) /* \CKC0 */
  10557. }
  10558.  
  10559. Method (_ON, 0, NotSerialized) // _ON_: Power On
  10560. {
  10561. CKC0 = One
  10562. Sleep (0x05)
  10563. }
  10564.  
  10565. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  10566. {
  10567. CKC0 = 0x02
  10568. }
  10569. }
  10570.  
  10571. PowerResource (CLK1, 0x00, 0x0000)
  10572. {
  10573. Method (_STA, 0, NotSerialized) // _STA: Status
  10574. {
  10575. Return (CKC1) /* \CKC1 */
  10576. }
  10577.  
  10578. Method (_ON, 0, NotSerialized) // _ON_: Power On
  10579. {
  10580. CKC1 = One
  10581. Sleep (0x05)
  10582. }
  10583.  
  10584. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  10585. {
  10586. CKC1 = 0x02
  10587. }
  10588. }
  10589.  
  10590. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  10591. {
  10592. If ((IC4P == Zero))
  10593. {
  10594. Return (Zero)
  10595. }
  10596. Else
  10597. {
  10598. Return (0x03)
  10599. }
  10600. }
  10601.  
  10602. Device (CA10)
  10603. {
  10604. Name (_ADR, Zero) // _ADR: Address
  10605. Name (_HID, "INT33CF") // _HID: Hardware ID
  10606. Name (_CID, "INT33CF") // _CID: Compatible ID
  10607. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  10608. Name (_DDN, "OV680") // _DDN: DOS Device Name
  10609. Name (_UID, One) // _UID: Unique ID
  10610. Name (CDEP, Package (0x02)
  10611. {
  10612. I2C7,
  10613. ^^I2C7.PMIC
  10614. })
  10615. Name (CPR0, Package (0x03)
  10616. {
  10617. P28X,
  10618. P18X,
  10619. CLK0
  10620. })
  10621. Name (WDEP, Package (0x02)
  10622. {
  10623. I2C7,
  10624. ^^I2C7.PMI5
  10625. })
  10626. Name (WPR0, Package (0x03)
  10627. {
  10628. P28W,
  10629. P18W,
  10630. CLK0
  10631. })
  10632. Method (_STA, 0, NotSerialized) // _STA: Status
  10633. {
  10634. If (((BDID == One) || (OSID == One)))
  10635. {
  10636. Return (Zero)
  10637. }
  10638.  
  10639. If ((RCAM == One))
  10640. {
  10641. If (((BDID == 0x09) || (BDID == 0x0A)))
  10642. {
  10643. Return (0x0F)
  10644. }
  10645. }
  10646.  
  10647. Return (Zero)
  10648. }
  10649.  
  10650. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  10651. {
  10652. Name (WBUF, ResourceTemplate ()
  10653. {
  10654. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10655. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10656. )
  10657. { // Pin list
  10658. 0x0030
  10659. }
  10660. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10661. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10662. )
  10663. { // Pin list
  10664. 0x0036
  10665. }
  10666. I2cSerialBus (0x0035, ControllerInitiated, 0x00061A80,
  10667. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  10668. 0x00, ResourceConsumer, ,
  10669. )
  10670. })
  10671. Name (ABUF, ResourceTemplate ()
  10672. {
  10673. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10674. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10675. )
  10676. { // Pin list
  10677. 0x0037
  10678. }
  10679. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10680. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10681. )
  10682. { // Pin list
  10683. 0x002D
  10684. }
  10685. I2cSerialBus (0x0035, ControllerInitiated, 0x00061A80,
  10686. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  10687. 0x00, ResourceConsumer, ,
  10688. )
  10689. })
  10690. If ((OSID == One))
  10691. {
  10692. Return (WBUF) /* \_SB_.PCI0.I2C4.CA10._CRS.WBUF */
  10693. }
  10694. Else
  10695. {
  10696. Return (ABUF) /* \_SB_.PCI0.I2C4.CA10._CRS.ABUF */
  10697. }
  10698. }
  10699. }
  10700.  
  10701. Device (CAM9)
  10702. {
  10703. Name (_ADR, Zero) // _ADR: Address
  10704. Name (_HID, "INT3477") // _HID: Hardware ID
  10705. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  10706. Name (_DDN, "OV8858") // _DDN: DOS Device Name
  10707. Name (_UID, One) // _UID: Unique ID
  10708. Name (CDEP, Package (0x02)
  10709. {
  10710. I2C7,
  10711. ^^I2C7.PMIC
  10712. })
  10713. Name (CPR0, Package (0x03)
  10714. {
  10715. P28X,
  10716. P18X,
  10717. CLK0
  10718. })
  10719. Name (WDEP, Package (0x02)
  10720. {
  10721. I2C7,
  10722. ^^I2C7.PMI5
  10723. })
  10724. Name (WPR0, Package (0x03)
  10725. {
  10726. P28W,
  10727. P18W,
  10728. CLK0
  10729. })
  10730. Name (PLDB, Package (0x01)
  10731. {
  10732. Buffer (0x14)
  10733. {
  10734. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  10735. /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* i....... */
  10736. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  10737. }
  10738. })
  10739. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  10740. {
  10741. Return (PLDB) /* \_SB_.PCI0.I2C4.CAM9.PLDB */
  10742. }
  10743.  
  10744. Method (_STA, 0, NotSerialized) // _STA: Status
  10745. {
  10746. If ((BDID == One))
  10747. {
  10748. Return (Zero)
  10749. }
  10750.  
  10751. If ((RCAM == One))
  10752. {
  10753. If (((BDID == 0x09) || (BDID == 0x0A)))
  10754. {
  10755. Return (0x0F)
  10756. }
  10757. }
  10758.  
  10759. Return (Zero)
  10760. }
  10761.  
  10762. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  10763. {
  10764. Name (WBUF, ResourceTemplate ()
  10765. {
  10766. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10767. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10768. )
  10769. { // Pin list
  10770. 0x0034
  10771. }
  10772. I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
  10773. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  10774. 0x00, ResourceConsumer, ,
  10775. )
  10776. I2cSerialBus (0x000C, ControllerInitiated, 0x00061A80,
  10777. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  10778. 0x00, ResourceConsumer, ,
  10779. )
  10780. })
  10781. Name (ABUF, ResourceTemplate ()
  10782. {
  10783. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10784. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10785. )
  10786. { // Pin list
  10787. 0x0034
  10788. }
  10789. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10790. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10791. )
  10792. { // Pin list
  10793. 0x0000
  10794. }
  10795. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  10796. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  10797. )
  10798. { // Pin list
  10799. 0x0037
  10800. }
  10801. I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
  10802. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  10803. 0x00, ResourceConsumer, ,
  10804. )
  10805. })
  10806. If ((OSID == One))
  10807. {
  10808. Return (WBUF) /* \_SB_.PCI0.I2C4.CAM9._CRS.WBUF */
  10809. }
  10810. Else
  10811. {
  10812. Return (ABUF) /* \_SB_.PCI0.I2C4.CAM9._CRS.ABUF */
  10813. }
  10814. }
  10815.  
  10816. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  10817. {
  10818. If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
  10819. {
  10820. Local0 = Package (0x12)
  10821. {
  10822. "CamId",
  10823. "ov8858",
  10824. "CamType",
  10825. "1",
  10826. "CsiPort",
  10827. "1",
  10828. "CsiLanes",
  10829. "2",
  10830. "CsiFmt",
  10831. "15",
  10832. "CsiBayer",
  10833. "2",
  10834. "CamClk",
  10835. "0",
  10836. "Regulator1p8v",
  10837. "0",
  10838. "Regulator2p8v",
  10839. "0"
  10840. }
  10841. Return (Local0)
  10842. }
  10843.  
  10844. If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
  10845. {
  10846. Return ("INT3477")
  10847. }
  10848.  
  10849. If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
  10850. {
  10851. Return ("OV8858")
  10852. }
  10853.  
  10854. If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
  10855. {
  10856. If ((OSID == One))
  10857. {
  10858. Return ("P8V12F203")
  10859. }
  10860.  
  10861. Return ("12P2BA535")
  10862. }
  10863.  
  10864. If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
  10865. {
  10866. Return ("CHV_ITL_RVP")
  10867. }
  10868.  
  10869. If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
  10870. {
  10871. Return (0x0102)
  10872. }
  10873.  
  10874. If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
  10875. {
  10876. If ((OSID == One))
  10877. {
  10878. Return (0x1040)
  10879. }
  10880.  
  10881. Return (One)
  10882. }
  10883.  
  10884. If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
  10885. {
  10886. Return (Zero)
  10887. }
  10888.  
  10889. If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
  10890. {
  10891. Return (One)
  10892. }
  10893.  
  10894. If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
  10895. {
  10896. Return (0x02)
  10897. }
  10898.  
  10899. If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
  10900. {
  10901. Return (Zero)
  10902. }
  10903.  
  10904. If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
  10905. {
  10906. If ((OSID == One))
  10907. {
  10908. Return ("DW9718")
  10909. }
  10910.  
  10911. Return ("AD5823")
  10912. }
  10913.  
  10914. If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
  10915. {
  10916. If ((Arg2 == One))
  10917. {
  10918. If ((OSID == One))
  10919. {
  10920. Return (0x02)
  10921. }
  10922.  
  10923. Return (0x03)
  10924. }
  10925.  
  10926. If ((Arg2 == 0x02))
  10927. {
  10928. Return (0x04001000)
  10929. }
  10930.  
  10931. If ((Arg2 == 0x03))
  10932. {
  10933. Return (0x04000C01)
  10934. }
  10935.  
  10936. If ((Arg2 == 0x04))
  10937. {
  10938. Return (0x04005402)
  10939. }
  10940. }
  10941.  
  10942. If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
  10943. {
  10944. If ((Arg2 == One))
  10945. {
  10946. Return (One)
  10947. }
  10948.  
  10949. If ((Arg2 == 0x02))
  10950. {
  10951. Return (0x01003400)
  10952. }
  10953. }
  10954.  
  10955. If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
  10956. {
  10957. Return ("CHT")
  10958. }
  10959.  
  10960. If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
  10961. {
  10962. Return ("FFD")
  10963. }
  10964.  
  10965. If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
  10966. {
  10967. Return ("CHV")
  10968. }
  10969.  
  10970. If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
  10971. {
  10972. Return ("INTEL")
  10973. }
  10974.  
  10975. If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
  10976. {
  10977. If ((OSID == One))
  10978. {
  10979. Return (Buffer (0x20)
  10980. {
  10981. /* 0000 */ 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x03, /* ........ */
  10982. /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  10983. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  10984. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  10985. })
  10986. }
  10987.  
  10988. Return (Buffer (0x20)
  10989. {
  10990. /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, /* ........ */
  10991. /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  10992. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  10993. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  10994. })
  10995. }
  10996.  
  10997. Return (Zero)
  10998. }
  10999. }
  11000.  
  11001. Device (CAM3)
  11002. {
  11003. Name (_ADR, Zero) // _ADR: Address
  11004. Name (_HID, "INT33BE" /* Camera Sensor OV5693 */) // _HID: Hardware ID
  11005. Name (_CID, "INT33BE" /* Camera Sensor OV5693 */) // _CID: Compatible ID
  11006. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  11007. Name (_DDN, "OV5693") // _DDN: DOS Device Name
  11008. Name (_UID, One) // _UID: Unique ID
  11009. Name (CDEP, Package (0x02)
  11010. {
  11011. I2C7,
  11012. ^^I2C7.PMIC
  11013. })
  11014. Name (CPR0, Package (0x04)
  11015. {
  11016. P28X,
  11017. P18X,
  11018. P33X,
  11019. CLK0
  11020. })
  11021. Name (WDEP, Package (0x02)
  11022. {
  11023. I2C7,
  11024. ^^I2C7.PMI5
  11025. })
  11026. Name (WPR0, Package (0x04)
  11027. {
  11028. P28W,
  11029. P18W,
  11030. P33W,
  11031. CLK0
  11032. })
  11033. Name (PLDB, Package (0x01)
  11034. {
  11035. Buffer (0x14)
  11036. {
  11037. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  11038. /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* i....... */
  11039. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  11040. }
  11041. })
  11042. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11043. {
  11044. Return (PLDB) /* \_SB_.PCI0.I2C4.CAM3.PLDB */
  11045. }
  11046.  
  11047. Method (_STA, 0, NotSerialized) // _STA: Status
  11048. {
  11049. If (((BDID == One) || (BDID == 0x0A)))
  11050. {
  11051. Return (Zero)
  11052. }
  11053.  
  11054. If ((RCAM == One))
  11055. {
  11056. Return (0x0F)
  11057. }
  11058.  
  11059. Return (Zero)
  11060. }
  11061.  
  11062. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  11063. {
  11064. If ((^^^^GPO1.AVBL == One))
  11065. {
  11066. RCFG = Zero
  11067. If (((FCFG == Zero) && (OSID == One)))
  11068. {
  11069. ^^^^GPO1.CRST = Zero
  11070. }
  11071. }
  11072. }
  11073.  
  11074. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  11075. {
  11076. RCFG = One
  11077. If (((^^^^GPO1.AVBL == One) && (OSID == One)))
  11078. {
  11079. ^^^^GPO1.CRST = One
  11080. }
  11081. }
  11082.  
  11083. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11084. {
  11085. Name (WBUF, ResourceTemplate ()
  11086. {
  11087. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11088. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11089. )
  11090. { // Pin list
  11091. 0x0034
  11092. }
  11093. I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
  11094. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  11095. 0x00, ResourceConsumer, ,
  11096. )
  11097. I2cSerialBus (0x000C, ControllerInitiated, 0x00061A80,
  11098. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  11099. 0x00, ResourceConsumer, ,
  11100. )
  11101. I2cSerialBus (0x0054, ControllerInitiated, 0x00061A80,
  11102. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  11103. 0x00, ResourceConsumer, ,
  11104. )
  11105. })
  11106. Name (ABUF, ResourceTemplate ()
  11107. {
  11108. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11109. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11110. )
  11111. { // Pin list
  11112. 0x0034
  11113. }
  11114. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11115. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11116. )
  11117. { // Pin list
  11118. 0x0000
  11119. }
  11120. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11121. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11122. )
  11123. { // Pin list
  11124. 0x0037
  11125. }
  11126. I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
  11127. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  11128. 0x00, ResourceConsumer, ,
  11129. )
  11130. })
  11131. If ((OSID == One))
  11132. {
  11133. Return (WBUF) /* \_SB_.PCI0.I2C4.CAM3._CRS.WBUF */
  11134. }
  11135. Else
  11136. {
  11137. Return (ABUF) /* \_SB_.PCI0.I2C4.CAM3._CRS.ABUF */
  11138. }
  11139. }
  11140.  
  11141. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  11142. {
  11143. If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
  11144. {
  11145. Local0 = Package (0x12)
  11146. {
  11147. "CamId",
  11148. "ov5693",
  11149. "CamType",
  11150. "1",
  11151. "CsiPort",
  11152. "1",
  11153. "CsiLanes",
  11154. "2",
  11155. "CsiFmt",
  11156. "15",
  11157. "CsiBayer",
  11158. "2",
  11159. "CamClk",
  11160. "0",
  11161. "Regulator1p8v",
  11162. "0",
  11163. "Regulator2p8v",
  11164. "0"
  11165. }
  11166. Return (Local0)
  11167. }
  11168.  
  11169. If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
  11170. {
  11171. Return ("INT33BE")
  11172. }
  11173.  
  11174. If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
  11175. {
  11176. Return ("OV5693")
  11177. }
  11178.  
  11179. If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
  11180. {
  11181. Return ("12P2BA535")
  11182. }
  11183.  
  11184. If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
  11185. {
  11186. Return ("CHV_ITL_RVP")
  11187. }
  11188.  
  11189. If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
  11190. {
  11191. Return (0x0102)
  11192. }
  11193.  
  11194. If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
  11195. {
  11196. Return (One)
  11197. }
  11198.  
  11199. If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
  11200. {
  11201. Return (Zero)
  11202. }
  11203.  
  11204. If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
  11205. {
  11206. Return (One)
  11207. }
  11208.  
  11209. If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
  11210. {
  11211. Return (0x02)
  11212. }
  11213.  
  11214. If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
  11215. {
  11216. Return (Zero)
  11217. }
  11218.  
  11219. If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
  11220. {
  11221. Return ("AD5823")
  11222. }
  11223.  
  11224. If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
  11225. {
  11226. If ((Arg2 == One))
  11227. {
  11228. Return (0x03)
  11229. }
  11230.  
  11231. If ((Arg2 == 0x02))
  11232. {
  11233. Return (0x04001000)
  11234. }
  11235.  
  11236. If ((Arg2 == 0x03))
  11237. {
  11238. Return (0x04000C01)
  11239. }
  11240.  
  11241. If ((Arg2 == 0x04))
  11242. {
  11243. Return (0x04005402)
  11244. }
  11245. }
  11246.  
  11247. If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
  11248. {
  11249. If ((Arg2 == One))
  11250. {
  11251. Return (One)
  11252. }
  11253.  
  11254. If ((Arg2 == 0x02))
  11255. {
  11256. Return (0x01003400)
  11257. }
  11258. }
  11259.  
  11260. If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
  11261. {
  11262. Return ("CHT")
  11263. }
  11264.  
  11265. If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
  11266. {
  11267. Return ("FFD")
  11268. }
  11269.  
  11270. If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
  11271. {
  11272. Return ("CHV")
  11273. }
  11274.  
  11275. If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
  11276. {
  11277. Return ("INTEL")
  11278. }
  11279.  
  11280. If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
  11281. {
  11282. Return (Buffer (0x20)
  11283. {
  11284. /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, /* ........ */
  11285. /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  11286. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  11287. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  11288. })
  11289. }
  11290.  
  11291. Return (Zero)
  11292. }
  11293. }
  11294.  
  11295. Device (CAM4)
  11296. {
  11297. Name (_ADR, Zero) // _ADR: Address
  11298. Name (_HID, "INT33FB" /* MIPI-CSI Camera Sensor OV2722 */) // _HID: Hardware ID
  11299. Name (_CID, "INT33FB" /* MIPI-CSI Camera Sensor OV2722 */) // _CID: Compatible ID
  11300. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  11301. Name (_DDN, "OV2722") // _DDN: DOS Device Name
  11302. Name (_UID, One) // _UID: Unique ID
  11303. Name (CDEP, Package (0x02)
  11304. {
  11305. I2C7,
  11306. ^^I2C7.PMIC
  11307. })
  11308. Name (CPR0, Package (0x04)
  11309. {
  11310. P28X,
  11311. P18X,
  11312. P33X,
  11313. CLK1
  11314. })
  11315. Name (WDEP, Package (0x02)
  11316. {
  11317. I2C7,
  11318. ^^I2C7.PMI5
  11319. })
  11320. Name (WPR0, Package (0x04)
  11321. {
  11322. P28W,
  11323. P18W,
  11324. P33W,
  11325. CLK1
  11326. })
  11327. Name (PLDB, Package (0x01)
  11328. {
  11329. Buffer (0x14)
  11330. {
  11331. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  11332. /* 0008 */ 0x61, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* a....... */
  11333. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  11334. }
  11335. })
  11336. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11337. {
  11338. Return (PLDB) /* \_SB_.PCI0.I2C4.CAM4.PLDB */
  11339. }
  11340.  
  11341. Method (_STA, 0, NotSerialized) // _STA: Status
  11342. {
  11343. If ((BDID == One))
  11344. {
  11345. Return (Zero)
  11346. }
  11347.  
  11348. Return (0x0F)
  11349. }
  11350.  
  11351. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  11352. {
  11353. If ((RCAM == One))
  11354. {
  11355. If ((^^^^GPO1.AVBL == One))
  11356. {
  11357. FCFG = Zero
  11358. If (((RCFG == Zero) && (OSID == One)))
  11359. {
  11360. ^^^^GPO1.CRST = Zero
  11361. }
  11362. }
  11363. }
  11364. }
  11365.  
  11366. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  11367. {
  11368. FCFG = One
  11369. If ((RCAM == One))
  11370. {
  11371. If (((^^^^GPO1.AVBL == One) && (OSID == One)))
  11372. {
  11373. ^^^^GPO1.CRST = One
  11374. }
  11375. }
  11376. }
  11377.  
  11378. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11379. {
  11380. Name (WBUF, ResourceTemplate ()
  11381. {
  11382. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11383. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11384. )
  11385. { // Pin list
  11386. 0x0032
  11387. }
  11388. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11389. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11390. )
  11391. { // Pin list
  11392. 0x0036
  11393. }
  11394. I2cSerialBus (0x0036, ControllerInitiated, 0x00061A80,
  11395. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  11396. 0x00, ResourceConsumer, ,
  11397. )
  11398. })
  11399. Name (ABUF, ResourceTemplate ()
  11400. {
  11401. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11402. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11403. )
  11404. { // Pin list
  11405. 0x0032
  11406. }
  11407. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11408. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11409. )
  11410. { // Pin list
  11411. 0x0036
  11412. }
  11413. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11414. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11415. )
  11416. { // Pin list
  11417. 0x0037
  11418. }
  11419. I2cSerialBus (0x0036, ControllerInitiated, 0x00061A80,
  11420. AddressingMode7Bit, "\\_SB.PCI0.I2C4",
  11421. 0x00, ResourceConsumer, ,
  11422. )
  11423. })
  11424. If (((OSID == One) || (OSID == 0x04)))
  11425. {
  11426. Return (WBUF) /* \_SB_.PCI0.I2C4.CAM4._CRS.WBUF */
  11427. }
  11428. Else
  11429. {
  11430. Return (ABUF) /* \_SB_.PCI0.I2C4.CAM4._CRS.ABUF */
  11431. }
  11432. }
  11433.  
  11434. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  11435. {
  11436. If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
  11437. {
  11438. Local0 = Package (0x12)
  11439. {
  11440. "CamId",
  11441. "ov2722",
  11442. "CamType",
  11443. "1",
  11444. "CsiPort",
  11445. "0",
  11446. "CsiLanes",
  11447. "1",
  11448. "CsiFmt",
  11449. "15",
  11450. "CsiBayer",
  11451. "0",
  11452. "CamClk",
  11453. "1",
  11454. "Regulator1p8v",
  11455. "0",
  11456. "Regulator2p8v",
  11457. "0"
  11458. }
  11459. Return (Local0)
  11460. }
  11461.  
  11462. If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
  11463. {
  11464. Return ("INT33FB")
  11465. }
  11466.  
  11467. If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
  11468. {
  11469. Return ("OV2722")
  11470. }
  11471.  
  11472. If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
  11473. {
  11474. Return ("13P2SF206")
  11475. }
  11476.  
  11477. If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
  11478. {
  11479. Return ("CHV_ITL_RVP")
  11480. }
  11481.  
  11482. If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
  11483. {
  11484. Return (0x0101)
  11485. }
  11486.  
  11487. If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
  11488. {
  11489. Return (Zero)
  11490. }
  11491.  
  11492. If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
  11493. {
  11494. Return (Zero)
  11495. }
  11496.  
  11497. If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
  11498. {
  11499. Return (Zero)
  11500. }
  11501.  
  11502. If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
  11503. {
  11504. Return (0x02)
  11505. }
  11506.  
  11507. If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
  11508. {
  11509. Return (One)
  11510. }
  11511.  
  11512. If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
  11513. {
  11514. Return (Zero)
  11515. }
  11516.  
  11517. If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
  11518. {
  11519. If ((Arg2 == One))
  11520. {
  11521. Return (One)
  11522. }
  11523.  
  11524. If ((Arg2 == 0x02))
  11525. {
  11526. Return (0x04003600)
  11527. }
  11528. }
  11529.  
  11530. If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
  11531. {
  11532. If ((Arg2 == One))
  11533. {
  11534. Return (0x02)
  11535. }
  11536.  
  11537. If ((Arg2 == 0x02))
  11538. {
  11539. Return (0x01003200)
  11540. }
  11541.  
  11542. If ((Arg2 == 0x03))
  11543. {
  11544. If ((RCAM == One))
  11545. {
  11546. Return (0x3601)
  11547. }
  11548. Else
  11549. {
  11550. Return (0x01003601)
  11551. }
  11552. }
  11553. }
  11554.  
  11555. If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
  11556. {
  11557. Return ("CHT")
  11558. }
  11559.  
  11560. If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
  11561. {
  11562. Return ("FFD")
  11563. }
  11564.  
  11565. If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
  11566. {
  11567. Return ("CHV")
  11568. }
  11569.  
  11570. If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
  11571. {
  11572. Return ("INTEL")
  11573. }
  11574.  
  11575. If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
  11576. {
  11577. Return (Buffer (0x20)
  11578. {
  11579. /* 0000 */ 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  11580. /* 0008 */ 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  11581. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  11582. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  11583. })
  11584. }
  11585.  
  11586. Return (Zero)
  11587. }
  11588. }
  11589. }
  11590.  
  11591. Device (I2C5)
  11592. {
  11593. Name (_HID, "808622C1") // _HID: Hardware ID
  11594. Name (_CID, "808622C1") // _CID: Compatible ID
  11595. Name (_DDN, "Intel(R) I2C Controller #5 - 808622C5") // _DDN: DOS Device Name
  11596. Name (_UID, 0x05) // _UID: Unique ID
  11597. Name (_DEP, Package (0x01) // _DEP: Dependencies
  11598. {
  11599. PEPD
  11600. })
  11601. Name (RBUF, ResourceTemplate ()
  11602. {
  11603. Memory32Fixed (ReadWrite,
  11604. 0x00000000, // Address Base
  11605. 0x00001000, // Address Length
  11606. _Y1B)
  11607. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  11608. {
  11609. 0x00000024,
  11610. }
  11611. FixedDMA (0x0018, 0x0000, Width32bit, )
  11612. FixedDMA (0x0019, 0x0001, Width32bit, )
  11613. })
  11614. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11615. {
  11616. CreateDWordField (RBUF, \_SB.PCI0.I2C5._Y1B._BAS, B0BA) // _BAS: Base Address
  11617. CreateDWordField (RBUF, \_SB.PCI0.I2C5._Y1B._LEN, B0LN) // _LEN: Length
  11618. B0BA = I50A /* \I50A */
  11619. B0LN = I50L /* \I50L */
  11620. Return (RBUF) /* \_SB_.PCI0.I2C5.RBUF */
  11621. }
  11622.  
  11623. Method (_STA, 0, NotSerialized) // _STA: Status
  11624. {
  11625. If (((I50A == Zero) || (L25D == One)))
  11626. {
  11627. Return (Zero)
  11628. }
  11629.  
  11630. Return (0x0F)
  11631. }
  11632.  
  11633. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  11634. {
  11635. PSAT |= 0x03
  11636. PSAT |= Zero
  11637. }
  11638.  
  11639. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  11640. {
  11641. PSAT &= 0xFFFFFFFC
  11642. PSAT |= Zero
  11643. }
  11644.  
  11645. OperationRegion (KEYS, SystemMemory, I51A, 0x0100)
  11646. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  11647. {
  11648. Offset (0x84),
  11649. PSAT, 32
  11650. }
  11651.  
  11652. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  11653. {
  11654. If ((IC5P == Zero))
  11655. {
  11656. Return (Zero)
  11657. }
  11658. Else
  11659. {
  11660. Return (0x03)
  11661. }
  11662. }
  11663. }
  11664.  
  11665. Device (I2C6)
  11666. {
  11667. Name (_HID, "808622C1") // _HID: Hardware ID
  11668. Name (_CID, "808622C1") // _CID: Compatible ID
  11669. Name (_DDN, "Intel(R) I2C Controller #6 - 808622C6") // _DDN: DOS Device Name
  11670. Name (_UID, 0x06) // _UID: Unique ID
  11671. Name (_DEP, Package (0x01) // _DEP: Dependencies
  11672. {
  11673. PEPD
  11674. })
  11675. Name (RBUF, ResourceTemplate ()
  11676. {
  11677. Memory32Fixed (ReadWrite,
  11678. 0x00000000, // Address Base
  11679. 0x00001000, // Address Length
  11680. _Y1C)
  11681. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  11682. {
  11683. 0x00000025,
  11684. }
  11685. FixedDMA (0x001A, 0x0002, Width32bit, )
  11686. FixedDMA (0x001B, 0x0003, Width32bit, )
  11687. })
  11688. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11689. {
  11690. CreateDWordField (RBUF, \_SB.PCI0.I2C6._Y1C._BAS, B0BA) // _BAS: Base Address
  11691. CreateDWordField (RBUF, \_SB.PCI0.I2C6._Y1C._LEN, B0LN) // _LEN: Length
  11692. B0BA = I60A /* \I60A */
  11693. B0LN = I60L /* \I60L */
  11694. Return (RBUF) /* \_SB_.PCI0.I2C6.RBUF */
  11695. }
  11696.  
  11697. Method (_STA, 0, NotSerialized) // _STA: Status
  11698. {
  11699. If (((I60A == Zero) || (L26D == One)))
  11700. {
  11701. Return (Zero)
  11702. }
  11703.  
  11704. Return (0x0F)
  11705. }
  11706.  
  11707. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  11708. {
  11709. PSAT |= 0x03
  11710. PSAT |= Zero
  11711. }
  11712.  
  11713. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  11714. {
  11715. PSAT &= 0xFFFFFFFC
  11716. PSAT |= Zero
  11717. }
  11718.  
  11719. OperationRegion (KEYS, SystemMemory, I61A, 0x0100)
  11720. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  11721. {
  11722. Offset (0x84),
  11723. PSAT, 32
  11724. }
  11725.  
  11726. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  11727. {
  11728. If ((IC6P == Zero))
  11729. {
  11730. Return (Zero)
  11731. }
  11732. Else
  11733. {
  11734. Return (0x03)
  11735. }
  11736. }
  11737. }
  11738.  
  11739. Device (I2C7)
  11740. {
  11741. Name (_HID, "808622C1") // _HID: Hardware ID
  11742. Name (_CID, "808622C1") // _CID: Compatible ID
  11743. Name (_DDN, "Intel(R) I2C Controller #7 - 808622C7") // _DDN: DOS Device Name
  11744. Name (_UID, 0x07) // _UID: Unique ID
  11745. Name (_DEP, Package (0x01) // _DEP: Dependencies
  11746. {
  11747. PEPD
  11748. })
  11749. Method (_SEM, 0, NotSerialized)
  11750. {
  11751. If (((PMID == One) || (PMID == 0x02)))
  11752. {
  11753. ADBG ("$COVE")
  11754. Return (One)
  11755. }
  11756. Else
  11757. {
  11758. Return (Zero)
  11759. }
  11760. }
  11761.  
  11762. Name (RBUF, ResourceTemplate ()
  11763. {
  11764. Memory32Fixed (ReadWrite,
  11765. 0x00000000, // Address Base
  11766. 0x00001000, // Address Length
  11767. _Y1D)
  11768. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  11769. {
  11770. 0x00000026,
  11771. }
  11772. FixedDMA (0x001C, 0x0004, Width32bit, )
  11773. FixedDMA (0x001D, 0x0005, Width32bit, )
  11774. })
  11775. Method (_IRC, 0, NotSerialized) // _IRC: Inrush Current
  11776. {
  11777. }
  11778.  
  11779. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11780. {
  11781. CreateDWordField (RBUF, \_SB.PCI0.I2C7._Y1D._BAS, B0BA) // _BAS: Base Address
  11782. CreateDWordField (RBUF, \_SB.PCI0.I2C7._Y1D._LEN, B0LN) // _LEN: Length
  11783. B0BA = I70A /* \I70A */
  11784. B0LN = I70L /* \I70L */
  11785. Return (RBUF) /* \_SB_.PCI0.I2C7.RBUF */
  11786. }
  11787.  
  11788. Method (_STA, 0, NotSerialized) // _STA: Status
  11789. {
  11790. If (((I70A == Zero) || (L27D == One)))
  11791. {
  11792. Return (Zero)
  11793. }
  11794.  
  11795. Return (0x0F)
  11796. }
  11797.  
  11798. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  11799. {
  11800. If (((PMID == One) || (PMID == 0x02)))
  11801. {
  11802. Return (Zero)
  11803. }
  11804.  
  11805. PSAT |= 0x03
  11806. PSAT |= Zero
  11807. }
  11808.  
  11809. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  11810. {
  11811. PSAT &= 0xFFFFFFFC
  11812. PSAT |= Zero
  11813. }
  11814.  
  11815. OperationRegion (KEYS, SystemMemory, I71A, 0x0100)
  11816. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  11817. {
  11818. Offset (0x84),
  11819. PSAT, 32
  11820. }
  11821.  
  11822. OperationRegion (GPEX, GenericSerialBus, Zero, 0x0100)
  11823. Field (GPEX, BufferAcc, NoLock, Preserve)
  11824. {
  11825. Connection (
  11826. I2cSerialBus (0x0023, ControllerInitiated, 0x000F4240,
  11827. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  11828. 0x00, ResourceConsumer, ,
  11829. )
  11830. ),
  11831. Offset (0x04),
  11832. AccessAs (BufferAcc, AttribByte),
  11833. P0DT, 8,
  11834. Offset (0x0C),
  11835. AccessAs (BufferAcc, AttribByte),
  11836. P0CF, 8
  11837. }
  11838.  
  11839. OperationRegion (GPUS, GenericSerialBus, Zero, 0x0100)
  11840. Field (GPUS, BufferAcc, NoLock, Preserve)
  11841. {
  11842. Connection (
  11843. I2cSerialBus (0x005E, ControllerInitiated, 0x000F4240,
  11844. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  11845. 0x00, ResourceConsumer, ,
  11846. )
  11847. ),
  11848. Offset (0x03),
  11849. AccessAs (BufferAcc, AttribByte),
  11850. SIRQ, 8
  11851. }
  11852.  
  11853. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  11854. {
  11855. If ((IC7P == Zero))
  11856. {
  11857. Return (Zero)
  11858. }
  11859. Else
  11860. {
  11861. Return (0x03)
  11862. }
  11863. }
  11864. }
  11865.  
  11866. Scope (URT1)
  11867. {
  11868. Device (BTH3)
  11869. {
  11870. Name (_HID, "OBDA8723") // _HID: Hardware ID
  11871. Method (_STA, 0, NotSerialized) // _STA: Status
  11872. {
  11873. Return (0x0F)
  11874. }
  11875.  
  11876. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11877. {
  11878. Name (ABUF, ResourceTemplate ()
  11879. {
  11880. UartSerialBus (0x0001C200, DataBitsEight, StopBitsOne,
  11881. 0xC0, LittleEndian, ParityTypeEven, FlowControlHardware,
  11882. 0x0020, 0x0020, "\\_SB.PCI0.URT1",
  11883. 0x00, ResourceConsumer, ,
  11884. )
  11885. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11886. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11887. )
  11888. { // Pin list
  11889. 0x0004
  11890. }
  11891. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11892. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11893. )
  11894. { // Pin list
  11895. 0x0008
  11896. }
  11897. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDown, 0x0000,
  11898. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  11899. )
  11900. { // Pin list
  11901. 0x005A
  11902. }
  11903. })
  11904. Name (WBUF, ResourceTemplate ()
  11905. {
  11906. UartSerialBus (0x0001C200, DataBitsEight, StopBitsOne,
  11907. 0xC0, LittleEndian, ParityTypeEven, FlowControlHardware,
  11908. 0x0020, 0x0020, "\\_SB.PCI0.URT1",
  11909. 0x00, ResourceConsumer, ,
  11910. )
  11911. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11912. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11913. )
  11914. { // Pin list
  11915. 0x0004
  11916. }
  11917. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11918. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11919. )
  11920. { // Pin list
  11921. 0x0008
  11922. }
  11923. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullDown, 0x0000,
  11924. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  11925. )
  11926. { // Pin list
  11927. 0x005A
  11928. }
  11929. })
  11930. If ((OSYS == 0x07DF))
  11931. {
  11932. Return (WBUF) /* \_SB_.PCI0.URT1.BTH3._CRS.WBUF */
  11933. }
  11934.  
  11935. Return (ABUF) /* \_SB_.PCI0.URT1.BTH3._CRS.ABUF */
  11936. }
  11937. }
  11938. }
  11939.  
  11940. Scope (URT2)
  11941. {
  11942. Device (GPS0)
  11943. {
  11944. Name (_HID, "HAMP4752") // _HID: Hardware ID
  11945. Name (_HRV, 0x0A00) // _HRV: Hardware Revision
  11946. Method (_STA, 0, NotSerialized) // _STA: Status
  11947. {
  11948. Return (Zero)
  11949. }
  11950.  
  11951. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  11952. {
  11953. Name (UBUF, ResourceTemplate ()
  11954. {
  11955. UartSerialBus (0x000E1000, DataBitsEight, StopBitsOne,
  11956. 0xFC, LittleEndian, ParityTypeNone, FlowControlHardware,
  11957. 0x0020, 0x0020, "\\_SB.PCI0.URT2",
  11958. 0x00, ResourceConsumer, ,
  11959. )
  11960. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  11961. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  11962. )
  11963. { // Pin list
  11964. 0x0018
  11965. }
  11966. })
  11967. Return (UBUF) /* \_SB_.PCI0.URT2.GPS0._CRS.UBUF */
  11968. }
  11969. }
  11970. }
  11971.  
  11972. Scope (I2C1)
  11973. {
  11974. Device (CAM7)
  11975. {
  11976. Name (_ADR, Zero) // _ADR: Address
  11977. Name (_HID, "OVTI2680") // _HID: Hardware ID
  11978. Name (_CID, "OVTI2680") // _CID: Compatible ID
  11979. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  11980. Name (_DDN, "OV2680") // _DDN: DOS Device Name
  11981. Name (_UID, One) // _UID: Unique ID
  11982. Name (_PR0, Package (0x04) // _PR0: Power Resources for D0
  11983. {
  11984. P28P,
  11985. P18P,
  11986. P18P,
  11987. CLK2
  11988. })
  11989. Name (PLDB, Package (0x01)
  11990. {
  11991. Buffer (0x14)
  11992. {
  11993. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  11994. /* 0008 */ 0x61, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* a....... */
  11995. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  11996. }
  11997. })
  11998. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  11999. {
  12000. Return (PLDB) /* \_SB_.PCI0.I2C1.CAM7.PLDB */
  12001. }
  12002.  
  12003. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  12004. {
  12005. ^^^^GPO2.ALNT = 0x04C00044
  12006. Sleep (0x05)
  12007. Notify (^^^I2C3.ALS0, 0x80) // Status Change
  12008. }
  12009.  
  12010. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  12011. {
  12012. ^^^^GPO2.ALNT = 0x04C00040
  12013. Sleep (0x14)
  12014. }
  12015.  
  12016. Method (_STA, 0, NotSerialized) // _STA: Status
  12017. {
  12018. If ((OSYS == 0x07DF))
  12019. {
  12020. Return (Zero)
  12021. }
  12022.  
  12023. Return (0x0F)
  12024. }
  12025.  
  12026. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  12027. {
  12028. Name (WBUF, ResourceTemplate ()
  12029. {
  12030. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  12031. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  12032. )
  12033. { // Pin list
  12034. 0x004E
  12035. }
  12036. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  12037. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  12038. )
  12039. { // Pin list
  12040. 0x0055
  12041. }
  12042. I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
  12043. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  12044. 0x00, ResourceConsumer, ,
  12045. )
  12046. })
  12047. Return (WBUF) /* \_SB_.PCI0.I2C1.CAM7._CRS.WBUF */
  12048. }
  12049.  
  12050. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  12051. {
  12052. If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
  12053. {
  12054. Local0 = Package (0x12)
  12055. {
  12056. "CamId",
  12057. "OV2680",
  12058. "CamType",
  12059. "1",
  12060. "CsiPort",
  12061. "0",
  12062. "CsiLanes",
  12063. "1",
  12064. "CsiFmt",
  12065. "15",
  12066. "CsiBayer",
  12067. "0",
  12068. "CamClk",
  12069. "1",
  12070. "Regulator1p8v",
  12071. "0",
  12072. "Regulator2p8v",
  12073. "0"
  12074. }
  12075. Return (Local0)
  12076. }
  12077.  
  12078. If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
  12079. {
  12080. Return ("OVTI2680")
  12081. }
  12082.  
  12083. If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
  12084. {
  12085. Return ("OV2680")
  12086. }
  12087.  
  12088. If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
  12089. {
  12090. Return ("12P2BA536")
  12091. }
  12092.  
  12093. If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
  12094. {
  12095. Return ("CHV_ITL_CR")
  12096. }
  12097.  
  12098. If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
  12099. {
  12100. Return (0x0101)
  12101. }
  12102.  
  12103. If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
  12104. {
  12105. Return (One)
  12106. }
  12107.  
  12108. If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
  12109. {
  12110. Return (0x08)
  12111. }
  12112.  
  12113. If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
  12114. {
  12115. Return (Zero)
  12116. }
  12117.  
  12118. If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
  12119. {
  12120. Return (0x02)
  12121. }
  12122.  
  12123. If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
  12124. {
  12125. Return (One)
  12126. }
  12127.  
  12128. If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
  12129. {
  12130. Return ("default")
  12131. }
  12132.  
  12133. If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
  12134. {
  12135. If ((Arg2 == One))
  12136. {
  12137. Return (One)
  12138. }
  12139.  
  12140. If ((Arg2 == 0x02))
  12141. {
  12142. Return (0x01001000)
  12143. }
  12144. }
  12145.  
  12146. If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
  12147. {
  12148. If ((Arg2 == One))
  12149. {
  12150. Return (One)
  12151. }
  12152.  
  12153. If ((Arg2 == 0x02))
  12154. {
  12155. Return (0x01004E00)
  12156. }
  12157.  
  12158. If ((Arg2 == 0x03))
  12159. {
  12160. Return (0x5501)
  12161. }
  12162. }
  12163.  
  12164. If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
  12165. {
  12166. Return ("CHT_CR")
  12167. }
  12168.  
  12169. If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
  12170. {
  12171. Return ("FFD")
  12172. }
  12173.  
  12174. If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
  12175. {
  12176. Return ("CHV_CR")
  12177. }
  12178.  
  12179. If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
  12180. {
  12181. Return ("INTEL")
  12182. }
  12183.  
  12184. If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
  12185. {
  12186. Return (Buffer (0x20)
  12187. {
  12188. /* 0000 */ 0x01, 0x01, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, /* ........ */
  12189. /* 0008 */ 0x05, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12190. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12191. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  12192. })
  12193. }
  12194.  
  12195. Return (Zero)
  12196. }
  12197. }
  12198.  
  12199. Device (CAM3)
  12200. {
  12201. Name (_ADR, One) // _ADR: Address
  12202. Name (_HID, "OVTI2680") // _HID: Hardware ID
  12203. Name (_CID, "OVTI2680") // _CID: Compatible ID
  12204. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  12205. Name (_DDN, "OV2680") // _DDN: DOS Device Name
  12206. Name (_UID, Zero) // _UID: Unique ID
  12207. Name (_PR0, Package (0x04) // _PR0: Power Resources for D0
  12208. {
  12209. P28P,
  12210. P18P,
  12211. P18P,
  12212. CLK2
  12213. })
  12214. Name (PLDB, Package (0x01)
  12215. {
  12216. Buffer (0x14)
  12217. {
  12218. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12219. /* 0008 */ 0x61, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* a....... */
  12220. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  12221. }
  12222. })
  12223. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  12224. {
  12225. Return (PLDB) /* \_SB_.PCI0.I2C1.CAM3.PLDB */
  12226. }
  12227.  
  12228. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  12229. {
  12230. ^^^^GPO2.ALNT = 0x04C00044
  12231. Sleep (0x05)
  12232. Notify (^^^I2C3.ALS0, 0x80) // Status Change
  12233. }
  12234.  
  12235. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  12236. {
  12237. ^^^^GPO2.ALNT = 0x04C00040
  12238. Sleep (0x14)
  12239. }
  12240.  
  12241. Method (_STA, 0, NotSerialized) // _STA: Status
  12242. {
  12243. If ((OSYS == 0x07DF))
  12244. {
  12245. Return (0x0F)
  12246. }
  12247.  
  12248. Return (Zero)
  12249. }
  12250.  
  12251. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  12252. {
  12253. Name (WBUF, ResourceTemplate ()
  12254. {
  12255. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  12256. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  12257. )
  12258. { // Pin list
  12259. 0x004E
  12260. }
  12261. I2cSerialBus (0x0010, ControllerInitiated, 0x00061A80,
  12262. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  12263. 0x00, ResourceConsumer, ,
  12264. )
  12265. })
  12266. Return (WBUF) /* \_SB_.PCI0.I2C1.CAM3._CRS.WBUF */
  12267. }
  12268.  
  12269. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  12270. {
  12271. If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
  12272. {
  12273. Local0 = Package (0x12)
  12274. {
  12275. "CamId",
  12276. "OV2680",
  12277. "CamType",
  12278. "1",
  12279. "CsiPort",
  12280. "0",
  12281. "CsiLanes",
  12282. "1",
  12283. "CsiFmt",
  12284. "15",
  12285. "CsiBayer",
  12286. "0",
  12287. "CamClk",
  12288. "1",
  12289. "Regulator1p8v",
  12290. "0",
  12291. "Regulator2p8v",
  12292. "0"
  12293. }
  12294. Return (Local0)
  12295. }
  12296.  
  12297. If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
  12298. {
  12299. Return ("OVTI2680")
  12300. }
  12301.  
  12302. If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
  12303. {
  12304. Return ("OV2680")
  12305. }
  12306.  
  12307. If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
  12308. {
  12309. Return ("12P2BA536")
  12310. }
  12311.  
  12312. If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
  12313. {
  12314. Return ("CHV_ITL_CR")
  12315. }
  12316.  
  12317. If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
  12318. {
  12319. Return (0x0101)
  12320. }
  12321.  
  12322. If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
  12323. {
  12324. Return (One)
  12325. }
  12326.  
  12327. If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
  12328. {
  12329. Return (0x08)
  12330. }
  12331.  
  12332. If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
  12333. {
  12334. Return (Zero)
  12335. }
  12336.  
  12337. If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
  12338. {
  12339. Return (0x02)
  12340. }
  12341.  
  12342. If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
  12343. {
  12344. Return (One)
  12345. }
  12346.  
  12347. If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
  12348. {
  12349. Return ("default")
  12350. }
  12351.  
  12352. If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
  12353. {
  12354. If ((Arg2 == One))
  12355. {
  12356. Return (One)
  12357. }
  12358.  
  12359. If ((Arg2 == 0x02))
  12360. {
  12361. Return (0x01001000)
  12362. }
  12363. }
  12364.  
  12365. If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
  12366. {
  12367. If ((Arg2 == One))
  12368. {
  12369. Return (One)
  12370. }
  12371.  
  12372. If ((Arg2 == 0x02))
  12373. {
  12374. Return (0x01004E00)
  12375. }
  12376. }
  12377.  
  12378. If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
  12379. {
  12380. Return ("CHT_CR")
  12381. }
  12382.  
  12383. If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
  12384. {
  12385. Return ("FFD")
  12386. }
  12387.  
  12388. If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
  12389. {
  12390. Return ("CHV_CR")
  12391. }
  12392.  
  12393. If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
  12394. {
  12395. Return ("INTEL")
  12396. }
  12397.  
  12398. If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
  12399. {
  12400. Return (Buffer (0x20)
  12401. {
  12402. /* 0000 */ 0x01, 0x01, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, /* ........ */
  12403. /* 0008 */ 0x05, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12404. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12405. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  12406. })
  12407. }
  12408.  
  12409. Return (Zero)
  12410. }
  12411. }
  12412.  
  12413. PowerResource (CLK4, 0x00, 0x0000)
  12414. {
  12415. Method (_STA, 0, NotSerialized) // _STA: Status
  12416. {
  12417. Return (CKC4) /* \CKC4 */
  12418. }
  12419.  
  12420. Method (_ON, 0, NotSerialized) // _ON_: Power On
  12421. {
  12422. CKC4 = One
  12423. Sleep (0x05)
  12424. }
  12425.  
  12426. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  12427. {
  12428. CKC4 = 0x02
  12429. }
  12430. }
  12431.  
  12432. Device (CAM4)
  12433. {
  12434. Name (_ADR, Zero) // _ADR: Address
  12435. Name (_HID, "INT5648") // _HID: Hardware ID
  12436. Name (_CID, "INT5648") // _CID: Compatible ID
  12437. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  12438. Name (_DDN, "ov5648") // _DDN: DOS Device Name
  12439. Name (_UID, One) // _UID: Unique ID
  12440. Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
  12441. {
  12442. P28P,
  12443. P18P,
  12444. CLK4
  12445. })
  12446. Name (PLDB, Package (0x01)
  12447. {
  12448. Buffer (0x14)
  12449. {
  12450. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12451. /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* i....... */
  12452. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  12453. }
  12454. })
  12455. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  12456. {
  12457. Return (PLDB) /* \_SB_.PCI0.I2C1.CAM4.PLDB */
  12458. }
  12459.  
  12460. Method (_STA, 0, NotSerialized) // _STA: Status
  12461. {
  12462. If ((OSYS == 0x07DF))
  12463. {
  12464. Return (Zero)
  12465. }
  12466.  
  12467. Return (0x0F)
  12468. }
  12469.  
  12470. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  12471. {
  12472. Name (WBUF, ResourceTemplate ()
  12473. {
  12474. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  12475. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  12476. )
  12477. { // Pin list
  12478. 0x0037
  12479. }
  12480. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  12481. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  12482. )
  12483. { // Pin list
  12484. 0x002F
  12485. }
  12486. I2cSerialBus (0x0036, ControllerInitiated, 0x00061A80,
  12487. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  12488. 0x00, ResourceConsumer, ,
  12489. )
  12490. I2cSerialBus (0x000C, ControllerInitiated, 0x00061A80,
  12491. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  12492. 0x00, ResourceConsumer, ,
  12493. )
  12494. })
  12495. Return (WBUF) /* \_SB_.PCI0.I2C1.CAM4._CRS.WBUF */
  12496. }
  12497.  
  12498. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  12499. {
  12500. If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
  12501. {
  12502. Local0 = Package (0x12)
  12503. {
  12504. "CamId",
  12505. "ov5648",
  12506. "CamType",
  12507. "1",
  12508. "CsiPort",
  12509. "1",
  12510. "CsiLanes",
  12511. "2",
  12512. "CsiFmt",
  12513. "15",
  12514. "CsiBayer",
  12515. "2",
  12516. "CamClk",
  12517. "0",
  12518. "Regulator1p8v",
  12519. "0",
  12520. "Regulator2p8v",
  12521. "0"
  12522. }
  12523. Return (Local0)
  12524. }
  12525.  
  12526. If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
  12527. {
  12528. Return ("INT5648")
  12529. }
  12530.  
  12531. If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
  12532. {
  12533. Return ("default")
  12534. }
  12535.  
  12536. If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
  12537. {
  12538. Return ("MTD5648")
  12539. }
  12540.  
  12541. If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
  12542. {
  12543. Return ("CHV_ITL_CR")
  12544. }
  12545.  
  12546. If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
  12547. {
  12548. Return (0x0102)
  12549. }
  12550.  
  12551. If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
  12552. {
  12553. Return (Zero)
  12554. }
  12555.  
  12556. If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
  12557. {
  12558. Return (Zero)
  12559. }
  12560.  
  12561. If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
  12562. {
  12563. Return (Zero)
  12564. }
  12565.  
  12566. If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
  12567. {
  12568. Return (0x02)
  12569. }
  12570.  
  12571. If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
  12572. {
  12573. Return (Zero)
  12574. }
  12575.  
  12576. If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
  12577. {
  12578. Return ("DW9714")
  12579. }
  12580.  
  12581. If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
  12582. {
  12583. If ((Arg2 == One))
  12584. {
  12585. Return (0x02)
  12586. }
  12587.  
  12588. If ((Arg2 == 0x02))
  12589. {
  12590. Return (0x01003600)
  12591. }
  12592.  
  12593. If ((Arg2 == 0x03))
  12594. {
  12595. Return (0x01000C01)
  12596. }
  12597. }
  12598.  
  12599. If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
  12600. {
  12601. If ((Arg2 == One))
  12602. {
  12603. Return (0x02)
  12604. }
  12605.  
  12606. If ((Arg2 == 0x02))
  12607. {
  12608. Return (0x01003700)
  12609. }
  12610.  
  12611. If ((Arg2 == 0x03))
  12612. {
  12613. Return (0x01002F01)
  12614. }
  12615. }
  12616.  
  12617. If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
  12618. {
  12619. Return ("CHT_CR")
  12620. }
  12621.  
  12622. If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
  12623. {
  12624. Return ("FFD")
  12625. }
  12626.  
  12627. If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
  12628. {
  12629. Return ("CHV_CR")
  12630. }
  12631.  
  12632. If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
  12633. {
  12634. Return ("INTEL")
  12635. }
  12636.  
  12637. If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
  12638. {
  12639. Return (Buffer (0x20)
  12640. {
  12641. /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02, /* ........ */
  12642. /* 0008 */ 0x05, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12643. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12644. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  12645. })
  12646. }
  12647.  
  12648. Return (Zero)
  12649. }
  12650. }
  12651.  
  12652. Device (CAM8)
  12653. {
  12654. Name (_ADR, Zero) // _ADR: Address
  12655. Name (_HID, "INT5648") // _HID: Hardware ID
  12656. Name (_CID, "INT5648") // _CID: Compatible ID
  12657. Name (_SUB, "INTL0000") // _SUB: Subsystem ID
  12658. Name (_DDN, "ov5648") // _DDN: DOS Device Name
  12659. Name (_UID, One) // _UID: Unique ID
  12660. Name (_PR0, Package (0x03) // _PR0: Power Resources for D0
  12661. {
  12662. P28P,
  12663. P18P,
  12664. CLK4
  12665. })
  12666. Name (PLDB, Package (0x01)
  12667. {
  12668. Buffer (0x14)
  12669. {
  12670. /* 0000 */ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12671. /* 0008 */ 0x69, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, /* i....... */
  12672. /* 0010 */ 0xFF, 0xFF, 0xFF, 0xFF /* .... */
  12673. }
  12674. })
  12675. Method (_PLD, 0, Serialized) // _PLD: Physical Location of Device
  12676. {
  12677. Return (PLDB) /* \_SB_.PCI0.I2C1.CAM8.PLDB */
  12678. }
  12679.  
  12680. Method (_STA, 0, NotSerialized) // _STA: Status
  12681. {
  12682. If ((OSYS == 0x07DF))
  12683. {
  12684. Return (0x0F)
  12685. }
  12686.  
  12687. Return (Zero)
  12688. }
  12689.  
  12690. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  12691. {
  12692. Name (WBUF, ResourceTemplate ()
  12693. {
  12694. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  12695. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  12696. )
  12697. { // Pin list
  12698. 0x0037
  12699. }
  12700. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  12701. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  12702. )
  12703. { // Pin list
  12704. 0x002F
  12705. }
  12706. I2cSerialBus (0x0036, ControllerInitiated, 0x00061A80,
  12707. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  12708. 0x00, ResourceConsumer, ,
  12709. )
  12710. I2cSerialBus (0x000C, ControllerInitiated, 0x00061A80,
  12711. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  12712. 0x00, ResourceConsumer, ,
  12713. )
  12714. })
  12715. Return (WBUF) /* \_SB_.PCI0.I2C1.CAM8._CRS.WBUF */
  12716. }
  12717.  
  12718. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  12719. {
  12720. If ((Arg0 == ToUUID ("dc2f6c4f-045b-4f1d-97b9-882a6860a4be")))
  12721. {
  12722. Local0 = Package (0x12)
  12723. {
  12724. "CamId",
  12725. "ov5648",
  12726. "CamType",
  12727. "1",
  12728. "CsiPort",
  12729. "1",
  12730. "CsiLanes",
  12731. "2",
  12732. "CsiFmt",
  12733. "15",
  12734. "CsiBayer",
  12735. "2",
  12736. "CamClk",
  12737. "0",
  12738. "Regulator1p8v",
  12739. "0",
  12740. "Regulator2p8v",
  12741. "0"
  12742. }
  12743. Return (Local0)
  12744. }
  12745.  
  12746. If ((Arg0 == ToUUID ("377ba76a-f390-4aff-ab38-9b1bf33a3015")))
  12747. {
  12748. Return ("INT5648")
  12749. }
  12750.  
  12751. If ((Arg0 == ToUUID ("3c62aaaa-d8e0-401a-84c3-fc05656fa28c")))
  12752. {
  12753. Return ("default")
  12754. }
  12755.  
  12756. If ((Arg0 == ToUUID ("822ace8f-2814-4174-a56b-5f029fe079ee")))
  12757. {
  12758. Return ("MTD5648")
  12759. }
  12760.  
  12761. If ((Arg0 == ToUUID ("2959512a-028c-4646-b73d-4d1b5672fad8")))
  12762. {
  12763. Return ("CHV_ITL_CR")
  12764. }
  12765.  
  12766. If ((Arg0 == ToUUID ("918ab242-c37c-450a-9d0f-f47ab97c3dea")))
  12767. {
  12768. Return (0x0102)
  12769. }
  12770.  
  12771. If ((Arg0 == ToUUID ("ea3b7bd8-e09b-4239-ad6e-ed525f3f26ab")))
  12772. {
  12773. Return (Zero)
  12774. }
  12775.  
  12776. If ((Arg0 == ToUUID ("b65ac492-9e30-4d60-b5b2-f497c790d9cf")))
  12777. {
  12778. Return (Zero)
  12779. }
  12780.  
  12781. If ((Arg0 == ToUUID ("e770ab0f-2644-4bab-8628-d62f1683fb9d")))
  12782. {
  12783. Return (Zero)
  12784. }
  12785.  
  12786. If ((Arg0 == ToUUID ("1ea54ab2-cd84-48cc-9dd4-7f594ec3b015")))
  12787. {
  12788. Return (0x02)
  12789. }
  12790.  
  12791. If ((Arg0 == ToUUID ("8dbe2651-70c1-4c6f-ac87-a37cb46e4af6")))
  12792. {
  12793. Return (Zero)
  12794. }
  12795.  
  12796. If ((Arg0 == ToUUID ("75c9a639-5c8a-4a00-9f48-a9c3b5da789f")))
  12797. {
  12798. Return ("DW9714")
  12799. }
  12800.  
  12801. If ((Arg0 == ToUUID ("26257549-9271-4ca4-bb43-c4899d5a4881")))
  12802. {
  12803. If ((Arg2 == One))
  12804. {
  12805. Return (0x02)
  12806. }
  12807.  
  12808. If ((Arg2 == 0x02))
  12809. {
  12810. Return (0x01003600)
  12811. }
  12812.  
  12813. If ((Arg2 == 0x03))
  12814. {
  12815. Return (0x01000C01)
  12816. }
  12817. }
  12818.  
  12819. If ((Arg0 == ToUUID ("79234640-9e10-4fea-a5c1-b5aa8b19756f")))
  12820. {
  12821. If ((Arg2 == One))
  12822. {
  12823. Return (0x02)
  12824. }
  12825.  
  12826. If ((Arg2 == 0x02))
  12827. {
  12828. Return (0x01003700)
  12829. }
  12830.  
  12831. If ((Arg2 == 0x03))
  12832. {
  12833. Return (0x01002F01)
  12834. }
  12835. }
  12836.  
  12837. If ((Arg0 == ToUUID ("2fa9bb94-9c5d-4aeb-8e6e-27434f81e3d3")))
  12838. {
  12839. Return ("CHT_CR")
  12840. }
  12841.  
  12842. If ((Arg0 == ToUUID ("647a6ca2-8b29-49ac-8806-d58b3d2d3ef5")))
  12843. {
  12844. Return ("FFD")
  12845. }
  12846.  
  12847. If ((Arg0 == ToUUID ("a6e922a1-f7b3-4399-b56a-406ae416843b")))
  12848. {
  12849. Return ("CHV_CR")
  12850. }
  12851.  
  12852. If ((Arg0 == ToUUID ("5960313b-0ab0-4940-8840-2cafa420c015")))
  12853. {
  12854. Return ("INTEL")
  12855. }
  12856.  
  12857. If ((Arg0 == ToUUID ("f486d39f-d657-484b-84a6-42a565712b92")))
  12858. {
  12859. Return (Buffer (0x20)
  12860. {
  12861. /* 0000 */ 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02, /* ........ */
  12862. /* 0008 */ 0x05, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12863. /* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  12864. /* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  12865. })
  12866. }
  12867.  
  12868. Return (Zero)
  12869. }
  12870. }
  12871. }
  12872.  
  12873. Scope (I2C2)
  12874. {
  12875. Device (ESSX)
  12876. {
  12877. Name (_ADR, Zero) // _ADR: Address
  12878. Name (_HID, "ESSX8316") // _HID: Hardware ID
  12879. Name (_CID, "ESSX8316") // _CID: Compatible ID
  12880. Name (_DDN, "ES8316") // _DDN: DOS Device Name
  12881. Name (_UID, One) // _UID: Unique ID
  12882. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  12883. {
  12884. CLK3
  12885. })
  12886. Name (_DEP, Package (0x01) // _DEP: Dependencies
  12887. {
  12888. PEPD
  12889. })
  12890. Name (CHAN, Package (0x02)
  12891. {
  12892. One,
  12893. 0x017D7840
  12894. })
  12895. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  12896. {
  12897. Name (SBUF, ResourceTemplate ()
  12898. {
  12899. I2cSerialBus (0x0011, ControllerInitiated, 0x00061A80,
  12900. AddressingMode7Bit, "\\_SB.PCI0.I2C2",
  12901. 0x00, ResourceConsumer, ,
  12902. )
  12903. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  12904. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  12905. )
  12906. { // Pin list
  12907. 0x001B
  12908. }
  12909. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  12910. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  12911. )
  12912. { // Pin list
  12913. 0x004F
  12914. }
  12915. })
  12916. Return (SBUF) /* \_SB_.PCI0.I2C2.ESSX._CRS.SBUF */
  12917. }
  12918.  
  12919. Method (_STA, 0, NotSerialized) // _STA: Status
  12920. {
  12921. If ((OSYS == 0x07DF))
  12922. {
  12923. Return (0x0F)
  12924. }
  12925.  
  12926. Return (Zero)
  12927. }
  12928.  
  12929. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  12930. {
  12931. }
  12932.  
  12933. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  12934. {
  12935. If ((Arg0 == Buffer (0x10)
  12936. {
  12937. /* 0000 */ 0x04, 0x0C, 0x80, 0xA9, 0x16, 0xE0, 0x3E, 0x34, /* ......>4 */
  12938. /* 0008 */ 0x41, 0xF4, 0x6B, 0xCC, 0xE7, 0x0F, 0x43, 0x32 /* A.k...C2 */
  12939. }))
  12940. {
  12941. If ((Arg2 == Zero))
  12942. {
  12943. Return (0xCC)
  12944. }
  12945.  
  12946. If ((Arg2 == One))
  12947. {
  12948. Return (0xBB)
  12949. }
  12950.  
  12951. If ((Arg2 == 0x02))
  12952. {
  12953. Return (0x02)
  12954. }
  12955.  
  12956. If ((Arg2 == 0x03))
  12957. {
  12958. Return (Zero)
  12959. }
  12960.  
  12961. If ((Arg2 == 0x0F))
  12962. {
  12963. Return (One)
  12964. }
  12965.  
  12966. If ((Arg2 == 0x10))
  12967. {
  12968. Return (0x03)
  12969. }
  12970.  
  12971. If ((Arg2 == 0x20))
  12972. {
  12973. Return (0x03)
  12974. }
  12975.  
  12976. If ((Arg2 == 0x11))
  12977. {
  12978. Return (One)
  12979. }
  12980.  
  12981. If ((Arg2 == 0x21))
  12982. {
  12983. Return (One)
  12984. }
  12985.  
  12986. If ((Arg2 == 0x12))
  12987. {
  12988. Return (Zero)
  12989. }
  12990.  
  12991. If ((Arg2 == 0x22))
  12992. {
  12993. Return (Zero)
  12994. }
  12995.  
  12996. If ((Arg2 == 0x13))
  12997. {
  12998. Return (One)
  12999. }
  13000.  
  13001. If ((Arg2 == 0x23))
  13002. {
  13003. Return (One)
  13004. }
  13005.  
  13006. If ((Arg2 == 0x14))
  13007. {
  13008. Return (0x07)
  13009. }
  13010.  
  13011. If ((Arg2 == 0x24))
  13012. {
  13013. Return (0x09)
  13014. }
  13015.  
  13016. If ((Arg2 == 0x15))
  13017. {
  13018. Return (0x0E)
  13019. }
  13020.  
  13021. If ((Arg2 == 0x25))
  13022. {
  13023. Return (0x12)
  13024. }
  13025.  
  13026. If ((Arg2 == 0x16))
  13027. {
  13028. Return (0x04)
  13029. }
  13030.  
  13031. If ((Arg2 == 0x26))
  13032. {
  13033. Return (0x04)
  13034. }
  13035.  
  13036. If ((Arg2 == 0x17))
  13037. {
  13038. Return (Zero)
  13039. }
  13040.  
  13041. If ((Arg2 == 0x27))
  13042. {
  13043. Return (Zero)
  13044. }
  13045.  
  13046. If ((Arg2 == 0x18))
  13047. {
  13048. Return (Zero)
  13049. }
  13050.  
  13051. If ((Arg2 == 0x28))
  13052. {
  13053. Return (Zero)
  13054. }
  13055.  
  13056. If ((Arg2 == 0x19))
  13057. {
  13058. Return (0x02)
  13059. }
  13060.  
  13061. If ((Arg2 == 0x29))
  13062. {
  13063. Return (0x02)
  13064. }
  13065.  
  13066. If ((Arg2 == 0x1A))
  13067. {
  13068. Return (0x03)
  13069. }
  13070.  
  13071. If ((Arg2 == 0x2A))
  13072. {
  13073. Return (0x03)
  13074. }
  13075.  
  13076. If ((Arg2 == 0x1B))
  13077. {
  13078. Return (0x0B)
  13079. }
  13080.  
  13081. If ((Arg2 == 0x2B))
  13082. {
  13083. Return (One)
  13084. }
  13085.  
  13086. If ((Arg2 == 0x40))
  13087. {
  13088. Return (0x88)
  13089. }
  13090.  
  13091. If ((Arg2 == 0x50))
  13092. {
  13093. Return (Zero)
  13094. }
  13095.  
  13096. If ((Arg2 == 0x41))
  13097. {
  13098. Return (0xBB)
  13099. }
  13100.  
  13101. If ((Arg2 == 0x51))
  13102. {
  13103. Return (0x99)
  13104. }
  13105.  
  13106. If ((Arg2 == 0x42))
  13107. {
  13108. Return (Zero)
  13109. }
  13110.  
  13111. If ((Arg2 == 0x52))
  13112. {
  13113. Return (Zero)
  13114. }
  13115.  
  13116. If ((Arg2 == 0x44))
  13117. {
  13118. Return (Zero)
  13119. }
  13120.  
  13121. If ((Arg2 == 0x54))
  13122. {
  13123. Return (Zero)
  13124. }
  13125.  
  13126. If ((Arg2 == 0x45))
  13127. {
  13128. Return (0x03)
  13129. }
  13130.  
  13131. If ((Arg2 == 0x55))
  13132. {
  13133. Return (0x03)
  13134. }
  13135.  
  13136. If ((Arg2 == 0x4A))
  13137. {
  13138. Return (Zero)
  13139. }
  13140.  
  13141. If ((Arg2 == 0x5A))
  13142. {
  13143. Return (Zero)
  13144. }
  13145.  
  13146. If ((Arg2 == 0x46))
  13147. {
  13148. Return (Zero)
  13149. }
  13150.  
  13151. If ((Arg2 == 0x56))
  13152. {
  13153. Return (One)
  13154. }
  13155. }
  13156.  
  13157. Return (0xFF)
  13158. }
  13159. }
  13160.  
  13161. Device (RTK1)
  13162. {
  13163. Name (_ADR, Zero) // _ADR: Address
  13164. Name (_HID, "10EC5651") // _HID: Hardware ID
  13165. Name (_CID, "10EC5651") // _CID: Compatible ID
  13166. Name (_DDN, "ALC5651") // _DDN: DOS Device Name
  13167. Name (_UID, 0x02) // _UID: Unique ID
  13168. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  13169. {
  13170. CLK3
  13171. })
  13172. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  13173. {
  13174. Name (SBUF, ResourceTemplate ()
  13175. {
  13176. I2cSerialBus (0x001A, ControllerInitiated, 0x00061A80,
  13177. AddressingMode7Bit, "\\_SB.PCI0.I2C2",
  13178. 0x00, ResourceConsumer, ,
  13179. )
  13180. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  13181. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  13182. )
  13183. { // Pin list
  13184. 0x001B
  13185. }
  13186. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  13187. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  13188. )
  13189. { // Pin list
  13190. 0x004F
  13191. }
  13192. })
  13193. Return (SBUF) /* \_SB_.PCI0.I2C2.RTK1._CRS.SBUF */
  13194. }
  13195.  
  13196. Method (_STA, 0, NotSerialized) // _STA: Status
  13197. {
  13198. If ((OSYS == 0x07DF))
  13199. {
  13200. Return (Zero)
  13201. }
  13202.  
  13203. Return (0x0F)
  13204. }
  13205.  
  13206. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  13207. {
  13208. }
  13209. }
  13210. }
  13211.  
  13212. Scope (I2C3)
  13213. {
  13214. Device (ACC2)
  13215. {
  13216. Name (_ADR, Zero) // _ADR: Address
  13217. Name (_HID, "BOSC0200") // _HID: Hardware ID
  13218. Name (_CID, "BOSC0200") // _CID: Compatible ID
  13219. Name (_DDN, "Accelerometer") // _DDN: DOS Device Name
  13220. Name (_UID, One) // _UID: Unique ID
  13221. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  13222. {
  13223. Name (RBUF, ResourceTemplate ()
  13224. {
  13225. GpioInt (Level, ActiveHigh, Exclusive, PullNone, 0x0000,
  13226. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  13227. )
  13228. { // Pin list
  13229. 0x0015
  13230. }
  13231. I2cSerialBus (0x0018, ControllerInitiated, 0x00061A80,
  13232. AddressingMode7Bit, "\\_SB.PCI0.I2C3",
  13233. 0x00, ResourceConsumer, ,
  13234. )
  13235. })
  13236. Return (RBUF) /* \_SB_.PCI0.I2C3.ACC2._CRS.RBUF */
  13237. }
  13238.  
  13239. Method (ROTM, 0, NotSerialized)
  13240. {
  13241. Name (RBUF, Package (0x03)
  13242. {
  13243. "1 0 0",
  13244. "0 -1 0",
  13245. "0 0 1"
  13246. })
  13247. Return (RBUF) /* \_SB_.PCI0.I2C3.ACC2.ROTM.RBUF */
  13248. }
  13249.  
  13250. Method (_STA, 0, NotSerialized) // _STA: Status
  13251. {
  13252. If ((OSYS == 0x07DF))
  13253. {
  13254. Return (0x0F)
  13255. }
  13256.  
  13257. Return (Zero)
  13258. }
  13259.  
  13260. Method (INT, 0, NotSerialized)
  13261. {
  13262. Return (One)
  13263. }
  13264. }
  13265.  
  13266. Device (ALS0)
  13267. {
  13268. Name (_ADR, Zero) // _ADR: Address
  13269. Name (_HID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */) // _HID: Hardware ID
  13270. Name (_CID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */) // _CID: Compatible ID
  13271. Name (_UID, One) // _UID: Unique ID
  13272. Name (_DEP, Package (0x01) // _DEP: Dependencies
  13273. {
  13274. I2C3
  13275. })
  13276. Method (_STA, 0, NotSerialized) // _STA: Status
  13277. {
  13278. If ((OSYS == 0x07DF))
  13279. {
  13280. Return (Zero)
  13281. }
  13282.  
  13283. Return (Zero)
  13284. }
  13285.  
  13286. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  13287. {
  13288. Name (SBUF, ResourceTemplate ()
  13289. {
  13290. I2cSerialBus (0x000C, ControllerInitiated, 0x00061A80,
  13291. AddressingMode7Bit, "\\_SB.PCI0.I2C3",
  13292. 0x00, ResourceConsumer, ,
  13293. )
  13294. I2cSerialBus (0x0048, ControllerInitiated, 0x00061A80,
  13295. AddressingMode7Bit, "\\_SB.PCI0.I2C3",
  13296. 0x00, ResourceConsumer, ,
  13297. )
  13298. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  13299. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  13300. )
  13301. { // Pin list
  13302. 0x0012
  13303. }
  13304. })
  13305. Return (SBUF) /* \_SB_.PCI0.I2C3.ALS0._CRS.SBUF */
  13306. }
  13307.  
  13308. Name (CPM0, Package (0x07)
  13309. {
  13310. 0x0C92,
  13311. Zero,
  13312. 0x0F,
  13313. 0x0844,
  13314. 0x013B,
  13315. 0x011D,
  13316. Zero
  13317. })
  13318. Name (CPM1, Package (0x03)
  13319. {
  13320. 0x0594,
  13321. 0x000186A0,
  13322. 0x000186A0
  13323. })
  13324. Name (CPM2, Package (0x06)
  13325. {
  13326. 0x61A8,
  13327. 0x000186A0,
  13328. 0x000186A0,
  13329. 0x000186A0,
  13330. 0x00030D40,
  13331. 0x00061A80
  13332. })
  13333. Name (CPM3, Package (0x04)
  13334. {
  13335. Package (0x02)
  13336. {
  13337. 0x3C,
  13338. Zero
  13339. },
  13340.  
  13341. Package (0x02)
  13342. {
  13343. 0x4B,
  13344. 0x03
  13345. },
  13346.  
  13347. Package (0x02)
  13348. {
  13349. 0x64,
  13350. 0x0F
  13351. },
  13352.  
  13353. Package (0x02)
  13354. {
  13355. 0x96,
  13356. 0x96
  13357. }
  13358. })
  13359. Name (CPM5, Package (0x07)
  13360. {
  13361. Zero,
  13362. 0x000249F0,
  13363. 0x0190,
  13364. 0x03E8,
  13365. 0x02,
  13366. 0x32,
  13367. 0x05
  13368. })
  13369. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  13370. {
  13371. If ((Arg0 == ToUUID ("0703c6b6-1cca-4144-9fe7-4654f53a0bd9")))
  13372. {
  13373. If ((Arg2 == Zero))
  13374. {
  13375. Return (Buffer (One)
  13376. {
  13377. 0x03 /* . */
  13378. })
  13379. }
  13380.  
  13381. If ((Arg2 == One))
  13382. {
  13383. If ((ToInteger (Arg3) == Zero))
  13384. {
  13385. Return (CPM0) /* \_SB_.PCI0.I2C3.ALS0.CPM0 */
  13386. }
  13387.  
  13388. If ((ToInteger (Arg3) == One))
  13389. {
  13390. Return (CPM1) /* \_SB_.PCI0.I2C3.ALS0.CPM1 */
  13391. }
  13392.  
  13393. If ((ToInteger (Arg3) == 0x02))
  13394. {
  13395. Return (CPM2) /* \_SB_.PCI0.I2C3.ALS0.CPM2 */
  13396. }
  13397.  
  13398. If ((ToInteger (Arg3) == 0x03))
  13399. {
  13400. Return (CPM3) /* \_SB_.PCI0.I2C3.ALS0.CPM3 */
  13401. }
  13402.  
  13403. If ((ToInteger (Arg3) == 0x05))
  13404. {
  13405. Return (CPM5) /* \_SB_.PCI0.I2C3.ALS0.CPM5 */
  13406. }
  13407. }
  13408. }
  13409.  
  13410. Return (Buffer (One)
  13411. {
  13412. 0x00 /* . */
  13413. })
  13414. }
  13415. }
  13416. }
  13417.  
  13418. Scope (I2C4)
  13419. {
  13420. }
  13421.  
  13422. Scope (I2C5)
  13423. {
  13424. PowerResource (CLK5, 0x00, 0x0000)
  13425. {
  13426. Method (_STA, 0, NotSerialized) // _STA: Status
  13427. {
  13428. Return (CKC5) /* \CKC5 */
  13429. }
  13430.  
  13431. Method (_ON, 0, NotSerialized) // _ON_: Power On
  13432. {
  13433. CKC5 = One
  13434. Sleep (0x05)
  13435. }
  13436.  
  13437. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  13438. {
  13439. CKC5 = 0x02
  13440. }
  13441. }
  13442. }
  13443.  
  13444. Scope (I2C6)
  13445. {
  13446. Device (TCS1)
  13447. {
  13448. Name (_ADR, Zero) // _ADR: Address
  13449. Name (_HID, "GDIX1001") // _HID: Hardware ID
  13450. Name (_CID, "GDIX1001") // _CID: Compatible ID
  13451. Name (_S0W, Zero) // _S0W: S0 Device Wake State
  13452. Name (_DEP, Package (0x02) // _DEP: Dependencies
  13453. {
  13454. GPO1,
  13455. I2C6
  13456. })
  13457. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  13458. {
  13459. }
  13460.  
  13461. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  13462. {
  13463. }
  13464.  
  13465. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  13466. {
  13467. Name (WBUF, ResourceTemplate ()
  13468. {
  13469. I2cSerialBus (0x0014, ControllerInitiated, 0x00061A80,
  13470. AddressingMode7Bit, "\\_SB.PCI0.I2C6",
  13471. 0x00, ResourceConsumer, ,
  13472. )
  13473. GpioInt (Edge, ActiveLow, Shared, PullDefault, 0x0000,
  13474. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  13475. )
  13476. { // Pin list
  13477. 0x0013
  13478. }
  13479. GpioIo (Shared, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  13480. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  13481. )
  13482. { // Pin list
  13483. 0x0019
  13484. }
  13485. })
  13486. Return (WBUF) /* \_SB_.PCI0.I2C6.TCS1._CRS.WBUF */
  13487. }
  13488.  
  13489. Method (_STA, 0, NotSerialized) // _STA: Status
  13490. {
  13491. If ((OSYS == 0x07DF))
  13492. {
  13493. Return (0x0F)
  13494. }
  13495.  
  13496. Return (Zero)
  13497. }
  13498.  
  13499. OperationRegion (IADR, SystemMemory, 0xFED8C820, 0x08)
  13500. Field (IADR, DWordAcc, NoLock, Preserve)
  13501. {
  13502. CNF0, 32,
  13503. CNF1, 32
  13504. }
  13505.  
  13506. OperationRegion (SADR, SystemMemory, 0xFED88300, 0x04)
  13507. Field (SADR, DWordAcc, NoLock, Preserve)
  13508. {
  13509. ISTS, 32
  13510. }
  13511.  
  13512. OperationRegion (MADR, SystemMemory, 0xFED88380, 0x04)
  13513. Field (MADR, DWordAcc, NoLock, Preserve)
  13514. {
  13515. IMSK, 32
  13516. }
  13517.  
  13518. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  13519. {
  13520. If ((Arg0 == Zero))
  13521. {
  13522. If ((Arg1 == One))
  13523. {
  13524. If ((CFB1 == Zero))
  13525. {
  13526. Local0 = CNF1 /* \_SB_.PCI0.I2C6.TCS1.CNF1 */
  13527. CFB1 = Local0
  13528. }
  13529. }
  13530. }
  13531. }
  13532.  
  13533. Name (CFB1, Zero)
  13534. Name (IOST, Zero)
  13535. Mutex (MTEX, 0x00)
  13536. Method (INTI, 0, Serialized)
  13537. {
  13538. Acquire (MTEX, 0x0064)
  13539. Local0 = 0x00908200
  13540. CNF0 = Local0
  13541. Local0 = CNF0 /* \_SB_.PCI0.I2C6.TCS1.CNF0 */
  13542. Local0 &= 0xFFFFF8FF
  13543. Local0 |= 0x0200
  13544. CNF0 = Local0
  13545. If ((CFB1 != Zero))
  13546. {
  13547. CNF1 = CFB1 /* \_SB_.PCI0.I2C6.TCS1.CFB1 */
  13548. }
  13549.  
  13550. Local0 = CNF0 /* \_SB_.PCI0.I2C6.TCS1.CNF0 */
  13551. Local1 = ((Local0 >> 0x1C) & 0x0F)
  13552. Local0 = IMSK /* \_SB_.PCI0.I2C6.TCS1.IMSK */
  13553. Local0 |= (One << Local1)
  13554. IMSK = Local0
  13555. Release (MTEX)
  13556. }
  13557.  
  13558. Method (INTO, 1, Serialized)
  13559. {
  13560. Acquire (MTEX, 0x0064)
  13561. Local0 = CNF0 /* \_SB_.PCI0.I2C6.TCS1.CNF0 */
  13562. Local0 &= 0x0700
  13563. If ((Local0 == 0x0100))
  13564. {
  13565. IOST = Zero
  13566. }
  13567. Else
  13568. {
  13569. IOST = One
  13570. }
  13571.  
  13572. If ((CFB1 == Zero))
  13573. {
  13574. CFB1 = CNF1 /* \_SB_.PCI0.I2C6.TCS1.CNF1 */
  13575. }
  13576.  
  13577. CNF1 &= 0xFFFFFFF8
  13578. Local0 = CNF0 /* \_SB_.PCI0.I2C6.TCS1.CNF0 */
  13579. Local1 = ((Local0 >> 0x1C) & 0x0F)
  13580. Local0 = IMSK /* \_SB_.PCI0.I2C6.TCS1.IMSK */
  13581. Local0 &= ~(One << Local1)
  13582. IMSK = Local0
  13583. Local0 = ISTS /* \_SB_.PCI0.I2C6.TCS1.ISTS */
  13584. Local0 |= (One << Local1)
  13585. ISTS = Local0
  13586. Local0 = CNF0 /* \_SB_.PCI0.I2C6.TCS1.CNF0 */
  13587. Local0 &= 0xFFFFF8FF
  13588. Local0 |= 0x0100
  13589. If ((Arg0 == One))
  13590. {
  13591. Local0 |= 0x02
  13592. }
  13593. ElseIf ((Arg0 == Zero))
  13594. {
  13595. Local0 &= 0xFFFFFFFD
  13596. }
  13597. ElseIf ((IOST == One))
  13598. {
  13599. If ((Local0 & One))
  13600. {
  13601. Local0 |= 0x02
  13602. }
  13603. Else
  13604. {
  13605. Local0 &= 0xFFFFFFFD
  13606. }
  13607. }
  13608.  
  13609. CNF0 = Local0
  13610. Release (MTEX)
  13611. }
  13612.  
  13613. Method (INTS, 0, Serialized)
  13614. {
  13615. Acquire (MTEX, 0x0064)
  13616. Local0 = CNF0 /* \_SB_.PCI0.I2C6.TCS1.CNF0 */
  13617. Local0 &= 0x0700
  13618. If ((Local0 == 0x0100))
  13619. {
  13620. IOST = Zero
  13621. }
  13622. Else
  13623. {
  13624. IOST = One
  13625. }
  13626.  
  13627. Local0 = CNF0 /* \_SB_.PCI0.I2C6.TCS1.CNF0 */
  13628. If ((IOST == One))
  13629. {
  13630. If ((Local0 & One))
  13631. {
  13632. Return (One)
  13633. }
  13634. Else
  13635. {
  13636. Return (Zero)
  13637. }
  13638. }
  13639. ElseIf ((Local0 & 0x02))
  13640. {
  13641. Return (One)
  13642. }
  13643. Else
  13644. {
  13645. Return (Zero)
  13646. }
  13647.  
  13648. Release (MTEX)
  13649. }
  13650. }
  13651. }
  13652.  
  13653. Scope (I2C7)
  13654. {
  13655. }
  13656.  
  13657. Scope (\_SB)
  13658. {
  13659. PowerResource (USBC, 0x00, 0x0000)
  13660. {
  13661. Method (_STA, 0, NotSerialized) // _STA: Status
  13662. {
  13663. Return (0x0F)
  13664. }
  13665.  
  13666. Method (_ON, 0, NotSerialized) // _ON_: Power On
  13667. {
  13668. }
  13669.  
  13670. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  13671. {
  13672. }
  13673. }
  13674. }
  13675.  
  13676. Device (IISH)
  13677. {
  13678. Name (_HID, "808622D8") // _HID: Hardware ID
  13679. Name (_CID, "808622D8") // _CID: Compatible ID
  13680. Name (_DDN, "Intel(R) Integrated Sensor Hub - 808622D8") // _DDN: DOS Device Name
  13681. Name (RBUF, ResourceTemplate ()
  13682. {
  13683. Memory32Fixed (ReadWrite,
  13684. 0x00000000, // Address Base
  13685. 0x00001000, // Address Length
  13686. _Y1E)
  13687. Memory32Fixed (ReadWrite,
  13688. 0x00000000, // Address Base
  13689. 0x00001000, // Address Length
  13690. _Y1F)
  13691. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13692. {
  13693. 0x00000072,
  13694. }
  13695. })
  13696. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  13697. {
  13698. CreateDWordField (RBUF, \_SB.PCI0.IISH._Y1E._BAS, B0BA) // _BAS: Base Address
  13699. B0BA = ISH0 /* \ISH0 */
  13700. CreateDWordField (RBUF, \_SB.PCI0.IISH._Y1F._BAS, B1BA) // _BAS: Base Address
  13701. B1BA = ISH1 /* \ISH1 */
  13702. Return (RBUF) /* \_SB_.PCI0.IISH.RBUF */
  13703. }
  13704.  
  13705. Method (_STA, 0, NotSerialized) // _STA: Status
  13706. {
  13707. If (((ISH0 == Zero) || (ISHD == One)))
  13708. {
  13709. Return (Zero)
  13710. }
  13711.  
  13712. Return (0x0F)
  13713. }
  13714.  
  13715. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  13716. {
  13717. }
  13718.  
  13719. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  13720. {
  13721. PSAT |= 0x03
  13722. PSAT |= Zero
  13723. }
  13724.  
  13725. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  13726. {
  13727. PSAT &= 0xFFFFFFFC
  13728. PSAT |= Zero
  13729. }
  13730.  
  13731. OperationRegion (KEYS, SystemMemory, ISH1, 0x0100)
  13732. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  13733. {
  13734. Offset (0x84),
  13735. PSAT, 32
  13736. }
  13737.  
  13738. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  13739. {
  13740. If ((ISHP == Zero))
  13741. {
  13742. Return (Zero)
  13743. }
  13744. Else
  13745. {
  13746. Return (0x03)
  13747. }
  13748. }
  13749. }
  13750.  
  13751. Device (LPEA)
  13752. {
  13753. Name (_HID, "808622A8") // _HID: Hardware ID
  13754. Name (_CID, "808622A8") // _CID: Compatible ID
  13755. Name (_DDN, "Intel(R) Low Power Audio Controller - 808622A8") // _DDN: DOS Device Name
  13756. Name (_UID, One) // _UID: Unique ID
  13757. Name (RBUF, ResourceTemplate ()
  13758. {
  13759. Memory32Fixed (ReadWrite,
  13760. 0x00000000, // Address Base
  13761. 0x00200000, // Address Length
  13762. _Y20)
  13763. Memory32Fixed (ReadWrite,
  13764. 0x00000000, // Address Base
  13765. 0x00001000, // Address Length
  13766. _Y21)
  13767. Memory32Fixed (ReadWrite,
  13768. 0x00000000, // Address Base
  13769. 0x00200000, // Address Length
  13770. _Y22)
  13771. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13772. {
  13773. 0x00000018,
  13774. }
  13775. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13776. {
  13777. 0x00000019,
  13778. }
  13779. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13780. {
  13781. 0x0000001A,
  13782. }
  13783. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13784. {
  13785. 0x0000001B,
  13786. }
  13787. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13788. {
  13789. 0x0000001C,
  13790. }
  13791. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13792. {
  13793. 0x0000001D,
  13794. }
  13795. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
  13796. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  13797. )
  13798. { // Pin list
  13799. 0x004F
  13800. }
  13801. })
  13802. Name (WBUF, ResourceTemplate ()
  13803. {
  13804. Memory32Fixed (ReadWrite,
  13805. 0x00000000, // Address Base
  13806. 0x00200000, // Address Length
  13807. _Y23)
  13808. Memory32Fixed (ReadWrite,
  13809. 0x00000000, // Address Base
  13810. 0x00001000, // Address Length
  13811. _Y24)
  13812. Memory32Fixed (ReadWrite,
  13813. 0x00000000, // Address Base
  13814. 0x00200000, // Address Length
  13815. _Y25)
  13816. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13817. {
  13818. 0x00000018,
  13819. }
  13820. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13821. {
  13822. 0x00000019,
  13823. }
  13824. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13825. {
  13826. 0x0000001A,
  13827. }
  13828. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13829. {
  13830. 0x0000001B,
  13831. }
  13832. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13833. {
  13834. 0x0000001C,
  13835. }
  13836. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13837. {
  13838. 0x0000001D,
  13839. }
  13840. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  13841. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  13842. )
  13843. { // Pin list
  13844. 0x005B
  13845. }
  13846. })
  13847. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  13848. {
  13849. If (((BDID != 0x09) && (BDID != 0x0A)))
  13850. {
  13851. CreateDWordField (RBUF, \_SB.PCI0.LPEA._Y20._BAS, B0BA) // _BAS: Base Address
  13852. B0BA = LPE0 /* \LPE0 */
  13853. CreateDWordField (RBUF, \_SB.PCI0.LPEA._Y21._BAS, B1BA) // _BAS: Base Address
  13854. B1BA = LPE1 /* \LPE1 */
  13855. CreateDWordField (RBUF, \_SB.PCI0.LPEA._Y22._BAS, B2BA) // _BAS: Base Address
  13856. B2BA = LPE2 /* \LPE2 */
  13857. Return (RBUF) /* \_SB_.PCI0.LPEA.RBUF */
  13858. }
  13859.  
  13860. CreateDWordField (WBUF, \_SB.PCI0.LPEA._Y23._BAS, B3BA) // _BAS: Base Address
  13861. B3BA = LPE0 /* \LPE0 */
  13862. CreateDWordField (WBUF, \_SB.PCI0.LPEA._Y24._BAS, B4BA) // _BAS: Base Address
  13863. B4BA = LPE1 /* \LPE1 */
  13864. CreateDWordField (WBUF, \_SB.PCI0.LPEA._Y25._BAS, B5BA) // _BAS: Base Address
  13865. B5BA = LPE2 /* \LPE2 */
  13866. Return (WBUF) /* \_SB_.PCI0.LPEA.WBUF */
  13867. }
  13868.  
  13869. Method (_STA, 0, NotSerialized) // _STA: Status
  13870. {
  13871. If (((LPE0 != Zero) && (LPED == Zero)))
  13872. {
  13873. Return (0x0F)
  13874. }
  13875.  
  13876. Return (Zero)
  13877. }
  13878.  
  13879. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  13880. {
  13881. }
  13882.  
  13883. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  13884. {
  13885. PSAT |= 0x03
  13886. PSAT |= Zero
  13887. }
  13888.  
  13889. Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
  13890. {
  13891. If ((LPEP == Zero))
  13892. {
  13893. Return (Zero)
  13894. }
  13895. Else
  13896. {
  13897. Return (0x03)
  13898. }
  13899. }
  13900.  
  13901. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  13902. {
  13903. PSAT &= 0xFFFFFFFC
  13904. PSAT |= Zero
  13905. Sleep (0x0A)
  13906. }
  13907.  
  13908. OperationRegion (KEYS, SystemMemory, LPE1, 0x0100)
  13909. Field (KEYS, DWordAcc, NoLock, WriteAsZeros)
  13910. {
  13911. Offset (0x84),
  13912. PSAT, 32
  13913. }
  13914.  
  13915. Device (ADMA)
  13916. {
  13917. Name (_ADR, Zero) // _ADR: Address
  13918. Name (_HID, "ADMA22A8") // _HID: Hardware ID
  13919. Name (_CID, "ADMA22A8") // _CID: Compatible ID
  13920. Name (_DDN, "Intel(R) Audio DMA0 - DMA0F28") // _DDN: DOS Device Name
  13921. Name (_UID, One) // _UID: Unique ID
  13922. Name (RBUF, ResourceTemplate ()
  13923. {
  13924. Memory32Fixed (ReadWrite,
  13925. 0x00000000, // Address Base
  13926. 0x00200000, // Address Length
  13927. _Y26)
  13928. Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
  13929. {
  13930. 0x00000018,
  13931. }
  13932. })
  13933. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  13934. {
  13935. CreateDWordField (RBUF, \_SB.PCI0.LPEA.ADMA._Y26._BAS, B3BA) // _BAS: Base Address
  13936. B3BA = LPE0 /* \LPE0 */
  13937. Return (RBUF) /* \_SB_.PCI0.LPEA.ADMA.RBUF */
  13938. }
  13939.  
  13940. Method (_STA, 0, NotSerialized) // _STA: Status
  13941. {
  13942. If ((OSID != One))
  13943. {
  13944. Return (0x0F)
  13945. }
  13946.  
  13947. Return (Zero)
  13948. }
  13949. }
  13950. }
  13951.  
  13952. Scope (\_SB)
  13953. {
  13954. Device (VIBR)
  13955. {
  13956. Name (_ADR, Zero) // _ADR: Address
  13957. Name (_HID, "VIBR22A8") // _HID: Hardware ID
  13958. Name (_CID, "VIBR22A8") // _CID: Compatible ID
  13959. Name (_DDN, "Intel(R) Vibra Driver - VIB8601") // _DDN: DOS Device Name
  13960. Name (_UID, One) // _UID: Unique ID
  13961. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  13962. {
  13963. Name (RBUF, ResourceTemplate ()
  13964. {
  13965. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  13966. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  13967. )
  13968. { // Pin list
  13969. 0x0004
  13970. }
  13971. })
  13972. Name (SBUF, ResourceTemplate ()
  13973. {
  13974. GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
  13975. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  13976. )
  13977. { // Pin list
  13978. 0x0001
  13979. }
  13980. })
  13981. If ((BDID == One))
  13982. {
  13983. Return (SBUF) /* \_SB_.VIBR._CRS.SBUF */
  13984. }
  13985. Else
  13986. {
  13987. Return (RBUF) /* \_SB_.VIBR._CRS.RBUF */
  13988. }
  13989. }
  13990.  
  13991. Method (_STA, 0, NotSerialized) // _STA: Status
  13992. {
  13993. If (((OSID != One) && ((BDID != 0x08) &&
  13994. (BDID != 0x0A))))
  13995. {
  13996. Return (0x0F)
  13997. }
  13998.  
  13999. Return (Zero)
  14000. }
  14001. }
  14002. }
  14003.  
  14004. Device (AMCR)
  14005. {
  14006. Name (_ADR, Zero) // _ADR: Address
  14007. Name (_HID, "AMCR22A8") // _HID: Hardware ID
  14008. Name (_CID, "AMCR22A8") // _CID: Compatible ID
  14009. Name (_DDN, "Intel(R) Audio Machine Driver - AMCR0F28") // _DDN: DOS Device Name
  14010. Name (_UID, One) // _UID: Unique ID
  14011. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  14012. {
  14013. Name (RBUF, ResourceTemplate ()
  14014. {
  14015. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  14016. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  14017. )
  14018. { // Pin list
  14019. 0x0004
  14020. }
  14021. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  14022. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  14023. )
  14024. { // Pin list
  14025. 0x001B
  14026. }
  14027. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  14028. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  14029. )
  14030. { // Pin list
  14031. 0x001C
  14032. }
  14033. })
  14034. Return (RBUF) /* \_SB_.PCI0.AMCR._CRS.RBUF */
  14035. }
  14036.  
  14037. Method (_STA, 0, NotSerialized) // _STA: Status
  14038. {
  14039. If ((BDID == One))
  14040. {
  14041. Return (Zero)
  14042. }
  14043.  
  14044. If ((OSID != One))
  14045. {
  14046. Return (0x0F)
  14047. }
  14048.  
  14049. Return (Zero)
  14050. }
  14051. }
  14052.  
  14053. Device (TIMC)
  14054. {
  14055. Name (_ADR, Zero) // _ADR: Address
  14056. Name (_HID, "TIMC22A8") // _HID: Hardware ID
  14057. Name (_CID, "TIMC22A8") // _CID: Compatible ID
  14058. Name (_DDN, "Intel(R) Audio Machine Driver - TIMC22A8") // _DDN: DOS Device Name
  14059. Name (_UID, One) // _UID: Unique ID
  14060. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  14061. {
  14062. Name (RBUF, ResourceTemplate ()
  14063. {
  14064. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  14065. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  14066. )
  14067. { // Pin list
  14068. 0x0004
  14069. }
  14070. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  14071. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  14072. )
  14073. { // Pin list
  14074. 0x001B
  14075. }
  14076. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  14077. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  14078. )
  14079. { // Pin list
  14080. 0x001C
  14081. }
  14082. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14083. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14084. )
  14085. { // Pin list
  14086. 0x0000
  14087. }
  14088. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  14089. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  14090. )
  14091. { // Pin list
  14092. 0x0041
  14093. }
  14094. })
  14095. Return (RBUF) /* \_SB_.PCI0.TIMC._CRS.RBUF */
  14096. }
  14097.  
  14098. Method (_STA, 0, NotSerialized) // _STA: Status
  14099. {
  14100. If (((OSID != One) && (BDID == One)))
  14101. {
  14102. Return (0x0F)
  14103. }
  14104.  
  14105. Return (Zero)
  14106. }
  14107. }
  14108.  
  14109. Device (HAD0)
  14110. {
  14111. Name (_ADR, Zero) // _ADR: Address
  14112. Name (_HID, "HAD022A8") // _HID: Hardware ID
  14113. Name (_CID, "HAD022A8") // _CID: Compatible ID
  14114. Name (_DDN, "Intel(R) HDMI Audio Driver - HAD") // _DDN: DOS Device Name
  14115. Name (_UID, One) // _UID: Unique ID
  14116. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  14117. {
  14118. Name (RBUF, ResourceTemplate ()
  14119. {
  14120. Memory32Fixed (ReadWrite,
  14121. 0x00065800, // Address Base
  14122. 0x00000140, // Address Length
  14123. )
  14124. })
  14125. Return (RBUF) /* \_SB_.PCI0.HAD0._CRS.RBUF */
  14126. }
  14127.  
  14128. Method (_STA, 0, NotSerialized) // _STA: Status
  14129. {
  14130. If ((OSID != One))
  14131. {
  14132. Return (0x0F)
  14133. }
  14134.  
  14135. Return (Zero)
  14136. }
  14137. }
  14138.  
  14139. Device (SPRC)
  14140. {
  14141. Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
  14142. Name (_UID, 0x03) // _UID: Unique ID
  14143. Name (RBUF, ResourceTemplate ()
  14144. {
  14145. Memory32Fixed (ReadWrite,
  14146. 0x00000000, // Address Base
  14147. 0x00000000, // Address Length
  14148. _Y27)
  14149. Memory32Fixed (ReadWrite,
  14150. 0x00000000, // Address Base
  14151. 0x00000000, // Address Length
  14152. _Y28)
  14153. Memory32Fixed (ReadWrite,
  14154. 0x00000000, // Address Base
  14155. 0x00000000, // Address Length
  14156. _Y29)
  14157. Memory32Fixed (ReadWrite,
  14158. 0x00000000, // Address Base
  14159. 0x00000000, // Address Length
  14160. _Y2A)
  14161. Memory32Fixed (ReadWrite,
  14162. 0x00000000, // Address Base
  14163. 0x00000000, // Address Length
  14164. _Y2B)
  14165. Memory32Fixed (ReadWrite,
  14166. 0x00000000, // Address Base
  14167. 0x00000000, // Address Length
  14168. _Y2C)
  14169. Memory32Fixed (ReadWrite,
  14170. 0x00000000, // Address Base
  14171. 0x00000000, // Address Length
  14172. _Y2D)
  14173. Memory32Fixed (ReadWrite,
  14174. 0x00000000, // Address Base
  14175. 0x00000000, // Address Length
  14176. _Y2E)
  14177. Memory32Fixed (ReadWrite,
  14178. 0x00000000, // Address Base
  14179. 0x00000000, // Address Length
  14180. _Y2F)
  14181. Memory32Fixed (ReadWrite,
  14182. 0x00000000, // Address Base
  14183. 0x00000000, // Address Length
  14184. _Y30)
  14185. Memory32Fixed (ReadWrite,
  14186. 0x00000000, // Address Base
  14187. 0x00000000, // Address Length
  14188. _Y31)
  14189. Memory32Fixed (ReadWrite,
  14190. 0x00000000, // Address Base
  14191. 0x00000000, // Address Length
  14192. _Y32)
  14193. Memory32Fixed (ReadWrite,
  14194. 0x00000000, // Address Base
  14195. 0x00000000, // Address Length
  14196. _Y33)
  14197. Memory32Fixed (ReadWrite,
  14198. 0x00000000, // Address Base
  14199. 0x00000000, // Address Length
  14200. _Y34)
  14201. Memory32Fixed (ReadWrite,
  14202. 0x00000000, // Address Base
  14203. 0x00000000, // Address Length
  14204. _Y35)
  14205. Memory32Fixed (ReadWrite,
  14206. 0x00000000, // Address Base
  14207. 0x00000000, // Address Length
  14208. _Y36)
  14209. Memory32Fixed (ReadWrite,
  14210. 0x00000000, // Address Base
  14211. 0x00000000, // Address Length
  14212. _Y37)
  14213. Memory32Fixed (ReadWrite,
  14214. 0x00000000, // Address Base
  14215. 0x00000000, // Address Length
  14216. _Y38)
  14217. Memory32Fixed (ReadWrite,
  14218. 0x00000000, // Address Base
  14219. 0x00000000, // Address Length
  14220. _Y39)
  14221. })
  14222. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  14223. {
  14224. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y27._BAS, BR01) // _BAS: Base Address
  14225. BR01 = EM1A /* \EM1A */
  14226. If (((BR01 != Zero) && (BR01 != 0xFFFFF000)))
  14227. {
  14228. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y27._LEN, LN01) // _LEN: Length
  14229. LN01 = EM1L /* \EM1L */
  14230. }
  14231.  
  14232. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y28._BAS, BR02) // _BAS: Base Address
  14233. BR02 = SI1A /* \SI1A */
  14234. If (((BR02 != Zero) && (BR02 != 0xFFFFF000)))
  14235. {
  14236. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y28._LEN, LN02) // _LEN: Length
  14237. LN02 = SI1L /* \SI1L */
  14238. }
  14239.  
  14240. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y29._BAS, BR03) // _BAS: Base Address
  14241. BR03 = SD1A /* \SD1A */
  14242. If (((BR03 != Zero) && (BR03 != 0xFFFFF000)))
  14243. {
  14244. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y29._LEN, LN03) // _LEN: Length
  14245. LN03 = SD1L /* \SD1L */
  14246. }
  14247.  
  14248. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2A._BAS, BR04) // _BAS: Base Address
  14249. BR04 = D11A /* \D11A */
  14250. If (((BR04 != Zero) && (BR04 != 0xFFFFF000)))
  14251. {
  14252. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2A._LEN, LN04) // _LEN: Length
  14253. LN04 = D11L /* \D11L */
  14254. }
  14255.  
  14256. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2B._BAS, BR05) // _BAS: Base Address
  14257. BR05 = P11A /* \P11A */
  14258. If (((BR05 != Zero) && (BR05 != 0xFFFFF000)))
  14259. {
  14260. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2B._LEN, LN05) // _LEN: Length
  14261. LN05 = P11L /* \P11L */
  14262. }
  14263.  
  14264. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2C._BAS, BR06) // _BAS: Base Address
  14265. BR06 = P21A /* \P21A */
  14266. If (((BR06 != Zero) && (BR06 != 0xFFFFF000)))
  14267. {
  14268. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2C._LEN, LN06) // _LEN: Length
  14269. LN06 = P21L /* \P21L */
  14270. }
  14271.  
  14272. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2D._BAS, BR07) // _BAS: Base Address
  14273. BR07 = U11A /* \U11A */
  14274. If (((BR07 != Zero) && (BR07 != 0xFFFFF000)))
  14275. {
  14276. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2D._LEN, LN07) // _LEN: Length
  14277. LN07 = U11L /* \U11L */
  14278. }
  14279.  
  14280. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2E._BAS, BR08) // _BAS: Base Address
  14281. BR08 = U21A /* \U21A */
  14282. If (((BR08 != Zero) && (BR08 != 0xFFFFF000)))
  14283. {
  14284. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2E._LEN, LN08) // _LEN: Length
  14285. LN08 = U21L /* \U21L */
  14286. }
  14287.  
  14288. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2F._BAS, BR09) // _BAS: Base Address
  14289. BR09 = SP1A /* \SP1A */
  14290. If (((BR09 != Zero) && (BR09 != 0xFFFFF000)))
  14291. {
  14292. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y2F._LEN, LN09) // _LEN: Length
  14293. LN09 = SP1L /* \SP1L */
  14294. }
  14295.  
  14296. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y30._BAS, BR10) // _BAS: Base Address
  14297. BR10 = S21A /* \S21A */
  14298. If (((BR10 != Zero) && (BR10 != 0xFFFFF000)))
  14299. {
  14300. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y30._LEN, LN10) // _LEN: Length
  14301. LN10 = S21L /* \S21L */
  14302. }
  14303.  
  14304. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y31._BAS, BR11) // _BAS: Base Address
  14305. BR11 = S31A /* \S31A */
  14306. If (((BR11 != Zero) && (BR11 != 0xFFFFF000)))
  14307. {
  14308. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y31._LEN, LN11) // _LEN: Length
  14309. LN11 = S31L /* \S31L */
  14310. }
  14311.  
  14312. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y32._BAS, BR12) // _BAS: Base Address
  14313. BR12 = D21A /* \D21A */
  14314. If (((BR12 != Zero) && (BR12 != 0xFFFFF000)))
  14315. {
  14316. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y32._LEN, LN12) // _LEN: Length
  14317. LN12 = D21L /* \D21L */
  14318. }
  14319.  
  14320. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y33._BAS, BR13) // _BAS: Base Address
  14321. BR13 = I11A /* \I11A */
  14322. If (((BR13 != Zero) && (BR13 != 0xFFFFF000)))
  14323. {
  14324. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y33._LEN, LN13) // _LEN: Length
  14325. LN13 = I11L /* \I11L */
  14326. }
  14327.  
  14328. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y34._BAS, BR14) // _BAS: Base Address
  14329. BR14 = I21A /* \I21A */
  14330. If (((BR14 != Zero) && (BR14 != 0xFFFFF000)))
  14331. {
  14332. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y34._LEN, LN14) // _LEN: Length
  14333. LN14 = I21L /* \I21L */
  14334. }
  14335.  
  14336. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y35._BAS, BR15) // _BAS: Base Address
  14337. BR15 = I31A /* \I31A */
  14338. If (((BR15 != Zero) && (BR15 != 0xFFFFF000)))
  14339. {
  14340. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y35._LEN, LN15) // _LEN: Length
  14341. LN15 = I31L /* \I31L */
  14342. }
  14343.  
  14344. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y36._BAS, BR16) // _BAS: Base Address
  14345. BR16 = I41A /* \I41A */
  14346. If (((BR16 != Zero) && (BR16 != 0xFFFFF000)))
  14347. {
  14348. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y36._LEN, LN16) // _LEN: Length
  14349. LN16 = I41L /* \I41L */
  14350. }
  14351.  
  14352. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y37._BAS, BR17) // _BAS: Base Address
  14353. BR17 = I51A /* \I51A */
  14354. If (((BR17 != Zero) && (BR17 != 0xFFFFF000)))
  14355. {
  14356. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y37._LEN, LN17) // _LEN: Length
  14357. LN17 = I51L /* \I51L */
  14358. }
  14359.  
  14360. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y38._BAS, BR18) // _BAS: Base Address
  14361. BR18 = I61A /* \I61A */
  14362. If (((BR18 != Zero) && (BR18 != 0xFFFFF000)))
  14363. {
  14364. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y38._LEN, LN18) // _LEN: Length
  14365. LN18 = I61L /* \I61L */
  14366. }
  14367.  
  14368. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y39._BAS, BR19) // _BAS: Base Address
  14369. BR19 = I71A /* \I71A */
  14370. If (((BR19 != Zero) && (BR19 != 0xFFFFF000)))
  14371. {
  14372. CreateDWordField (RBUF, \_SB.PCI0.SPRC._Y39._LEN, LN19) // _LEN: Length
  14373. LN19 = I71L /* \I71L */
  14374. }
  14375.  
  14376. Return (RBUF) /* \_SB_.PCI0.SPRC.RBUF */
  14377. }
  14378. }
  14379.  
  14380. Scope (SEC0)
  14381. {
  14382. Name (AHID, "TXE8086")
  14383. Name (_DEP, Package (0x01) // _DEP: Dependencies
  14384. {
  14385. PEPD
  14386. })
  14387. Name (_S0W, 0x03) // _S0W: S0 Device Wake State
  14388. OperationRegion (PMEB, PCI_Config, 0x84, 0x04)
  14389. Field (PMEB, WordAcc, NoLock, Preserve)
  14390. {
  14391. Offset (0x01),
  14392. PMEE, 1,
  14393. , 6,
  14394. PMES, 1
  14395. }
  14396.  
  14397. Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
  14398. {
  14399. }
  14400.  
  14401. Name (RBUF, ResourceTemplate ()
  14402. {
  14403. Memory32Fixed (ReadWrite,
  14404. 0x00000000, // Address Base
  14405. 0x00000000, // Address Length
  14406. _Y3A)
  14407. })
  14408. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  14409. {
  14410. If ((((OSYS == 0x07DF) || (OSID == 0x04)) && (PAVL !=
  14411. Zero)))
  14412. {
  14413. CreateDWordField (RBUF, \_SB.PCI0.SEC0._Y3A._BAS, B0BA) // _BAS: Base Address
  14414. CreateDWordField (RBUF, \_SB.PCI0.SEC0._Y3A._LEN, B0LN) // _LEN: Length
  14415. B0BA = PAVB /* \PAVB */
  14416. B0LN = PAVL /* \PAVL */
  14417. Return (RBUF) /* \_SB_.PCI0.SEC0.RBUF */
  14418. }
  14419.  
  14420. Return (ResourceTemplate ()
  14421. {
  14422. })
  14423. }
  14424.  
  14425. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  14426. {
  14427. }
  14428. }
  14429.  
  14430. Device (LNPW)
  14431. {
  14432. Name (_ADR, One) // _ADR: Address
  14433. Name (_DEP, Package (0x02) // _DEP: Dependencies
  14434. {
  14435. GPO2,
  14436. GPO3
  14437. })
  14438. Name (_HID, "INT8260") // _HID: Hardware ID
  14439. Name (_CID, "INT8260") // _CID: Compatible ID
  14440. Method (_STA, 0, NotSerialized) // _STA: Status
  14441. {
  14442. If ((OSID == 0x04))
  14443. {
  14444. If (((BTHM == 0x03) || ((BDID == 0x09) || (BDID == 0x0A))))
  14445. {
  14446. Return (0x0F)
  14447. }
  14448. }
  14449.  
  14450. Return (Zero)
  14451. }
  14452.  
  14453. Method (_RMV, 0, NotSerialized) // _RMV: Removal Status
  14454. {
  14455. Return (Zero)
  14456. }
  14457.  
  14458. Name (_S4W, 0x02) // _S4W: S4 Device Wake State
  14459. Name (_S0W, 0x02) // _S0W: S0 Device Wake State
  14460. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  14461. {
  14462. Name (RBUF, ResourceTemplate ()
  14463. {
  14464. Interrupt (ResourceConsumer, Edge, ActiveHigh, ExclusiveAndWake, ,, )
  14465. {
  14466. 0x00000044,
  14467. }
  14468. GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  14469. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  14470. )
  14471. { // Pin list
  14472. 0x000A
  14473. }
  14474. })
  14475. Return (RBUF) /* \_SB_.PCI0.LNPW._CRS.RBUF */
  14476. }
  14477.  
  14478. Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
  14479. {
  14480. If ((^^^GPO3.AVBL == One))
  14481. {
  14482. ^^^GPO3.WFD3 = Zero
  14483. }
  14484. }
  14485.  
  14486. Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
  14487. {
  14488. If ((^^^GPO3.AVBL == One))
  14489. {
  14490. ^^^GPO3.WFD3 = One
  14491. }
  14492. }
  14493. }
  14494. }
  14495.  
  14496. Scope (_SB.PCI0)
  14497. {
  14498. Scope (ISP3)
  14499. {
  14500. Method (_PR3, 0, NotSerialized) // _PR3: Power Resources for D3hot
  14501. {
  14502. Return (Package (0x01)
  14503. {
  14504. ID3C
  14505. })
  14506. }
  14507.  
  14508. PowerResource (ID3C, 0x00, 0x0000)
  14509. {
  14510. Method (_STA, 0, NotSerialized) // _STA: Status
  14511. {
  14512. If ((ISPD == 0x02))
  14513. {
  14514. Return (0x0F)
  14515. }
  14516. Else
  14517. {
  14518. Return (Zero)
  14519. }
  14520. }
  14521.  
  14522. Method (_ON, 0, NotSerialized) // _ON_: Power On
  14523. {
  14524. }
  14525.  
  14526. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  14527. {
  14528. }
  14529. }
  14530. }
  14531.  
  14532. Scope (GFX0)
  14533. {
  14534. Name (PWMB, Zero)
  14535. Name (CPR0, Package (0x01)
  14536. {
  14537. P33X
  14538. })
  14539. Name (UPR0, Package (0x01)
  14540. {
  14541. P33W
  14542. })
  14543. Name (VPR0, Package (0x02)
  14544. {
  14545. P18W,
  14546. P33W
  14547. })
  14548. Name (_PR0, Package (0x01) // _PR0: Power Resources for D0
  14549. {
  14550. P06X
  14551. })
  14552. Name (TPR0, Package (0x02)
  14553. {
  14554. P12T,
  14555. P12A
  14556. })
  14557. Name (CDEP, Package (0x03)
  14558. {
  14559. PEPD,
  14560. I2C7,
  14561. ^I2C7.PMIC
  14562. })
  14563. Name (_DEP, Package (0x03) // _DEP: Dependencies
  14564. {
  14565. PEPD,
  14566. I2C7,
  14567. ^I2C7.PMI1
  14568. })
  14569. Name (TDEP, Package (0x03)
  14570. {
  14571. PEPD,
  14572. I2C7,
  14573. ^I2C7.PMI2
  14574. })
  14575. Name (WDEP, Package (0x03)
  14576. {
  14577. PEPD,
  14578. I2C7,
  14579. ^I2C7.PMI5
  14580. })
  14581. Name (PDEP, Package (0x01)
  14582. {
  14583. PEPD
  14584. })
  14585. Name (SBUF, ResourceTemplate ()
  14586. {
  14587. I2cSerialBus (0x002C, ControllerInitiated, 0x00061A80,
  14588. AddressingMode7Bit, "\\_SB.PCI0.I2C2",
  14589. 0x00, ResourceConsumer, ,
  14590. )
  14591. })
  14592. Name (RBUF, ResourceTemplate ()
  14593. {
  14594. I2cSerialBus (0x002C, ControllerInitiated, 0x00061A80,
  14595. AddressingMode7Bit, "\\_SB.PCI0.I2C6",
  14596. 0x00, ResourceConsumer, ,
  14597. )
  14598. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14599. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14600. )
  14601. { // Pin list
  14602. 0x0048
  14603. }
  14604. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14605. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14606. )
  14607. { // Pin list
  14608. 0x003C
  14609. }
  14610. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14611. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14612. )
  14613. { // Pin list
  14614. 0x0041
  14615. }
  14616. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14617. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14618. )
  14619. { // Pin list
  14620. 0x0045
  14621. }
  14622. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14623. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14624. )
  14625. { // Pin list
  14626. 0x0046
  14627. }
  14628. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14629. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14630. )
  14631. { // Pin list
  14632. 0x003F
  14633. }
  14634. })
  14635. Name (ABUF, ResourceTemplate ()
  14636. {
  14637. I2cSerialBus (0x002C, ControllerInitiated, 0x00061A80,
  14638. AddressingMode7Bit, "\\_SB.PCI0.I2C6",
  14639. 0x00, ResourceConsumer, ,
  14640. )
  14641. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14642. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14643. )
  14644. { // Pin list
  14645. 0x0048
  14646. }
  14647. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14648. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14649. )
  14650. { // Pin list
  14651. 0x003C
  14652. }
  14653. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14654. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14655. )
  14656. { // Pin list
  14657. 0x0041
  14658. }
  14659. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14660. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14661. )
  14662. { // Pin list
  14663. 0x0045
  14664. }
  14665. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14666. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14667. )
  14668. { // Pin list
  14669. 0x0046
  14670. }
  14671. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  14672. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  14673. )
  14674. { // Pin list
  14675. 0x003F
  14676. }
  14677. })
  14678. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  14679. {
  14680. If ((OSYS != 0x07DF))
  14681. {
  14682. Return (ABUF) /* \_SB_.PCI0.GFX0.ABUF */
  14683. }
  14684.  
  14685. If (((BDID == 0x08) || (BDID == 0x0A)))
  14686. {
  14687. Return (SBUF) /* \_SB_.PCI0.GFX0.SBUF */
  14688. }
  14689. Else
  14690. {
  14691. Return (RBUF) /* \_SB_.PCI0.GFX0.RBUF */
  14692. }
  14693. }
  14694.  
  14695. Name (_S0W, 0x03) // _S0W: S0 Device Wake State
  14696. OperationRegion (LPS2, SystemMemory, P11A, 0x0100)
  14697. Field (LPS2, DWordAcc, NoLock, WriteAsZeros)
  14698. {
  14699. Offset (0x10),
  14700. BR0P, 32,
  14701. Offset (0x84),
  14702. PSAT, 32
  14703. }
  14704.  
  14705. OperationRegion (POP1, SystemMemory, BR0P, 0x0810)
  14706. Field (POP1, DWordAcc, NoLock, Preserve)
  14707. {
  14708. PWMC, 32,
  14709. Offset (0x804),
  14710. RSTA, 1,
  14711. RSTF, 1,
  14712. Offset (0x808)
  14713. }
  14714.  
  14715. OperationRegion (PMCS, PCI_Config, 0xD4, 0x08)
  14716. Field (PMCS, DWordAcc, NoLock, Preserve)
  14717. {
  14718. PSPS, 32
  14719. }
  14720.  
  14721. Method (_PS0, 0, Serialized) // _PS0: Power State 0
  14722. {
  14723. Local0 = ^^^MBID.READ (0x04, 0xD5, 0x0F)
  14724. Local0 &= 0xFFFFFFFE
  14725. ^^^MBID.WRIT (0x04, 0xD5, 0x0F, Local0)
  14726. Local0 = ^^^MBID.READ (0x04, 0xD5, 0x0F)
  14727. If ((OSID != 0x04))
  14728. {
  14729. If (((L11D != One) && (SOCS >= 0x10)))
  14730. {
  14731. Local0 = PSAT /* \_SB_.PCI0.GFX0.PSAT */
  14732. If (((Local0 & 0x03) == 0x03))
  14733. {
  14734. PSAT &= 0xFFFFFFFC
  14735. Local1 = PSAT /* \_SB_.PCI0.GFX0.PSAT */
  14736. RSTA = Zero
  14737. RSTF = Zero
  14738. RSTA = One
  14739. RSTF = One
  14740. PWMB |= 0xC0000000
  14741. PWMC = PWMB /* \_SB_.PCI0.GFX0.PWMB */
  14742. }
  14743. }
  14744. }
  14745.  
  14746. If ((^^^GPO1.AVBL == One))
  14747. {
  14748. ^^^GPO1.GN60 = One
  14749. }
  14750. }
  14751.  
  14752. Method (_PS3, 0, Serialized) // _PS3: Power State 3
  14753. {
  14754. Local0 = ^^^MBID.READ (0x04, 0xD5, 0x0F)
  14755. Local0 |= One
  14756. ^^^MBID.WRIT (0x04, 0xD5, 0x0F, Local0)
  14757. Local0 = ^^^MBID.READ (0x04, 0xD5, 0x0F)
  14758. Notify (\_PR.CPU0, 0xC0) // Hardware-Specific
  14759. Notify (\_PR.CPU1, 0xC0) // Hardware-Specific
  14760. Notify (\_PR.CPU2, 0xC0) // Hardware-Specific
  14761. Notify (\_PR.CPU3, 0xC0) // Hardware-Specific
  14762. If ((OSID != 0x04))
  14763. {
  14764. If (((L11D != One) && (SOCS >= 0x10)))
  14765. {
  14766. Local2 = PSPS /* \_SB_.PCI0.GFX0.PSPS */
  14767. Local2 &= 0x03
  14768. If ((Local2 == 0x03))
  14769. {
  14770. PWMB = PWMC /* \_SB_.PCI0.GFX0.PWMC */
  14771. PWMB &= 0x3FFFFFFF
  14772. PWMC = PWMB /* \_SB_.PCI0.GFX0.PWMB */
  14773. PSAT |= 0x03
  14774. Local0 = PSAT /* \_SB_.PCI0.GFX0.PSAT */
  14775. }
  14776. }
  14777. }
  14778.  
  14779. If ((^^^GPO1.AVBL == One))
  14780. {
  14781. ^^^GPO1.GN60 = Zero
  14782. }
  14783. }
  14784.  
  14785. Method (_DOS, 1, NotSerialized) // _DOS: Disable Output Switching
  14786. {
  14787. DSEN = (Arg0 & 0x07)
  14788. }
  14789.  
  14790. Method (_DOD, 0, NotSerialized) // _DOD: Display Output Devices
  14791. {
  14792. NDID = Zero
  14793. If ((DIDL != Zero))
  14794. {
  14795. DID1 = SDDL (DIDL)
  14796. }
  14797.  
  14798. If ((DDL2 != Zero))
  14799. {
  14800. DID2 = SDDL (DDL2)
  14801. }
  14802.  
  14803. If ((DDL3 != Zero))
  14804. {
  14805. DID3 = SDDL (DDL3)
  14806. }
  14807.  
  14808. If ((DDL4 != Zero))
  14809. {
  14810. DID4 = SDDL (DDL4)
  14811. }
  14812.  
  14813. If ((DDL5 != Zero))
  14814. {
  14815. DID5 = SDDL (DDL5)
  14816. }
  14817.  
  14818. If ((NDID == One))
  14819. {
  14820. Name (TMP1, Package (0x02)
  14821. {
  14822. 0xFFFFFFFF,
  14823. 0xFFFFFFFF
  14824. })
  14825. TMP1 [Zero] = (0x00010000 | DID1)
  14826. TMP1 [One] = 0x000222B8
  14827. Return (TMP1) /* \_SB_.PCI0.GFX0._DOD.TMP1 */
  14828. }
  14829.  
  14830. If ((NDID == 0x02))
  14831. {
  14832. Name (TMP2, Package (0x03)
  14833. {
  14834. 0xFFFFFFFF,
  14835. 0xFFFFFFFF,
  14836. 0xFFFFFFFF
  14837. })
  14838. TMP2 [Zero] = (0x00010000 | DID1)
  14839. TMP2 [One] = (0x00010000 | DID2)
  14840. TMP2 [0x02] = 0x000222B8
  14841. Return (TMP2) /* \_SB_.PCI0.GFX0._DOD.TMP2 */
  14842. }
  14843.  
  14844. If ((NDID == 0x03))
  14845. {
  14846. Name (TMP3, Package (0x04)
  14847. {
  14848. 0xFFFFFFFF,
  14849. 0xFFFFFFFF,
  14850. 0xFFFFFFFF,
  14851. 0xFFFFFFFF
  14852. })
  14853. TMP3 [Zero] = (0x00010000 | DID1)
  14854. TMP3 [One] = (0x00010000 | DID2)
  14855. TMP3 [0x02] = (0x00010000 | DID3)
  14856. TMP3 [0x03] = 0x000222B8
  14857. Return (TMP3) /* \_SB_.PCI0.GFX0._DOD.TMP3 */
  14858. }
  14859.  
  14860. If ((NDID == 0x04))
  14861. {
  14862. Name (TMP4, Package (0x05)
  14863. {
  14864. 0xFFFFFFFF,
  14865. 0xFFFFFFFF,
  14866. 0xFFFFFFFF,
  14867. 0xFFFFFFFF,
  14868. 0xFFFFFFFF
  14869. })
  14870. TMP4 [Zero] = (0x00010000 | DID1)
  14871. TMP4 [One] = (0x00010000 | DID2)
  14872. TMP4 [0x02] = (0x00010000 | DID3)
  14873. TMP4 [0x03] = (0x00010000 | DID4)
  14874. TMP4 [0x04] = 0x000222B8
  14875. Return (TMP4) /* \_SB_.PCI0.GFX0._DOD.TMP4 */
  14876. }
  14877.  
  14878. If ((NDID > 0x04))
  14879. {
  14880. Name (TMP5, Package (0x06)
  14881. {
  14882. 0xFFFFFFFF,
  14883. 0xFFFFFFFF,
  14884. 0xFFFFFFFF,
  14885. 0xFFFFFFFF,
  14886. 0xFFFFFFFF,
  14887. 0xFFFFFFFF
  14888. })
  14889. TMP5 [Zero] = (0x00010000 | DID1)
  14890. TMP5 [One] = (0x00010000 | DID2)
  14891. TMP5 [0x02] = (0x00010000 | DID3)
  14892. TMP5 [0x03] = (0x00010000 | DID4)
  14893. TMP5 [0x04] = (0x00010000 | DID5)
  14894. TMP5 [0x05] = 0x000222B8
  14895. Return (TMP5) /* \_SB_.PCI0.GFX0._DOD.TMP5 */
  14896. }
  14897.  
  14898. Return (Package (0x02)
  14899. {
  14900. 0x0400,
  14901. 0x000222B8
  14902. })
  14903. }
  14904.  
  14905. Device (DD01)
  14906. {
  14907. Method (_ADR, 0, Serialized) // _ADR: Address
  14908. {
  14909. If ((DID1 == Zero))
  14910. {
  14911. Return (One)
  14912. }
  14913. Else
  14914. {
  14915. Return ((0xFFFF & DID1))
  14916. }
  14917. }
  14918.  
  14919. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  14920. {
  14921. Return (CDDS (DID1))
  14922. }
  14923.  
  14924. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  14925. {
  14926. Return (NDDS (DID1))
  14927. }
  14928.  
  14929. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  14930. {
  14931. If (((Arg0 & 0xC0000000) == 0xC0000000))
  14932. {
  14933. CSTE = NSTE /* \NSTE */
  14934. }
  14935. }
  14936.  
  14937. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  14938. {
  14939. Return (Package (0x5C)
  14940. {
  14941. 0x50,
  14942. 0x32,
  14943. 0x0B,
  14944. 0x0C,
  14945. 0x0D,
  14946. 0x0E,
  14947. 0x0F,
  14948. 0x10,
  14949. 0x11,
  14950. 0x12,
  14951. 0x13,
  14952. 0x14,
  14953. 0x15,
  14954. 0x16,
  14955. 0x17,
  14956. 0x18,
  14957. 0x19,
  14958. 0x1A,
  14959. 0x1B,
  14960. 0x1C,
  14961. 0x1D,
  14962. 0x1E,
  14963. 0x1F,
  14964. 0x20,
  14965. 0x21,
  14966. 0x22,
  14967. 0x23,
  14968. 0x24,
  14969. 0x25,
  14970. 0x26,
  14971. 0x27,
  14972. 0x28,
  14973. 0x29,
  14974. 0x2A,
  14975. 0x2B,
  14976. 0x2C,
  14977. 0x2D,
  14978. 0x2E,
  14979. 0x2F,
  14980. 0x30,
  14981. 0x31,
  14982. 0x32,
  14983. 0x33,
  14984. 0x34,
  14985. 0x35,
  14986. 0x36,
  14987. 0x37,
  14988. 0x38,
  14989. 0x39,
  14990. 0x3A,
  14991. 0x3B,
  14992. 0x3C,
  14993. 0x3D,
  14994. 0x3E,
  14995. 0x3F,
  14996. 0x40,
  14997. 0x41,
  14998. 0x42,
  14999. 0x43,
  15000. 0x44,
  15001. 0x45,
  15002. 0x46,
  15003. 0x47,
  15004. 0x48,
  15005. 0x49,
  15006. 0x4A,
  15007. 0x4B,
  15008. 0x4C,
  15009. 0x4D,
  15010. 0x4E,
  15011. 0x4F,
  15012. 0x50,
  15013. 0x51,
  15014. 0x52,
  15015. 0x53,
  15016. 0x54,
  15017. 0x55,
  15018. 0x56,
  15019. 0x57,
  15020. 0x58,
  15021. 0x59,
  15022. 0x5A,
  15023. 0x5B,
  15024. 0x5C,
  15025. 0x5D,
  15026. 0x5E,
  15027. 0x5F,
  15028. 0x60,
  15029. 0x61,
  15030. 0x62,
  15031. 0x63,
  15032. 0x64
  15033. })
  15034. }
  15035.  
  15036. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  15037. {
  15038. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  15039. {
  15040. AINT (One, Arg0)
  15041. BRTL = Arg0
  15042. }
  15043. }
  15044.  
  15045. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  15046. {
  15047. Return (BRTL) /* \BRTL */
  15048. }
  15049. }
  15050.  
  15051. Device (DD02)
  15052. {
  15053. Method (_ADR, 0, Serialized) // _ADR: Address
  15054. {
  15055. If ((DID2 == Zero))
  15056. {
  15057. Return (0x02)
  15058. }
  15059. Else
  15060. {
  15061. Return ((0xFFFF & DID2))
  15062. }
  15063. }
  15064.  
  15065. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  15066. {
  15067. Return (CDDS (DID2))
  15068. }
  15069.  
  15070. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  15071. {
  15072. Return (NDDS (DID2))
  15073. }
  15074.  
  15075. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  15076. {
  15077. If (((Arg0 & 0xC0000000) == 0xC0000000))
  15078. {
  15079. CSTE = NSTE /* \NSTE */
  15080. }
  15081. }
  15082.  
  15083. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  15084. {
  15085. Return (Package (0x66)
  15086. {
  15087. 0x50,
  15088. 0x32,
  15089. One,
  15090. 0x02,
  15091. 0x03,
  15092. 0x04,
  15093. 0x05,
  15094. 0x06,
  15095. 0x07,
  15096. 0x08,
  15097. 0x09,
  15098. 0x0A,
  15099. 0x0B,
  15100. 0x0C,
  15101. 0x0D,
  15102. 0x0E,
  15103. 0x0F,
  15104. 0x10,
  15105. 0x11,
  15106. 0x12,
  15107. 0x13,
  15108. 0x14,
  15109. 0x15,
  15110. 0x16,
  15111. 0x17,
  15112. 0x18,
  15113. 0x19,
  15114. 0x1A,
  15115. 0x1B,
  15116. 0x1C,
  15117. 0x1D,
  15118. 0x1E,
  15119. 0x1F,
  15120. 0x20,
  15121. 0x21,
  15122. 0x22,
  15123. 0x23,
  15124. 0x24,
  15125. 0x25,
  15126. 0x26,
  15127. 0x27,
  15128. 0x28,
  15129. 0x29,
  15130. 0x2A,
  15131. 0x2B,
  15132. 0x2C,
  15133. 0x2D,
  15134. 0x2E,
  15135. 0x2F,
  15136. 0x30,
  15137. 0x31,
  15138. 0x32,
  15139. 0x33,
  15140. 0x34,
  15141. 0x35,
  15142. 0x36,
  15143. 0x37,
  15144. 0x38,
  15145. 0x39,
  15146. 0x3A,
  15147. 0x3B,
  15148. 0x3C,
  15149. 0x3D,
  15150. 0x3E,
  15151. 0x3F,
  15152. 0x40,
  15153. 0x41,
  15154. 0x42,
  15155. 0x43,
  15156. 0x44,
  15157. 0x45,
  15158. 0x46,
  15159. 0x47,
  15160. 0x48,
  15161. 0x49,
  15162. 0x4A,
  15163. 0x4B,
  15164. 0x4C,
  15165. 0x4D,
  15166. 0x4E,
  15167. 0x4F,
  15168. 0x50,
  15169. 0x51,
  15170. 0x52,
  15171. 0x53,
  15172. 0x54,
  15173. 0x55,
  15174. 0x56,
  15175. 0x57,
  15176. 0x58,
  15177. 0x59,
  15178. 0x5A,
  15179. 0x5B,
  15180. 0x5C,
  15181. 0x5D,
  15182. 0x5E,
  15183. 0x5F,
  15184. 0x60,
  15185. 0x61,
  15186. 0x62,
  15187. 0x63,
  15188. 0x64
  15189. })
  15190. }
  15191.  
  15192. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  15193. {
  15194. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  15195. {
  15196. AINT (One, Arg0)
  15197. BRTL = Arg0
  15198. }
  15199. }
  15200.  
  15201. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  15202. {
  15203. Return (BRTL) /* \BRTL */
  15204. }
  15205. }
  15206.  
  15207. Device (DD03)
  15208. {
  15209. Method (_ADR, 0, Serialized) // _ADR: Address
  15210. {
  15211. If ((DID3 == Zero))
  15212. {
  15213. Return (0x03)
  15214. }
  15215. Else
  15216. {
  15217. Return ((0xFFFF & DID3))
  15218. }
  15219. }
  15220.  
  15221. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  15222. {
  15223. If ((DID3 == Zero))
  15224. {
  15225. Return (0x0B)
  15226. }
  15227. Else
  15228. {
  15229. Return (CDDS (DID3))
  15230. }
  15231. }
  15232.  
  15233. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  15234. {
  15235. Return (NDDS (DID3))
  15236. }
  15237.  
  15238. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  15239. {
  15240. If (((Arg0 & 0xC0000000) == 0xC0000000))
  15241. {
  15242. CSTE = NSTE /* \NSTE */
  15243. }
  15244. }
  15245.  
  15246. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  15247. {
  15248. Return (Package (0x66)
  15249. {
  15250. 0x50,
  15251. 0x32,
  15252. One,
  15253. 0x02,
  15254. 0x03,
  15255. 0x04,
  15256. 0x05,
  15257. 0x06,
  15258. 0x07,
  15259. 0x08,
  15260. 0x09,
  15261. 0x0A,
  15262. 0x0B,
  15263. 0x0C,
  15264. 0x0D,
  15265. 0x0E,
  15266. 0x0F,
  15267. 0x10,
  15268. 0x11,
  15269. 0x12,
  15270. 0x13,
  15271. 0x14,
  15272. 0x15,
  15273. 0x16,
  15274. 0x17,
  15275. 0x18,
  15276. 0x19,
  15277. 0x1A,
  15278. 0x1B,
  15279. 0x1C,
  15280. 0x1D,
  15281. 0x1E,
  15282. 0x1F,
  15283. 0x20,
  15284. 0x21,
  15285. 0x22,
  15286. 0x23,
  15287. 0x24,
  15288. 0x25,
  15289. 0x26,
  15290. 0x27,
  15291. 0x28,
  15292. 0x29,
  15293. 0x2A,
  15294. 0x2B,
  15295. 0x2C,
  15296. 0x2D,
  15297. 0x2E,
  15298. 0x2F,
  15299. 0x30,
  15300. 0x31,
  15301. 0x32,
  15302. 0x33,
  15303. 0x34,
  15304. 0x35,
  15305. 0x36,
  15306. 0x37,
  15307. 0x38,
  15308. 0x39,
  15309. 0x3A,
  15310. 0x3B,
  15311. 0x3C,
  15312. 0x3D,
  15313. 0x3E,
  15314. 0x3F,
  15315. 0x40,
  15316. 0x41,
  15317. 0x42,
  15318. 0x43,
  15319. 0x44,
  15320. 0x45,
  15321. 0x46,
  15322. 0x47,
  15323. 0x48,
  15324. 0x49,
  15325. 0x4A,
  15326. 0x4B,
  15327. 0x4C,
  15328. 0x4D,
  15329. 0x4E,
  15330. 0x4F,
  15331. 0x50,
  15332. 0x51,
  15333. 0x52,
  15334. 0x53,
  15335. 0x54,
  15336. 0x55,
  15337. 0x56,
  15338. 0x57,
  15339. 0x58,
  15340. 0x59,
  15341. 0x5A,
  15342. 0x5B,
  15343. 0x5C,
  15344. 0x5D,
  15345. 0x5E,
  15346. 0x5F,
  15347. 0x60,
  15348. 0x61,
  15349. 0x62,
  15350. 0x63,
  15351. 0x64
  15352. })
  15353. }
  15354.  
  15355. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  15356. {
  15357. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  15358. {
  15359. AINT (One, Arg0)
  15360. BRTL = Arg0
  15361. }
  15362. }
  15363.  
  15364. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  15365. {
  15366. Return (BRTL) /* \BRTL */
  15367. }
  15368. }
  15369.  
  15370. Device (DD04)
  15371. {
  15372. Method (_ADR, 0, Serialized) // _ADR: Address
  15373. {
  15374. If ((DID4 == Zero))
  15375. {
  15376. Return (0x04)
  15377. }
  15378. Else
  15379. {
  15380. Return ((0xFFFF & DID4))
  15381. }
  15382. }
  15383.  
  15384. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  15385. {
  15386. If ((DID4 == Zero))
  15387. {
  15388. Return (0x0B)
  15389. }
  15390. Else
  15391. {
  15392. Return (CDDS (DID4))
  15393. }
  15394. }
  15395.  
  15396. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  15397. {
  15398. Return (NDDS (DID4))
  15399. }
  15400.  
  15401. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  15402. {
  15403. If (((Arg0 & 0xC0000000) == 0xC0000000))
  15404. {
  15405. CSTE = NSTE /* \NSTE */
  15406. }
  15407. }
  15408.  
  15409. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  15410. {
  15411. Return (Package (0x66)
  15412. {
  15413. 0x50,
  15414. 0x32,
  15415. One,
  15416. 0x02,
  15417. 0x03,
  15418. 0x04,
  15419. 0x05,
  15420. 0x06,
  15421. 0x07,
  15422. 0x08,
  15423. 0x09,
  15424. 0x0A,
  15425. 0x0B,
  15426. 0x0C,
  15427. 0x0D,
  15428. 0x0E,
  15429. 0x0F,
  15430. 0x10,
  15431. 0x11,
  15432. 0x12,
  15433. 0x13,
  15434. 0x14,
  15435. 0x15,
  15436. 0x16,
  15437. 0x17,
  15438. 0x18,
  15439. 0x19,
  15440. 0x1A,
  15441. 0x1B,
  15442. 0x1C,
  15443. 0x1D,
  15444. 0x1E,
  15445. 0x1F,
  15446. 0x20,
  15447. 0x21,
  15448. 0x22,
  15449. 0x23,
  15450. 0x24,
  15451. 0x25,
  15452. 0x26,
  15453. 0x27,
  15454. 0x28,
  15455. 0x29,
  15456. 0x2A,
  15457. 0x2B,
  15458. 0x2C,
  15459. 0x2D,
  15460. 0x2E,
  15461. 0x2F,
  15462. 0x30,
  15463. 0x31,
  15464. 0x32,
  15465. 0x33,
  15466. 0x34,
  15467. 0x35,
  15468. 0x36,
  15469. 0x37,
  15470. 0x38,
  15471. 0x39,
  15472. 0x3A,
  15473. 0x3B,
  15474. 0x3C,
  15475. 0x3D,
  15476. 0x3E,
  15477. 0x3F,
  15478. 0x40,
  15479. 0x41,
  15480. 0x42,
  15481. 0x43,
  15482. 0x44,
  15483. 0x45,
  15484. 0x46,
  15485. 0x47,
  15486. 0x48,
  15487. 0x49,
  15488. 0x4A,
  15489. 0x4B,
  15490. 0x4C,
  15491. 0x4D,
  15492. 0x4E,
  15493. 0x4F,
  15494. 0x50,
  15495. 0x51,
  15496. 0x52,
  15497. 0x53,
  15498. 0x54,
  15499. 0x55,
  15500. 0x56,
  15501. 0x57,
  15502. 0x58,
  15503. 0x59,
  15504. 0x5A,
  15505. 0x5B,
  15506. 0x5C,
  15507. 0x5D,
  15508. 0x5E,
  15509. 0x5F,
  15510. 0x60,
  15511. 0x61,
  15512. 0x62,
  15513. 0x63,
  15514. 0x64
  15515. })
  15516. }
  15517.  
  15518. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  15519. {
  15520. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  15521. {
  15522. AINT (One, Arg0)
  15523. BRTL = Arg0
  15524. }
  15525. }
  15526.  
  15527. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  15528. {
  15529. Return (BRTL) /* \BRTL */
  15530. }
  15531. }
  15532.  
  15533. Device (DD05)
  15534. {
  15535. Method (_ADR, 0, Serialized) // _ADR: Address
  15536. {
  15537. If ((DID5 == Zero))
  15538. {
  15539. Return (0x05)
  15540. }
  15541. Else
  15542. {
  15543. Return ((0xFFFF & DID5))
  15544. }
  15545. }
  15546.  
  15547. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  15548. {
  15549. If ((DID5 == Zero))
  15550. {
  15551. Return (0x0B)
  15552. }
  15553. Else
  15554. {
  15555. Return (CDDS (DID5))
  15556. }
  15557. }
  15558.  
  15559. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  15560. {
  15561. Return (NDDS (DID5))
  15562. }
  15563.  
  15564. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  15565. {
  15566. If (((Arg0 & 0xC0000000) == 0xC0000000))
  15567. {
  15568. CSTE = NSTE /* \NSTE */
  15569. }
  15570. }
  15571.  
  15572. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  15573. {
  15574. Return (Package (0x66)
  15575. {
  15576. 0x50,
  15577. 0x32,
  15578. One,
  15579. 0x02,
  15580. 0x03,
  15581. 0x04,
  15582. 0x05,
  15583. 0x06,
  15584. 0x07,
  15585. 0x08,
  15586. 0x09,
  15587. 0x0A,
  15588. 0x0B,
  15589. 0x0C,
  15590. 0x0D,
  15591. 0x0E,
  15592. 0x0F,
  15593. 0x10,
  15594. 0x11,
  15595. 0x12,
  15596. 0x13,
  15597. 0x14,
  15598. 0x15,
  15599. 0x16,
  15600. 0x17,
  15601. 0x18,
  15602. 0x19,
  15603. 0x1A,
  15604. 0x1B,
  15605. 0x1C,
  15606. 0x1D,
  15607. 0x1E,
  15608. 0x1F,
  15609. 0x20,
  15610. 0x21,
  15611. 0x22,
  15612. 0x23,
  15613. 0x24,
  15614. 0x25,
  15615. 0x26,
  15616. 0x27,
  15617. 0x28,
  15618. 0x29,
  15619. 0x2A,
  15620. 0x2B,
  15621. 0x2C,
  15622. 0x2D,
  15623. 0x2E,
  15624. 0x2F,
  15625. 0x30,
  15626. 0x31,
  15627. 0x32,
  15628. 0x33,
  15629. 0x34,
  15630. 0x35,
  15631. 0x36,
  15632. 0x37,
  15633. 0x38,
  15634. 0x39,
  15635. 0x3A,
  15636. 0x3B,
  15637. 0x3C,
  15638. 0x3D,
  15639. 0x3E,
  15640. 0x3F,
  15641. 0x40,
  15642. 0x41,
  15643. 0x42,
  15644. 0x43,
  15645. 0x44,
  15646. 0x45,
  15647. 0x46,
  15648. 0x47,
  15649. 0x48,
  15650. 0x49,
  15651. 0x4A,
  15652. 0x4B,
  15653. 0x4C,
  15654. 0x4D,
  15655. 0x4E,
  15656. 0x4F,
  15657. 0x50,
  15658. 0x51,
  15659. 0x52,
  15660. 0x53,
  15661. 0x54,
  15662. 0x55,
  15663. 0x56,
  15664. 0x57,
  15665. 0x58,
  15666. 0x59,
  15667. 0x5A,
  15668. 0x5B,
  15669. 0x5C,
  15670. 0x5D,
  15671. 0x5E,
  15672. 0x5F,
  15673. 0x60,
  15674. 0x61,
  15675. 0x62,
  15676. 0x63,
  15677. 0x64
  15678. })
  15679. }
  15680.  
  15681. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  15682. {
  15683. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  15684. {
  15685. AINT (One, Arg0)
  15686. BRTL = Arg0
  15687. }
  15688. }
  15689.  
  15690. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  15691. {
  15692. Return (BRTL) /* \BRTL */
  15693. }
  15694. }
  15695.  
  15696. Device (DD06)
  15697. {
  15698. Method (_ADR, 0, Serialized) // _ADR: Address
  15699. {
  15700. If ((DID6 == Zero))
  15701. {
  15702. Return (0x06)
  15703. }
  15704. Else
  15705. {
  15706. Return ((0xFFFF & DID6))
  15707. }
  15708. }
  15709.  
  15710. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  15711. {
  15712. If ((DID6 == Zero))
  15713. {
  15714. Return (0x0B)
  15715. }
  15716. Else
  15717. {
  15718. Return (CDDS (DID6))
  15719. }
  15720. }
  15721.  
  15722. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  15723. {
  15724. Return (NDDS (DID6))
  15725. }
  15726.  
  15727. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  15728. {
  15729. If (((Arg0 & 0xC0000000) == 0xC0000000))
  15730. {
  15731. CSTE = NSTE /* \NSTE */
  15732. }
  15733. }
  15734.  
  15735. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  15736. {
  15737. Return (Package (0x66)
  15738. {
  15739. 0x50,
  15740. 0x32,
  15741. One,
  15742. 0x02,
  15743. 0x03,
  15744. 0x04,
  15745. 0x05,
  15746. 0x06,
  15747. 0x07,
  15748. 0x08,
  15749. 0x09,
  15750. 0x0A,
  15751. 0x0B,
  15752. 0x0C,
  15753. 0x0D,
  15754. 0x0E,
  15755. 0x0F,
  15756. 0x10,
  15757. 0x11,
  15758. 0x12,
  15759. 0x13,
  15760. 0x14,
  15761. 0x15,
  15762. 0x16,
  15763. 0x17,
  15764. 0x18,
  15765. 0x19,
  15766. 0x1A,
  15767. 0x1B,
  15768. 0x1C,
  15769. 0x1D,
  15770. 0x1E,
  15771. 0x1F,
  15772. 0x20,
  15773. 0x21,
  15774. 0x22,
  15775. 0x23,
  15776. 0x24,
  15777. 0x25,
  15778. 0x26,
  15779. 0x27,
  15780. 0x28,
  15781. 0x29,
  15782. 0x2A,
  15783. 0x2B,
  15784. 0x2C,
  15785. 0x2D,
  15786. 0x2E,
  15787. 0x2F,
  15788. 0x30,
  15789. 0x31,
  15790. 0x32,
  15791. 0x33,
  15792. 0x34,
  15793. 0x35,
  15794. 0x36,
  15795. 0x37,
  15796. 0x38,
  15797. 0x39,
  15798. 0x3A,
  15799. 0x3B,
  15800. 0x3C,
  15801. 0x3D,
  15802. 0x3E,
  15803. 0x3F,
  15804. 0x40,
  15805. 0x41,
  15806. 0x42,
  15807. 0x43,
  15808. 0x44,
  15809. 0x45,
  15810. 0x46,
  15811. 0x47,
  15812. 0x48,
  15813. 0x49,
  15814. 0x4A,
  15815. 0x4B,
  15816. 0x4C,
  15817. 0x4D,
  15818. 0x4E,
  15819. 0x4F,
  15820. 0x50,
  15821. 0x51,
  15822. 0x52,
  15823. 0x53,
  15824. 0x54,
  15825. 0x55,
  15826. 0x56,
  15827. 0x57,
  15828. 0x58,
  15829. 0x59,
  15830. 0x5A,
  15831. 0x5B,
  15832. 0x5C,
  15833. 0x5D,
  15834. 0x5E,
  15835. 0x5F,
  15836. 0x60,
  15837. 0x61,
  15838. 0x62,
  15839. 0x63,
  15840. 0x64
  15841. })
  15842. }
  15843.  
  15844. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  15845. {
  15846. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  15847. {
  15848. AINT (One, Arg0)
  15849. BRTL = Arg0
  15850. }
  15851. }
  15852.  
  15853. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  15854. {
  15855. Return (BRTL) /* \BRTL */
  15856. }
  15857. }
  15858.  
  15859. Device (DD07)
  15860. {
  15861. Method (_ADR, 0, Serialized) // _ADR: Address
  15862. {
  15863. If ((DID7 == Zero))
  15864. {
  15865. Return (0x07)
  15866. }
  15867. Else
  15868. {
  15869. Return ((0xFFFF & DID7))
  15870. }
  15871. }
  15872.  
  15873. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  15874. {
  15875. If ((DID7 == Zero))
  15876. {
  15877. Return (0x0B)
  15878. }
  15879. Else
  15880. {
  15881. Return (CDDS (DID7))
  15882. }
  15883. }
  15884.  
  15885. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  15886. {
  15887. Return (NDDS (DID7))
  15888. }
  15889.  
  15890. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  15891. {
  15892. If (((Arg0 & 0xC0000000) == 0xC0000000))
  15893. {
  15894. CSTE = NSTE /* \NSTE */
  15895. }
  15896. }
  15897.  
  15898. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  15899. {
  15900. Return (Package (0x66)
  15901. {
  15902. 0x50,
  15903. 0x32,
  15904. One,
  15905. 0x02,
  15906. 0x03,
  15907. 0x04,
  15908. 0x05,
  15909. 0x06,
  15910. 0x07,
  15911. 0x08,
  15912. 0x09,
  15913. 0x0A,
  15914. 0x0B,
  15915. 0x0C,
  15916. 0x0D,
  15917. 0x0E,
  15918. 0x0F,
  15919. 0x10,
  15920. 0x11,
  15921. 0x12,
  15922. 0x13,
  15923. 0x14,
  15924. 0x15,
  15925. 0x16,
  15926. 0x17,
  15927. 0x18,
  15928. 0x19,
  15929. 0x1A,
  15930. 0x1B,
  15931. 0x1C,
  15932. 0x1D,
  15933. 0x1E,
  15934. 0x1F,
  15935. 0x20,
  15936. 0x21,
  15937. 0x22,
  15938. 0x23,
  15939. 0x24,
  15940. 0x25,
  15941. 0x26,
  15942. 0x27,
  15943. 0x28,
  15944. 0x29,
  15945. 0x2A,
  15946. 0x2B,
  15947. 0x2C,
  15948. 0x2D,
  15949. 0x2E,
  15950. 0x2F,
  15951. 0x30,
  15952. 0x31,
  15953. 0x32,
  15954. 0x33,
  15955. 0x34,
  15956. 0x35,
  15957. 0x36,
  15958. 0x37,
  15959. 0x38,
  15960. 0x39,
  15961. 0x3A,
  15962. 0x3B,
  15963. 0x3C,
  15964. 0x3D,
  15965. 0x3E,
  15966. 0x3F,
  15967. 0x40,
  15968. 0x41,
  15969. 0x42,
  15970. 0x43,
  15971. 0x44,
  15972. 0x45,
  15973. 0x46,
  15974. 0x47,
  15975. 0x48,
  15976. 0x49,
  15977. 0x4A,
  15978. 0x4B,
  15979. 0x4C,
  15980. 0x4D,
  15981. 0x4E,
  15982. 0x4F,
  15983. 0x50,
  15984. 0x51,
  15985. 0x52,
  15986. 0x53,
  15987. 0x54,
  15988. 0x55,
  15989. 0x56,
  15990. 0x57,
  15991. 0x58,
  15992. 0x59,
  15993. 0x5A,
  15994. 0x5B,
  15995. 0x5C,
  15996. 0x5D,
  15997. 0x5E,
  15998. 0x5F,
  15999. 0x60,
  16000. 0x61,
  16001. 0x62,
  16002. 0x63,
  16003. 0x64
  16004. })
  16005. }
  16006.  
  16007. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  16008. {
  16009. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  16010. {
  16011. AINT (One, Arg0)
  16012. BRTL = Arg0
  16013. }
  16014. }
  16015.  
  16016. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  16017. {
  16018. Return (BRTL) /* \BRTL */
  16019. }
  16020. }
  16021.  
  16022. Device (DD08)
  16023. {
  16024. Method (_ADR, 0, Serialized) // _ADR: Address
  16025. {
  16026. If ((DID8 == Zero))
  16027. {
  16028. Return (0x08)
  16029. }
  16030. Else
  16031. {
  16032. Return ((0xFFFF & DID8))
  16033. }
  16034. }
  16035.  
  16036. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  16037. {
  16038. If ((DID8 == Zero))
  16039. {
  16040. Return (0x0B)
  16041. }
  16042. Else
  16043. {
  16044. Return (CDDS (DID8))
  16045. }
  16046. }
  16047.  
  16048. Method (_DGS, 0, NotSerialized) // _DGS: Display Graphics State
  16049. {
  16050. Return (NDDS (DID8))
  16051. }
  16052.  
  16053. Method (_DSS, 1, NotSerialized) // _DSS: Device Set State
  16054. {
  16055. If (((Arg0 & 0xC0000000) == 0xC0000000))
  16056. {
  16057. CSTE = NSTE /* \NSTE */
  16058. }
  16059. }
  16060.  
  16061. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  16062. {
  16063. Return (Package (0x66)
  16064. {
  16065. 0x50,
  16066. 0x32,
  16067. One,
  16068. 0x02,
  16069. 0x03,
  16070. 0x04,
  16071. 0x05,
  16072. 0x06,
  16073. 0x07,
  16074. 0x08,
  16075. 0x09,
  16076. 0x0A,
  16077. 0x0B,
  16078. 0x0C,
  16079. 0x0D,
  16080. 0x0E,
  16081. 0x0F,
  16082. 0x10,
  16083. 0x11,
  16084. 0x12,
  16085. 0x13,
  16086. 0x14,
  16087. 0x15,
  16088. 0x16,
  16089. 0x17,
  16090. 0x18,
  16091. 0x19,
  16092. 0x1A,
  16093. 0x1B,
  16094. 0x1C,
  16095. 0x1D,
  16096. 0x1E,
  16097. 0x1F,
  16098. 0x20,
  16099. 0x21,
  16100. 0x22,
  16101. 0x23,
  16102. 0x24,
  16103. 0x25,
  16104. 0x26,
  16105. 0x27,
  16106. 0x28,
  16107. 0x29,
  16108. 0x2A,
  16109. 0x2B,
  16110. 0x2C,
  16111. 0x2D,
  16112. 0x2E,
  16113. 0x2F,
  16114. 0x30,
  16115. 0x31,
  16116. 0x32,
  16117. 0x33,
  16118. 0x34,
  16119. 0x35,
  16120. 0x36,
  16121. 0x37,
  16122. 0x38,
  16123. 0x39,
  16124. 0x3A,
  16125. 0x3B,
  16126. 0x3C,
  16127. 0x3D,
  16128. 0x3E,
  16129. 0x3F,
  16130. 0x40,
  16131. 0x41,
  16132. 0x42,
  16133. 0x43,
  16134. 0x44,
  16135. 0x45,
  16136. 0x46,
  16137. 0x47,
  16138. 0x48,
  16139. 0x49,
  16140. 0x4A,
  16141. 0x4B,
  16142. 0x4C,
  16143. 0x4D,
  16144. 0x4E,
  16145. 0x4F,
  16146. 0x50,
  16147. 0x51,
  16148. 0x52,
  16149. 0x53,
  16150. 0x54,
  16151. 0x55,
  16152. 0x56,
  16153. 0x57,
  16154. 0x58,
  16155. 0x59,
  16156. 0x5A,
  16157. 0x5B,
  16158. 0x5C,
  16159. 0x5D,
  16160. 0x5E,
  16161. 0x5F,
  16162. 0x60,
  16163. 0x61,
  16164. 0x62,
  16165. 0x63,
  16166. 0x64
  16167. })
  16168. }
  16169.  
  16170. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  16171. {
  16172. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  16173. {
  16174. AINT (One, Arg0)
  16175. BRTL = Arg0
  16176. }
  16177. }
  16178.  
  16179. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  16180. {
  16181. Return (BRTL) /* \BRTL */
  16182. }
  16183. }
  16184.  
  16185. Method (SDDL, 1, NotSerialized)
  16186. {
  16187. NDID++
  16188. Local0 = (Arg0 & 0x0F0F)
  16189. Local1 = (0x80000000 | Local0)
  16190. If ((DIDL == Local0))
  16191. {
  16192. Return (Local1)
  16193. }
  16194.  
  16195. If ((DDL2 == Local0))
  16196. {
  16197. Return (Local1)
  16198. }
  16199.  
  16200. If ((DDL3 == Local0))
  16201. {
  16202. Return (Local1)
  16203. }
  16204.  
  16205. If ((DDL4 == Local0))
  16206. {
  16207. Return (Local1)
  16208. }
  16209.  
  16210. If ((DDL5 == Local0))
  16211. {
  16212. Return (Local1)
  16213. }
  16214.  
  16215. If ((DDL6 == Local0))
  16216. {
  16217. Return (Local1)
  16218. }
  16219.  
  16220. If ((DDL7 == Local0))
  16221. {
  16222. Return (Local1)
  16223. }
  16224.  
  16225. If ((DDL8 == Local0))
  16226. {
  16227. Return (Local1)
  16228. }
  16229.  
  16230. Return (Zero)
  16231. }
  16232.  
  16233. Method (CDDS, 1, NotSerialized)
  16234. {
  16235. Local0 = (Arg0 & 0x0F0F)
  16236. If ((Zero == Local0))
  16237. {
  16238. Return (0x1D)
  16239. }
  16240.  
  16241. If ((CADL == Local0))
  16242. {
  16243. Return (0x1F)
  16244. }
  16245.  
  16246. If ((CAL2 == Local0))
  16247. {
  16248. Return (0x1F)
  16249. }
  16250.  
  16251. If ((CAL3 == Local0))
  16252. {
  16253. Return (0x1F)
  16254. }
  16255.  
  16256. If ((CAL4 == Local0))
  16257. {
  16258. Return (0x1F)
  16259. }
  16260.  
  16261. If ((CAL5 == Local0))
  16262. {
  16263. Return (0x1F)
  16264. }
  16265.  
  16266. If ((CAL6 == Local0))
  16267. {
  16268. Return (0x1F)
  16269. }
  16270.  
  16271. If ((CAL7 == Local0))
  16272. {
  16273. Return (0x1F)
  16274. }
  16275.  
  16276. If ((CAL8 == Local0))
  16277. {
  16278. Return (0x1F)
  16279. }
  16280.  
  16281. Return (0x1D)
  16282. }
  16283.  
  16284. Method (NDDS, 1, NotSerialized)
  16285. {
  16286. Local0 = (Arg0 & 0x0F0F)
  16287. If ((Zero == Local0))
  16288. {
  16289. Return (Zero)
  16290. }
  16291.  
  16292. If ((NADL == Local0))
  16293. {
  16294. Return (One)
  16295. }
  16296.  
  16297. If ((NDL2 == Local0))
  16298. {
  16299. Return (One)
  16300. }
  16301.  
  16302. If ((NDL3 == Local0))
  16303. {
  16304. Return (One)
  16305. }
  16306.  
  16307. If ((NDL4 == Local0))
  16308. {
  16309. Return (One)
  16310. }
  16311.  
  16312. If ((NDL5 == Local0))
  16313. {
  16314. Return (One)
  16315. }
  16316.  
  16317. If ((NDL6 == Local0))
  16318. {
  16319. Return (One)
  16320. }
  16321.  
  16322. If ((NDL7 == Local0))
  16323. {
  16324. Return (One)
  16325. }
  16326.  
  16327. If ((NDL8 == Local0))
  16328. {
  16329. Return (One)
  16330. }
  16331.  
  16332. Return (Zero)
  16333. }
  16334.  
  16335. OperationRegion (IGDP, PCI_Config, Zero, 0x0100)
  16336. Field (IGDP, AnyAcc, NoLock, Preserve)
  16337. {
  16338. Offset (0x10),
  16339. MADR, 32,
  16340. Offset (0x50),
  16341. , 1,
  16342. GIVD, 1,
  16343. , 1,
  16344. GUMA, 5,
  16345. Offset (0x52),
  16346. Offset (0x54),
  16347. , 4,
  16348. GMFN, 1,
  16349. Offset (0x58),
  16350. Offset (0x5C),
  16351. GSTM, 32,
  16352. Offset (0xE0),
  16353. GSSE, 1,
  16354. GSSB, 14,
  16355. GSES, 1,
  16356. Offset (0xE4),
  16357. ASLE, 8,
  16358. Offset (0xE8),
  16359. Offset (0xFC),
  16360. ASLS, 32
  16361. }
  16362.  
  16363. OperationRegion (IGMM, SystemMemory, MADR, 0x3000)
  16364. Field (IGMM, AnyAcc, NoLock, Preserve)
  16365. {
  16366. Offset (0x20C8),
  16367. , 4,
  16368. DCFE, 4
  16369. }
  16370.  
  16371. OperationRegion (IGDM, SystemMemory, ASLB, 0x2000)
  16372. Field (IGDM, AnyAcc, NoLock, Preserve)
  16373. {
  16374. SIGN, 128,
  16375. SIZE, 32,
  16376. OVER, 32,
  16377. SVER, 256,
  16378. VVER, 128,
  16379. GVER, 128,
  16380. MBOX, 32,
  16381. DMOD, 32,
  16382. Offset (0x100),
  16383. DRDY, 32,
  16384. CSTS, 32,
  16385. CEVT, 32,
  16386. Offset (0x120),
  16387. DIDL, 32,
  16388. DDL2, 32,
  16389. DDL3, 32,
  16390. DDL4, 32,
  16391. DDL5, 32,
  16392. DDL6, 32,
  16393. DDL7, 32,
  16394. DDL8, 32,
  16395. CPDL, 32,
  16396. CPL2, 32,
  16397. CPL3, 32,
  16398. CPL4, 32,
  16399. CPL5, 32,
  16400. CPL6, 32,
  16401. CPL7, 32,
  16402. CPL8, 32,
  16403. CAD1, 32,
  16404. CAL2, 32,
  16405. CAL3, 32,
  16406. CAL4, 32,
  16407. CAL5, 32,
  16408. CAL6, 32,
  16409. CAL7, 32,
  16410. CAL8, 32,
  16411. NADL, 32,
  16412. NDL2, 32,
  16413. NDL3, 32,
  16414. NDL4, 32,
  16415. NDL5, 32,
  16416. NDL6, 32,
  16417. NDL7, 32,
  16418. NDL8, 32,
  16419. ASLP, 32,
  16420. TIDX, 32,
  16421. CHPD, 32,
  16422. CLID, 32,
  16423. CDCK, 32,
  16424. SXSW, 32,
  16425. EVTS, 32,
  16426. CNOT, 32,
  16427. NRDY, 32,
  16428. Offset (0x200),
  16429. SCIE, 1,
  16430. GEFC, 4,
  16431. GXFC, 3,
  16432. GESF, 8,
  16433. Offset (0x204),
  16434. PARM, 32,
  16435. DSLP, 32,
  16436. Offset (0x300),
  16437. ARDY, 32,
  16438. ASLC, 32,
  16439. TCHE, 32,
  16440. ALSI, 32,
  16441. BCLP, 32,
  16442. PFIT, 32,
  16443. CBLV, 32,
  16444. BCLM, 320,
  16445. CPFM, 32,
  16446. EPFM, 32,
  16447. PLUT, 592,
  16448. PFMB, 32,
  16449. CCDV, 32,
  16450. PCFT, 32,
  16451. Offset (0x400),
  16452. GVD1, 49152,
  16453. PHED, 32,
  16454. BDDC, 2048
  16455. }
  16456.  
  16457. Name (DBTB, Package (0x15)
  16458. {
  16459. Zero,
  16460. 0x07,
  16461. 0x38,
  16462. 0x01C0,
  16463. 0x0E00,
  16464. 0x3F,
  16465. 0x01C7,
  16466. 0x0E07,
  16467. 0x01F8,
  16468. 0x0E38,
  16469. 0x0FC0,
  16470. Zero,
  16471. Zero,
  16472. Zero,
  16473. Zero,
  16474. Zero,
  16475. 0x7000,
  16476. 0x7007,
  16477. 0x7038,
  16478. 0x71C0,
  16479. 0x7E00
  16480. })
  16481. Name (CDCT, Package (0x06)
  16482. {
  16483. Package (0x01)
  16484. {
  16485. 0xA0
  16486. },
  16487.  
  16488. Package (0x01)
  16489. {
  16490. 0xC8
  16491. },
  16492.  
  16493. Package (0x01)
  16494. {
  16495. 0x010B
  16496. },
  16497.  
  16498. Package (0x01)
  16499. {
  16500. 0x0140
  16501. },
  16502.  
  16503. Package (0x01)
  16504. {
  16505. 0x0164
  16506. },
  16507.  
  16508. Package (0x01)
  16509. {
  16510. 0x0190
  16511. }
  16512. })
  16513. Name (SUCC, One)
  16514. Name (NVLD, 0x02)
  16515. Name (CRIT, 0x04)
  16516. Name (NCRT, 0x06)
  16517. Method (GSCI, 0, Serialized)
  16518. {
  16519. Method (GBDA, 0, Serialized)
  16520. {
  16521. If ((GESF == Zero))
  16522. {
  16523. PARM = 0x0279
  16524. GESF = Zero
  16525. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16526. }
  16527.  
  16528. If ((GESF == One))
  16529. {
  16530. PARM = 0x0240
  16531. GESF = Zero
  16532. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16533. }
  16534.  
  16535. If ((GESF == 0x04))
  16536. {
  16537. PARM &= 0xEFFF0000
  16538. PARM &= (DerefOf (DBTB [IBTT]) << 0x10)
  16539. PARM |= IBTT /* \_SB_.PCI0.GFX0.PARM */
  16540. GESF = Zero
  16541. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16542. }
  16543.  
  16544. If ((GESF == 0x05))
  16545. {
  16546. PARM = IPSC /* \IPSC */
  16547. PARM |= (IPAT << 0x08)
  16548. PARM += 0x0100
  16549. PARM |= (LIDS << 0x10)
  16550. PARM += 0x00010000
  16551. PARM |= (IBLC << 0x12)
  16552. PARM |= (IBIA << 0x14)
  16553. GESF = Zero
  16554. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16555. }
  16556.  
  16557. If ((GESF == 0x06))
  16558. {
  16559. PARM = ITVF /* \ITVF */
  16560. PARM |= (ITVM << 0x04)
  16561. GESF = Zero
  16562. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16563. }
  16564.  
  16565. If ((GESF == 0x07))
  16566. {
  16567. PARM = GIVD /* \_SB_.PCI0.GFX0.GIVD */
  16568. PARM ^= One
  16569. PARM |= (GMFN << One)
  16570. PARM |= 0x1800
  16571. PARM |= (IDMS << 0x11)
  16572. PARM |= (DerefOf (CDCT [DCFE]) << 0x15) /* \_SB_.PCI0.GFX0.PARM */
  16573. GESF = One
  16574. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16575. }
  16576.  
  16577. If ((GESF == 0x0A))
  16578. {
  16579. PARM = Zero
  16580. If (ISSC)
  16581. {
  16582. PARM |= 0x03
  16583. }
  16584.  
  16585. GESF = Zero
  16586. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16587. }
  16588.  
  16589. GESF = Zero
  16590. Return (CRIT) /* \_SB_.PCI0.GFX0.CRIT */
  16591. }
  16592.  
  16593. Method (SBCB, 0, Serialized)
  16594. {
  16595. If ((GESF == Zero))
  16596. {
  16597. PARM = Zero
  16598. If ((PFLV == FMBL))
  16599. {
  16600. PARM = 0x000F87FD
  16601. }
  16602.  
  16603. If ((PFLV == FDTP))
  16604. {
  16605. PARM = 0x000F87BD
  16606. }
  16607.  
  16608. GESF = Zero
  16609. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16610. }
  16611.  
  16612. If ((GESF == One))
  16613. {
  16614. GESF = Zero
  16615. PARM = Zero
  16616. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16617. }
  16618.  
  16619. If ((GESF == 0x03))
  16620. {
  16621. GESF = Zero
  16622. PARM = Zero
  16623. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16624. }
  16625.  
  16626. If ((GESF == 0x04))
  16627. {
  16628. GESF = Zero
  16629. PARM = Zero
  16630. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16631. }
  16632.  
  16633. If ((GESF == 0x05))
  16634. {
  16635. GESF = Zero
  16636. PARM = Zero
  16637. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16638. }
  16639.  
  16640. If ((GESF == 0x06))
  16641. {
  16642. ITVF = (PARM & 0x0F)
  16643. ITVM = ((PARM & 0xF0) >> 0x04)
  16644. GESF = Zero
  16645. PARM = Zero
  16646. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16647. }
  16648.  
  16649. If ((GESF == 0x07))
  16650. {
  16651. If ((PARM == Zero))
  16652. {
  16653. Local0 = CLID /* \_SB_.PCI0.GFX0.CLID */
  16654. If ((0x80000000 & Local0))
  16655. {
  16656. CLID &= 0x0F
  16657. GLID (CLID)
  16658. }
  16659. }
  16660.  
  16661. GESF = Zero
  16662. PARM = Zero
  16663. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16664. }
  16665.  
  16666. If ((GESF == 0x08))
  16667. {
  16668. GESF = Zero
  16669. PARM = Zero
  16670. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16671. }
  16672.  
  16673. If ((GESF == 0x09))
  16674. {
  16675. IBTT = (PARM & 0xFF)
  16676. GESF = Zero
  16677. PARM = Zero
  16678. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16679. }
  16680.  
  16681. If ((GESF == 0x0A))
  16682. {
  16683. IPSC = (PARM & 0xFF)
  16684. If (((PARM >> 0x08) & 0xFF))
  16685. {
  16686. IPAT = ((PARM >> 0x08) & 0xFF)
  16687. IPAT--
  16688. }
  16689.  
  16690. IBLC = ((PARM >> 0x12) & 0x03)
  16691. IBIA = ((PARM >> 0x14) & 0x07)
  16692. GESF = Zero
  16693. PARM = Zero
  16694. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16695. }
  16696.  
  16697. If ((GESF == 0x0B))
  16698. {
  16699. IF1E = ((PARM >> One) & One)
  16700. IDMS = ((PARM >> 0x11) & 0x0F)
  16701. GESF = Zero
  16702. PARM = Zero
  16703. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16704. }
  16705.  
  16706. If ((GESF == 0x10))
  16707. {
  16708. GESF = Zero
  16709. PARM = Zero
  16710. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16711. }
  16712.  
  16713. If ((GESF == 0x11))
  16714. {
  16715. PARM = (LIDS << 0x08)
  16716. PARM += 0x0100
  16717. GESF = Zero
  16718. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16719. }
  16720.  
  16721. If ((GESF == 0x12))
  16722. {
  16723. If ((PARM & One))
  16724. {
  16725. If (((PARM >> One) == One))
  16726. {
  16727. ISSC = One
  16728. }
  16729. Else
  16730. {
  16731. GESF = Zero
  16732. Return (CRIT) /* \_SB_.PCI0.GFX0.CRIT */
  16733. }
  16734. }
  16735. Else
  16736. {
  16737. ISSC = Zero
  16738. }
  16739.  
  16740. GESF = Zero
  16741. PARM = Zero
  16742. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16743. }
  16744.  
  16745. If ((GESF == 0x13))
  16746. {
  16747. GESF = Zero
  16748. PARM = Zero
  16749. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16750. }
  16751.  
  16752. If ((GESF == 0x14))
  16753. {
  16754. PAVP = (PARM & 0x0F)
  16755. GESF = Zero
  16756. PARM = Zero
  16757. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16758. }
  16759.  
  16760. GESF = Zero
  16761. Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
  16762. }
  16763.  
  16764. If ((GEFC == 0x04))
  16765. {
  16766. GXFC = GBDA ()
  16767. }
  16768.  
  16769. If ((GEFC == 0x06))
  16770. {
  16771. GXFC = SBCB ()
  16772. }
  16773.  
  16774. GEFC = Zero
  16775. SCIS = One
  16776. GSSE = Zero
  16777. SCIE = Zero
  16778. Return (Zero)
  16779. }
  16780.  
  16781. Method (PDRD, 0, NotSerialized)
  16782. {
  16783. If (!DRDY)
  16784. {
  16785. Sleep (ASLP)
  16786. }
  16787.  
  16788. Return (!DRDY)
  16789. }
  16790.  
  16791. Method (PSTS, 0, NotSerialized)
  16792. {
  16793. If ((CSTS > 0x02))
  16794. {
  16795. Sleep (ASLP)
  16796. }
  16797.  
  16798. Return ((CSTS == 0x03))
  16799. }
  16800.  
  16801. Method (GNOT, 2, NotSerialized)
  16802. {
  16803. If (PDRD ())
  16804. {
  16805. Return (One)
  16806. }
  16807.  
  16808. CEVT = Arg0
  16809. CSTS = 0x03
  16810. If (((CHPD == Zero) && (Arg1 == Zero)))
  16811. {
  16812. If (((OSYS > 0x07D0) || (OSYS < 0x07D6)))
  16813. {
  16814. Notify (PCI0, Arg1)
  16815. }
  16816. Else
  16817. {
  16818. Notify (GFX0, Arg1)
  16819. }
  16820. }
  16821.  
  16822. Notify (GFX0, 0x80) // Status Change
  16823. Return (Zero)
  16824. }
  16825.  
  16826. Method (GHDS, 1, NotSerialized)
  16827. {
  16828. TIDX = Arg0
  16829. Return (GNOT (One, Zero))
  16830. }
  16831.  
  16832. Method (GLID, 1, NotSerialized)
  16833. {
  16834. CLID = Arg0
  16835. Return (GNOT (0x02, Zero))
  16836. }
  16837.  
  16838. Method (GDCK, 1, NotSerialized)
  16839. {
  16840. CDCK = Arg0
  16841. Return (GNOT (0x04, Zero))
  16842. }
  16843.  
  16844. Method (PARD, 0, NotSerialized)
  16845. {
  16846. If (!ARDY)
  16847. {
  16848. Sleep (ASLP)
  16849. }
  16850.  
  16851. Return (!ARDY)
  16852. }
  16853.  
  16854. Method (AINT, 2, NotSerialized)
  16855. {
  16856. If (!(TCHE & (One << Arg0)))
  16857. {
  16858. Return (One)
  16859. }
  16860.  
  16861. If (PARD ())
  16862. {
  16863. Return (One)
  16864. }
  16865.  
  16866. If ((Arg0 == 0x02))
  16867. {
  16868. If (CPFM)
  16869. {
  16870. Local0 = (CPFM & 0x0F)
  16871. Local1 = (EPFM & 0x0F)
  16872. If ((Local0 == One))
  16873. {
  16874. If ((Local1 & 0x06))
  16875. {
  16876. PFIT = 0x06
  16877. }
  16878. ElseIf ((Local1 & 0x08))
  16879. {
  16880. PFIT = 0x08
  16881. }
  16882. Else
  16883. {
  16884. PFIT = One
  16885. }
  16886. }
  16887.  
  16888. If ((Local0 == 0x06))
  16889. {
  16890. If ((Local1 & 0x08))
  16891. {
  16892. PFIT = 0x08
  16893. }
  16894. ElseIf ((Local1 & One))
  16895. {
  16896. PFIT = One
  16897. }
  16898. Else
  16899. {
  16900. PFIT = 0x06
  16901. }
  16902. }
  16903.  
  16904. If ((Local0 == 0x08))
  16905. {
  16906. If ((Local1 & One))
  16907. {
  16908. PFIT = One
  16909. }
  16910. ElseIf ((Local1 & 0x06))
  16911. {
  16912. PFIT = 0x06
  16913. }
  16914. Else
  16915. {
  16916. PFIT = 0x08
  16917. }
  16918. }
  16919. }
  16920. Else
  16921. {
  16922. PFIT ^= 0x07
  16923. }
  16924.  
  16925. PFIT |= 0x80000000
  16926. ASLC = 0x04
  16927. }
  16928. ElseIf ((Arg0 == One))
  16929. {
  16930. BCLP = ((Arg1 * 0xFF) / 0x64)
  16931. BCLP |= 0x80000000
  16932. ASLC = 0x02
  16933. }
  16934. ElseIf ((Arg0 == Zero))
  16935. {
  16936. ALSI = Arg1
  16937. ASLC = One
  16938. }
  16939. Else
  16940. {
  16941. Return (One)
  16942. }
  16943.  
  16944. ASLE = One
  16945. Return (Zero)
  16946. }
  16947.  
  16948. Method (SCIP, 0, NotSerialized)
  16949. {
  16950. If ((OVER != Zero))
  16951. {
  16952. Return (!GSMI)
  16953. }
  16954.  
  16955. Return (Zero)
  16956. }
  16957.  
  16958. Device (ISP0)
  16959. {
  16960. Name (_ADR, 0x22B8) // _ADR: Address
  16961. Name (_DDN, "CHV ISP - 808622B8") // _DDN: DOS Device Name
  16962. Name (_UID, One) // _UID: Unique ID
  16963. Method (_STA, 0, NotSerialized) // _STA: Status
  16964. {
  16965. If (((ISPA != Zero) && (ISPD == One)))
  16966. {
  16967. Return (0x0F)
  16968. }
  16969. Else
  16970. {
  16971. Return (Zero)
  16972. }
  16973. }
  16974.  
  16975. Name (SBUF, ResourceTemplate ()
  16976. {
  16977. Memory32Fixed (ReadWrite,
  16978. 0x00000000, // Address Base
  16979. 0x00400000, // Address Length
  16980. _Y3B)
  16981. })
  16982. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  16983. {
  16984. CreateDWordField (SBUF, \_SB.PCI0.GFX0.ISP0._Y3B._BAS, B0BA) // _BAS: Base Address
  16985. B0BA = ISPA /* \ISPA */
  16986. Return (SBUF) /* \_SB_.PCI0.GFX0.ISP0.SBUF */
  16987. }
  16988.  
  16989. Method (_SRS, 1, NotSerialized) // _SRS: Set Resource Settings
  16990. {
  16991. }
  16992.  
  16993. Method (_DIS, 0, NotSerialized) // _DIS: Disable Device
  16994. {
  16995. }
  16996.  
  16997. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  16998. {
  16999. If ((Arg0 == One))
  17000. {
  17001. Return (One)
  17002. }
  17003. ElseIf ((Arg0 == 0x02))
  17004. {
  17005. Return (0x02)
  17006. }
  17007. Else
  17008. {
  17009. Return (0x0F)
  17010. }
  17011. }
  17012. }
  17013. }
  17014.  
  17015. Device (HIDD)
  17016. {
  17017. Name (_HID, "INT33D5") // _HID: Hardware ID
  17018. Name (_CID, "INT33D5") // _CID: Compatible ID
  17019. Name (HBSY, Zero)
  17020. Name (HIDX, Zero)
  17021. Name (HMDE, Zero)
  17022. Name (HRDY, Zero)
  17023. Method (_STA, 0, Serialized) // _STA: Status
  17024. {
  17025. Return (0x0F)
  17026. }
  17027.  
  17028. Method (HDDM, 0, Serialized)
  17029. {
  17030. Name (DPKG, Package (0x04)
  17031. {
  17032. 0x11111111,
  17033. 0x22222222,
  17034. 0x33333333,
  17035. 0x44444444
  17036. })
  17037. Return (DPKG) /* \_SB_.PCI0.HIDD.HDDM.DPKG */
  17038. }
  17039.  
  17040. Method (HDEM, 0, Serialized)
  17041. {
  17042. HBSY = Zero
  17043. If ((HMDE == Zero))
  17044. {
  17045. Return (HIDX) /* \_SB_.PCI0.HIDD.HIDX */
  17046. }
  17047.  
  17048. Return (HMDE) /* \_SB_.PCI0.HIDD.HMDE */
  17049. }
  17050.  
  17051. Method (HDMM, 0, Serialized)
  17052. {
  17053. Return (HMDE) /* \_SB_.PCI0.HIDD.HMDE */
  17054. }
  17055.  
  17056. Method (HDSM, 1, Serialized)
  17057. {
  17058. HRDY = Arg0
  17059. }
  17060.  
  17061. Method (HPEM, 1, Serialized)
  17062. {
  17063. HBSY = One
  17064. If ((HMDE == Zero))
  17065. {
  17066. HIDX = Arg0
  17067. }
  17068. Else
  17069. {
  17070. HIDX = Arg0
  17071. }
  17072.  
  17073. Notify (HIDD, 0xC0) // Hardware-Specific
  17074. Local0 = Zero
  17075. While (((Local0 < 0xFA) && HBSY))
  17076. {
  17077. Sleep (0x04)
  17078. Local0++
  17079. }
  17080.  
  17081. If ((HBSY == One))
  17082. {
  17083. HBSY = Zero
  17084. HIDX = Zero
  17085. Return (One)
  17086. }
  17087. Else
  17088. {
  17089. Return (Zero)
  17090. }
  17091. }
  17092. }
  17093.  
  17094. Scope (PISH)
  17095. {
  17096. Method (_STA, 0, NotSerialized) // _STA: Status
  17097. {
  17098. Return (0x0F)
  17099. }
  17100.  
  17101. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  17102. {
  17103. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  17104. If ((Arg0 == ToUUID ("1730e71d-e5dd-4a34-be57-4d76b6a2fe37")))
  17105. {
  17106. If ((Arg2 == Zero))
  17107. {
  17108. If ((Arg1 == Zero))
  17109. {
  17110. Return (Buffer (One)
  17111. {
  17112. 0x03 /* . */
  17113. })
  17114. }
  17115. Else
  17116. {
  17117. Return (Zero)
  17118. }
  17119. }
  17120.  
  17121. If ((Arg2 == One))
  17122. {
  17123. While (One)
  17124. {
  17125. _T_0 = DerefOf (Arg3 [Zero])
  17126. If ((_T_0 == Zero))
  17127. {
  17128. ^^HIDD.HPEM (0x1B)
  17129. }
  17130. ElseIf ((_T_0 == One)) {}
  17131. ElseIf ((_T_0 == 0x02)) {}
  17132. ElseIf ((_T_0 == 0x03)) {}
  17133. Break
  17134. }
  17135.  
  17136. Return (Zero)
  17137. }
  17138. Else
  17139. {
  17140. Return (Zero)
  17141. }
  17142. }
  17143. Else
  17144. {
  17145. Return (Buffer (One)
  17146. {
  17147. 0x00 /* . */
  17148. })
  17149. }
  17150. }
  17151. }
  17152. }
  17153.  
  17154. Scope (_PR)
  17155. {
  17156. Processor (CPU0, 0x01, 0x00000000, 0x00) {}
  17157. Processor (CPU1, 0x02, 0x00000000, 0x00) {}
  17158. Processor (CPU2, 0x03, 0x00000000, 0x00) {}
  17159. Processor (CPU3, 0x04, 0x00000000, 0x00) {}
  17160. }
  17161.  
  17162. Name (PICM, Zero)
  17163. Mutex (MUTX, 0x00)
  17164. OperationRegion (PRT0, SystemIO, 0x80, 0x04)
  17165. Field (PRT0, DWordAcc, Lock, Preserve)
  17166. {
  17167. P80H, 32
  17168. }
  17169.  
  17170. Method (P8XH, 2, Serialized)
  17171. {
  17172. If ((Arg0 == Zero))
  17173. {
  17174. P80D = ((P80D & 0xFFFFFF00) | Arg1)
  17175. }
  17176.  
  17177. If ((Arg0 == One))
  17178. {
  17179. P80D = ((P80D & 0xFFFF00FF) | (Arg1 << 0x08))
  17180. }
  17181.  
  17182. If ((Arg0 == 0x02))
  17183. {
  17184. P80D = ((P80D & 0xFF00FFFF) | (Arg1 << 0x10))
  17185. }
  17186.  
  17187. If ((Arg0 == 0x03))
  17188. {
  17189. P80D = ((P80D & 0x00FFFFFF) | (Arg1 << 0x18))
  17190. }
  17191.  
  17192. P80H = P80D /* \P80D */
  17193. }
  17194.  
  17195. OperationRegion (SPRT, SystemIO, 0xB2, 0x02)
  17196. Field (SPRT, ByteAcc, Lock, Preserve)
  17197. {
  17198. SSMP, 8
  17199. }
  17200.  
  17201. Method (_PIC, 1, NotSerialized) // _PIC: Interrupt Model
  17202. {
  17203. GPIC = Arg0
  17204. PICM = Arg0
  17205. }
  17206.  
  17207. OperationRegion (SWC0, SystemIO, 0x0610, 0x0F)
  17208. Field (SWC0, ByteAcc, NoLock, Preserve)
  17209. {
  17210. G1S, 8,
  17211. Offset (0x04),
  17212. G1E, 8,
  17213. Offset (0x0A),
  17214. G1S2, 8,
  17215. G1S3, 8
  17216. }
  17217.  
  17218. OperationRegion (SWC1, SystemIO, PMBS, 0x2C)
  17219. Field (SWC1, DWordAcc, NoLock, Preserve)
  17220. {
  17221. Offset (0x20),
  17222. G0S, 32,
  17223. Offset (0x28),
  17224. G0EN, 32
  17225. }
  17226.  
  17227. Method (PPTS, 1, NotSerialized)
  17228. {
  17229. P80D = Zero
  17230. P8XH (Zero, Arg0)
  17231. G1S3 = Ones
  17232. G1S2 = Ones
  17233. G1S = One
  17234. G1E = One
  17235. G0S = Ones
  17236. If (((Arg0 == 0x04) || (Arg0 == 0x05)))
  17237. {
  17238. G0EN = Zero
  17239. PWBS = One
  17240. PM1S = One
  17241. }
  17242.  
  17243. If (CondRefOf (TCGM))
  17244. {
  17245. \_SB.PCI0.LPCB.TPM.PTS (Arg0)
  17246. }
  17247. }
  17248.  
  17249. Method (PWAK, 1, Serialized)
  17250. {
  17251. P8XH (One, 0xAB)
  17252. If (NEXP)
  17253. {
  17254. If ((OSCC & 0x02))
  17255. {
  17256. \_SB.PCI0.NHPG ()
  17257. }
  17258.  
  17259. If ((OSCC & 0x04))
  17260. {
  17261. \_SB.PCI0.NPME ()
  17262. }
  17263. }
  17264.  
  17265. If (((Arg0 == 0x03) || (Arg0 == 0x04)))
  17266. {
  17267. If ((PFLV == FMBL))
  17268. {
  17269. If ((Arg0 == 0x04))
  17270. {
  17271. PNOT ()
  17272. }
  17273. }
  17274.  
  17275. If ((CFGD & 0x01000000)) {}
  17276. If ((OSYS == 0x07D2))
  17277. {
  17278. If ((CFGD & One))
  17279. {
  17280. If ((\_PR.CPU0._PPC > Zero))
  17281. {
  17282. \_PR.CPU0._PPC -= One
  17283. PNOT ()
  17284. \_PR.CPU0._PPC += One
  17285. PNOT ()
  17286. }
  17287. Else
  17288. {
  17289. \_PR.CPU0._PPC += One
  17290. PNOT ()
  17291. \_PR.CPU0._PPC -= One
  17292. PNOT ()
  17293. }
  17294. }
  17295. }
  17296. }
  17297. }
  17298.  
  17299. Method (PNOT, 0, Serialized)
  17300. {
  17301. If (MPEN)
  17302. {
  17303. If ((PDC0 & 0x08))
  17304. {
  17305. Notify (\_PR.CPU0, 0x80) // Performance Capability Change
  17306. If ((PDC0 & 0x10))
  17307. {
  17308. Sleep (0x64)
  17309. Notify (\_PR.CPU0, 0x81) // C-State Change
  17310. }
  17311. }
  17312.  
  17313. If ((PDC1 & 0x08))
  17314. {
  17315. Notify (\_PR.CPU1, 0x80) // Performance Capability Change
  17316. If ((PDC1 & 0x10))
  17317. {
  17318. Sleep (0x64)
  17319. Notify (\_PR.CPU1, 0x81) // C-State Change
  17320. }
  17321. }
  17322.  
  17323. If ((PDC2 & 0x08))
  17324. {
  17325. Notify (\_PR.CPU2, 0x80) // Performance Capability Change
  17326. If ((PDC2 & 0x10))
  17327. {
  17328. Sleep (0x64)
  17329. Notify (\_PR.CPU2, 0x81) // C-State Change
  17330. }
  17331. }
  17332.  
  17333. If ((PDC3 & 0x08))
  17334. {
  17335. Notify (\_PR.CPU3, 0x80) // Performance Capability Change
  17336. If ((PDC3 & 0x10))
  17337. {
  17338. Sleep (0x64)
  17339. Notify (\_PR.CPU3, 0x81) // C-State Change
  17340. }
  17341. }
  17342. }
  17343. Else
  17344. {
  17345. Notify (\_PR.CPU0, 0x80) // Performance Capability Change
  17346. Sleep (0x64)
  17347. Notify (\_PR.CPU0, 0x81) // C-State Change
  17348. }
  17349. }
  17350.  
  17351. Scope (_SB)
  17352. {
  17353. Name (CRTT, 0x6E)
  17354. Name (ACTT, 0x55)
  17355. Name (SCR0, 0x0102)
  17356. Name (SCR1, 0x0102)
  17357. Name (SCR2, 0x0102)
  17358. Name (SCR3, 0x0102)
  17359. Name (GCR0, 0x46)
  17360. Name (GCR1, 0x46)
  17361. Name (GCR2, 0x46)
  17362. Name (GCR3, 0x46)
  17363. Name (GCR4, 0x46)
  17364. Name (PST0, 0x3C)
  17365. Name (PST1, 0x3C)
  17366. Name (PST2, 0x3C)
  17367. Name (PST3, 0x3C)
  17368. Name (PST4, 0x3C)
  17369. Name (WCR0, 0x4B)
  17370. Name (WPPT, 0x28)
  17371. Name (LPMV, 0x03)
  17372. Name (PDBG, Zero)
  17373. Name (PDPM, One)
  17374. Name (PDBP, One)
  17375. Name (DLPO, Package (0x06)
  17376. {
  17377. One,
  17378. One,
  17379. One,
  17380. 0x19,
  17381. One,
  17382. One
  17383. })
  17384. Name (BRQD, Zero)
  17385. Method (_INI, 0, NotSerialized) // _INI: Initialize
  17386. {
  17387. CRTT = DPCT /* \DPCT */
  17388. ACTT = DPPT /* \DPPT */
  17389. GCR0 = DGC0 /* \DGC0 */
  17390. GCR1 = DGC1 /* \DGC1 */
  17391. GCR2 = DGC2 /* \DGC2 */
  17392. GCR3 = DGC3 /* \DGC3 */
  17393. GCR4 = DGC4 /* \DGC4 */
  17394. PST0 = DGP0 /* \DGP0 */
  17395. PST1 = DGP1 /* \DGP1 */
  17396. PST2 = DGP2 /* \DGP2 */
  17397. PST3 = DGP3 /* \DGP3 */
  17398. PST4 = DGP4 /* \DGP4 */
  17399. SCR0 = DSC0 /* \DSC0 */
  17400. SCR1 = DSC1 /* \DSC1 */
  17401. SCR2 = DSC2 /* \DSC2 */
  17402. SCR3 = DSC3 /* \DSC3 */
  17403. WCR0 = WWCR /* \WWCR */
  17404. WPPT = WWPS /* \WWPS */
  17405. LPMV = DLPM /* \DLPM */
  17406. PDBG = DDBG /* \DDBG */
  17407. DLPO [One] = LPOE /* \LPOE */
  17408. DLPO [0x02] = LPPS /* \LPPS */
  17409. DLPO [0x03] = LPST /* \LPST */
  17410. DLPO [0x04] = LPPC /* \LPPC */
  17411. DLPO [0x05] = LPPF /* \LPPF */
  17412. PDPM = DPME /* \DPME */
  17413. }
  17414.  
  17415. Device (PWRB)
  17416. {
  17417. Name (_HID, EisaId ("PNP0C0C") /* Power Button Device */) // _HID: Hardware ID
  17418. }
  17419.  
  17420. Scope (PCI0)
  17421. {
  17422. OperationRegion (XHBA, SystemMemory, 0xE00A0000, 0x40)
  17423. Field (XHBA, DWordAcc, NoLock, Preserve)
  17424. {
  17425. Offset (0x10),
  17426. BR0X, 32
  17427. }
  17428.  
  17429. OperationRegion (XOP1, SystemMemory, BR0X, 0x80F8)
  17430. Field (XOP1, DWordAcc, NoLock, Preserve)
  17431. {
  17432. Offset (0x80D4),
  17433. , 11,
  17434. BT11, 1,
  17435. , 8,
  17436. BT20, 1,
  17437. BT21, 1,
  17438. Offset (0x80D7),
  17439. BT24, 1
  17440. }
  17441.  
  17442. Method (CDRH, 1, Serialized)
  17443. {
  17444. If ((DAMT == Zero))
  17445. {
  17446. BT20 = Zero
  17447. If ((Arg0 == Zero))
  17448. {
  17449. BT24 = Zero
  17450. }
  17451. Else
  17452. {
  17453. BT24 = One
  17454. }
  17455.  
  17456. BT11 = One
  17457. BT21 = One
  17458. }
  17459. Else
  17460. {
  17461. Local1 = (^^MBID.RMBX (0x5A, 0x04, 0x04, Zero, 0x14, Zero) | 0x02)
  17462. ^^MBID.WMBX (0x5A, 0x04, Local1, 0x05, Zero, 0x14, Zero)
  17463. Local0 = ^^MBID.RMBX (0x5A, 0x80D8, Zero, Zero, Zero, Zero)
  17464. ADBG ("Value@offset: 0x80d8, Before Write @HostMode")
  17465. ADBG (Local0)
  17466. Local0 &= 0xFFEFFFFF
  17467. Local0 |= 0x00200800
  17468. If ((Arg0 == One))
  17469. {
  17470. Local0 |= 0x01000000
  17471. }
  17472. Else
  17473. {
  17474. Local0 &= 0xFEFFFFFF
  17475. }
  17476.  
  17477. Local1 = (^^MBID.RMBX (0x5A, 0x04, 0x04, Zero, 0x14, Zero) | 0x02)
  17478. ^^MBID.WMBX (0x5A, 0x04, Local1, 0x05, Zero, 0x14, Zero)
  17479. ^^MBID.WMBX (0x5A, 0x80D8, Local0, One, Zero, Zero, Zero)
  17480. }
  17481. }
  17482.  
  17483. Method (CDRD, 1, Serialized)
  17484. {
  17485. If ((DAMT == Zero))
  17486. {
  17487. BT11 = One
  17488. BT20 = One
  17489. BT21 = One
  17490. If ((Arg0 == Zero))
  17491. {
  17492. BT24 = Zero
  17493. }
  17494. Else
  17495. {
  17496. BT24 = One
  17497. }
  17498. }
  17499. Else
  17500. {
  17501. Local1 = (^^MBID.RMBX (0x5A, 0x04, 0x04, Zero, 0x14, Zero) | 0x02)
  17502. ^^MBID.WMBX (0x5A, 0x04, Local1, 0x05, Zero, 0x14, Zero)
  17503. Local0 = ^^MBID.RMBX (0x5A, 0x80D8, Zero, Zero, Zero, Zero)
  17504. ADBG ("Value@offset: 0x80d8, Before Write@devicemode")
  17505. ADBG (Local0)
  17506. Local0 |= 0x00300800
  17507. If ((Arg0 == One))
  17508. {
  17509. Local0 |= 0x01000000
  17510. }
  17511. Else
  17512. {
  17513. Local0 &= 0xFEFFFFFF
  17514. }
  17515.  
  17516. Local1 = (^^MBID.RMBX (0x5A, 0x04, 0x04, Zero, 0x14, Zero) | 0x02)
  17517. ^^MBID.WMBX (0x5A, 0x04, Local1, 0x05, Zero, 0x14, Zero)
  17518. ^^MBID.WMBX (0x5A, 0x80D8, Local0, One, Zero, Zero, Zero)
  17519. }
  17520. }
  17521.  
  17522. Method (_INI, 0, NotSerialized) // _INI: Initialize
  17523. {
  17524. OSYS = 0x07D0
  17525. If (CondRefOf (\_OSI, Local0))
  17526. {
  17527. If (_OSI ("Windows 2001"))
  17528. {
  17529. OSYS = 0x07D1
  17530. }
  17531.  
  17532. If (_OSI ("Windows 2001 SP1"))
  17533. {
  17534. OSYS = 0x07D1
  17535. }
  17536.  
  17537. If (_OSI ("Windows 2001 SP2"))
  17538. {
  17539. OSYS = 0x07D2
  17540. }
  17541.  
  17542. If (_OSI ("Windows 2006"))
  17543. {
  17544. OSYS = 0x07D6
  17545. }
  17546.  
  17547. If (_OSI ("Windows 2009"))
  17548. {
  17549. OSYS = 0x07D9
  17550. }
  17551.  
  17552. If (_OSI ("Windows 2012"))
  17553. {
  17554. OSYS = 0x07DC
  17555. }
  17556.  
  17557. If (_OSI ("Windows 2013"))
  17558. {
  17559. OSYS = 0x07DD
  17560. }
  17561.  
  17562. If (_OSI ("Windows 2015"))
  17563. {
  17564. OSYS = 0x07DF
  17565. }
  17566. }
  17567. }
  17568.  
  17569. Method (NHPG, 0, Serialized)
  17570. {
  17571. }
  17572.  
  17573. Method (NPME, 0, Serialized)
  17574. {
  17575. }
  17576. }
  17577.  
  17578. Device (GPED)
  17579. {
  17580. Name (_ADR, Zero) // _ADR: Address
  17581. Name (_HID, "INT0002" /* Virtual GPIO Controller */) // _HID: Hardware ID
  17582. Name (_CID, "INT0002" /* Virtual GPIO Controller */) // _CID: Compatible ID
  17583. Name (_DDN, "Virtual GPIO controller") // _DDN: DOS Device Name
  17584. Name (_UID, One) // _UID: Unique ID
  17585. Name (INST, One)
  17586. Name (XTMP, Zero)
  17587. OperationRegion (SCIS, SystemMemory, 0xFED030C0, 0x04)
  17588. Field (SCIS, DWordAcc, NoLock, Preserve)
  17589. {
  17590. , 1,
  17591. LHAD, 1,
  17592. LATA, 1,
  17593. LDIO, 1,
  17594. LARD, 1,
  17595. LIO1, 1,
  17596. LCEP, 1,
  17597. LANB, 1,
  17598. LHCI, 1,
  17599. LOTG, 1,
  17600. LECI, 1,
  17601. LHSI, 1
  17602. }
  17603.  
  17604. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  17605. {
  17606. If ((Arg0 == ToUUID ("8b38b469-6f95-4b08-9b02-2defcc2d2c35")))
  17607. {
  17608. If ((Arg2 == Zero))
  17609. {
  17610. If ((Arg1 == One))
  17611. {
  17612. Return (Buffer (One)
  17613. {
  17614. 0x03 /* . */
  17615. })
  17616. }
  17617. }
  17618.  
  17619. If ((Arg2 == One))
  17620. {
  17621. Return ((PMBS + 0x20))
  17622. }
  17623.  
  17624. Return (Zero)
  17625. }
  17626. Else
  17627. {
  17628. Return (Buffer (One)
  17629. {
  17630. 0x00 /* . */
  17631. })
  17632. }
  17633. }
  17634.  
  17635. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  17636. {
  17637. Name (RBUF, ResourceTemplate ()
  17638. {
  17639. Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
  17640. {
  17641. 0x00000009,
  17642. }
  17643. })
  17644. Return (RBUF) /* \_SB_.GPED._CRS.RBUF */
  17645. }
  17646.  
  17647. Method (_STA, 0, NotSerialized) // _STA: Status
  17648. {
  17649. If ((SOCS <= 0x04))
  17650. {
  17651. Return (0x0F)
  17652. }
  17653. Else
  17654. {
  17655. Return (Zero)
  17656. }
  17657. }
  17658.  
  17659. Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
  17660. {
  17661. Name (RBUF, ResourceTemplate ()
  17662. {
  17663. GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullDown, 0x0000,
  17664. "\\_SB.GPED", 0x00, ResourceConsumer, ,
  17665. )
  17666. { // Pin list
  17667. 0x0002
  17668. }
  17669. })
  17670. Return (RBUF) /* \_SB_.GPED._AEI.RBUF */
  17671. }
  17672.  
  17673. Method (_L02, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  17674. {
  17675. If ((XHCI == Zero)) {}
  17676. ElseIf ((^^PCI0.XHC1.PMES == One))
  17677. {
  17678. ^^PCI0.XHC1.PMES = One
  17679. Notify (^^PCI0.XHC1, 0x02) // Device Wake
  17680. }
  17681.  
  17682. If ((OTGM != Zero))
  17683. {
  17684. If ((^^PCI0.OTG1.PMES == One))
  17685. {
  17686. ADBG ("OTG wake")
  17687. ^^PCI0.OTG1.PMEE = Zero
  17688. ^^PCI0.OTG1.CPME = Zero
  17689. ^^PCI0.OTG1.U2EN = Zero
  17690. ^^PCI0.OTG1.U3EN = Zero
  17691. Notify (^^PCI0.OTG1, 0x02) // Device Wake
  17692. }
  17693. }
  17694.  
  17695. If ((^^PCI0.SEC0.PMES == One))
  17696. {
  17697. ^^PCI0.SEC0.PMEE = Zero
  17698. Local0 = ^^PCI0.SEC0.PMEE /* \_SB_.PCI0.SEC0.PMEE */
  17699. Notify (^^PCI0.SEC0, 0x02) // Device Wake
  17700. }
  17701. }
  17702. }
  17703.  
  17704. Device (CIND)
  17705. {
  17706. Name (_HID, "INT33D3" /* Intel GPIO Buttons */) // _HID: Hardware ID
  17707. Name (_CID, "PNP0C60" /* Display Sensor Device */) // _CID: Compatible ID
  17708. Name (_DEP, Package (0x01) // _DEP: Dependencies
  17709. {
  17710. GPO0
  17711. })
  17712. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  17713. {
  17714. Name (RBUF, ResourceTemplate ()
  17715. {
  17716. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  17717. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  17718. )
  17719. { // Pin list
  17720. 0x0023
  17721. }
  17722. })
  17723. Return (RBUF) /* \_SB_.CIND._CRS.RBUF */
  17724. }
  17725.  
  17726. Method (_STA, 0, Serialized) // _STA: Status
  17727. {
  17728. If ((OSYS == 0x07DF))
  17729. {
  17730. Return (0x0F)
  17731. }
  17732. Else
  17733. {
  17734. Return (Zero)
  17735. }
  17736. }
  17737. }
  17738.  
  17739. Device (GPO0)
  17740. {
  17741. Name (_ADR, Zero) // _ADR: Address
  17742. Name (_HID, "INT33FF") // _HID: Hardware ID
  17743. Name (_CID, "INT33FF") // _CID: Compatible ID
  17744. Name (_DDN, "General Purpose Input/Output (GPIO) controller - SOUTHWEST") // _DDN: DOS Device Name
  17745. Name (_UID, One) // _UID: Unique ID
  17746. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  17747. {
  17748. Name (RBUF, ResourceTemplate ()
  17749. {
  17750. Memory32Fixed (ReadWrite,
  17751. 0xFED80000, // Address Base
  17752. 0x00008000, // Address Length
  17753. )
  17754. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  17755. {
  17756. 0x00000031,
  17757. }
  17758. })
  17759. Return (RBUF) /* \_SB_.GPO0._CRS.RBUF */
  17760. }
  17761.  
  17762. Method (_STA, 0, NotSerialized) // _STA: Status
  17763. {
  17764. Return (0x0F)
  17765. }
  17766.  
  17767. OperationRegion (XCFG, SystemMemory, 0xE00A0000, 0x40)
  17768. Field (XCFG, DWordAcc, NoLock, Preserve)
  17769. {
  17770. Offset (0x10),
  17771. XBAD, 32
  17772. }
  17773.  
  17774. OperationRegion (BADR, SystemMemory, XBAD, 0x04E0)
  17775. Field (BADR, DWordAcc, NoLock, Preserve)
  17776. {
  17777. Offset (0x4CC),
  17778. STTD, 32
  17779. }
  17780.  
  17781. Method (_E4E, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  17782. {
  17783. Sleep (0x03)
  17784. STTD &= 0xFFFFFDEE
  17785. Sleep (One)
  17786. STTD |= 0x0211
  17787. Sleep (0x60)
  17788. }
  17789.  
  17790. Name (AVBL, Zero)
  17791. Name (AMMR, Zero)
  17792. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  17793. {
  17794. If ((Arg0 == 0x08))
  17795. {
  17796. AVBL = Arg1
  17797. }
  17798. ElseIf ((Arg0 == 0x91))
  17799. {
  17800. AMMR = Arg1
  17801. }
  17802. }
  17803.  
  17804. OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0C)
  17805. Field (GPOP, ByteAcc, NoLock, Preserve)
  17806. {
  17807. Connection (
  17808. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  17809. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  17810. )
  17811. { // Pin list
  17812. 0x0035
  17813. }
  17814. ),
  17815. BTD3, 1,
  17816. Connection (
  17817. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  17818. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  17819. )
  17820. { // Pin list
  17821. 0x003A
  17822. }
  17823. ),
  17824. SUSB, 1,
  17825. Connection (
  17826. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  17827. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  17828. )
  17829. { // Pin list
  17830. 0x003B
  17831. }
  17832. ),
  17833. SHD3, 1,
  17834. Connection (
  17835. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  17836. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  17837. )
  17838. { // Pin list
  17839. 0x005F
  17840. }
  17841. ),
  17842. SW95, 1
  17843. }
  17844.  
  17845. OperationRegion (GMMR, 0x91, Zero, 0x8000)
  17846. Field (GMMR, DWordAcc, NoLock, Preserve)
  17847. {
  17848. Offset (0x5420),
  17849. Offset (0x5421),
  17850. I4AF, 3,
  17851. , 4,
  17852. I4AE, 1,
  17853. , 4,
  17854. I4AD, 4,
  17855. Offset (0x5438),
  17856. Offset (0x5439),
  17857. I4CF, 3,
  17858. , 4,
  17859. I4CE, 1,
  17860. , 4,
  17861. I4CD, 4
  17862. }
  17863. }
  17864.  
  17865. Device (GPO1)
  17866. {
  17867. Name (_ADR, Zero) // _ADR: Address
  17868. Name (_HID, "INT33FF") // _HID: Hardware ID
  17869. Name (_CID, "INT33FF") // _CID: Compatible ID
  17870. Name (_DDN, "General Purpose Input/Output (GPIO) controller - NORTH") // _DDN: DOS Device Name
  17871. Name (_UID, 0x02) // _UID: Unique ID
  17872. Name (_DEP, Package (0x01) // _DEP: Dependencies
  17873. {
  17874. MBID
  17875. })
  17876. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  17877. {
  17878. Name (RBUF, ResourceTemplate ()
  17879. {
  17880. Memory32Fixed (ReadWrite,
  17881. 0xFED88000, // Address Base
  17882. 0x00008000, // Address Length
  17883. )
  17884. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  17885. {
  17886. 0x00000030,
  17887. }
  17888. })
  17889. Return (RBUF) /* \_SB_.GPO1._CRS.RBUF */
  17890. }
  17891.  
  17892. Method (_STA, 0, NotSerialized) // _STA: Status
  17893. {
  17894. Return (0x0F)
  17895. }
  17896.  
  17897. Name (BUFF, Buffer (0x03) {})
  17898. CreateByteField (BUFF, Zero, STAT)
  17899. CreateByteField (BUFF, 0x02, DATA)
  17900. Name (CHTY, Zero)
  17901. Method (FICH, 0, NotSerialized)
  17902. {
  17903. ADBG ("FICH")
  17904. If ((^^PCI0.I2C3.AVBL == One))
  17905. {
  17906. BUFF = ^^PCI0.I2C3.RG08 /* \_SB_.PCI0.I2C3.RG08 */
  17907. DATA >>= 0x06
  17908. DATA &= 0x03
  17909. CHTY = DATA /* \_SB_.GPO1.DATA */
  17910. }
  17911. }
  17912.  
  17913. Method (OTCF, 1, NotSerialized)
  17914. {
  17915. If ((^^PCI0.I2C3.AVBL == One))
  17916. {
  17917. BUFF = ^^PCI0.I2C3.RG01 /* \_SB_.PCI0.I2C3.RG01 */
  17918. If ((ToInteger (Arg0) == One))
  17919. {
  17920. ADBG ("Enable VBUS")
  17921. If ((^^PCI0.I2C7.AVBL == One))
  17922. {
  17923. DATA |= 0x20
  17924. }
  17925. }
  17926. Else
  17927. {
  17928. DATA &= 0xDF
  17929. }
  17930.  
  17931. ^^PCI0.I2C3.RG01 = BUFF /* \_SB_.GPO1.BUFF */
  17932. }
  17933. }
  17934.  
  17935. Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
  17936. {
  17937. Name (CBUF, ResourceTemplate ()
  17938. {
  17939. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
  17940. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  17941. )
  17942. { // Pin list
  17943. 0x0003
  17944. }
  17945. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
  17946. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  17947. )
  17948. { // Pin list
  17949. 0x0000
  17950. }
  17951. })
  17952. Name (RBUF, ResourceTemplate ()
  17953. {
  17954. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
  17955. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  17956. )
  17957. { // Pin list
  17958. 0x0005
  17959. }
  17960. })
  17961. If ((OSID == One))
  17962. {
  17963. If ((BDID == One))
  17964. {
  17965. Return (CBUF) /* \_SB_.GPO1._AEI.CBUF */
  17966. }
  17967. Else
  17968. {
  17969. Return (RBUF) /* \_SB_.GPO1._AEI.RBUF */
  17970. }
  17971. }
  17972. }
  17973.  
  17974. Method (_E03, 0, Serialized) // _Exx: Edge-Triggered GPE
  17975. {
  17976. If (((BDID == One) && (PMID == One)))
  17977. {
  17978. If ((USBI == Zero))
  17979. {
  17980. ^^PCI0.CDRH (Zero)
  17981. If ((^^PCI0.I2C7.AVBL == One))
  17982. {
  17983. BUFF = ^^PCI0.I2C7.P0DT /* \_SB_.PCI0.I2C7.P0DT */
  17984. DATA |= Zero
  17985. ^^PCI0.I2C7.P0DT = BUFF /* \_SB_.GPO1.BUFF */
  17986. DATA = 0xDF
  17987. ^^PCI0.I2C7.P0CF = BUFF /* \_SB_.GPO1.BUFF */
  17988. BUFF = ^^PCI0.I2C7.P0DT /* \_SB_.PCI0.I2C7.P0DT */
  17989. DATA |= 0x20
  17990. ^^PCI0.I2C7.P0DT = BUFF /* \_SB_.GPO1.BUFF */
  17991. }
  17992.  
  17993. If ((^^PCI0.I2C3.AVBL == One))
  17994. {
  17995. BUFF = ^^PCI0.I2C3.P0TG /* \_SB_.PCI0.I2C3.P0TG */
  17996. DATA |= 0x20
  17997. ^^PCI0.I2C3.P0TG = BUFF /* \_SB_.GPO1.BUFF */
  17998. }
  17999.  
  18000. If ((^^GPO3.AMMR == One))
  18001. {
  18002. ^^GPO3.DMTX = 0x8102
  18003. }
  18004. }
  18005. ElseIf ((^^GPO3.AMMR == One))
  18006. {
  18007. ^^GPO3.DMTX = 0x8100
  18008. }
  18009. }
  18010. ElseIf (((BDID == One) && (PMID == 0x02)))
  18011. {
  18012. If ((USBI == Zero))
  18013. {
  18014. ^^PCI0.CDRH (Zero)
  18015. If ((AVBL == One))
  18016. {
  18017. GN66 = One
  18018. }
  18019.  
  18020. If ((^^GPO3.AMMR == One))
  18021. {
  18022. ^^GPO3.DMTX = 0x8102
  18023. }
  18024. }
  18025. ElseIf ((DSFG == One))
  18026. {
  18027. ^^PCI0.CDRH (Zero)
  18028. If ((^^GPO3.AMMR == One))
  18029. {
  18030. ^^GPO3.DMTX = 0x8102
  18031. }
  18032. }
  18033. Else
  18034. {
  18035. ^^PCI0.CDRD (Zero)
  18036. If ((^^GPO3.AMMR == One))
  18037. {
  18038. ^^GPO3.DMTX = 0x8100
  18039. }
  18040.  
  18041. If ((AVBL == One))
  18042. {
  18043. GN66 = Zero
  18044. }
  18045. }
  18046. }
  18047.  
  18048. If (((BDID == One) && (PMID == 0x02)))
  18049. {
  18050. If ((^^PCI0.I2C7.AVBL == One))
  18051. {
  18052. If ((USBI == One))
  18053. {
  18054. ^^GPO3.VBS5 = Zero
  18055. Sleep (0x05)
  18056. BUFF = ^^PCI0.I2C7.XD30 /* \_SB_.PCI0.I2C7.XD30 */
  18057. DATA &= 0x7F
  18058. ^^PCI0.I2C7.XD30 = BUFF /* \_SB_.GPO1.BUFF */
  18059. Sleep (0x05)
  18060. If ((OSYS == 0x07DF))
  18061. {
  18062. ^^PCI0.CDRH (Zero)
  18063. }
  18064. Else
  18065. {
  18066. ^^PCI0.CDRD (Zero)
  18067. }
  18068. }
  18069. Else
  18070. {
  18071. ^^PCI0.CDRH (Zero)
  18072. Sleep (0x05)
  18073. BUFF = ^^PCI0.I2C7.XD30 /* \_SB_.PCI0.I2C7.XD30 */
  18074. DATA |= 0x80
  18075. ^^PCI0.I2C7.XD30 = BUFF /* \_SB_.GPO1.BUFF */
  18076. Sleep (0x05)
  18077. ^^GPO3.VBS5 = One
  18078. }
  18079. }
  18080. }
  18081. }
  18082.  
  18083. Method (_E05, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  18084. {
  18085. If ((BDID != One))
  18086. {
  18087. If ((^^PCI0.I2C1.AVBL == One))
  18088. {
  18089. If (CondRefOf (\_SB.PCI0.I2C1.BATC, Local1))
  18090. {
  18091. Local0 = ^^PCI0.I2C1.BATC.INTC ()
  18092. If ((One == Local0))
  18093. {
  18094. Notify (ADP1, 0x80) // Status Change
  18095. Notify (^^PCI0.I2C1.BATC, 0x80) // Status Change
  18096. Notify (^^PCI0.I2C1.BATC, 0x81) // Information Change
  18097. }
  18098. }
  18099.  
  18100. If (CondRefOf (\_SB.DPTF, Local3))
  18101. {
  18102. If ((One == Local0))
  18103. {
  18104. ADBG ("DPTFNOTIFY")
  18105. Notify (DPTF, 0x86) // Device-Specific
  18106. Notify (TCHG, 0x80) // Status Change
  18107. }
  18108. }
  18109. }
  18110. }
  18111. }
  18112.  
  18113. Name (AVBL, Zero)
  18114. Name (AMMR, Zero)
  18115. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  18116. {
  18117. If ((Arg0 == 0x08))
  18118. {
  18119. AVBL = Arg1
  18120. }
  18121. ElseIf ((Arg0 == 0x92))
  18122. {
  18123. AMMR = Arg1
  18124. }
  18125. }
  18126.  
  18127. OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x11)
  18128. Field (GPOP, ByteAcc, NoLock, Preserve)
  18129. {
  18130. Connection (
  18131. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18132. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18133. )
  18134. { // Pin list
  18135. 0x0000
  18136. }
  18137. ),
  18138. MPD3, 1,
  18139. Connection (
  18140. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18141. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18142. )
  18143. { // Pin list
  18144. 0x0002
  18145. }
  18146. ),
  18147. MRD3, 1,
  18148. Connection (
  18149. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18150. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18151. )
  18152. { // Pin list
  18153. 0x0019
  18154. }
  18155. ),
  18156. TCD3, 1,
  18157. Connection (
  18158. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18159. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18160. )
  18161. { // Pin list
  18162. 0x0014
  18163. }
  18164. ),
  18165. TCDA, 1,
  18166. Connection (
  18167. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18168. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18169. )
  18170. { // Pin list
  18171. 0x0037
  18172. }
  18173. ),
  18174. CRST, 1,
  18175. Connection (
  18176. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18177. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18178. )
  18179. { // Pin list
  18180. 0x0017
  18181. }
  18182. ),
  18183. WLD3, 1,
  18184. Connection (
  18185. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18186. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18187. )
  18188. { // Pin list
  18189. 0x0034
  18190. }
  18191. ),
  18192. WLDA, 1,
  18193. Connection (
  18194. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18195. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18196. )
  18197. { // Pin list
  18198. 0x0019
  18199. }
  18200. ),
  18201. TCTL, 1,
  18202. Connection (
  18203. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18204. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18205. )
  18206. { // Pin list
  18207. 0x003C
  18208. }
  18209. ),
  18210. GN60, 1,
  18211. Connection (
  18212. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18213. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18214. )
  18215. { // Pin list
  18216. 0x0042
  18217. }
  18218. ),
  18219. GN66, 1
  18220. }
  18221.  
  18222. OperationRegion (GMMR, 0x92, Zero, 0x8000)
  18223. Field (GMMR, DWordAcc, NoLock, Preserve)
  18224. {
  18225. Offset (0x4418),
  18226. USBI, 1,
  18227. Offset (0x4818),
  18228. Offset (0x4819),
  18229. GPSC, 3,
  18230. , 4,
  18231. GPSE, 1,
  18232. Offset (0x5460),
  18233. COPM, 1
  18234. }
  18235. }
  18236.  
  18237. Device (GPO2)
  18238. {
  18239. Name (_ADR, Zero) // _ADR: Address
  18240. Name (_HID, "INT33FF") // _HID: Hardware ID
  18241. Name (_CID, "INT33FF") // _CID: Compatible ID
  18242. Name (_DDN, "General Purpose Input/Output (GPIO) controller - EAST") // _DDN: DOS Device Name
  18243. Name (_UID, 0x03) // _UID: Unique ID
  18244. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  18245. {
  18246. Name (RBUF, ResourceTemplate ()
  18247. {
  18248. Memory32Fixed (ReadWrite,
  18249. 0xFED90000, // Address Base
  18250. 0x00008000, // Address Length
  18251. )
  18252. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  18253. {
  18254. 0x00000032,
  18255. }
  18256. })
  18257. Return (RBUF) /* \_SB_.GPO2._CRS.RBUF */
  18258. }
  18259.  
  18260. Method (_STA, 0, NotSerialized) // _STA: Status
  18261. {
  18262. Return (0x0F)
  18263. }
  18264.  
  18265. Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
  18266. {
  18267. Name (FBUF, ResourceTemplate ()
  18268. {
  18269. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
  18270. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  18271. )
  18272. { // Pin list
  18273. 0x0016
  18274. }
  18275. })
  18276. Return (FBUF) /* \_SB_.GPO2._AEI.FBUF */
  18277. }
  18278.  
  18279. OperationRegion (GE12, SystemMemory, 0xFED9481C, 0x04)
  18280. Field (GE12, DWordAcc, NoLock, WriteAsZeros)
  18281. {
  18282. ALNT, 32
  18283. }
  18284.  
  18285. OperationRegion (GE16, SystemMemory, 0xFED94838, 0x04)
  18286. Field (GE16, DWordAcc, NoLock, WriteAsZeros)
  18287. {
  18288. HINT, 8,
  18289. Offset (0x04)
  18290. }
  18291.  
  18292. Method (_E16, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  18293. {
  18294. LIDS = (HINT & One)
  18295. ^^PCI0.GFX0.GLID (LIDS)
  18296. Notify (LID0, 0x80) // Status Change
  18297. }
  18298.  
  18299. Name (BUFF, Buffer (0x07)
  18300. {
  18301. 0xFF /* . */
  18302. })
  18303. CreateByteField (BUFF, Zero, STAT)
  18304. CreateByteField (BUFF, One, LEN)
  18305. CreateByteField (BUFF, 0x02, TMP0)
  18306. CreateByteField (BUFF, 0x03, AX00)
  18307. CreateByteField (BUFF, 0x04, AX01)
  18308. CreateByteField (BUFF, 0x05, AX10)
  18309. CreateByteField (BUFF, 0x06, AX11)
  18310. }
  18311.  
  18312. Device (GPO3)
  18313. {
  18314. Name (_ADR, Zero) // _ADR: Address
  18315. Name (_HID, "INT33FF") // _HID: Hardware ID
  18316. Name (_CID, "INT33FF") // _CID: Compatible ID
  18317. Name (_DDN, "General Purpose Input/Output (GPIO) controller - SOUTHEAST") // _DDN: DOS Device Name
  18318. Name (_UID, 0x04) // _UID: Unique ID
  18319. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  18320. {
  18321. Name (RBUF, ResourceTemplate ()
  18322. {
  18323. Memory32Fixed (ReadWrite,
  18324. 0xFED98000, // Address Base
  18325. 0x00008000, // Address Length
  18326. )
  18327. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  18328. {
  18329. 0x0000005B,
  18330. }
  18331. })
  18332. Return (RBUF) /* \_SB_.GPO3._CRS.RBUF */
  18333. }
  18334.  
  18335. Method (_STA, 0, NotSerialized) // _STA: Status
  18336. {
  18337. Return (0x0F)
  18338. }
  18339.  
  18340. Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
  18341. {
  18342. Name (CBUF, ResourceTemplate ()
  18343. {
  18344. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
  18345. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18346. )
  18347. { // Pin list
  18348. 0x003D
  18349. }
  18350. })
  18351. Name (WBUF, ResourceTemplate ()
  18352. {
  18353. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
  18354. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18355. )
  18356. { // Pin list
  18357. 0x0001
  18358. }
  18359. })
  18360. If (((BDID == 0x02) && (OSID == One)))
  18361. {
  18362. Return (CBUF) /* \_SB_.GPO3._AEI.CBUF */
  18363. }
  18364. ElseIf (((BDID != One) && (OSID == One)))
  18365. {
  18366. Return (WBUF) /* \_SB_.GPO3._AEI.WBUF */
  18367. }
  18368. }
  18369.  
  18370. Method (_E01, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  18371. {
  18372. ADBG ("BINTR")
  18373. If ((BDID == 0x08))
  18374. {
  18375. If (CondRefOf (\_SB.PCI0.I2C7.BATC, Local1))
  18376. {
  18377. Local0 = ^^PCI0.I2C7.BATC.INTF ()
  18378. ADBG (Local0)
  18379. }
  18380.  
  18381. Notify (ADP1, 0x80) // Status Change
  18382. Notify (^^PCI0.I2C7.BATC, 0x80) // Status Change
  18383. Notify (^^PCI0.I2C7.BATC, 0x81) // Information Change
  18384. }
  18385. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  18386. {
  18387. If ((^^PCI0.I2C7.WIDR.AVBL == One))
  18388. {
  18389. Notify (ADP1, 0x80) // Status Change
  18390. Notify (^^PCI0.I2C7.WIDR, 0x87) // Device-Specific
  18391. }
  18392. }
  18393. ElseIf ((^^PCI0.I2C1.AVBL == One))
  18394. {
  18395. If (CondRefOf (\_SB.PCI0.I2C1.BATC, Local1))
  18396. {
  18397. Local0 = ^^PCI0.I2C1.BATC.INTF ()
  18398. ADBG (Local0)
  18399. }
  18400.  
  18401. Notify (ADP1, 0x80) // Status Change
  18402. Notify (^^PCI0.I2C1.BATC, 0x80) // Status Change
  18403. Notify (^^PCI0.I2C1.BATC, 0x81) // Information Change
  18404. }
  18405. }
  18406.  
  18407. Method (_E3D, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  18408. {
  18409. ADBG ("BINTR")
  18410. If ((^^PCI0.I2C1.AVBL == One))
  18411. {
  18412. If (CondRefOf (\_SB.PCI0.I2C1.BATC, Local1))
  18413. {
  18414. Local0 = ^^PCI0.I2C1.BATC.INTF ()
  18415. ADBG (Local0)
  18416. }
  18417.  
  18418. Notify (ADP1, 0x80) // Status Change
  18419. Notify (^^PCI0.I2C1.BATC, 0x80) // Status Change
  18420. Notify (^^PCI0.I2C1.BATC, 0x81) // Information Change
  18421. }
  18422. }
  18423.  
  18424. Name (AVBL, Zero)
  18425. Name (AMMR, Zero)
  18426. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  18427. {
  18428. If ((Arg0 == 0x08))
  18429. {
  18430. AVBL = Arg1
  18431. }
  18432. ElseIf ((Arg0 == 0x94))
  18433. {
  18434. AMMR = Arg1
  18435. }
  18436. }
  18437.  
  18438. Name (GMOD, ResourceTemplate ()
  18439. {
  18440. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18441. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18442. )
  18443. { // Pin list
  18444. 0x004B
  18445. }
  18446. })
  18447. OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0C)
  18448. Field (GPOP, ByteAcc, NoLock, Preserve)
  18449. {
  18450. Connection (GMOD),
  18451. WFD3, 1,
  18452. Connection (
  18453. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18454. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18455. )
  18456. { // Pin list
  18457. 0x002E
  18458. }
  18459. ),
  18460. VBS5, 1
  18461. }
  18462.  
  18463. OperationRegion (GMMR, 0x94, Zero, 0x8000)
  18464. Field (GMMR, DWordAcc, NoLock, Preserve)
  18465. {
  18466. Offset (0x5420),
  18467. FGGP, 32,
  18468. Offset (0x5448),
  18469. DMTX, 32
  18470. }
  18471. }
  18472.  
  18473. Device (GPO4)
  18474. {
  18475. Name (_ADR, Zero) // _ADR: Address
  18476. Name (_HID, "INT33FF") // _HID: Hardware ID
  18477. Name (_CID, "INT33FF") // _CID: Compatible ID
  18478. Name (_DDN, "General Purpose Input/Output (GPIO) controller - GPIO VIRTUAL") // _DDN: DOS Device Name
  18479. Name (_UID, 0x05) // _UID: Unique ID
  18480. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  18481. {
  18482. Name (RBUF, ResourceTemplate ()
  18483. {
  18484. Memory32Fixed (ReadWrite,
  18485. 0xFEDA0000, // Address Base
  18486. 0x00008000, // Address Length
  18487. )
  18488. Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
  18489. {
  18490. 0x0000006C,
  18491. }
  18492. })
  18493. Return (RBUF) /* \_SB_.GPO4._CRS.RBUF */
  18494. }
  18495.  
  18496. Method (_STA, 0, NotSerialized) // _STA: Status
  18497. {
  18498. If ((SOCS <= 0x04))
  18499. {
  18500. Return (Zero)
  18501. }
  18502. Else
  18503. {
  18504. Return (0x0F)
  18505. }
  18506. }
  18507.  
  18508. Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
  18509. {
  18510. Name (RBUF, ResourceTemplate ()
  18511. {
  18512. GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
  18513. "\\_SB.GPO4", 0x00, ResourceConsumer, ,
  18514. )
  18515. { // Pin list
  18516. 0x0006
  18517. }
  18518. })
  18519. Return (RBUF) /* \_SB_.GPO4._AEI.RBUF */
  18520. }
  18521.  
  18522. Name (AVBL, Zero)
  18523. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  18524. {
  18525. If ((Arg0 == 0x08))
  18526. {
  18527. AVBL = Arg1
  18528. }
  18529. }
  18530.  
  18531. Method (_L06, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  18532. {
  18533. If ((XHCI != Zero))
  18534. {
  18535. If ((^^PCI0.XHC1.PMES == One))
  18536. {
  18537. ^^PCI0.XHC1.PMES = One
  18538. Notify (^^PCI0.XHC1, 0x02) // Device Wake
  18539. }
  18540. }
  18541.  
  18542. If ((OTGM != Zero))
  18543. {
  18544. If ((^^PCI0.OTG1.PMES == One))
  18545. {
  18546. ADBG ("OTG wake")
  18547. ^^PCI0.OTG1.PMEE = Zero
  18548. ^^PCI0.OTG1.CPME = Zero
  18549. ^^PCI0.OTG1.U2EN = Zero
  18550. ^^PCI0.OTG1.U3EN = Zero
  18551. Notify (^^PCI0.OTG1, 0x02) // Device Wake
  18552. }
  18553. }
  18554.  
  18555. If ((^^PCI0.SEC0.PMES == One))
  18556. {
  18557. ^^PCI0.SEC0.PMEE = Zero
  18558. Local0 = ^^PCI0.SEC0.PMEE /* \_SB_.PCI0.SEC0.PMEE */
  18559. Notify (^^PCI0.SEC0, 0x02) // Device Wake
  18560. }
  18561.  
  18562. Stall (0x0A)
  18563. PMEB = One
  18564. Stall (0x0A)
  18565. }
  18566. }
  18567.  
  18568. Device (WLCH)
  18569. {
  18570. Name (_HID, "INTA4321") // _HID: Hardware ID
  18571. Name (_CID, "INTA4321") // _CID: Compatible ID
  18572. Name (_DDN, "WIRELESS CHARGER") // _DDN: DOS Device Name
  18573. Name (_DEP, Package (0x03) // _DEP: Dependencies
  18574. {
  18575. ^PCI0.I2C1,
  18576. GPO3,
  18577. GPO0
  18578. })
  18579. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  18580. {
  18581. Name (RBUF, ResourceTemplate ()
  18582. {
  18583. I2cSerialBus (0x0020, ControllerInitiated, 0x00061A80,
  18584. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  18585. 0x00, ResourceConsumer, ,
  18586. )
  18587. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
  18588. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18589. )
  18590. { // Pin list
  18591. 0x0032
  18592. }
  18593. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0000,
  18594. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  18595. )
  18596. { // Pin list
  18597. 0x004D
  18598. }
  18599. })
  18600. Return (RBUF) /* \_SB_.WLCH._CRS.RBUF */
  18601. }
  18602.  
  18603. Method (_STA, 0, NotSerialized) // _STA: Status
  18604. {
  18605. If (((BDID == 0x0A) && (OSID != One)))
  18606. {
  18607. Return (0x0F)
  18608. }
  18609.  
  18610. Return (Zero)
  18611. }
  18612. }
  18613.  
  18614. Device (WCH2)
  18615. {
  18616. Name (_HID, "INTA4322") // _HID: Hardware ID
  18617. Name (_CID, "INTA4322") // _CID: Compatible ID
  18618. Name (_DDN, "WIRELESS CHARGER 2") // _DDN: DOS Device Name
  18619. Name (_DEP, Package (0x02) // _DEP: Dependencies
  18620. {
  18621. GPO3,
  18622. GPO1
  18623. })
  18624. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  18625. {
  18626. Name (RBUF, ResourceTemplate ()
  18627. {
  18628. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18629. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18630. )
  18631. { // Pin list
  18632. 0x0031
  18633. }
  18634. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18635. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18636. )
  18637. { // Pin list
  18638. 0x003E
  18639. }
  18640. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18641. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18642. )
  18643. { // Pin list
  18644. 0x0040
  18645. }
  18646. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18647. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18648. )
  18649. { // Pin list
  18650. 0x003C
  18651. }
  18652. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  18653. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  18654. )
  18655. { // Pin list
  18656. 0x003D
  18657. }
  18658. })
  18659. Return (RBUF) /* \_SB_.WCH2._CRS.RBUF */
  18660. }
  18661.  
  18662. Method (_STA, 0, NotSerialized) // _STA: Status
  18663. {
  18664. If (((BDID == 0x0A) && (OSID != One)))
  18665. {
  18666. Return (0x0F)
  18667. }
  18668.  
  18669. Return (Zero)
  18670. }
  18671. }
  18672.  
  18673. Device (FLDM)
  18674. {
  18675. Name (_ADR, Zero) // _ADR: Address
  18676. Name (_HID, "INT34D0") // _HID: Hardware ID
  18677. Name (_CID, "INT34D0") // _CID: Compatible ID
  18678. Name (_DDN, "Modem Reset device for CHT") // _DDN: DOS Device Name
  18679. Name (_UID, One) // _UID: Unique ID
  18680. Name (CDEP, Package (0x03)
  18681. {
  18682. GPO1,
  18683. ^PCI0.I2C7,
  18684. ^PCI0.I2C7.PMIC
  18685. })
  18686. Name (WDEP, Package (0x03)
  18687. {
  18688. GPO1,
  18689. ^PCI0.I2C7,
  18690. ^PCI0.I2C7.PMI5
  18691. })
  18692. Method (_STA, 0, NotSerialized) // _STA: Status
  18693. {
  18694. If ((FMDM == One))
  18695. {
  18696. Return (0x0F)
  18697. }
  18698.  
  18699. Return (Zero)
  18700. }
  18701.  
  18702. OperationRegion (BADR, SystemMemory, 0xFED8C410, 0x08)
  18703. Field (BADR, DWordAcc, NoLock, Preserve)
  18704. {
  18705. MRB0, 32,
  18706. MRB1, 32
  18707. }
  18708.  
  18709. OperationRegion (BAD1, SystemMemory, 0xFED8C400, 0x08)
  18710. Field (BAD1, DWordAcc, NoLock, Preserve)
  18711. {
  18712. MRP0, 32,
  18713. MRP1, 32
  18714. }
  18715.  
  18716. OperationRegion (CFG1, SystemMemory, 0xE00A0000, 0x40)
  18717. Field (CFG1, DWordAcc, NoLock, Preserve)
  18718. {
  18719. Offset (0x10),
  18720. BAD2, 32
  18721. }
  18722.  
  18723. OperationRegion (ADR3, SystemMemory, BAD2, 0x0560)
  18724. Field (ADR3, DWordAcc, NoLock, Preserve)
  18725. {
  18726. Offset (0x52C),
  18727. STTD, 32
  18728. }
  18729.  
  18730. Method (MDON, 0, NotSerialized)
  18731. {
  18732. If ((PMID == 0x03))
  18733. {
  18734. ^^PCI0.I2C7.PMI5.MOXX = One
  18735. }
  18736. ElseIf ((PMID == Zero))
  18737. {
  18738. ^^PCI0.I2C7.PMIC.MOXX = One
  18739. }
  18740.  
  18741. Stall (0xFF)
  18742. If ((^^GPO1.AVBL == One))
  18743. {
  18744. Stall (0x0A)
  18745. ^^GPO1.MRD3 = One
  18746. Stall (0x0A)
  18747. ^^GPO1.MPD3 = Zero
  18748. Stall (0x0A)
  18749. ^^GPO1.MPD3 = One
  18750. Stall (0x4B)
  18751. ^^GPO1.MPD3 = Zero
  18752. }
  18753.  
  18754. Stall (0xFF)
  18755. Local1 = (STTD & 0xFFFEFE1D)
  18756. STTD = (Local1 | 0x00010000)
  18757. Stall (0xFF)
  18758. If ((STTD == 0x02F0))
  18759. {
  18760. Local2 = (STTD & 0xFFFEFC0D)
  18761. STTD = (Local2 | 0x00010000)
  18762. }
  18763.  
  18764. Stall (0xFF)
  18765. If ((STTD == 0x0E0002F0))
  18766. {
  18767. Local3 = (STTD & 0xFFFEFC0D)
  18768. STTD = (Local3 | 0x00010000)
  18769. }
  18770. }
  18771.  
  18772. Method (MOFF, 0, NotSerialized)
  18773. {
  18774. Local1 = (STTD & 0xFFFEFE1D)
  18775. STTD = (Local1 | 0x00010000)
  18776. Stall (0xFF)
  18777. If ((^^GPO1.AVBL == One))
  18778. {
  18779. ^^GPO1.MRD3 = Zero
  18780. Stall (0xFF)
  18781. }
  18782.  
  18783. If ((PMID == 0x03))
  18784. {
  18785. ^^PCI0.I2C7.PMI5.MOXX = Zero
  18786. }
  18787. ElseIf ((PMID == Zero))
  18788. {
  18789. ^^PCI0.I2C7.PMIC.MOXX = Zero
  18790. }
  18791.  
  18792. Stall (0xFF)
  18793. }
  18794.  
  18795. Method (MRST, 0, NotSerialized)
  18796. {
  18797. If ((^^PCI0.XHC1.XCD3 == One))
  18798. {
  18799. ^^PCI0.XHC1.XHD3 = One
  18800. Notify (^^PCI0.XHC1, 0x02) // Device Wake
  18801. }
  18802. Else
  18803. {
  18804. ^^PCI0.XHC1.XHD3 = Zero
  18805. ^^PCI0.XHC1.D3HE = Zero
  18806. Stall (0xFF)
  18807. MOFF ()
  18808. ^^PCI0.XHC1.S1PD = Zero
  18809. ^^PCI0.XHC1.S1PU = One
  18810. ^^PCI0.XHC1.S1PD = One
  18811. Stall (0xFF)
  18812. MDON ()
  18813. ^^PCI0.XHC1.S1PD = Zero
  18814. ^^PCI0.XHC1.S1PU = Zero
  18815. ^^PCI0.XHC1.S1PD = One
  18816. Stall (0xFF)
  18817. If ((^^PCI0.XHC1.XCD3 == One))
  18818. {
  18819. ^^PCI0.XHC1.XHD3 = One
  18820. Notify (^^PCI0.XHC1, 0x02) // Device Wake
  18821. }
  18822. }
  18823. }
  18824.  
  18825. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  18826. {
  18827. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  18828. If ((Arg0 == ToUUID ("ac340cb7-e901-45bf-b7e6-2b34ec931e23")))
  18829. {
  18830. If ((Arg2 == Zero))
  18831. {
  18832. Return (0x03)
  18833. }
  18834.  
  18835. While (One)
  18836. {
  18837. _T_0 = Arg2
  18838. If ((_T_0 == One))
  18839. {
  18840. MOFF ()
  18841. }
  18842. ElseIf ((_T_0 == 0x02))
  18843. {
  18844. MDON ()
  18845. }
  18846. ElseIf ((_T_0 == 0x03))
  18847. {
  18848. MRST ()
  18849. }
  18850.  
  18851. Break
  18852. }
  18853. }
  18854. Else
  18855. {
  18856. Return (Zero)
  18857. }
  18858. }
  18859. }
  18860.  
  18861. Scope (PCI0.I2C7)
  18862. {
  18863. OperationRegion (DZFG, GenericSerialBus, Zero, 0x0100)
  18864. Field (DZFG, BufferAcc, NoLock, Preserve)
  18865. {
  18866. Connection (
  18867. I2cSerialBus (0x005E, ControllerInitiated, 0x000F4240,
  18868. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  18869. 0x00, ResourceConsumer, ,
  18870. )
  18871. ),
  18872. Offset (0x47),
  18873. AccessAs (BufferAcc, AttribByte),
  18874. DL03, 8,
  18875. DL02, 8
  18876. }
  18877.  
  18878. OperationRegion (XOPR, GenericSerialBus, Zero, 0x0100)
  18879. Field (XOPR, BufferAcc, NoLock, Preserve)
  18880. {
  18881. Connection (
  18882. I2cSerialBus (0x0034, ControllerInitiated, 0x000F4240,
  18883. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  18884. 0x00, ResourceConsumer, ,
  18885. )
  18886. ),
  18887. Offset (0x12),
  18888. AccessAs (BufferAcc, AttribByte),
  18889. XD31, 8,
  18890. Offset (0x16),
  18891. AccessAs (BufferAcc, AttribByte),
  18892. XD33, 8,
  18893. XD32, 8,
  18894. Offset (0x30),
  18895. AccessAs (BufferAcc, AttribByte),
  18896. XD30, 8,
  18897. Offset (0x92),
  18898. AccessAs (BufferAcc, AttribByte),
  18899. XD92, 8,
  18900. XD93, 8
  18901. }
  18902.  
  18903. Device (PMI1)
  18904. {
  18905. Name (_ADR, Zero) // _ADR: Address
  18906. Name (_HID, "INT33F4" /* XPOWER PMIC Controller */) // _HID: Hardware ID
  18907. Name (_CID, "INT33F4" /* XPOWER PMIC Controller */) // _CID: Compatible ID
  18908. Name (_DDN, "XPOWER PMIC Controller") // _DDN: DOS Device Name
  18909. Name (_HRV, 0x03) // _HRV: Hardware Revision
  18910. Name (_UID, One) // _UID: Unique ID
  18911. Name (_DEP, Package (0x02) // _DEP: Dependencies
  18912. {
  18913. I2C7,
  18914. GPO1
  18915. })
  18916. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  18917. {
  18918. Name (SBUF, ResourceTemplate ()
  18919. {
  18920. I2cSerialBus (0x0034, ControllerInitiated, 0x000F4240,
  18921. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  18922. 0x00, ResourceConsumer, ,
  18923. )
  18924. GpioInt (Level, ActiveLow, Shared, PullDefault, 0x0000,
  18925. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18926. )
  18927. { // Pin list
  18928. 0x000F
  18929. }
  18930. })
  18931. Name (ABUF, ResourceTemplate ()
  18932. {
  18933. I2cSerialBus (0x0034, ControllerInitiated, 0x000F4240,
  18934. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  18935. 0x00, ResourceConsumer, ,
  18936. )
  18937. GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
  18938. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  18939. )
  18940. { // Pin list
  18941. 0x000F
  18942. }
  18943. })
  18944. If ((OSID != One))
  18945. {
  18946. Return (ABUF) /* \_SB_.PCI0.I2C7.PMI1._CRS.ABUF */
  18947. }
  18948. Else
  18949. {
  18950. Return (SBUF) /* \_SB_.PCI0.I2C7.PMI1._CRS.SBUF */
  18951. }
  18952. }
  18953.  
  18954. Method (_STA, 0, NotSerialized) // _STA: Status
  18955. {
  18956. If ((PMEN == Zero))
  18957. {
  18958. Return (Zero)
  18959. }
  18960.  
  18961. If ((PMID == 0x02))
  18962. {
  18963. ADBG ("XPWR_DCOVE")
  18964. Return (0x0F)
  18965. }
  18966.  
  18967. Return (Zero)
  18968. }
  18969.  
  18970. OperationRegion (PMOP, 0x8D, Zero, 0x0100)
  18971. Field (PMOP, DWordAcc, NoLock, Preserve)
  18972. {
  18973. ALD1, 32,
  18974. ALD2, 32,
  18975. ALD3, 32,
  18976. DLD1, 32,
  18977. DLD2, 32,
  18978. DLD3, 32,
  18979. DLD4, 32,
  18980. ELD1, 32,
  18981. ELD2, 32,
  18982. ELD3, 32,
  18983. FLD1, 32,
  18984. FLD2, 32,
  18985. FLD3, 32,
  18986. BUC1, 32,
  18987. BUC2, 32,
  18988. BUC3, 32,
  18989. BUC4, 32,
  18990. BUC5, 32,
  18991. BUC6, 32,
  18992. GPI1, 32
  18993. }
  18994.  
  18995. OperationRegion (DPTF, 0x8C, Zero, 0x0100)
  18996. Field (DPTF, DWordAcc, NoLock, Preserve)
  18997. {
  18998. TMP0, 32,
  18999. AX00, 32,
  19000. AX01, 32,
  19001. TMP1, 32,
  19002. AX10, 32,
  19003. AX11, 32,
  19004. TMP2, 32,
  19005. AX20, 32,
  19006. AX21, 32,
  19007. TMP3, 32,
  19008. AX30, 32,
  19009. AX31, 32,
  19010. TMP4, 32,
  19011. AX40, 32,
  19012. AX41, 32,
  19013. TMP5, 32,
  19014. AX50, 32,
  19015. AX51, 32,
  19016. PEN0, 32,
  19017. PEN1, 32,
  19018. PEN2, 32,
  19019. PEN3, 32,
  19020. PEN4, 32,
  19021. PEN5, 32
  19022. }
  19023.  
  19024. Name (LPAT, Package (0x2A)
  19025. {
  19026. 0x0AAC,
  19027. 0x0ADC,
  19028. 0x0ADE,
  19029. 0x08BD,
  19030. 0x0B10,
  19031. 0x0715,
  19032. 0x0B42,
  19033. 0x05C6,
  19034. 0x0B74,
  19035. 0x04BC,
  19036. 0x0BA6,
  19037. 0x03E8,
  19038. 0x0BD8,
  19039. 0x033E,
  19040. 0x0C0A,
  19041. 0x02B4,
  19042. 0x0C3C,
  19043. 0x0244,
  19044. 0x0C6E,
  19045. 0x01E8,
  19046. 0x0CA0,
  19047. 0x019D,
  19048. 0x0CD2,
  19049. 0x015F,
  19050. 0x0D04,
  19051. 0x012C,
  19052. 0x0D36,
  19053. 0x0101,
  19054. 0x0D68,
  19055. 0xDD,
  19056. 0x0D9A,
  19057. 0xBF,
  19058. 0x0DCC,
  19059. 0xA6,
  19060. 0x0DFE,
  19061. 0x90,
  19062. 0x0E30,
  19063. 0x7E,
  19064. 0x0E62,
  19065. 0x6E,
  19066. 0x0E94,
  19067. 0x61
  19068. })
  19069. OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0100)
  19070. Field (GPOP, ByteAcc, NoLock, Preserve)
  19071. {
  19072. Connection (
  19073. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19074. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19075. )
  19076. { // Pin list
  19077. 0x0020
  19078. }
  19079. ),
  19080. GMP0, 1,
  19081. Connection (
  19082. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19083. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19084. )
  19085. { // Pin list
  19086. 0x0021
  19087. }
  19088. ),
  19089. GX00, 1,
  19090. Connection (
  19091. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19092. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19093. )
  19094. { // Pin list
  19095. 0x0022
  19096. }
  19097. ),
  19098. GX01, 1,
  19099. Connection (
  19100. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19101. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19102. )
  19103. { // Pin list
  19104. 0x0023
  19105. }
  19106. ),
  19107. GMP1, 1,
  19108. Connection (
  19109. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19110. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19111. )
  19112. { // Pin list
  19113. 0x0024
  19114. }
  19115. ),
  19116. GX10, 1,
  19117. Connection (
  19118. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19119. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19120. )
  19121. { // Pin list
  19122. 0x0025
  19123. }
  19124. ),
  19125. GX11, 1,
  19126. Connection (
  19127. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19128. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19129. )
  19130. { // Pin list
  19131. 0x0026
  19132. }
  19133. ),
  19134. GMP2, 1,
  19135. Connection (
  19136. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19137. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19138. )
  19139. { // Pin list
  19140. 0x0027
  19141. }
  19142. ),
  19143. GX20, 1,
  19144. Connection (
  19145. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19146. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19147. )
  19148. { // Pin list
  19149. 0x0028
  19150. }
  19151. ),
  19152. GX21, 1,
  19153. Connection (
  19154. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19155. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19156. )
  19157. { // Pin list
  19158. 0x0029
  19159. }
  19160. ),
  19161. GMP3, 1,
  19162. Connection (
  19163. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19164. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19165. )
  19166. { // Pin list
  19167. 0x002A
  19168. }
  19169. ),
  19170. GX30, 1,
  19171. Connection (
  19172. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19173. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19174. )
  19175. { // Pin list
  19176. 0x002B
  19177. }
  19178. ),
  19179. GX31, 1,
  19180. Connection (
  19181. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19182. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19183. )
  19184. { // Pin list
  19185. 0x002C
  19186. }
  19187. ),
  19188. GMP4, 1,
  19189. Connection (
  19190. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19191. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19192. )
  19193. { // Pin list
  19194. 0x002D
  19195. }
  19196. ),
  19197. GX40, 1,
  19198. Connection (
  19199. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19200. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19201. )
  19202. { // Pin list
  19203. 0x002E
  19204. }
  19205. ),
  19206. GX41, 1,
  19207. Connection (
  19208. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19209. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19210. )
  19211. { // Pin list
  19212. 0x002F
  19213. }
  19214. ),
  19215. GMP5, 1,
  19216. Connection (
  19217. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19218. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19219. )
  19220. { // Pin list
  19221. 0x0030
  19222. }
  19223. ),
  19224. GX50, 1,
  19225. Connection (
  19226. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19227. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19228. )
  19229. { // Pin list
  19230. 0x0031
  19231. }
  19232. ),
  19233. GX51, 1,
  19234. Connection (
  19235. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19236. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19237. )
  19238. { // Pin list
  19239. 0x0032
  19240. }
  19241. ),
  19242. GEN0, 1,
  19243. Connection (
  19244. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19245. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19246. )
  19247. { // Pin list
  19248. 0x0033
  19249. }
  19250. ),
  19251. GEN1, 1,
  19252. Connection (
  19253. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19254. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19255. )
  19256. { // Pin list
  19257. 0x0034
  19258. }
  19259. ),
  19260. GEN2, 1,
  19261. Connection (
  19262. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19263. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19264. )
  19265. { // Pin list
  19266. 0x0035
  19267. }
  19268. ),
  19269. GEN3, 1,
  19270. Connection (
  19271. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19272. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19273. )
  19274. { // Pin list
  19275. 0x0036
  19276. }
  19277. ),
  19278. GEN4, 1,
  19279. Connection (
  19280. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19281. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19282. )
  19283. { // Pin list
  19284. 0x0037
  19285. }
  19286. ),
  19287. GEN5, 1,
  19288. Connection (
  19289. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19290. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19291. )
  19292. { // Pin list
  19293. 0x0040
  19294. }
  19295. ),
  19296. G28X, 1,
  19297. Connection (
  19298. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19299. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19300. )
  19301. { // Pin list
  19302. 0x0046
  19303. }
  19304. ),
  19305. G06X, 1,
  19306. Connection (
  19307. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19308. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19309. )
  19310. { // Pin list
  19311. 0x0048
  19312. }
  19313. ),
  19314. G18X, 1,
  19315. Connection (
  19316. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19317. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19318. )
  19319. { // Pin list
  19320. 0x0053
  19321. }
  19322. ),
  19323. GSDX, 1,
  19324. Connection (
  19325. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19326. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19327. )
  19328. { // Pin list
  19329. 0x004B
  19330. }
  19331. ),
  19332. G12X, 1,
  19333. Connection (
  19334. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19335. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19336. )
  19337. { // Pin list
  19338. 0x0047
  19339. }
  19340. ),
  19341. G16X, 1,
  19342. Connection (
  19343. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19344. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19345. )
  19346. { // Pin list
  19347. 0x0041
  19348. }
  19349. ),
  19350. G33X, 1,
  19351. Connection (
  19352. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19353. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19354. )
  19355. { // Pin list
  19356. 0x000B
  19357. }
  19358. ),
  19359. TCON, 1
  19360. }
  19361.  
  19362. Name (AVBL, Zero)
  19363. Name (AVBD, Zero)
  19364. Name (AVBG, Zero)
  19365. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  19366. {
  19367. If ((Arg0 == 0x08))
  19368. {
  19369. AVBG = Arg1
  19370. }
  19371.  
  19372. If ((Arg0 == 0x8D))
  19373. {
  19374. AVBL = Arg1
  19375. }
  19376.  
  19377. If ((Arg0 == 0x8C))
  19378. {
  19379. AVBD = Arg1
  19380. }
  19381. }
  19382.  
  19383. Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
  19384. {
  19385. Name (RBUF, ResourceTemplate ()
  19386. {
  19387. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
  19388. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19389. )
  19390. { // Pin list
  19391. 0x0011
  19392. }
  19393. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
  19394. "\\_SB.PCI0.I2C7.PMI1", 0x00, ResourceConsumer, ,
  19395. )
  19396. { // Pin list
  19397. 0x0013
  19398. }
  19399. })
  19400. Return (RBUF) /* \_SB_.PCI0.I2C7.PMI1._AEI.RBUF */
  19401. }
  19402.  
  19403. Method (_E11, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  19404. {
  19405. If ((OSID == One))
  19406. {
  19407. If ((^^^^GPO1.USBI != Zero))
  19408. {
  19409. If ((^^AVBL == One))
  19410. {
  19411. Notify (BMDR, 0x87) // Device-Specific
  19412. }
  19413. }
  19414. }
  19415. }
  19416.  
  19417. Method (_E13, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  19418. {
  19419. If ((OSID == One))
  19420. {
  19421. If ((^^^^GPO1.USBI != Zero))
  19422. {
  19423. If ((^^AVBL == One))
  19424. {
  19425. Notify (BMDR, 0x87) // Device-Specific
  19426. }
  19427. }
  19428. }
  19429. }
  19430. }
  19431.  
  19432. Device (PMI2)
  19433. {
  19434. Name (_ADR, Zero) // _ADR: Address
  19435. Name (_HID, "INT33F5" /* TI PMIC Controller */) // _HID: Hardware ID
  19436. Name (_CID, "INT33F5" /* TI PMIC Controller */) // _CID: Compatible ID
  19437. Name (_DDN, "TI PMIC Controller") // _DDN: DOS Device Name
  19438. Name (_HRV, 0x03) // _HRV: Hardware Revision
  19439. Name (_UID, One) // _UID: Unique ID
  19440. Name (_DEP, Package (0x02) // _DEP: Dependencies
  19441. {
  19442. I2C7,
  19443. GPO1
  19444. })
  19445. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  19446. {
  19447. Name (SBUF, ResourceTemplate ()
  19448. {
  19449. I2cSerialBus (0x005E, ControllerInitiated, 0x000F4240,
  19450. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  19451. 0x00, ResourceConsumer, ,
  19452. )
  19453. GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
  19454. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  19455. )
  19456. { // Pin list
  19457. 0x000F
  19458. }
  19459. })
  19460. Return (SBUF) /* \_SB_.PCI0.I2C7.PMI2._CRS.SBUF */
  19461. }
  19462.  
  19463. Method (_STA, 0, NotSerialized) // _STA: Status
  19464. {
  19465. If ((PMEN == Zero))
  19466. {
  19467. Return (Zero)
  19468. }
  19469.  
  19470. If ((PMID == One))
  19471. {
  19472. ADBG ("TI_DCOVE")
  19473. Return (0x0F)
  19474. }
  19475.  
  19476. Return (Zero)
  19477. }
  19478.  
  19479. OperationRegion (PMOP, 0x8D, Zero, 0x0100)
  19480. Field (PMOP, DWordAcc, NoLock, Preserve)
  19481. {
  19482. LDO1, 32,
  19483. LDO2, 32,
  19484. LDO3, 32,
  19485. LDO5, 32,
  19486. LDO6, 32,
  19487. LDO7, 32,
  19488. LDO8, 32,
  19489. LDO9, 32,
  19490. LD10, 32,
  19491. LD11, 32,
  19492. LD12, 32,
  19493. LD13, 32,
  19494. LD14, 32
  19495. }
  19496.  
  19497. OperationRegion (DPTF, 0x8C, Zero, 0x0100)
  19498. Field (DPTF, DWordAcc, NoLock, Preserve)
  19499. {
  19500. TMP0, 32,
  19501. AX00, 32,
  19502. AX01, 32,
  19503. TMP1, 32,
  19504. AX10, 32,
  19505. AX11, 32,
  19506. TMP2, 32,
  19507. AX20, 32,
  19508. AX21, 32,
  19509. TMP3, 32,
  19510. AX30, 32,
  19511. AX31, 32,
  19512. TMP4, 32,
  19513. AX40, 32,
  19514. AX41, 32,
  19515. TMP5, 32,
  19516. AX50, 32,
  19517. AX51, 32,
  19518. PEN0, 32,
  19519. PEN1, 32,
  19520. PEN2, 32,
  19521. PEN3, 32,
  19522. PEN4, 32,
  19523. PEN5, 32
  19524. }
  19525.  
  19526. Name (LPAT, Package (0x44)
  19527. {
  19528. 0x091B,
  19529. 0x03F1,
  19530. 0x094D,
  19531. 0x03EB,
  19532. 0x097F,
  19533. 0x03E4,
  19534. 0x09B1,
  19535. 0x03DA,
  19536. 0x09E3,
  19537. 0x03CE,
  19538. 0x0A15,
  19539. 0x03BE,
  19540. 0x0A47,
  19541. 0x03AA,
  19542. 0x0A79,
  19543. 0x0392,
  19544. 0x0AAB,
  19545. 0x0375,
  19546. 0x0ADD,
  19547. 0x0353,
  19548. 0x0B0F,
  19549. 0x032C,
  19550. 0x0B41,
  19551. 0x0300,
  19552. 0x0B73,
  19553. 0x02D0,
  19554. 0x0BA5,
  19555. 0x029D,
  19556. 0x0BD7,
  19557. 0x0268,
  19558. 0x0C09,
  19559. 0x0232,
  19560. 0x0C3B,
  19561. 0x01FD,
  19562. 0x0C6D,
  19563. 0x01C9,
  19564. 0x0C9F,
  19565. 0x0197,
  19566. 0x0CD1,
  19567. 0x0169,
  19568. 0x0D03,
  19569. 0x013E,
  19570. 0x0D35,
  19571. 0x0117,
  19572. 0x0D67,
  19573. 0xF5,
  19574. 0x0D99,
  19575. 0xD6,
  19576. 0x0DCB,
  19577. 0xBB,
  19578. 0x0DFD,
  19579. 0xA3,
  19580. 0x0E2F,
  19581. 0x8E,
  19582. 0x0E61,
  19583. 0x7C,
  19584. 0x0E93,
  19585. 0x6C,
  19586. 0x0EC5,
  19587. 0x5E,
  19588. 0x0EF7,
  19589. 0x53,
  19590. 0x0F29,
  19591. 0x48,
  19592. 0x0F5B,
  19593. 0x3F,
  19594. 0x0F8D,
  19595. 0x38
  19596. })
  19597. OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0100)
  19598. Field (GPOP, ByteAcc, NoLock, Preserve)
  19599. {
  19600. Connection (
  19601. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19602. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19603. )
  19604. { // Pin list
  19605. 0x0020
  19606. }
  19607. ),
  19608. GMP0, 1,
  19609. Connection (
  19610. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19611. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19612. )
  19613. { // Pin list
  19614. 0x0021
  19615. }
  19616. ),
  19617. GX00, 1,
  19618. Connection (
  19619. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19620. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19621. )
  19622. { // Pin list
  19623. 0x0022
  19624. }
  19625. ),
  19626. GX01, 1,
  19627. Connection (
  19628. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19629. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19630. )
  19631. { // Pin list
  19632. 0x0023
  19633. }
  19634. ),
  19635. GMP1, 1,
  19636. Connection (
  19637. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19638. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19639. )
  19640. { // Pin list
  19641. 0x0024
  19642. }
  19643. ),
  19644. GX10, 1,
  19645. Connection (
  19646. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19647. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19648. )
  19649. { // Pin list
  19650. 0x0025
  19651. }
  19652. ),
  19653. GX11, 1,
  19654. Connection (
  19655. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19656. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19657. )
  19658. { // Pin list
  19659. 0x0026
  19660. }
  19661. ),
  19662. GMP2, 1,
  19663. Connection (
  19664. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19665. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19666. )
  19667. { // Pin list
  19668. 0x0027
  19669. }
  19670. ),
  19671. GX20, 1,
  19672. Connection (
  19673. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19674. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19675. )
  19676. { // Pin list
  19677. 0x0028
  19678. }
  19679. ),
  19680. GX21, 1,
  19681. Connection (
  19682. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19683. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19684. )
  19685. { // Pin list
  19686. 0x0029
  19687. }
  19688. ),
  19689. GMP3, 1,
  19690. Connection (
  19691. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19692. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19693. )
  19694. { // Pin list
  19695. 0x002A
  19696. }
  19697. ),
  19698. GX30, 1,
  19699. Connection (
  19700. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19701. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19702. )
  19703. { // Pin list
  19704. 0x002B
  19705. }
  19706. ),
  19707. GX31, 1,
  19708. Connection (
  19709. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19710. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19711. )
  19712. { // Pin list
  19713. 0x002C
  19714. }
  19715. ),
  19716. GMP4, 1,
  19717. Connection (
  19718. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19719. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19720. )
  19721. { // Pin list
  19722. 0x002D
  19723. }
  19724. ),
  19725. GX40, 1,
  19726. Connection (
  19727. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19728. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19729. )
  19730. { // Pin list
  19731. 0x002E
  19732. }
  19733. ),
  19734. GX41, 1,
  19735. Connection (
  19736. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19737. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19738. )
  19739. { // Pin list
  19740. 0x002F
  19741. }
  19742. ),
  19743. GMP5, 1,
  19744. Connection (
  19745. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19746. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19747. )
  19748. { // Pin list
  19749. 0x0030
  19750. }
  19751. ),
  19752. GX50, 1,
  19753. Connection (
  19754. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19755. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19756. )
  19757. { // Pin list
  19758. 0x0031
  19759. }
  19760. ),
  19761. GX51, 1,
  19762. Connection (
  19763. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19764. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19765. )
  19766. { // Pin list
  19767. 0x0032
  19768. }
  19769. ),
  19770. GEN0, 1,
  19771. Connection (
  19772. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19773. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19774. )
  19775. { // Pin list
  19776. 0x0033
  19777. }
  19778. ),
  19779. GEN1, 1,
  19780. Connection (
  19781. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19782. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19783. )
  19784. { // Pin list
  19785. 0x0034
  19786. }
  19787. ),
  19788. GEN2, 1,
  19789. Connection (
  19790. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19791. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19792. )
  19793. { // Pin list
  19794. 0x0035
  19795. }
  19796. ),
  19797. GEN3, 1,
  19798. Connection (
  19799. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19800. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19801. )
  19802. { // Pin list
  19803. 0x0036
  19804. }
  19805. ),
  19806. GEN4, 1,
  19807. Connection (
  19808. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19809. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19810. )
  19811. { // Pin list
  19812. 0x0037
  19813. }
  19814. ),
  19815. GEN5, 1,
  19816. Connection (
  19817. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19818. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19819. )
  19820. { // Pin list
  19821. 0x0040
  19822. }
  19823. ),
  19824. G12A, 1,
  19825. Connection (
  19826. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19827. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19828. )
  19829. { // Pin list
  19830. 0x0044
  19831. }
  19832. ),
  19833. GSDX, 1,
  19834. Connection (
  19835. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19836. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19837. )
  19838. { // Pin list
  19839. 0x0047
  19840. }
  19841. ),
  19842. G28X, 1,
  19843. Connection (
  19844. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19845. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19846. )
  19847. { // Pin list
  19848. 0x0048
  19849. }
  19850. ),
  19851. G18U, 1,
  19852. Connection (
  19853. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19854. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19855. )
  19856. { // Pin list
  19857. 0x0049
  19858. }
  19859. ),
  19860. G18X, 1,
  19861. Connection (
  19862. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19863. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19864. )
  19865. { // Pin list
  19866. 0x004B
  19867. }
  19868. ),
  19869. G3P3, 1,
  19870. Connection (
  19871. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  19872. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19873. )
  19874. { // Pin list
  19875. 0x004C
  19876. }
  19877. ),
  19878. G12T, 1
  19879. }
  19880.  
  19881. Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
  19882. {
  19883. Name (RBUF, ResourceTemplate ()
  19884. {
  19885. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
  19886. "\\_SB.PCI0.I2C7.PMI2", 0x00, ResourceConsumer, ,
  19887. )
  19888. { // Pin list
  19889. 0x0011
  19890. }
  19891. })
  19892. Return (RBUF) /* \_SB_.PCI0.I2C7.PMI2._AEI.RBUF */
  19893. }
  19894.  
  19895. Method (_E11, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  19896. {
  19897. If ((OSID == One))
  19898. {
  19899. If ((^^^^GPO1.USBI != Zero))
  19900. {
  19901. If ((^^^I2C3.AVBL == One))
  19902. {
  19903. Notify (^^^I2C3.TIDR, 0x87) // Device-Specific
  19904. }
  19905. }
  19906. }
  19907. }
  19908.  
  19909. Name (AVBL, Zero)
  19910. Name (AVBD, Zero)
  19911. Name (AVBG, Zero)
  19912. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  19913. {
  19914. If ((Arg0 == 0x08))
  19915. {
  19916. AVBG = Arg1
  19917. }
  19918.  
  19919. If ((Arg0 == 0x8D))
  19920. {
  19921. AVBL = Arg1
  19922. }
  19923.  
  19924. If ((Arg0 == 0x8C))
  19925. {
  19926. AVBD = Arg1
  19927. }
  19928. }
  19929. }
  19930.  
  19931. Device (PMI5)
  19932. {
  19933. Name (_ADR, Zero) // _ADR: Address
  19934. Name (_HID, "INT34D3") // _HID: Hardware ID
  19935. Name (_CID, "INT34D3") // _CID: Compatible ID
  19936. Name (_DDN, "WHISKEY COVE AIC") // _DDN: DOS Device Name
  19937. Name (_HRV, 0x03) // _HRV: Hardware Revision
  19938. Name (_UID, One) // _UID: Unique ID
  19939. Name (ADEP, Package (0x02)
  19940. {
  19941. I2C7,
  19942. GPO1
  19943. })
  19944. Name (_DEP, Package (0x03) // _DEP: Dependencies
  19945. {
  19946. I2C7,
  19947. GPO1,
  19948. MBID
  19949. })
  19950. Name (ACDC, One)
  19951. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  19952. {
  19953. Name (SBUF, ResourceTemplate ()
  19954. {
  19955. I2cSerialBus (0x004F, ControllerInitiated, 0x000F4240,
  19956. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  19957. 0x00, ResourceConsumer, ,
  19958. )
  19959. I2cSerialBus (0x005E, ControllerInitiated, 0x000F4240,
  19960. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  19961. 0x00, ResourceConsumer, ,
  19962. )
  19963. I2cSerialBus (0x006E, ControllerInitiated, 0x000F4240,
  19964. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  19965. 0x00, ResourceConsumer, ,
  19966. )
  19967. GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
  19968. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  19969. )
  19970. { // Pin list
  19971. 0x000F
  19972. }
  19973. })
  19974. Return (SBUF) /* \_SB_.PCI0.I2C7.PMI5._CRS.SBUF */
  19975. }
  19976.  
  19977. Method (_STA, 0, NotSerialized) // _STA: Status
  19978. {
  19979. If ((PMEN == Zero))
  19980. {
  19981. Return (Zero)
  19982. }
  19983.  
  19984. If ((PMID == 0x03))
  19985. {
  19986. ADBG ("W_COVE")
  19987. Return (0x0F)
  19988. }
  19989.  
  19990. Return (Zero)
  19991. }
  19992.  
  19993. OperationRegion (DPTF, 0x8C, Zero, 0x0100)
  19994. Field (DPTF, DWordAcc, NoLock, Preserve)
  19995. {
  19996. TMP0, 32,
  19997. AX00, 32,
  19998. AX01, 32,
  19999. TMP1, 32,
  20000. AX10, 32,
  20001. AX11, 32,
  20002. TMP2, 32,
  20003. AX20, 32,
  20004. AX21, 32,
  20005. TMP3, 32,
  20006. AX30, 32,
  20007. AX31, 32,
  20008. TMP4, 32,
  20009. AX40, 32,
  20010. AX41, 32,
  20011. TMP5, 32,
  20012. AX50, 32,
  20013. AX51, 32,
  20014. PEN0, 32,
  20015. PEN1, 32,
  20016. PEN2, 32,
  20017. PEN3, 32,
  20018. PEN4, 32,
  20019. PEN5, 32
  20020. }
  20021.  
  20022. OperationRegion (PMOP, 0x8D, Zero, 0x0100)
  20023. Field (PMOP, DWordAcc, NoLock, Preserve)
  20024. {
  20025. V18A, 32,
  20026. V18X, 32,
  20027. VDDQ, 32,
  20028. V12A, 32,
  20029. V12X, 32,
  20030. V28X, 32,
  20031. V33A, 32,
  20032. V3SD, 32,
  20033. VSD, 32,
  20034. VSW2, 32,
  20035. VSW1, 32,
  20036. VUPY, 32,
  20037. VRSO, 32,
  20038. VP1A, 32,
  20039. VP1B, 32,
  20040. VP1F, 32,
  20041. VP2D, 32,
  20042. VP3A, 32,
  20043. VP3B, 32,
  20044. VP4A, 32,
  20045. VP4B, 32,
  20046. VP4C, 32,
  20047. VP4D, 32,
  20048. VP5A, 32,
  20049. VP5B, 32,
  20050. VP6A, 32,
  20051. VP6B, 32,
  20052. VP7A, 32
  20053. }
  20054.  
  20055. OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0100)
  20056. Field (GPOP, ByteAcc, NoLock, Preserve)
  20057. {
  20058. Connection (
  20059. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20060. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20061. )
  20062. { // Pin list
  20063. 0x0020
  20064. }
  20065. ),
  20066. GMP0, 1,
  20067. Connection (
  20068. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20069. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20070. )
  20071. { // Pin list
  20072. 0x0021
  20073. }
  20074. ),
  20075. GX00, 1,
  20076. Connection (
  20077. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20078. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20079. )
  20080. { // Pin list
  20081. 0x0022
  20082. }
  20083. ),
  20084. GX01, 1,
  20085. Connection (
  20086. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20087. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20088. )
  20089. { // Pin list
  20090. 0x0023
  20091. }
  20092. ),
  20093. GMP1, 1,
  20094. Connection (
  20095. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20096. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20097. )
  20098. { // Pin list
  20099. 0x0024
  20100. }
  20101. ),
  20102. GX10, 1,
  20103. Connection (
  20104. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20105. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20106. )
  20107. { // Pin list
  20108. 0x0025
  20109. }
  20110. ),
  20111. GX11, 1,
  20112. Connection (
  20113. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20114. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20115. )
  20116. { // Pin list
  20117. 0x0026
  20118. }
  20119. ),
  20120. GMP2, 1,
  20121. Connection (
  20122. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20123. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20124. )
  20125. { // Pin list
  20126. 0x0027
  20127. }
  20128. ),
  20129. GX20, 1,
  20130. Connection (
  20131. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20132. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20133. )
  20134. { // Pin list
  20135. 0x0028
  20136. }
  20137. ),
  20138. GX21, 1,
  20139. Connection (
  20140. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20141. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20142. )
  20143. { // Pin list
  20144. 0x0029
  20145. }
  20146. ),
  20147. GMP3, 1,
  20148. Connection (
  20149. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20150. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20151. )
  20152. { // Pin list
  20153. 0x002A
  20154. }
  20155. ),
  20156. GX30, 1,
  20157. Connection (
  20158. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20159. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20160. )
  20161. { // Pin list
  20162. 0x002B
  20163. }
  20164. ),
  20165. GX31, 1,
  20166. Connection (
  20167. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20168. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20169. )
  20170. { // Pin list
  20171. 0x002C
  20172. }
  20173. ),
  20174. GMP4, 1,
  20175. Connection (
  20176. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20177. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20178. )
  20179. { // Pin list
  20180. 0x002D
  20181. }
  20182. ),
  20183. GX40, 1,
  20184. Connection (
  20185. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20186. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20187. )
  20188. { // Pin list
  20189. 0x002E
  20190. }
  20191. ),
  20192. GX41, 1,
  20193. Connection (
  20194. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20195. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20196. )
  20197. { // Pin list
  20198. 0x002F
  20199. }
  20200. ),
  20201. GMP5, 1,
  20202. Connection (
  20203. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20204. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20205. )
  20206. { // Pin list
  20207. 0x0030
  20208. }
  20209. ),
  20210. GX50, 1,
  20211. Connection (
  20212. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20213. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20214. )
  20215. { // Pin list
  20216. 0x0031
  20217. }
  20218. ),
  20219. GX51, 1,
  20220. Connection (
  20221. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20222. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20223. )
  20224. { // Pin list
  20225. 0x0032
  20226. }
  20227. ),
  20228. GEN0, 1,
  20229. Connection (
  20230. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20231. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20232. )
  20233. { // Pin list
  20234. 0x0033
  20235. }
  20236. ),
  20237. GEN1, 1,
  20238. Connection (
  20239. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20240. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20241. )
  20242. { // Pin list
  20243. 0x0034
  20244. }
  20245. ),
  20246. GEN2, 1,
  20247. Connection (
  20248. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20249. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20250. )
  20251. { // Pin list
  20252. 0x0035
  20253. }
  20254. ),
  20255. GEN3, 1,
  20256. Connection (
  20257. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20258. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20259. )
  20260. { // Pin list
  20261. 0x0036
  20262. }
  20263. ),
  20264. GEN4, 1,
  20265. Connection (
  20266. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20267. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20268. )
  20269. { // Pin list
  20270. 0x0037
  20271. }
  20272. ),
  20273. GEN5, 1,
  20274. Connection (
  20275. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20276. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20277. )
  20278. { // Pin list
  20279. 0x0040
  20280. }
  20281. ),
  20282. G18A, 1,
  20283. Connection (
  20284. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20285. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20286. )
  20287. { // Pin list
  20288. 0x0041
  20289. }
  20290. ),
  20291. G18X, 1,
  20292. Connection (
  20293. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20294. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20295. )
  20296. { // Pin list
  20297. 0x0042
  20298. }
  20299. ),
  20300. GDDQ, 1,
  20301. Connection (
  20302. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20303. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20304. )
  20305. { // Pin list
  20306. 0x0043
  20307. }
  20308. ),
  20309. G12A, 1,
  20310. Connection (
  20311. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20312. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20313. )
  20314. { // Pin list
  20315. 0x0044
  20316. }
  20317. ),
  20318. G12X, 1,
  20319. Connection (
  20320. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20321. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20322. )
  20323. { // Pin list
  20324. 0x0045
  20325. }
  20326. ),
  20327. G28X, 1,
  20328. Connection (
  20329. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20330. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20331. )
  20332. { // Pin list
  20333. 0x0046
  20334. }
  20335. ),
  20336. G33A, 1,
  20337. Connection (
  20338. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20339. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20340. )
  20341. { // Pin list
  20342. 0x0047
  20343. }
  20344. ),
  20345. G3SD, 1,
  20346. Connection (
  20347. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20348. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20349. )
  20350. { // Pin list
  20351. 0x0048
  20352. }
  20353. ),
  20354. GSD, 1,
  20355. Connection (
  20356. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20357. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20358. )
  20359. { // Pin list
  20360. 0x0049
  20361. }
  20362. ),
  20363. GSW2, 1,
  20364. Connection (
  20365. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20366. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20367. )
  20368. { // Pin list
  20369. 0x004A
  20370. }
  20371. ),
  20372. GSW1, 1,
  20373. Connection (
  20374. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20375. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20376. )
  20377. { // Pin list
  20378. 0x004B
  20379. }
  20380. ),
  20381. GUPY, 1,
  20382. Connection (
  20383. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20384. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20385. )
  20386. { // Pin list
  20387. 0x004C
  20388. }
  20389. ),
  20390. GRS0, 1,
  20391. Connection (
  20392. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20393. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20394. )
  20395. { // Pin list
  20396. 0x004D
  20397. }
  20398. ),
  20399. GP1A, 1,
  20400. Connection (
  20401. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20402. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20403. )
  20404. { // Pin list
  20405. 0x004E
  20406. }
  20407. ),
  20408. GP1B, 1,
  20409. Connection (
  20410. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20411. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20412. )
  20413. { // Pin list
  20414. 0x004F
  20415. }
  20416. ),
  20417. GP1F, 1,
  20418. Connection (
  20419. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20420. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20421. )
  20422. { // Pin list
  20423. 0x0050
  20424. }
  20425. ),
  20426. GP2D, 1,
  20427. Connection (
  20428. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20429. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20430. )
  20431. { // Pin list
  20432. 0x0051
  20433. }
  20434. ),
  20435. GP3A, 1,
  20436. Connection (
  20437. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20438. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20439. )
  20440. { // Pin list
  20441. 0x0052
  20442. }
  20443. ),
  20444. GP3B, 1,
  20445. Connection (
  20446. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20447. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20448. )
  20449. { // Pin list
  20450. 0x0053
  20451. }
  20452. ),
  20453. GP4A, 1,
  20454. Connection (
  20455. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20456. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20457. )
  20458. { // Pin list
  20459. 0x0054
  20460. }
  20461. ),
  20462. GP4B, 1,
  20463. Connection (
  20464. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20465. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20466. )
  20467. { // Pin list
  20468. 0x0055
  20469. }
  20470. ),
  20471. GP4C, 1,
  20472. Connection (
  20473. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20474. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20475. )
  20476. { // Pin list
  20477. 0x0056
  20478. }
  20479. ),
  20480. GP4D, 1,
  20481. Connection (
  20482. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20483. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20484. )
  20485. { // Pin list
  20486. 0x0057
  20487. }
  20488. ),
  20489. GP5A, 1,
  20490. Connection (
  20491. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20492. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20493. )
  20494. { // Pin list
  20495. 0x0058
  20496. }
  20497. ),
  20498. GP5B, 1,
  20499. Connection (
  20500. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20501. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20502. )
  20503. { // Pin list
  20504. 0x0059
  20505. }
  20506. ),
  20507. GP6A, 1,
  20508. Connection (
  20509. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20510. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20511. )
  20512. { // Pin list
  20513. 0x005A
  20514. }
  20515. ),
  20516. GP6B, 1,
  20517. Connection (
  20518. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20519. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20520. )
  20521. { // Pin list
  20522. 0x005B
  20523. }
  20524. ),
  20525. GP7A, 1,
  20526. Connection (
  20527. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20528. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20529. )
  20530. { // Pin list
  20531. 0x005D
  20532. }
  20533. ),
  20534. MOXX, 1,
  20535. Connection (
  20536. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20537. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20538. )
  20539. { // Pin list
  20540. 0x005F
  20541. }
  20542. ),
  20543. GPRW, 1,
  20544. Connection (
  20545. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  20546. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20547. )
  20548. { // Pin list
  20549. 0x0009
  20550. }
  20551. ),
  20552. G1P1, 1
  20553. }
  20554.  
  20555. OperationRegion (REGS, 0x8F, Zero, 0x50)
  20556. Field (REGS, ByteAcc, NoLock, Preserve)
  20557. {
  20558. CLNT, 8,
  20559. SA, 8,
  20560. OFF, 8,
  20561. VAL, 8,
  20562. RWM, 8
  20563. }
  20564.  
  20565. Name (AVBL, Zero)
  20566. Name (AVBD, Zero)
  20567. Name (AVBG, Zero)
  20568. Name (AVBE, Zero)
  20569. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  20570. {
  20571. If ((Arg0 == 0x08))
  20572. {
  20573. AVBG = Arg1
  20574. }
  20575.  
  20576. If ((Arg0 == 0x8D))
  20577. {
  20578. AVBL = Arg1
  20579. }
  20580.  
  20581. If ((Arg0 == 0x8C))
  20582. {
  20583. AVBD = Arg1
  20584. }
  20585.  
  20586. If ((Arg0 == 0x8F))
  20587. {
  20588. AVBE = Arg1
  20589. }
  20590. }
  20591.  
  20592. Method (GET, 3, Serialized)
  20593. {
  20594. If ((AVBE == One))
  20595. {
  20596. CLNT = Arg0
  20597. SA = Arg1
  20598. OFF = Arg2
  20599. RWM = Zero
  20600. If ((AVBG == One))
  20601. {
  20602. GPRW = Zero
  20603. }
  20604. }
  20605.  
  20606. Return (VAL) /* \_SB_.PCI0.I2C7.PMI5.VAL_ */
  20607. }
  20608.  
  20609. Method (SET, 4, Serialized)
  20610. {
  20611. If ((AVBE == One))
  20612. {
  20613. CLNT = Arg0
  20614. SA = Arg1
  20615. OFF = Arg2
  20616. VAL = Arg3
  20617. RWM = One
  20618. If ((AVBG == One))
  20619. {
  20620. GPRW = One
  20621. }
  20622. }
  20623. }
  20624.  
  20625. Method (EOTG, 0, NotSerialized)
  20626. {
  20627. ADBG ("PH2")
  20628. Local0 = GET (One, 0x5E, 0x17)
  20629. Local0 |= 0x40
  20630. SET (One, 0x5E, 0x17, Local0)
  20631. SET (One, 0x5E, 0x25, 0x6B)
  20632. SET (One, 0x5E, 0x26, 0x05)
  20633. SET (One, 0x5E, 0x24, 0x02)
  20634. Local0 = GET (One, 0x5E, 0x28)
  20635. ADBG ("B4 Set")
  20636. ADBG (Local0)
  20637. Local0 &= 0xCF
  20638. SET (One, 0x5E, 0x25, 0x6B)
  20639. SET (One, 0x5E, 0x26, 0x05)
  20640. SET (One, 0x5E, 0x27, Local0)
  20641. SET (One, 0x5E, 0x24, One)
  20642. SET (One, 0x5E, 0x25, 0x6B)
  20643. SET (One, 0x5E, 0x26, 0x05)
  20644. SET (One, 0x5E, 0x24, 0x02)
  20645. Local0 = GET (One, 0x5E, 0x28)
  20646. ADBG ("After Set")
  20647. ADBG ("REG05")
  20648. ADBG (Local0)
  20649. SET (One, 0x5E, 0x25, 0x6B)
  20650. SET (One, 0x5E, 0x26, One)
  20651. SET (One, 0x5E, 0x24, 0x02)
  20652. Local0 = GET (One, 0x5E, 0x28)
  20653. Local0 &= 0xEF
  20654. Local0 |= 0x20
  20655. SET (One, 0x5E, 0x25, 0x6B)
  20656. SET (One, 0x5E, 0x26, One)
  20657. SET (One, 0x5E, 0x27, Local0)
  20658. SET (One, 0x5E, 0x24, One)
  20659. SET (One, 0x5E, 0x25, 0x6B)
  20660. SET (One, 0x5E, 0x26, 0x08)
  20661. SET (One, 0x5E, 0x24, 0x02)
  20662. Local0 = GET (One, 0x5E, 0x28)
  20663. ADBG ("PH3")
  20664. Local0 >>= 0x06
  20665. If ((Local0 == One))
  20666. {
  20667. ADBG ("USB Host")
  20668. }
  20669. ElseIf ((Local0 == 0x03))
  20670. {
  20671. ADBG ("REG08 St OTG")
  20672. }
  20673. }
  20674.  
  20675. Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
  20676. {
  20677. Name (HBUF, ResourceTemplate ()
  20678. {
  20679. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0000,
  20680. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20681. )
  20682. { // Pin list
  20683. 0x001F
  20684. }
  20685. })
  20686. Name (WBUF, ResourceTemplate ()
  20687. {
  20688. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
  20689. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20690. )
  20691. { // Pin list
  20692. 0x0012
  20693. }
  20694. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0000,
  20695. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  20696. )
  20697. { // Pin list
  20698. 0x001F
  20699. }
  20700. })
  20701. If ((((BDID == 0x09) || (BDID == 0x0A)) && (OSID == One)))
  20702. {
  20703. Return (HBUF) /* \_SB_.PCI0.I2C7.PMI5._AEI.HBUF */
  20704. }
  20705. ElseIf (((BDID == 0x08) && (OSID == One)))
  20706. {
  20707. Return (WBUF) /* \_SB_.PCI0.I2C7.PMI5._AEI.WBUF */
  20708. }
  20709. }
  20710.  
  20711. Method (_E12, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  20712. {
  20713. If ((BDID == 0x08))
  20714. {
  20715. Sleep (0x0384)
  20716. If (CondRefOf (\_SB.PCI0.I2C7.BATC, Local1))
  20717. {
  20718. Local0 = GET (One, 0x6E, 0x1E)
  20719. Local0 >>= 0x03
  20720. Local0 &= 0x03
  20721. If ((Local0 != One))
  20722. {
  20723. Local0 = GET (One, 0x5E, 0x29)
  20724. Local0 >>= 0x02
  20725. Local0 &= 0x0F
  20726. Local0 = ^^BATC.INTC ()
  20727. If ((One == Local0))
  20728. {
  20729. ADBG ("BADP1")
  20730. Notify (ADP1, 0x80) // Status Change
  20731. ADBG ("AfADP1")
  20732. Notify (BATC, 0x80) // Status Change
  20733. Notify (BATC, 0x81) // Information Change
  20734. ADBG ("PINTC")
  20735. }
  20736.  
  20737. If (CondRefOf (\_SB.DPTF, Local3))
  20738. {
  20739. If ((One == Local0))
  20740. {
  20741. ADBG ("DPTFNOTIFY")
  20742. Notify (^^^^DPTF, 0x86) // Device-Specific
  20743. Notify (TCHG, 0x80) // Status Change
  20744. }
  20745. }
  20746. }
  20747. }
  20748. }
  20749. }
  20750.  
  20751. Method (_E1F, 0, NotSerialized) // _Exx: Edge-Triggered GPE
  20752. {
  20753. If (((BDID == 0x08) || ((BDID == 0x09) || (BDID == 0x0A))))
  20754. {
  20755. If ((AVBL == One))
  20756. {
  20757. Local0 = GET (One, 0x6E, 0x1E)
  20758. Local0 >>= 0x03
  20759. Local0 &= 0x03
  20760. If ((Local0 == Zero)) {}
  20761. ElseIf ((Local0 == One))
  20762. {
  20763. ADBG ("RID_GND")
  20764. Local0 = GET (One, 0x5E, 0x07)
  20765. Local0 |= One
  20766. ADBG (Local0)
  20767. SET (One, 0x5E, 0x07, Local0)
  20768. CDRH (Zero)
  20769. ADBG ("PH1")
  20770. EOTG ()
  20771. }
  20772. ElseIf ((Local0 == 0x02))
  20773. {
  20774. Local0 = GET (One, 0x6E, 0x1E)
  20775. Local0 >>= 0x03
  20776. Local0 &= 0x03
  20777. If ((Local0 != Zero))
  20778. {
  20779. Local0 = GET (One, 0x5E, 0x07)
  20780. Local0 &= 0xFE
  20781. SET (One, 0x5E, 0x07, Local0)
  20782. Local0 = GET (One, 0x5E, 0x17)
  20783. Local0 |= 0x40
  20784. SET (One, 0x5E, 0x17, Local0)
  20785. SET (One, 0x5E, 0x25, 0x6B)
  20786. SET (One, 0x5E, 0x26, One)
  20787. SET (One, 0x5E, 0x24, 0x02)
  20788. Local0 = GET (One, 0x5E, 0x28)
  20789. Local0 |= 0x10
  20790. Local0 &= 0xDF
  20791. SET (One, 0x5E, 0x25, 0x6B)
  20792. SET (One, 0x5E, 0x26, One)
  20793. SET (One, 0x5E, 0x27, Local0)
  20794. SET (One, 0x5E, 0x24, One)
  20795. Local0 = GET (One, 0x5E, 0x17)
  20796. Local0 &= 0xBF
  20797. SET (One, 0x5E, 0x17, Local0)
  20798. }
  20799. }
  20800. Else
  20801. {
  20802. ADBG ("Reserved")
  20803. If ((DSFG == One))
  20804. {
  20805. CDRH (Zero)
  20806. }
  20807. Else
  20808. {
  20809. CDRD (Zero)
  20810. }
  20811. }
  20812. }
  20813. }
  20814. }
  20815.  
  20816. Method (SRCD, 0, Serialized)
  20817. {
  20818. If ((AVBL == One))
  20819. {
  20820. ADBG ("ACDC")
  20821. ADBG (ACDC)
  20822. Return (ACDC) /* \_SB_.PCI0.I2C7.PMI5.ACDC */
  20823. }
  20824. Else
  20825. {
  20826. ADBG ("SRCD AC, PMIC Unavailable")
  20827. Return (One)
  20828. }
  20829. }
  20830.  
  20831. Name (LPAT, Package (0x3C)
  20832. {
  20833. 0x09E3,
  20834. 0x00076272,
  20835. 0x0A15,
  20836. 0x00058192,
  20837. 0x0A47,
  20838. 0x00042551,
  20839. 0x0A79,
  20840. 0x0003267F,
  20841. 0x0AAB,
  20842. 0x00026A06,
  20843. 0x0ADD,
  20844. 0x0001DD93,
  20845. 0x0B0F,
  20846. 0x000173FB,
  20847. 0x0B41,
  20848. 0x000123EA,
  20849. 0x0B73,
  20850. 0xE6B9,
  20851. 0x0BA5,
  20852. 0xB798,
  20853. 0x0BD7,
  20854. 0x930B,
  20855. 0x0C09,
  20856. 0x767E,
  20857. 0x0C3B,
  20858. 0x600F,
  20859. 0x0C6D,
  20860. 0x4E50,
  20861. 0x0C9F,
  20862. 0x4031,
  20863. 0x0CD1,
  20864. 0x34E3,
  20865. 0x0D03,
  20866. 0x2BC9,
  20867. 0x0D35,
  20868. 0x2470,
  20869. 0x0D67,
  20870. 0x1E76,
  20871. 0x0D99,
  20872. 0x1990,
  20873. 0x0DCB,
  20874. 0x158E,
  20875. 0x0DFD,
  20876. 0x1242,
  20877. 0x0E2F,
  20878. 0x0F84,
  20879. 0x0E61,
  20880. 0x0D3C,
  20881. 0x0E93,
  20882. 0x0B56,
  20883. 0x0EC5,
  20884. 0x09BE,
  20885. 0x0EF7,
  20886. 0x0866,
  20887. 0x0F29,
  20888. 0x0744,
  20889. 0x0F5B,
  20890. 0x064F,
  20891. 0x0F8D,
  20892. 0x057E
  20893. })
  20894. }
  20895.  
  20896. Device (PMIF)
  20897. {
  20898. Name (_ADR, Zero) // _ADR: Address
  20899. Name (_HID, "DMY0001") // _HID: Hardware ID
  20900. Name (_CID, "DMY0001") // _CID: Compatible ID
  20901. Name (_DDN, "Dummy PMIC controller") // _DDN: DOS Device Name
  20902. Name (_HRV, Zero) // _HRV: Hardware Revision
  20903. Name (_UID, One) // _UID: Unique ID
  20904. Name (_DEP, Package (0x01) // _DEP: Dependencies
  20905. {
  20906. I2C7
  20907. })
  20908. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  20909. {
  20910. Name (SBUF, ResourceTemplate ()
  20911. {
  20912. I2cSerialBus (0x005E, ControllerInitiated, 0x000F4240,
  20913. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  20914. 0x00, ResourceConsumer, ,
  20915. )
  20916. Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
  20917. {
  20918. 0x00000043,
  20919. }
  20920. Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
  20921. {
  20922. 0x00000043,
  20923. }
  20924. Interrupt (ResourceConsumer, Level, ActiveHigh, Shared, ,, )
  20925. {
  20926. 0x00000043,
  20927. }
  20928. })
  20929. Return (SBUF) /* \_SB_.PCI0.I2C7.PMIF._CRS.SBUF */
  20930. }
  20931.  
  20932. Method (_STA, 0, NotSerialized) // _STA: Status
  20933. {
  20934. If ((PMEN == Zero))
  20935. {
  20936. Return (Zero)
  20937. }
  20938.  
  20939. If ((PMID == 0xFE))
  20940. {
  20941. ADBG ("DMPMIC")
  20942. Return (0x0F)
  20943. }
  20944.  
  20945. Return (Zero)
  20946. }
  20947. }
  20948.  
  20949. Device (PMIC)
  20950. {
  20951. Name (_ADR, Zero) // _ADR: Address
  20952. Name (_HID, "INT33FD" /* Intel Baytrail Power Management IC */) // _HID: Hardware ID
  20953. Name (_CID, "INT33FD" /* Intel Baytrail Power Management IC */) // _CID: Compatible ID
  20954. Name (_DDN, "CRYSTAL COVE+ AIC") // _DDN: DOS Device Name
  20955. Name (_HRV, 0x03) // _HRV: Hardware Revision
  20956. Name (_UID, One) // _UID: Unique ID
  20957. Name (_DEP, Package (0x02) // _DEP: Dependencies
  20958. {
  20959. I2C7,
  20960. GPO1
  20961. })
  20962. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  20963. {
  20964. Name (SBUF, ResourceTemplate ()
  20965. {
  20966. I2cSerialBus (0x006E, ControllerInitiated, 0x000F4240,
  20967. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  20968. 0x00, ResourceConsumer, ,
  20969. )
  20970. GpioInt (Level, ActiveHigh, Shared, PullDefault, 0x0000,
  20971. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  20972. )
  20973. { // Pin list
  20974. 0x000F
  20975. }
  20976. })
  20977. Return (SBUF) /* \_SB_.PCI0.I2C7.PMIC._CRS.SBUF */
  20978. }
  20979.  
  20980. Method (_STA, 0, NotSerialized) // _STA: Status
  20981. {
  20982. If ((PMEN == Zero))
  20983. {
  20984. Return (Zero)
  20985. }
  20986.  
  20987. If ((PMID == Zero))
  20988. {
  20989. Return (0x0F)
  20990. }
  20991.  
  20992. Return (Zero)
  20993. }
  20994.  
  20995. OperationRegion (DPTF, 0x8C, Zero, 0x0100)
  20996. Field (DPTF, DWordAcc, NoLock, Preserve)
  20997. {
  20998. TMP0, 32,
  20999. AX00, 32,
  21000. AX01, 32,
  21001. TMP1, 32,
  21002. AX10, 32,
  21003. AX11, 32,
  21004. TMP2, 32,
  21005. AX20, 32,
  21006. AX21, 32,
  21007. TMP3, 32,
  21008. AX30, 32,
  21009. AX31, 32,
  21010. TMP4, 32,
  21011. AX40, 32,
  21012. AX41, 32,
  21013. TMP5, 32,
  21014. AX50, 32,
  21015. AX51, 32,
  21016. PEN0, 32,
  21017. PEN1, 32,
  21018. PEN2, 32,
  21019. PEN3, 32,
  21020. PEN4, 32,
  21021. PEN5, 32
  21022. }
  21023.  
  21024. OperationRegion (PMOP, 0x8D, Zero, 0x0100)
  21025. Field (PMOP, DWordAcc, NoLock, Preserve)
  21026. {
  21027. VSYS, 32,
  21028. SYSX, 32,
  21029. SYSU, 32,
  21030. SYSS, 32,
  21031. V50S, 32,
  21032. HOST, 32,
  21033. VBUS, 32,
  21034. HDMI, 32,
  21035. S285, 32,
  21036. X285, 32,
  21037. V33A, 32,
  21038. V33S, 32,
  21039. V33U, 32,
  21040. V33I, 32,
  21041. V18A, 32,
  21042. REFQ, 32,
  21043. V12A, 32,
  21044. V18S, 32,
  21045. V18X, 32,
  21046. V18U, 32,
  21047. V12X, 32,
  21048. V12S, 32,
  21049. V10A, 32,
  21050. V10S, 32,
  21051. V10X, 32,
  21052. V105, 32,
  21053. V33X, 32
  21054. }
  21055.  
  21056. OperationRegion (GPOP, GeneralPurposeIo, Zero, 0x0100)
  21057. Field (GPOP, ByteAcc, NoLock, Preserve)
  21058. {
  21059. Connection (
  21060. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21061. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21062. )
  21063. { // Pin list
  21064. 0x0020
  21065. }
  21066. ),
  21067. GMP0, 1,
  21068. Connection (
  21069. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21070. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21071. )
  21072. { // Pin list
  21073. 0x0021
  21074. }
  21075. ),
  21076. GX00, 1,
  21077. Connection (
  21078. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21079. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21080. )
  21081. { // Pin list
  21082. 0x0022
  21083. }
  21084. ),
  21085. GX01, 1,
  21086. Connection (
  21087. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21088. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21089. )
  21090. { // Pin list
  21091. 0x0023
  21092. }
  21093. ),
  21094. GMP1, 1,
  21095. Connection (
  21096. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21097. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21098. )
  21099. { // Pin list
  21100. 0x0024
  21101. }
  21102. ),
  21103. GX10, 1,
  21104. Connection (
  21105. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21106. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21107. )
  21108. { // Pin list
  21109. 0x0025
  21110. }
  21111. ),
  21112. GX11, 1,
  21113. Connection (
  21114. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21115. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21116. )
  21117. { // Pin list
  21118. 0x0026
  21119. }
  21120. ),
  21121. GMP2, 1,
  21122. Connection (
  21123. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21124. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21125. )
  21126. { // Pin list
  21127. 0x0027
  21128. }
  21129. ),
  21130. GX20, 1,
  21131. Connection (
  21132. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21133. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21134. )
  21135. { // Pin list
  21136. 0x0028
  21137. }
  21138. ),
  21139. GX21, 1,
  21140. Connection (
  21141. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21142. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21143. )
  21144. { // Pin list
  21145. 0x0029
  21146. }
  21147. ),
  21148. GMP3, 1,
  21149. Connection (
  21150. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21151. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21152. )
  21153. { // Pin list
  21154. 0x002A
  21155. }
  21156. ),
  21157. GX30, 1,
  21158. Connection (
  21159. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21160. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21161. )
  21162. { // Pin list
  21163. 0x002B
  21164. }
  21165. ),
  21166. GX31, 1,
  21167. Connection (
  21168. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21169. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21170. )
  21171. { // Pin list
  21172. 0x002C
  21173. }
  21174. ),
  21175. GMP4, 1,
  21176. Connection (
  21177. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21178. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21179. )
  21180. { // Pin list
  21181. 0x002D
  21182. }
  21183. ),
  21184. GX40, 1,
  21185. Connection (
  21186. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21187. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21188. )
  21189. { // Pin list
  21190. 0x002E
  21191. }
  21192. ),
  21193. GX41, 1,
  21194. Connection (
  21195. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21196. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21197. )
  21198. { // Pin list
  21199. 0x002F
  21200. }
  21201. ),
  21202. GMP5, 1,
  21203. Connection (
  21204. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21205. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21206. )
  21207. { // Pin list
  21208. 0x0030
  21209. }
  21210. ),
  21211. GX50, 1,
  21212. Connection (
  21213. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21214. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21215. )
  21216. { // Pin list
  21217. 0x0031
  21218. }
  21219. ),
  21220. GX51, 1,
  21221. Connection (
  21222. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21223. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21224. )
  21225. { // Pin list
  21226. 0x0032
  21227. }
  21228. ),
  21229. GEN0, 1,
  21230. Connection (
  21231. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21232. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21233. )
  21234. { // Pin list
  21235. 0x0033
  21236. }
  21237. ),
  21238. GEN1, 1,
  21239. Connection (
  21240. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21241. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21242. )
  21243. { // Pin list
  21244. 0x0034
  21245. }
  21246. ),
  21247. GEN2, 1,
  21248. Connection (
  21249. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21250. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21251. )
  21252. { // Pin list
  21253. 0x0035
  21254. }
  21255. ),
  21256. GEN3, 1,
  21257. Connection (
  21258. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21259. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21260. )
  21261. { // Pin list
  21262. 0x0036
  21263. }
  21264. ),
  21265. GEN4, 1,
  21266. Connection (
  21267. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21268. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21269. )
  21270. { // Pin list
  21271. 0x0037
  21272. }
  21273. ),
  21274. GEN5, 1,
  21275. Connection (
  21276. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21277. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21278. )
  21279. { // Pin list
  21280. 0x0040
  21281. }
  21282. ),
  21283. GSYS, 1,
  21284. Connection (
  21285. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21286. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21287. )
  21288. { // Pin list
  21289. 0x0041
  21290. }
  21291. ),
  21292. GYSX, 1,
  21293. Connection (
  21294. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21295. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21296. )
  21297. { // Pin list
  21298. 0x0042
  21299. }
  21300. ),
  21301. GYSU, 1,
  21302. Connection (
  21303. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21304. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21305. )
  21306. { // Pin list
  21307. 0x0043
  21308. }
  21309. ),
  21310. GYSS, 1,
  21311. Connection (
  21312. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21313. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21314. )
  21315. { // Pin list
  21316. 0x0044
  21317. }
  21318. ),
  21319. G50S, 1,
  21320. Connection (
  21321. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21322. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21323. )
  21324. { // Pin list
  21325. 0x0045
  21326. }
  21327. ),
  21328. GOST, 1,
  21329. Connection (
  21330. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21331. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21332. )
  21333. { // Pin list
  21334. 0x0046
  21335. }
  21336. ),
  21337. GBUS, 1,
  21338. Connection (
  21339. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21340. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21341. )
  21342. { // Pin list
  21343. 0x0047
  21344. }
  21345. ),
  21346. GDMI, 1,
  21347. Connection (
  21348. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21349. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21350. )
  21351. { // Pin list
  21352. 0x0048
  21353. }
  21354. ),
  21355. G28S, 1,
  21356. Connection (
  21357. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21358. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21359. )
  21360. { // Pin list
  21361. 0x0049
  21362. }
  21363. ),
  21364. G28X, 1,
  21365. Connection (
  21366. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21367. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21368. )
  21369. { // Pin list
  21370. 0x004A
  21371. }
  21372. ),
  21373. G33A, 1,
  21374. Connection (
  21375. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21376. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21377. )
  21378. { // Pin list
  21379. 0x004B
  21380. }
  21381. ),
  21382. G33S, 1,
  21383. Connection (
  21384. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21385. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21386. )
  21387. { // Pin list
  21388. 0x004C
  21389. }
  21390. ),
  21391. G33U, 1,
  21392. Connection (
  21393. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21394. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21395. )
  21396. { // Pin list
  21397. 0x004D
  21398. }
  21399. ),
  21400. G33I, 1,
  21401. Connection (
  21402. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21403. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21404. )
  21405. { // Pin list
  21406. 0x004E
  21407. }
  21408. ),
  21409. G18A, 1,
  21410. Connection (
  21411. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21412. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21413. )
  21414. { // Pin list
  21415. 0x004F
  21416. }
  21417. ),
  21418. GEFQ, 1,
  21419. Connection (
  21420. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21421. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21422. )
  21423. { // Pin list
  21424. 0x0050
  21425. }
  21426. ),
  21427. G12A, 1,
  21428. Connection (
  21429. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21430. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21431. )
  21432. { // Pin list
  21433. 0x0051
  21434. }
  21435. ),
  21436. G18S, 1,
  21437. Connection (
  21438. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21439. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21440. )
  21441. { // Pin list
  21442. 0x0052
  21443. }
  21444. ),
  21445. G18X, 1,
  21446. Connection (
  21447. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21448. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21449. )
  21450. { // Pin list
  21451. 0x0053
  21452. }
  21453. ),
  21454. G18U, 1,
  21455. Connection (
  21456. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21457. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21458. )
  21459. { // Pin list
  21460. 0x0054
  21461. }
  21462. ),
  21463. G12X, 1,
  21464. Connection (
  21465. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21466. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21467. )
  21468. { // Pin list
  21469. 0x0055
  21470. }
  21471. ),
  21472. G12S, 1,
  21473. Connection (
  21474. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21475. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21476. )
  21477. { // Pin list
  21478. 0x0056
  21479. }
  21480. ),
  21481. G10A, 1,
  21482. Connection (
  21483. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21484. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21485. )
  21486. { // Pin list
  21487. 0x0057
  21488. }
  21489. ),
  21490. G10S, 1,
  21491. Connection (
  21492. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21493. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21494. )
  21495. { // Pin list
  21496. 0x0058
  21497. }
  21498. ),
  21499. G10X, 1,
  21500. Connection (
  21501. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21502. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21503. )
  21504. { // Pin list
  21505. 0x0059
  21506. }
  21507. ),
  21508. G105, 1,
  21509. Connection (
  21510. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21511. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21512. )
  21513. { // Pin list
  21514. 0x005E
  21515. }
  21516. ),
  21517. FCOT, 1,
  21518. Connection (
  21519. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21520. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21521. )
  21522. { // Pin list
  21523. 0x005D
  21524. }
  21525. ),
  21526. MOXX, 1,
  21527. Connection (
  21528. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21529. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21530. )
  21531. { // Pin list
  21532. 0x000B
  21533. }
  21534. ),
  21535. TCON, 1,
  21536. Connection (
  21537. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  21538. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  21539. )
  21540. { // Pin list
  21541. 0x005A
  21542. }
  21543. ),
  21544. G33X, 1
  21545. }
  21546.  
  21547. Name (AVBL, Zero)
  21548. Name (AVBD, Zero)
  21549. Name (AVBG, Zero)
  21550. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  21551. {
  21552. If ((Arg0 == 0x08))
  21553. {
  21554. AVBG = Arg1
  21555. }
  21556.  
  21557. If ((Arg0 == 0x8D))
  21558. {
  21559. AVBL = Arg1
  21560. }
  21561.  
  21562. If ((Arg0 == 0x8C))
  21563. {
  21564. AVBD = Arg1
  21565. }
  21566. }
  21567.  
  21568. Name (LPAT, Package (0x30)
  21569. {
  21570. 0x09E3,
  21571. 0x03D1,
  21572. 0x0A15,
  21573. 0x03C1,
  21574. 0x0A47,
  21575. 0x03AD,
  21576. 0x0A79,
  21577. 0x0395,
  21578. 0x0AAB,
  21579. 0x0377,
  21580. 0x0ADD,
  21581. 0x0355,
  21582. 0x0B0F,
  21583. 0x032D,
  21584. 0x0B41,
  21585. 0x0301,
  21586. 0x0B73,
  21587. 0x02D0,
  21588. 0x0BA5,
  21589. 0x029D,
  21590. 0x0BD7,
  21591. 0x0267,
  21592. 0x0C09,
  21593. 0x0231,
  21594. 0x0C3B,
  21595. 0x01FC,
  21596. 0x0C6D,
  21597. 0x01C8,
  21598. 0x0C9F,
  21599. 0x0197,
  21600. 0x0CD1,
  21601. 0x0165,
  21602. 0x0D03,
  21603. 0x013B,
  21604. 0x0D35,
  21605. 0x0115,
  21606. 0x0D67,
  21607. 0xF3,
  21608. 0x0D99,
  21609. 0xD4,
  21610. 0x0DCB,
  21611. 0xBA,
  21612. 0x0DFD,
  21613. 0xA2,
  21614. 0x0E2F,
  21615. 0x8C,
  21616. 0x0E93,
  21617. 0x6B
  21618. })
  21619. }
  21620. }
  21621.  
  21622. Scope (PCI0.I2C1)
  21623. {
  21624. Device (IMP3)
  21625. {
  21626. Name (_ADR, Zero) // _ADR: Address
  21627. Name (_HID, "IMPJ0003") // _HID: Hardware ID
  21628. Name (_CID, "IMPJ0003") // _CID: Compatible ID
  21629. Name (_UID, One) // _UID: Unique ID
  21630. Method (_STA, 0, NotSerialized) // _STA: Status
  21631. {
  21632. If ((BDID == One))
  21633. {
  21634. Return (Zero)
  21635. }
  21636.  
  21637. If ((PSDE == 0x02))
  21638. {
  21639. Return (0x0F)
  21640. }
  21641.  
  21642. Return (Zero)
  21643. }
  21644.  
  21645. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  21646. {
  21647. Name (SBUF, ResourceTemplate ()
  21648. {
  21649. I2cSerialBus (0x006E, ControllerInitiated, 0x000186A0,
  21650. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  21651. 0x00, ResourceConsumer, ,
  21652. )
  21653. })
  21654. Return (SBUF) /* \_SB_.PCI0.I2C1.IMP3._CRS.SBUF */
  21655. }
  21656. }
  21657. }
  21658.  
  21659. Scope (PCI0.I2C2)
  21660. {
  21661. Device (IMP3)
  21662. {
  21663. Name (_ADR, Zero) // _ADR: Address
  21664. Name (_HID, "IMPJ0003") // _HID: Hardware ID
  21665. Name (_CID, "IMPJ0003") // _CID: Compatible ID
  21666. Name (_UID, One) // _UID: Unique ID
  21667. Method (_STA, 0, NotSerialized) // _STA: Status
  21668. {
  21669. If ((BDID != One))
  21670. {
  21671. Return (Zero)
  21672. }
  21673.  
  21674. If ((PSDE == 0x02))
  21675. {
  21676. Return (0x0F)
  21677. }
  21678.  
  21679. Return (Zero)
  21680. }
  21681.  
  21682. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  21683. {
  21684. Name (SBUF, ResourceTemplate ()
  21685. {
  21686. I2cSerialBus (0x006E, ControllerInitiated, 0x000186A0,
  21687. AddressingMode7Bit, "\\_SB.PCI0.I2C2",
  21688. 0x00, ResourceConsumer, ,
  21689. )
  21690. })
  21691. Return (SBUF) /* \_SB_.PCI0.I2C2.IMP3._CRS.SBUF */
  21692. }
  21693. }
  21694. }
  21695.  
  21696. PowerResource (P28X, 0x05, 0x0008)
  21697. {
  21698. Name (_DEP, Package (0x02) // _DEP: Dependencies
  21699. {
  21700. ^PCI0.I2C7,
  21701. ^PCI0.I2C7.PMIC
  21702. })
  21703. Method (_STA, 0, NotSerialized) // _STA: Status
  21704. {
  21705. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21706. {
  21707. ^^PCI0.I2C7.PMIC.G28X = Zero
  21708. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21709. {
  21710. Return (^^PCI0.I2C7.PMIC.X285) /* \_SB_.PCI0.I2C7.PMIC.X285 */
  21711. }
  21712. }
  21713.  
  21714. Return (Zero)
  21715. }
  21716.  
  21717. Method (_ON, 0, NotSerialized) // _ON_: Power On
  21718. {
  21719. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21720. {
  21721. ^^PCI0.I2C7.PMIC.X285 = One
  21722. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21723. {
  21724. ^^PCI0.I2C7.PMIC.G28X = One
  21725. Sleep (0x1E)
  21726. }
  21727. }
  21728. }
  21729.  
  21730. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  21731. {
  21732. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21733. {
  21734. ^^PCI0.I2C7.PMIC.X285 = Zero
  21735. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21736. {
  21737. ^^PCI0.I2C7.PMIC.G28X = One
  21738. Sleep (0x1E)
  21739. }
  21740. }
  21741. }
  21742. }
  21743.  
  21744. PowerResource (P18X, 0x05, 0x0002)
  21745. {
  21746. Name (_DEP, Package (0x02) // _DEP: Dependencies
  21747. {
  21748. ^PCI0.I2C7,
  21749. ^PCI0.I2C7.PMIC
  21750. })
  21751. Method (_STA, 0, NotSerialized) // _STA: Status
  21752. {
  21753. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21754. {
  21755. ^^PCI0.I2C7.PMIC.G18X = Zero
  21756. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21757. {
  21758. Return (^^PCI0.I2C7.PMIC.V18X) /* \_SB_.PCI0.I2C7.PMIC.V18X */
  21759. }
  21760. }
  21761.  
  21762. Return (Zero)
  21763. }
  21764.  
  21765. Method (_ON, 0, NotSerialized) // _ON_: Power On
  21766. {
  21767. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21768. {
  21769. ^^PCI0.I2C7.PMIC.V18X = One
  21770. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21771. {
  21772. ^^PCI0.I2C7.PMIC.G18X = One
  21773. Sleep (0x1E)
  21774. }
  21775. }
  21776. }
  21777.  
  21778. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  21779. {
  21780. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21781. {
  21782. ^^PCI0.I2C7.PMIC.V18X = Zero
  21783. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21784. {
  21785. ^^PCI0.I2C7.PMIC.G18X = One
  21786. Sleep (0x1E)
  21787. }
  21788. }
  21789. }
  21790. }
  21791.  
  21792. PowerResource (P12X, 0x05, 0x0000)
  21793. {
  21794. Name (_DEP, Package (0x02) // _DEP: Dependencies
  21795. {
  21796. ^PCI0.I2C7,
  21797. ^PCI0.I2C7.PMIC
  21798. })
  21799. Method (_STA, 0, NotSerialized) // _STA: Status
  21800. {
  21801. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21802. {
  21803. ^^PCI0.I2C7.PMIC.G12X = Zero
  21804. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21805. {
  21806. Return (^^PCI0.I2C7.PMIC.V12X) /* \_SB_.PCI0.I2C7.PMIC.V12X */
  21807. }
  21808. }
  21809.  
  21810. Return (Zero)
  21811. }
  21812.  
  21813. Method (_ON, 0, NotSerialized) // _ON_: Power On
  21814. {
  21815. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21816. {
  21817. ^^PCI0.I2C7.PMIC.V12X = One
  21818. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21819. {
  21820. ^^PCI0.I2C7.PMIC.G12X = One
  21821. Sleep (0x1E)
  21822. }
  21823. }
  21824. }
  21825.  
  21826. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  21827. {
  21828. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  21829. {
  21830. ^^PCI0.I2C7.PMIC.V12X = Zero
  21831. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  21832. {
  21833. ^^PCI0.I2C7.PMIC.G12X = One
  21834. Sleep (0x1E)
  21835. }
  21836. }
  21837. }
  21838. }
  21839.  
  21840. PowerResource (P28P, 0x05, 0x0000)
  21841. {
  21842. Name (_DEP, Package (0x02) // _DEP: Dependencies
  21843. {
  21844. ^PCI0.I2C7,
  21845. ^PCI0.I2C7.PMI1
  21846. })
  21847. Method (_STA, 0, NotSerialized) // _STA: Status
  21848. {
  21849. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21850. {
  21851. ^^PCI0.I2C7.PMI1.G28X = Zero
  21852. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21853. {
  21854. Return (^^PCI0.I2C7.PMI1.ALD1) /* \_SB_.PCI0.I2C7.PMI1.ALD1 */
  21855. }
  21856. }
  21857.  
  21858. Return (Zero)
  21859. }
  21860.  
  21861. Method (_ON, 0, NotSerialized) // _ON_: Power On
  21862. {
  21863. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21864. {
  21865. ^^PCI0.I2C7.PMI1.ALD1 = One
  21866. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21867. {
  21868. ^^PCI0.I2C7.PMI1.G28X = One
  21869. Sleep (0x1E)
  21870. }
  21871. }
  21872. }
  21873.  
  21874. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  21875. {
  21876. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21877. {
  21878. ^^PCI0.I2C7.PMI1.ALD1 = Zero
  21879. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21880. {
  21881. ^^PCI0.I2C7.PMI1.G28X = One
  21882. Sleep (0x1E)
  21883. }
  21884. }
  21885. }
  21886. }
  21887.  
  21888. PowerResource (P18P, 0x05, 0x0000)
  21889. {
  21890. Name (_DEP, Package (0x02) // _DEP: Dependencies
  21891. {
  21892. ^PCI0.I2C7,
  21893. ^PCI0.I2C7.PMI1
  21894. })
  21895. Method (_STA, 0, NotSerialized) // _STA: Status
  21896. {
  21897. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21898. {
  21899. ^^PCI0.I2C7.PMI1.G18X = Zero
  21900. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21901. {
  21902. Return (^^PCI0.I2C7.PMI1.ELD2) /* \_SB_.PCI0.I2C7.PMI1.ELD2 */
  21903. }
  21904. }
  21905.  
  21906. Return (Zero)
  21907. }
  21908.  
  21909. Method (_ON, 0, NotSerialized) // _ON_: Power On
  21910. {
  21911. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21912. {
  21913. ^^PCI0.I2C7.PMI1.ELD2 = One
  21914. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21915. {
  21916. ^^PCI0.I2C7.PMI1.G18X = One
  21917. Sleep (0x1E)
  21918. }
  21919. }
  21920. }
  21921.  
  21922. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  21923. {
  21924. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21925. {
  21926. ^^PCI0.I2C7.PMI1.ELD2 = Zero
  21927. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21928. {
  21929. ^^PCI0.I2C7.PMI1.G18X = One
  21930. Sleep (0x1E)
  21931. }
  21932. }
  21933. }
  21934. }
  21935.  
  21936. PowerResource (P12P, 0x05, 0x0000)
  21937. {
  21938. Name (_DEP, Package (0x02) // _DEP: Dependencies
  21939. {
  21940. ^PCI0.I2C7,
  21941. ^PCI0.I2C7.PMI1
  21942. })
  21943. Method (_STA, 0, NotSerialized) // _STA: Status
  21944. {
  21945. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21946. {
  21947. ^^PCI0.I2C7.PMI1.G12X = Zero
  21948. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21949. {
  21950. Return (^^PCI0.I2C7.PMI1.FLD2) /* \_SB_.PCI0.I2C7.PMI1.FLD2 */
  21951. }
  21952. }
  21953.  
  21954. Return (Zero)
  21955. }
  21956.  
  21957. Method (_ON, 0, NotSerialized) // _ON_: Power On
  21958. {
  21959. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21960. {
  21961. ^^PCI0.I2C7.PMI1.FLD2 = One
  21962. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21963. {
  21964. ^^PCI0.I2C7.PMI1.G12X = One
  21965. Sleep (0x1E)
  21966. }
  21967. }
  21968. }
  21969.  
  21970. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  21971. {
  21972. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21973. {
  21974. ^^PCI0.I2C7.PMI1.FLD2 = Zero
  21975. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21976. {
  21977. ^^PCI0.I2C7.PMI1.G12X = One
  21978. Sleep (0x1E)
  21979. }
  21980. }
  21981. }
  21982. }
  21983.  
  21984. PowerResource (P19X, 0x05, 0x0000)
  21985. {
  21986. Name (_DEP, Package (0x02) // _DEP: Dependencies
  21987. {
  21988. ^PCI0.I2C7,
  21989. ^PCI0.I2C7.PMI1
  21990. })
  21991. Method (_STA, 0, NotSerialized) // _STA: Status
  21992. {
  21993. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  21994. {
  21995. ^^PCI0.I2C7.PMI1.GSDX = Zero
  21996. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  21997. {
  21998. Return (^^PCI0.I2C7.PMI1.GPI1) /* \_SB_.PCI0.I2C7.PMI1.GPI1 */
  21999. }
  22000. }
  22001.  
  22002. Return (Zero)
  22003. }
  22004.  
  22005. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22006. {
  22007. If ((OSID == 0x04))
  22008. {
  22009. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  22010. {
  22011. ^^PCI0.I2C7.PMI1.GPI1 = One
  22012. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  22013. {
  22014. ^^PCI0.I2C7.PMI1.GSDX = One
  22015. Sleep (0x1E)
  22016. }
  22017. }
  22018. }
  22019. }
  22020.  
  22021. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22022. {
  22023. If ((OSID == 0x04))
  22024. {
  22025. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  22026. {
  22027. ^^PCI0.I2C7.PMI1.GPI1 = Zero
  22028. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  22029. {
  22030. ^^PCI0.I2C7.PMI1.GSDX = One
  22031. Sleep (0x1E)
  22032. }
  22033. }
  22034. }
  22035. }
  22036. }
  22037.  
  22038. PowerResource (P06X, 0x05, 0x0000)
  22039. {
  22040. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22041. {
  22042. ^PCI0.I2C7,
  22043. ^PCI0.I2C7.PMI1
  22044. })
  22045. Method (_STA, 0, NotSerialized) // _STA: Status
  22046. {
  22047. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  22048. {
  22049. ^^PCI0.I2C7.PMI1.G06X = Zero
  22050. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  22051. {
  22052. Return (^^PCI0.I2C7.PMI1.DLD4) /* \_SB_.PCI0.I2C7.PMI1.DLD4 */
  22053. }
  22054. }
  22055.  
  22056. Return (Zero)
  22057. }
  22058.  
  22059. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22060. {
  22061. If ((OSID == 0x04))
  22062. {
  22063. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  22064. {
  22065. ^^PCI0.I2C7.PMI1.DLD4 = One
  22066. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  22067. {
  22068. ^^PCI0.I2C7.PMI1.G06X = One
  22069. Sleep (0x1E)
  22070. }
  22071. }
  22072. }
  22073. }
  22074.  
  22075. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22076. {
  22077. If ((OSID == 0x04))
  22078. {
  22079. If ((^^PCI0.I2C7.PMI1.AVBL == One))
  22080. {
  22081. ^^PCI0.I2C7.PMI1.DLD4 = One
  22082. If ((^^PCI0.I2C7.PMI1.AVBG == One))
  22083. {
  22084. ^^PCI0.I2C7.PMI1.G06X = One
  22085. Sleep (0x1E)
  22086. }
  22087. }
  22088. }
  22089. }
  22090. }
  22091.  
  22092. PowerResource (P12A, 0x05, 0x0000)
  22093. {
  22094. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22095. {
  22096. ^PCI0.I2C7,
  22097. ^PCI0.I2C7.PMI2
  22098. })
  22099. Method (_STA, 0, NotSerialized) // _STA: Status
  22100. {
  22101. If ((OSID == 0x04))
  22102. {
  22103. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22104. {
  22105. ^^PCI0.I2C7.PMI2.G12A = Zero
  22106. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22107. {
  22108. Return (^^PCI0.I2C7.PMI2.LDO1) /* \_SB_.PCI0.I2C7.PMI2.LDO1 */
  22109. }
  22110. }
  22111. }
  22112.  
  22113. Return (Zero)
  22114. }
  22115.  
  22116. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22117. {
  22118. If ((OSID == 0x04))
  22119. {
  22120. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22121. {
  22122. ^^PCI0.I2C7.PMI2.LDO1 = One
  22123. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22124. {
  22125. ^^PCI0.I2C7.PMI2.G12A = One
  22126. Sleep (0x1E)
  22127. }
  22128. }
  22129. }
  22130. }
  22131.  
  22132. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22133. {
  22134. If ((OSID == 0x04))
  22135. {
  22136. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22137. {
  22138. ^^PCI0.I2C7.PMI2.LDO1 = Zero
  22139. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22140. {
  22141. ^^PCI0.I2C7.PMI2.G12A = One
  22142. Sleep (0x1E)
  22143. }
  22144. }
  22145. }
  22146. }
  22147. }
  22148.  
  22149. PowerResource (P28T, 0x05, 0x0000)
  22150. {
  22151. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22152. {
  22153. ^PCI0.I2C7,
  22154. ^PCI0.I2C7.PMI2
  22155. })
  22156. Method (_STA, 0, NotSerialized) // _STA: Status
  22157. {
  22158. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22159. {
  22160. ^^PCI0.I2C7.PMI2.G28X = Zero
  22161. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22162. {
  22163. Return (^^PCI0.I2C7.PMI2.LDO9) /* \_SB_.PCI0.I2C7.PMI2.LDO9 */
  22164. }
  22165. }
  22166.  
  22167. Return (Zero)
  22168. }
  22169.  
  22170. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22171. {
  22172. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22173. {
  22174. ^^PCI0.I2C7.PMI2.LDO9 = One
  22175. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22176. {
  22177. ^^PCI0.I2C7.PMI2.G28X = One
  22178. Sleep (0x1E)
  22179. }
  22180. }
  22181. }
  22182.  
  22183. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22184. {
  22185. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22186. {
  22187. ^^PCI0.I2C7.PMI2.LDO9 = Zero
  22188. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22189. {
  22190. ^^PCI0.I2C7.PMI2.G28X = One
  22191. Sleep (0x1E)
  22192. }
  22193. }
  22194. }
  22195. }
  22196.  
  22197. PowerResource (P18D, 0x05, 0x0000)
  22198. {
  22199. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22200. {
  22201. ^PCI0.I2C7,
  22202. ^PCI0.I2C7.PMI2
  22203. })
  22204. Method (_STA, 0, NotSerialized) // _STA: Status
  22205. {
  22206. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22207. {
  22208. ^^PCI0.I2C7.PMI2.G18U = Zero
  22209. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22210. {
  22211. Return (^^PCI0.I2C7.PMI2.LD10) /* \_SB_.PCI0.I2C7.PMI2.LD10 */
  22212. }
  22213. }
  22214.  
  22215. Return (Zero)
  22216. }
  22217.  
  22218. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22219. {
  22220. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22221. {
  22222. ^^PCI0.I2C7.PMI2.LD10 = One
  22223. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22224. {
  22225. ^^PCI0.I2C7.PMI2.G18U = One
  22226. Sleep (0x1E)
  22227. }
  22228. }
  22229. }
  22230.  
  22231. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22232. {
  22233. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22234. {
  22235. ^^PCI0.I2C7.PMI2.LD10 = Zero
  22236. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22237. {
  22238. ^^PCI0.I2C7.PMI2.G18U = One
  22239. Sleep (0x1E)
  22240. }
  22241. }
  22242. }
  22243. }
  22244.  
  22245. PowerResource (P18T, 0x05, 0x0000)
  22246. {
  22247. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22248. {
  22249. ^PCI0.I2C7,
  22250. ^PCI0.I2C7.PMI2
  22251. })
  22252. Method (_STA, 0, NotSerialized) // _STA: Status
  22253. {
  22254. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22255. {
  22256. ^^PCI0.I2C7.PMI2.G18X = Zero
  22257. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22258. {
  22259. Return (^^PCI0.I2C7.PMI2.LD11) /* \_SB_.PCI0.I2C7.PMI2.LD11 */
  22260. }
  22261. }
  22262.  
  22263. Return (Zero)
  22264. }
  22265.  
  22266. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22267. {
  22268. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22269. {
  22270. ^^PCI0.I2C7.PMI2.LD11 = One
  22271. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22272. {
  22273. ^^PCI0.I2C7.PMI2.G18X = One
  22274. Sleep (0x1E)
  22275. }
  22276. }
  22277. }
  22278.  
  22279. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22280. {
  22281. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22282. {
  22283. ^^PCI0.I2C7.PMI2.LD11 = Zero
  22284. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22285. {
  22286. ^^PCI0.I2C7.PMI2.G18X = One
  22287. Sleep (0x1E)
  22288. }
  22289. }
  22290. }
  22291. }
  22292.  
  22293. PowerResource (P3P3, 0x05, 0x0000)
  22294. {
  22295. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22296. {
  22297. ^PCI0.I2C7,
  22298. ^PCI0.I2C7.PMI2
  22299. })
  22300. Method (_STA, 0, NotSerialized) // _STA: Status
  22301. {
  22302. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22303. {
  22304. ^^PCI0.I2C7.PMI2.G3P3 = Zero
  22305. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22306. {
  22307. Return (^^PCI0.I2C7.PMI2.LD13) /* \_SB_.PCI0.I2C7.PMI2.LD13 */
  22308. }
  22309. }
  22310.  
  22311. Return (Zero)
  22312. }
  22313.  
  22314. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22315. {
  22316. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22317. {
  22318. ^^PCI0.I2C7.PMI2.LD13 = One
  22319. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22320. {
  22321. ^^PCI0.I2C7.PMI2.G3P3 = One
  22322. Sleep (0x1E)
  22323. }
  22324. }
  22325. }
  22326.  
  22327. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22328. {
  22329. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22330. {
  22331. ^^PCI0.I2C7.PMI2.LD13 = Zero
  22332. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22333. {
  22334. ^^PCI0.I2C7.PMI2.G3P3 = One
  22335. Sleep (0x1E)
  22336. }
  22337. }
  22338. }
  22339. }
  22340.  
  22341. PowerResource (P12T, 0x05, 0x0000)
  22342. {
  22343. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22344. {
  22345. ^PCI0.I2C7,
  22346. ^PCI0.I2C7.PMI2
  22347. })
  22348. Method (_STA, 0, NotSerialized) // _STA: Status
  22349. {
  22350. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22351. {
  22352. ^^PCI0.I2C7.PMI2.G12T = Zero
  22353. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22354. {
  22355. Return (^^PCI0.I2C7.PMI2.LD14) /* \_SB_.PCI0.I2C7.PMI2.LD14 */
  22356. }
  22357. }
  22358.  
  22359. Return (Zero)
  22360. }
  22361.  
  22362. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22363. {
  22364. If ((OSID == 0x04))
  22365. {
  22366. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22367. {
  22368. ^^PCI0.I2C7.PMI2.LD14 = One
  22369. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22370. {
  22371. ^^PCI0.I2C7.PMI2.G12T = One
  22372. Sleep (0x1E)
  22373. }
  22374. }
  22375. }
  22376. }
  22377.  
  22378. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22379. {
  22380. If ((OSID == 0x04))
  22381. {
  22382. If ((^^PCI0.I2C7.PMI2.AVBL == One))
  22383. {
  22384. ^^PCI0.I2C7.PMI2.LD14 = Zero
  22385. If ((^^PCI0.I2C7.PMI2.AVBG == One))
  22386. {
  22387. ^^PCI0.I2C7.PMI2.G12T = One
  22388. Sleep (0x1E)
  22389. }
  22390. }
  22391. }
  22392. }
  22393. }
  22394.  
  22395. PowerResource (P28W, 0x05, 0x0000)
  22396. {
  22397. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22398. {
  22399. ^PCI0.I2C7,
  22400. ^PCI0.I2C7.PMI5
  22401. })
  22402. Method (_STA, 0, NotSerialized) // _STA: Status
  22403. {
  22404. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22405. {
  22406. ^^PCI0.I2C7.PMI5.G28X = Zero
  22407. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22408. {
  22409. Return (^^PCI0.I2C7.PMI5.V28X) /* \_SB_.PCI0.I2C7.PMI5.V28X */
  22410. }
  22411. }
  22412.  
  22413. Return (Zero)
  22414. }
  22415.  
  22416. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22417. {
  22418. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22419. {
  22420. ^^PCI0.I2C7.PMI5.V28X = One
  22421. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22422. {
  22423. ^^PCI0.I2C7.PMI5.G28X = One
  22424. Sleep (0x1E)
  22425. }
  22426. }
  22427. }
  22428.  
  22429. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22430. {
  22431. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22432. {
  22433. ^^PCI0.I2C7.PMI5.V28X = Zero
  22434. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22435. {
  22436. ^^PCI0.I2C7.PMI5.G28X = One
  22437. Sleep (0x1E)
  22438. }
  22439. }
  22440. }
  22441. }
  22442.  
  22443. PowerResource (P18W, 0x05, 0x0000)
  22444. {
  22445. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22446. {
  22447. ^PCI0.I2C7,
  22448. ^PCI0.I2C7.PMI5
  22449. })
  22450. Method (_STA, 0, NotSerialized) // _STA: Status
  22451. {
  22452. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22453. {
  22454. ^^PCI0.I2C7.PMI5.G18X = Zero
  22455. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22456. {
  22457. Return (^^PCI0.I2C7.PMI5.V18X) /* \_SB_.PCI0.I2C7.PMI5.V18X */
  22458. }
  22459. }
  22460.  
  22461. Return (Zero)
  22462. }
  22463.  
  22464. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22465. {
  22466. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22467. {
  22468. ^^PCI0.I2C7.PMI5.V18X = One
  22469. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22470. {
  22471. ^^PCI0.I2C7.PMI5.G18X = One
  22472. Sleep (0x1E)
  22473. }
  22474. }
  22475. }
  22476.  
  22477. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22478. {
  22479. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22480. {
  22481. ^^PCI0.I2C7.PMI5.V18X = Zero
  22482. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22483. {
  22484. ^^PCI0.I2C7.PMI5.G18X = One
  22485. Sleep (0x1E)
  22486. }
  22487. }
  22488. }
  22489. }
  22490.  
  22491. PowerResource (P12W, 0x05, 0x0000)
  22492. {
  22493. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22494. {
  22495. ^PCI0.I2C7,
  22496. ^PCI0.I2C7.PMI5
  22497. })
  22498. Method (_STA, 0, NotSerialized) // _STA: Status
  22499. {
  22500. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22501. {
  22502. ^^PCI0.I2C7.PMI5.G12X = Zero
  22503. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22504. {
  22505. Return (^^PCI0.I2C7.PMI5.V12X) /* \_SB_.PCI0.I2C7.PMI5.V12X */
  22506. }
  22507. }
  22508.  
  22509. Return (Zero)
  22510. }
  22511.  
  22512. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22513. {
  22514. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22515. {
  22516. ^^PCI0.I2C7.PMI5.V12X = One
  22517. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22518. {
  22519. ^^PCI0.I2C7.PMI5.G12X = One
  22520. Sleep (0x1E)
  22521. }
  22522. }
  22523. }
  22524.  
  22525. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22526. {
  22527. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22528. {
  22529. ^^PCI0.I2C7.PMI5.V12X = Zero
  22530. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22531. {
  22532. ^^PCI0.I2C7.PMI5.G12X = One
  22533. Sleep (0x1E)
  22534. }
  22535. }
  22536. }
  22537. }
  22538.  
  22539. PowerResource (P33W, 0x05, 0x0000)
  22540. {
  22541. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22542. {
  22543. ^PCI0.I2C7,
  22544. ^PCI0.I2C7.PMI5
  22545. })
  22546. Method (_STA, 0, NotSerialized) // _STA: Status
  22547. {
  22548. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22549. {
  22550. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22551. {
  22552. Return (^^PCI0.I2C7.PMI5.G1P1) /* \_SB_.PCI0.I2C7.PMI5.G1P1 */
  22553. }
  22554. }
  22555.  
  22556. Return (Zero)
  22557. }
  22558.  
  22559. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22560. {
  22561. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22562. {
  22563. If (((OSID == One) || (OSYS == 0x07DF)))
  22564. {
  22565. ^^PCI0.I2C7.PMI5.G1P1 = One
  22566. Sleep (0x1E)
  22567. }
  22568. }
  22569. }
  22570.  
  22571. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22572. {
  22573. Local2 = ^^PCI0.GFX0.PSPS /* \_SB_.PCI0.GFX0.PSPS */
  22574. Local2 &= 0x03
  22575. If ((Local2 == 0x03))
  22576. {
  22577. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22578. {
  22579. ^^PCI0.I2C7.PMI5.G1P1 = Zero
  22580. Sleep (0x1E)
  22581. }
  22582. }
  22583. }
  22584. }
  22585.  
  22586. PowerResource (P33X, 0x05, 0x0000)
  22587. {
  22588. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22589. {
  22590. ^PCI0.I2C7,
  22591. ^PCI0.I2C7.PMIC
  22592. })
  22593. Method (_STA, 0, NotSerialized) // _STA: Status
  22594. {
  22595. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  22596. {
  22597. ^^PCI0.I2C7.PMIC.G33X = Zero
  22598. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  22599. {
  22600. Return (^^PCI0.I2C7.PMIC.V33X) /* \_SB_.PCI0.I2C7.PMIC.V33X */
  22601. }
  22602. }
  22603.  
  22604. Return (Zero)
  22605. }
  22606.  
  22607. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22608. {
  22609. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  22610. {
  22611. ^^PCI0.I2C7.PMIC.V33X = One
  22612. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  22613. {
  22614. ^^PCI0.I2C7.PMIC.G33X = One
  22615. Sleep (0x1E)
  22616. }
  22617. }
  22618. }
  22619.  
  22620. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22621. {
  22622. Local2 = ^^PCI0.GFX0.PSPS /* \_SB_.PCI0.GFX0.PSPS */
  22623. Local2 &= 0x03
  22624. If ((Local2 == 0x03))
  22625. {
  22626. If ((^^PCI0.I2C7.PMIC.AVBL == One))
  22627. {
  22628. ^^PCI0.I2C7.PMIC.V33X = Zero
  22629. If ((^^PCI0.I2C7.PMIC.AVBG == One))
  22630. {
  22631. ^^PCI0.I2C7.PMIC.G33X = One
  22632. Sleep (0x1E)
  22633. }
  22634. }
  22635. }
  22636. }
  22637. }
  22638.  
  22639. PowerResource (P4BW, 0x05, 0x0000)
  22640. {
  22641. Name (_DEP, Package (0x02) // _DEP: Dependencies
  22642. {
  22643. ^PCI0.I2C7,
  22644. ^PCI0.I2C7.PMI5
  22645. })
  22646. Method (_STA, 0, NotSerialized) // _STA: Status
  22647. {
  22648. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22649. {
  22650. ^^PCI0.I2C7.PMI5.GP4B = Zero
  22651. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22652. {
  22653. Return (^^PCI0.I2C7.PMI5.VP4B) /* \_SB_.PCI0.I2C7.PMI5.VP4B */
  22654. }
  22655. }
  22656.  
  22657. Return (Zero)
  22658. }
  22659.  
  22660. Method (_ON, 0, NotSerialized) // _ON_: Power On
  22661. {
  22662. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22663. {
  22664. ^^PCI0.I2C7.PMI5.VP4B = One
  22665. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22666. {
  22667. ^^PCI0.I2C7.PMI5.GP4B = One
  22668. Sleep (0x1E)
  22669. }
  22670. }
  22671. }
  22672.  
  22673. Method (_OFF, 0, NotSerialized) // _OFF: Power Off
  22674. {
  22675. If ((^^PCI0.I2C7.PMI5.AVBL == One))
  22676. {
  22677. ^^PCI0.I2C7.PMI5.VP4B = Zero
  22678. If ((^^PCI0.I2C7.PMI5.AVBG == One))
  22679. {
  22680. ^^PCI0.I2C7.PMI5.GP4B = One
  22681. Sleep (0x1E)
  22682. }
  22683. }
  22684. }
  22685. }
  22686.  
  22687. Device (BTNS)
  22688. {
  22689. Name (_HID, "ACPI0011") // _HID: Hardware ID
  22690. Name (_DDN, "Generic HID over Interrupt Button Interface") // _DDN: DOS Device Name
  22691. Name (CDEP, Package (0x05)
  22692. {
  22693. GPO0,
  22694. GPO2,
  22695. GPO1,
  22696. ^PCI0.I2C7,
  22697. ^PCI0.I2C7.PMIC
  22698. })
  22699. Name (WDEP, Package (0x05)
  22700. {
  22701. GPO0,
  22702. GPO2,
  22703. GPO1,
  22704. ^PCI0.I2C7,
  22705. ^PCI0.I2C7.PMI5
  22706. })
  22707. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  22708. {
  22709. Name (CBUF, ResourceTemplate ()
  22710. {
  22711. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault, 0x0BB8,
  22712. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22713. )
  22714. { // Pin list
  22715. 0x005F
  22716. }
  22717. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  22718. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  22719. )
  22720. { // Pin list
  22721. 0x0008
  22722. }
  22723. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22724. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22725. )
  22726. { // Pin list
  22727. 0x005D
  22728. }
  22729. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22730. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  22731. )
  22732. { // Pin list
  22733. 0x0008
  22734. }
  22735. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22736. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22737. )
  22738. { // Pin list
  22739. 0x004D
  22740. }
  22741. })
  22742. Name (WBUF, ResourceTemplate ()
  22743. {
  22744. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0BB8,
  22745. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  22746. )
  22747. { // Pin list
  22748. 0x0000
  22749. }
  22750. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  22751. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  22752. )
  22753. { // Pin list
  22754. 0x0008
  22755. }
  22756. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22757. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22758. )
  22759. { // Pin list
  22760. 0x005D
  22761. }
  22762. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22763. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  22764. )
  22765. { // Pin list
  22766. 0x0008
  22767. }
  22768. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22769. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22770. )
  22771. { // Pin list
  22772. 0x004D
  22773. }
  22774. })
  22775. Name (FBUF, ResourceTemplate ()
  22776. {
  22777. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault, 0x0BB8,
  22778. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22779. )
  22780. { // Pin list
  22781. 0x005F
  22782. }
  22783. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  22784. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  22785. )
  22786. { // Pin list
  22787. 0x0008
  22788. }
  22789. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22790. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22791. )
  22792. { // Pin list
  22793. 0x005D
  22794. }
  22795. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22796. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  22797. )
  22798. { // Pin list
  22799. 0x0008
  22800. }
  22801. })
  22802. Name (PBUF, ResourceTemplate ()
  22803. {
  22804. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  22805. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  22806. )
  22807. { // Pin list
  22808. 0x0008
  22809. }
  22810. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22811. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22812. )
  22813. { // Pin list
  22814. 0x004E
  22815. }
  22816. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22817. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22818. )
  22819. { // Pin list
  22820. 0x0050
  22821. }
  22822. })
  22823. If ((BDID == One))
  22824. {
  22825. Return (PBUF) /* \_SB_.BTNS._CRS.PBUF */
  22826. }
  22827. ElseIf ((PMID == 0x03))
  22828. {
  22829. If (((BDID == 0x03) || (BDID == 0x02)))
  22830. {
  22831. Return (WBUF) /* \_SB_.BTNS._CRS.WBUF */
  22832. }
  22833. Else
  22834. {
  22835. Return (FBUF) /* \_SB_.BTNS._CRS.FBUF */
  22836. }
  22837. }
  22838. }
  22839.  
  22840. Method (_STA, 0, NotSerialized) // _STA: Status
  22841. {
  22842. If (((OSID == One) && (OSYS == 0x07DF)))
  22843. {
  22844. Return (0x0F)
  22845. }
  22846.  
  22847. Return (Zero)
  22848. }
  22849.  
  22850. Name (_DSD, Package (0x02) // _DSD: Device-Specific Data
  22851. {
  22852. ToUUID ("fa6bd625-9ce8-470d-a2c7-b3ca36c4282e"),
  22853. Package (0x04)
  22854. {
  22855. Package (0x05)
  22856. {
  22857. Zero,
  22858. One,
  22859. Zero,
  22860. One,
  22861. 0x0D
  22862. },
  22863.  
  22864. Package (0x05)
  22865. {
  22866. One,
  22867. Zero,
  22868. One,
  22869. One,
  22870. 0x81
  22871. },
  22872.  
  22873. Package (0x05)
  22874. {
  22875. One,
  22876. One,
  22877. One,
  22878. 0x0C,
  22879. 0xE9
  22880. },
  22881.  
  22882. Package (0x05)
  22883. {
  22884. One,
  22885. 0x02,
  22886. One,
  22887. 0x0C,
  22888. 0xEA
  22889. }
  22890. }
  22891. })
  22892. }
  22893.  
  22894. Device (TCO0)
  22895. {
  22896. Name (_HID, "8086229C") // _HID: Hardware ID
  22897. Name (_DDN, "Watchdog Timer Device") // _DDN: DOS Device Name
  22898. Name (_UID, One) // _UID: Unique ID
  22899. Name (_GPE, 0x0E) // _GPE: General Purpose Events
  22900. Method (_STA, 0, NotSerialized) // _STA: Status
  22901. {
  22902. If ((OSID == 0x04))
  22903. {
  22904. Return (0x0F)
  22905. }
  22906.  
  22907. Return (Zero)
  22908. }
  22909. }
  22910.  
  22911. Device (TBAD)
  22912. {
  22913. Name (_HID, "INTCFD9" /* Intel Baytrail SOC GPIO Controller */) // _HID: Hardware ID
  22914. Name (_CID, "PNP0C40" /* Standard Button Controller */) // _CID: Compatible ID
  22915. Name (_DDN, "Keyboard less system - 5 Button Array Device") // _DDN: DOS Device Name
  22916. Name (CDEP, Package (0x05)
  22917. {
  22918. GPO0,
  22919. GPO2,
  22920. GPO1,
  22921. ^PCI0.I2C7,
  22922. ^PCI0.I2C7.PMIC
  22923. })
  22924. Name (WDEP, Package (0x05)
  22925. {
  22926. GPO0,
  22927. GPO2,
  22928. GPO1,
  22929. ^PCI0.I2C7,
  22930. ^PCI0.I2C7.PMI5
  22931. })
  22932. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  22933. {
  22934. Name (CBUF, ResourceTemplate ()
  22935. {
  22936. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  22937. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  22938. )
  22939. { // Pin list
  22940. 0x0008
  22941. }
  22942. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault, 0x0BB8,
  22943. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22944. )
  22945. { // Pin list
  22946. 0x005F
  22947. }
  22948. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22949. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22950. )
  22951. { // Pin list
  22952. 0x005D
  22953. }
  22954. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22955. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  22956. )
  22957. { // Pin list
  22958. 0x0008
  22959. }
  22960. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22961. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22962. )
  22963. { // Pin list
  22964. 0x004D
  22965. }
  22966. })
  22967. Name (WBUF, ResourceTemplate ()
  22968. {
  22969. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  22970. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  22971. )
  22972. { // Pin list
  22973. 0x0008
  22974. }
  22975. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullNone, 0x0BB8,
  22976. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  22977. )
  22978. { // Pin list
  22979. 0x0000
  22980. }
  22981. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22982. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22983. )
  22984. { // Pin list
  22985. 0x005D
  22986. }
  22987. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22988. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  22989. )
  22990. { // Pin list
  22991. 0x0008
  22992. }
  22993. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  22994. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  22995. )
  22996. { // Pin list
  22997. 0x004D
  22998. }
  22999. })
  23000. Name (PBUF, ResourceTemplate ()
  23001. {
  23002. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  23003. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  23004. )
  23005. { // Pin list
  23006. 0x0008
  23007. }
  23008. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullDefault, 0x0BB8,
  23009. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  23010. )
  23011. { // Pin list
  23012. 0xFFFF
  23013. }
  23014. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23015. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  23016. )
  23017. { // Pin list
  23018. 0x004E
  23019. }
  23020. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23021. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  23022. )
  23023. { // Pin list
  23024. 0x0050
  23025. }
  23026. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23027. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  23028. )
  23029. { // Pin list
  23030. 0xFFFF
  23031. }
  23032. })
  23033. Name (QBUF, ResourceTemplate ()
  23034. {
  23035. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  23036. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  23037. )
  23038. { // Pin list
  23039. 0x0008
  23040. }
  23041. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23042. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  23043. )
  23044. { // Pin list
  23045. 0x005F
  23046. }
  23047. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23048. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  23049. )
  23050. { // Pin list
  23051. 0x005D
  23052. }
  23053. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23054. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  23055. )
  23056. { // Pin list
  23057. 0x0008
  23058. }
  23059. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23060. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  23061. )
  23062. { // Pin list
  23063. 0xFFFF
  23064. }
  23065. })
  23066. Name (RBUF, ResourceTemplate ()
  23067. {
  23068. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0BB8,
  23069. "\\_SB.GPO2", 0x00, ResourceConsumer, ,
  23070. )
  23071. { // Pin list
  23072. 0x0008
  23073. }
  23074. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23075. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  23076. )
  23077. { // Pin list
  23078. 0x005F
  23079. }
  23080. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23081. "\\_SB.GPO0", 0x00, ResourceConsumer, ,
  23082. )
  23083. { // Pin list
  23084. 0x005D
  23085. }
  23086. GpioInt (Edge, ActiveBoth, Exclusive, PullDefault, 0x0BB8,
  23087. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  23088. )
  23089. { // Pin list
  23090. 0x0008
  23091. }
  23092. })
  23093. If (((BDID == 0x09) || (BDID == 0x0A)))
  23094. {
  23095. Return (RBUF) /* \_SB_.TBAD._CRS.RBUF */
  23096. }
  23097.  
  23098. If ((BDID == One))
  23099. {
  23100. Return (PBUF) /* \_SB_.TBAD._CRS.PBUF */
  23101. }
  23102. ElseIf ((PMID == 0x03))
  23103. {
  23104. Return (WBUF) /* \_SB_.TBAD._CRS.WBUF */
  23105. }
  23106. }
  23107.  
  23108. Method (_STA, 0, NotSerialized) // _STA: Status
  23109. {
  23110. If (((OSID != One) || (OSYS <= 0x07DD)))
  23111. {
  23112. Return (0x0F)
  23113. }
  23114.  
  23115. Return (Zero)
  23116. }
  23117.  
  23118. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  23119. {
  23120. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  23121. Debug = "Method _DSM for Button Device"
  23122. If ((PMID == Zero))
  23123. {
  23124. If ((OSYS == 0x07DD))
  23125. {
  23126. ^^PCI0.I2C7.PMIC.FCOT = One
  23127. }
  23128. Else
  23129. {
  23130. ^^PCI0.I2C7.PMIC.FCOT = Zero
  23131. }
  23132. }
  23133.  
  23134. If ((Arg0 == ToUUID ("dfbcf3c5-e7a5-44e6-9c1f-29c76f6e059c") /* Power Button Device */))
  23135. {
  23136. While (One)
  23137. {
  23138. _T_0 = ToInteger (Arg2)
  23139. If ((_T_0 == Zero))
  23140. {
  23141. Return (Buffer (One)
  23142. {
  23143. 0x03 /* . */
  23144. })
  23145. }
  23146. ElseIf ((_T_0 == One))
  23147. {
  23148. Return (0x07)
  23149. }
  23150.  
  23151. Break
  23152. }
  23153. }
  23154. Else
  23155. {
  23156. Return (Buffer (One)
  23157. {
  23158. 0x00 /* . */
  23159. })
  23160. }
  23161.  
  23162. Return (Zero)
  23163. }
  23164. }
  23165.  
  23166. Device (MBID)
  23167. {
  23168. Name (_HID, "INT33BD" /* Intel Baytrail Mailbox Device */) // _HID: Hardware ID
  23169. Name (_CID, "INT33BD" /* Intel Baytrail Mailbox Device */) // _CID: Compatible ID
  23170. Name (_HRV, 0x02) // _HRV: Hardware Revision
  23171. Name (_UID, One) // _UID: Unique ID
  23172. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  23173. {
  23174. Name (RBUF, ResourceTemplate ()
  23175. {
  23176. Memory32Fixed (ReadWrite,
  23177. 0xE00000D0, // Address Base
  23178. 0x00000010, // Address Length
  23179. )
  23180. })
  23181. Return (RBUF) /* \_SB_.MBID._CRS.RBUF */
  23182. }
  23183.  
  23184. OperationRegion (REGS, 0x87, Zero, 0x30)
  23185. Field (REGS, DWordAcc, NoLock, Preserve)
  23186. {
  23187. PORT, 32,
  23188. REG, 32,
  23189. DATA, 32,
  23190. MASK, 32,
  23191. BE, 32,
  23192. OP, 32,
  23193. CODE, 32,
  23194. BAR, 32,
  23195. DEV, 32,
  23196. FUN, 32
  23197. }
  23198.  
  23199. Name (AVBL, Zero)
  23200. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  23201. {
  23202. If ((Arg0 == 0x87))
  23203. {
  23204. AVBL = Arg1
  23205. }
  23206. }
  23207.  
  23208. Method (READ, 3, Serialized)
  23209. {
  23210. Local0 = 0xFFFFFFFF
  23211. If ((AVBL == One))
  23212. {
  23213. OP = Zero
  23214. PORT = Arg0
  23215. REG = Arg1
  23216. BE = Arg2
  23217. Local0 = DATA /* \_SB_.MBID.DATA */
  23218. }
  23219.  
  23220. Return (Local0)
  23221. }
  23222.  
  23223. Method (WRIT, 4, Serialized)
  23224. {
  23225. If ((AVBL == One))
  23226. {
  23227. OP = One
  23228. PORT = Arg0
  23229. REG = Arg1
  23230. BE = Arg2
  23231. DATA = Arg3
  23232. }
  23233. }
  23234.  
  23235. Method (MODI, 5, Serialized)
  23236. {
  23237. If ((AVBL == One))
  23238. {
  23239. OP = 0x02
  23240. PORT = Arg0
  23241. REG = Arg1
  23242. BE = Arg2
  23243. DATA = Arg3
  23244. MASK = Arg4
  23245. }
  23246. }
  23247.  
  23248. Method (RMBX, 6, Serialized)
  23249. {
  23250. Local0 = 0xFFFFFFFF
  23251. If ((AVBL == One))
  23252. {
  23253. OP = 0x03
  23254. PORT = Arg0
  23255. REG = Arg1
  23256. BE = 0x03
  23257. CODE = Arg2
  23258. BAR = Arg3
  23259. DEV = Arg4
  23260. FUN = Arg5
  23261. Local0 = DATA /* \_SB_.MBID.DATA */
  23262. }
  23263.  
  23264. Return (Local0)
  23265. }
  23266.  
  23267. Method (WMBX, 7, Serialized)
  23268. {
  23269. If ((AVBL == One))
  23270. {
  23271. OP = 0x04
  23272. PORT = Arg0
  23273. REG = Arg1
  23274. BE = 0x03
  23275. DATA = Arg2
  23276. CODE = Arg3
  23277. BAR = Arg4
  23278. DEV = Arg5
  23279. FUN = Arg6
  23280. }
  23281. }
  23282. }
  23283.  
  23284. Device (PAGD)
  23285. {
  23286. Name (_HID, "ACPI000C" /* Processor Aggregator Device */) // _HID: Hardware ID
  23287. Name (_CID, "ACPI000C" /* Processor Aggregator Device */) // _CID: Compatible ID
  23288. Name (IDCN, Zero)
  23289. Name (PURP, Package (0x02)
  23290. {
  23291. One,
  23292. Zero
  23293. })
  23294. Method (_PUR, 0, Serialized) // _PUR: Processor Utilization Request
  23295. {
  23296. PURP [One] = IDCN /* \_SB_.PAGD.IDCN */
  23297. Return (PURP) /* \_SB_.PAGD.PURP */
  23298. }
  23299.  
  23300. Method (_OST, 3, Serialized) // _OST: OSPM Status Indication
  23301. {
  23302. Debug = "_OST is invoked"
  23303. }
  23304. }
  23305.  
  23306. Device (LID0)
  23307. {
  23308. Name (_HID, EisaId ("PNP0C0D") /* Lid Device */) // _HID: Hardware ID
  23309. Method (_STA, 0, NotSerialized) // _STA: Status
  23310. {
  23311. Return (0x0F)
  23312. }
  23313.  
  23314. Method (_LID, 0, NotSerialized) // _LID: Lid Status
  23315. {
  23316. Return ((^^GPO2.HINT & One))
  23317. }
  23318. }
  23319. }
  23320.  
  23321. Scope (_TZ)
  23322. {
  23323. ThermalZone (TZ00)
  23324. {
  23325. Name (_DEP, Package (0x01) // _DEP: Dependencies
  23326. {
  23327. \_SB.PCI0.I2C7
  23328. })
  23329. Method (_TMP, 0, Serialized) // _TMP: Temperature
  23330. {
  23331. If ((PMID == Zero))
  23332. {
  23333. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  23334. {
  23335. \_SB.PCI0.I2C7.PMIC.GMP2 = Zero
  23336. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  23337. {
  23338. Return (\_SB.PCI0.I2C7.PMIC.TMP2)
  23339. }
  23340. }
  23341. }
  23342.  
  23343. If ((PMID == 0x03))
  23344. {
  23345. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  23346. {
  23347. \_SB.PCI0.I2C7.PMI5.GMP2 = Zero
  23348. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  23349. {
  23350. Return (\_SB.PCI0.I2C7.PMI5.TMP2)
  23351. }
  23352. }
  23353. }
  23354.  
  23355. If ((PMID == One))
  23356. {
  23357. If ((\_SB.PCI0.I2C7.PMI2.AVBG == One))
  23358. {
  23359. \_SB.PCI0.I2C7.PMI2.GMP0 = Zero
  23360. If ((\_SB.PCI0.I2C7.PMI2.AVBD == One))
  23361. {
  23362. Return (\_SB.PCI0.I2C7.PMI2.TMP0)
  23363. }
  23364. }
  23365. }
  23366.  
  23367. If ((PMID == 0x02))
  23368. {
  23369. If ((\_SB.PCI0.I2C7.PMI1.AVBG == One))
  23370. {
  23371. \_SB.PCI0.I2C7.PMI1.GMP0 = Zero
  23372. If ((\_SB.PCI0.I2C7.PMI1.AVBD == One))
  23373. {
  23374. Return (\_SB.PCI0.I2C7.PMI1.TMP0)
  23375. }
  23376. }
  23377. }
  23378.  
  23379. Return (0x0AAC)
  23380. }
  23381.  
  23382. Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
  23383. {
  23384. Return ((0x0AAC + (CRTT * 0x0A)))
  23385. }
  23386. }
  23387. }
  23388.  
  23389. Scope (_SB.PCI0)
  23390. {
  23391. Device (PDRC)
  23392. {
  23393. Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */) // _HID: Hardware ID
  23394. Name (_UID, One) // _UID: Unique ID
  23395. Name (BUF0, ResourceTemplate ()
  23396. {
  23397. Memory32Fixed (ReadWrite,
  23398. 0xE0000000, // Address Base
  23399. 0x10000000, // Address Length
  23400. )
  23401. Memory32Fixed (ReadWrite,
  23402. 0xFEA00000, // Address Base
  23403. 0x00100000, // Address Length
  23404. )
  23405. Memory32Fixed (ReadWrite,
  23406. 0xFED01000, // Address Base
  23407. 0x00001000, // Address Length
  23408. )
  23409. Memory32Fixed (ReadWrite,
  23410. 0xFED03000, // Address Base
  23411. 0x00001000, // Address Length
  23412. )
  23413. Memory32Fixed (ReadWrite,
  23414. 0xFED06000, // Address Base
  23415. 0x00001000, // Address Length
  23416. )
  23417. Memory32Fixed (ReadWrite,
  23418. 0xFED08000, // Address Base
  23419. 0x00002000, // Address Length
  23420. )
  23421. Memory32Fixed (ReadWrite,
  23422. 0xFED80000, // Address Base
  23423. 0x00040000, // Address Length
  23424. )
  23425. Memory32Fixed (ReadWrite,
  23426. 0xFED1C000, // Address Base
  23427. 0x00001000, // Address Length
  23428. )
  23429. Memory32Fixed (ReadOnly,
  23430. 0xFEE00000, // Address Base
  23431. 0x00100000, // Address Length
  23432. )
  23433. })
  23434. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  23435. {
  23436. Return (BUF0) /* \_SB_.PCI0.PDRC.BUF0 */
  23437. }
  23438. }
  23439. }
  23440.  
  23441. Method (BRTN, 1, Serialized)
  23442. {
  23443. If (((DID1 & 0x0F00) == 0x0400))
  23444. {
  23445. Notify (\_SB.PCI0.GFX0.DD01, Arg0)
  23446. }
  23447.  
  23448. If (((DID2 & 0x0F00) == 0x0400))
  23449. {
  23450. Notify (\_SB.PCI0.GFX0.DD02, Arg0)
  23451. }
  23452.  
  23453. If (((DID3 & 0x0F00) == 0x0400))
  23454. {
  23455. Notify (\_SB.PCI0.GFX0.DD03, Arg0)
  23456. }
  23457.  
  23458. If (((DID4 & 0x0F00) == 0x0400))
  23459. {
  23460. Notify (\_SB.PCI0.GFX0.DD04, Arg0)
  23461. }
  23462.  
  23463. If (((DID5 & 0x0F00) == 0x0400))
  23464. {
  23465. Notify (\_SB.PCI0.GFX0.DD05, Arg0)
  23466. }
  23467.  
  23468. If (CondRefOf (NDN3))
  23469. {
  23470. NDN3 (Arg0)
  23471. }
  23472. }
  23473.  
  23474. Scope (_SB.PCI0.I2C7)
  23475. {
  23476. Device (BMDR)
  23477. {
  23478. Name (_HID, "INT33FE" /* XPOWER Battery Device */) // _HID: Hardware ID
  23479. Name (_CID, "INT33FE" /* XPOWER Battery Device */) // _CID: Compatible ID
  23480. Name (_DDN, "XPOWER Battery Device") // _DDN: DOS Device Name
  23481. Name (_DEP, Package (0x05) // _DEP: Dependencies
  23482. {
  23483. I2C2,
  23484. I2C7,
  23485. PMI1,
  23486. GPO1,
  23487. MBID
  23488. })
  23489. Name (BCCE, One)
  23490. Name (BCCC, 0x50)
  23491. Name (BCIL, 0x05)
  23492. Name (BCHG, 0x0C)
  23493. Name (BCTV, 0xD0)
  23494. Name (BSTP, Package (0x04)
  23495. {
  23496. Zero,
  23497. 0xFFFFFFFF,
  23498. 0xFFFFFFFF,
  23499. 0xFFFFFFFF
  23500. })
  23501. Name (BUFF, Buffer (0x03) {})
  23502. CreateByteField (BUFF, Zero, STAT)
  23503. CreateByteField (BUFF, 0x02, DATA)
  23504. Name (RBUF, ResourceTemplate ()
  23505. {
  23506. I2cSerialBus (0x006B, ControllerInitiated, 0x000186A0,
  23507. AddressingMode7Bit, "\\_SB.PCI0.I2C2",
  23508. 0x00, ResourceConsumer, ,
  23509. )
  23510. })
  23511. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  23512. {
  23513. Return (RBUF) /* \_SB_.PCI0.I2C7.BMDR.RBUF */
  23514. }
  23515.  
  23516. Method (_STA, 0, NotSerialized) // _STA: Status
  23517. {
  23518. If ((OSID == One))
  23519. {
  23520. If (((BDID == One) && (PMID == 0x02)))
  23521. {
  23522. Return (0x0F)
  23523. }
  23524. }
  23525.  
  23526. Return (Zero)
  23527. }
  23528.  
  23529. OperationRegion (BMOP, 0x9E, Zero, 0x0100)
  23530. Field (BMOP, DWordAcc, NoLock, Preserve)
  23531. {
  23532. SOC, 32,
  23533. FCCP, 32,
  23534. CHST, 32,
  23535. RMCP, 32,
  23536. VOLT, 32,
  23537. BATP, 32,
  23538. SRP0, 32,
  23539. STYP, 32,
  23540. CHGC, 32,
  23541. STPC, 32,
  23542. GADC, 32,
  23543. TTEM, 32,
  23544. TTCH, 32,
  23545. CYCL, 32,
  23546. BTP, 32,
  23547. DPCU, 32,
  23548. DSCP, 32,
  23549. CHEN, 32
  23550. }
  23551.  
  23552. Name (AVBL, Zero)
  23553. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  23554. {
  23555. If ((Arg0 == 0x9E))
  23556. {
  23557. AVBL = Arg1
  23558. }
  23559. }
  23560.  
  23561. Method (DPTU, 0, NotSerialized)
  23562. {
  23563. ADBG ("DPTU BMDR")
  23564. If ((AVBL == One))
  23565. {
  23566. DPCU = BCCC /* \_SB_.PCI0.I2C7.BMDR.BCCC */
  23567. CHEN = BCCE /* \_SB_.PCI0.I2C7.BMDR.BCCE */
  23568. }
  23569.  
  23570. Return (One)
  23571. }
  23572.  
  23573. Method (CMUX, 1, Serialized)
  23574. {
  23575. If ((^^AVBL == One))
  23576. {
  23577. If ((^^^^GPO1.AVBL == One))
  23578. {
  23579. If ((Arg0 != 0x03))
  23580. {
  23581. If ((OSYS == 0x07DF))
  23582. {
  23583. CDRH (Zero)
  23584. }
  23585. Else
  23586. {
  23587. CDRD (One)
  23588. }
  23589. }
  23590. ElseIf ((OSYS == 0x07DF))
  23591. {
  23592. CDRH (Zero)
  23593. }
  23594. Else
  23595. {
  23596. CDRD (Zero)
  23597. }
  23598. }
  23599. }
  23600. }
  23601.  
  23602. Method (SBTP, 0, NotSerialized)
  23603. {
  23604. ADBG ("SBTP BMDR")
  23605. Notify (ADP1, 0x80) // Status Change
  23606. If (CondRefOf (\_SB.DPTF, Local3))
  23607. {
  23608. ADBG ("SBTP Notify DPTF")
  23609. Notify (DPTF, 0x86) // Device-Specific
  23610. Notify (TCHG, 0x80) // Status Change
  23611. }
  23612.  
  23613. Return (One)
  23614. }
  23615.  
  23616. Method (PTYP, 0, NotSerialized)
  23617. {
  23618. If ((PMID == One))
  23619. {
  23620. Return (0x06)
  23621. }
  23622.  
  23623. If ((PMID == 0x02))
  23624. {
  23625. Return (0x05)
  23626. }
  23627.  
  23628. Return (Zero)
  23629. }
  23630.  
  23631. Method (ILIM, 0, NotSerialized)
  23632. {
  23633. Return (BCIL) /* \_SB_.PCI0.I2C7.BMDR.BCIL */
  23634. }
  23635.  
  23636. Method (ICHG, 0, NotSerialized)
  23637. {
  23638. Return (BCHG) /* \_SB_.PCI0.I2C7.BMDR.BCHG */
  23639. }
  23640.  
  23641. Method (BMTV, 0, NotSerialized)
  23642. {
  23643. Return (BCTV) /* \_SB_.PCI0.I2C7.BMDR.BCTV */
  23644. }
  23645.  
  23646. Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
  23647. {
  23648. Return (_SB) /* \_SB_ */
  23649. }
  23650.  
  23651. Method (PSOC, 0, NotSerialized)
  23652. {
  23653. ADBG ("PSOC")
  23654. If ((AVBL == One))
  23655. {
  23656. Local1 = SOC /* \_SB_.PCI0.I2C7.BMDR.SOC_ */
  23657. Return (Local1)
  23658. }
  23659.  
  23660. Return (Zero)
  23661. }
  23662.  
  23663. Method (PMAX, 0, NotSerialized)
  23664. {
  23665. ADBG ("PMAX")
  23666. If ((AVBL == One))
  23667. {
  23668. Local1 = FCCP /* \_SB_.PCI0.I2C7.BMDR.FCCP */
  23669. Return (Local1)
  23670. }
  23671.  
  23672. Return (Zero)
  23673. }
  23674.  
  23675. Method (VMIN, 0, NotSerialized)
  23676. {
  23677. Return (0x0DAC)
  23678. }
  23679.  
  23680. Method (APWR, 0, NotSerialized)
  23681. {
  23682. Return (0x0365C040)
  23683. }
  23684.  
  23685. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  23686. {
  23687. If ((Arg0 == ToUUID ("aa7bcf77-263f-4e28-8e16-9cac5c610928")))
  23688. {
  23689. If ((Arg2 == One))
  23690. {
  23691. Return (Zero)
  23692. }
  23693.  
  23694. If ((Arg2 == 0x02))
  23695. {
  23696. Return (0x2F)
  23697. }
  23698.  
  23699. If ((Arg2 == 0x03))
  23700. {
  23701. Return (0xE0)
  23702. }
  23703.  
  23704. If ((Arg2 == 0x04))
  23705. {
  23706. Return (0x03)
  23707. }
  23708.  
  23709. If ((Arg2 == 0x05))
  23710. {
  23711. Return (One)
  23712. }
  23713.  
  23714. If ((Arg2 == 0x06))
  23715. {
  23716. Return (0x02)
  23717. }
  23718.  
  23719. If ((Arg2 == 0x07))
  23720. {
  23721. Return (One)
  23722. }
  23723.  
  23724. Return (0xFFFFFFFF)
  23725. }
  23726. }
  23727.  
  23728. Method (PSRC, 0, NotSerialized)
  23729. {
  23730. ADBG ("BMDR PSRC")
  23731. If ((AVBL == One))
  23732. {
  23733. ADBG ("Read STYP")
  23734. Local0 = STYP /* \_SB_.PCI0.I2C7.BMDR.STYP */
  23735. If ((Local0 == Zero))
  23736. {
  23737. Return (Zero)
  23738. }
  23739.  
  23740. If ((Local0 == One))
  23741. {
  23742. Return (One)
  23743. }
  23744.  
  23745. If ((Local0 == 0x02))
  23746. {
  23747. Return (0x02)
  23748. }
  23749.  
  23750. If ((Local0 == 0x03))
  23751. {
  23752. Return (0x03)
  23753. }
  23754.  
  23755. If ((Local0 == 0x04))
  23756. {
  23757. Return (0x04)
  23758. }
  23759.  
  23760. If ((Local0 == 0x05))
  23761. {
  23762. Return (0x05)
  23763. }
  23764. }
  23765.  
  23766. Return (One)
  23767. }
  23768.  
  23769. Method (BATD, 0, NotSerialized)
  23770. {
  23771. If ((AVBL == One))
  23772. {
  23773. ADBG ("BATD")
  23774. Local0 = CHST /* \_SB_.PCI0.I2C7.BMDR.CHST */
  23775. Local0 &= 0x0F
  23776. If ((Local0 == 0x02))
  23777. {
  23778. Local1 = 0x02
  23779. }
  23780.  
  23781. If ((Local0 == One))
  23782. {
  23783. Local1 = One
  23784. }
  23785.  
  23786. If ((Local0 == 0x08))
  23787. {
  23788. Local1 = Zero
  23789. }
  23790.  
  23791. BSTP [Zero] = Local1
  23792. BSTP [One] = CHGC /* \_SB_.PCI0.I2C7.BMDR.CHGC */
  23793. BSTP [0x02] = RMCP /* \_SB_.PCI0.I2C7.BMDR.RMCP */
  23794. BSTP [0x03] = VOLT /* \_SB_.PCI0.I2C7.BMDR.VOLT */
  23795. DPCU = BCCC /* \_SB_.PCI0.I2C7.BMDR.BCCC */
  23796. }
  23797.  
  23798. Return (BSTP) /* \_SB_.PCI0.I2C7.BMDR.BSTP */
  23799. }
  23800.  
  23801. Method (CTYP, 0, NotSerialized)
  23802. {
  23803. Return (0x02)
  23804. }
  23805.  
  23806. Method (ARTG, 0, NotSerialized)
  23807. {
  23808. Return (0x0365C040)
  23809. }
  23810. }
  23811. }
  23812.  
  23813. Scope (_SB.PCI0.I2C3)
  23814. {
  23815. Device (TIDR)
  23816. {
  23817. Name (_HID, "INT33FE" /* XPOWER Battery Device */) // _HID: Hardware ID
  23818. Name (_CID, "INT33FE" /* XPOWER Battery Device */) // _CID: Compatible ID
  23819. Name (_DDN, "TI PMIC Battery Device") // _DDN: DOS Device Name
  23820. Name (BCCC, 0x80)
  23821. Name (BCCE, One)
  23822. Name (OTGS, Zero)
  23823. Name (CHPR, One)
  23824. Name (FGDV, 0x0A)
  23825. Name (BCIL, 0x65)
  23826. Name (BCVF, 0x93)
  23827. Name (BCFV, 0xED)
  23828. Name (BCCH, 0x38)
  23829. Name (BCST, 0x05)
  23830. Name (BCPE, 0x74)
  23831. Name (BCCL, 0xFFFFFFFF)
  23832. Name (BCLP, 0x1004)
  23833. Name (DSVO, 0x0EA6)
  23834. Name (BTPC, Zero)
  23835. Name (AVCU, Zero)
  23836. Name (BSTP, Package (0x04)
  23837. {
  23838. Zero,
  23839. 0xFFFFFFFF,
  23840. 0xFFFFFFFF,
  23841. 0xFFFFFFFF
  23842. })
  23843. Name (_DEP, Package (0x05) // _DEP: Dependencies
  23844. {
  23845. I2C7,
  23846. ^^I2C7.PMI2,
  23847. I2C3,
  23848. GPO1,
  23849. MBID
  23850. })
  23851. Name (BUFF, Buffer (0x03) {})
  23852. CreateByteField (BUFF, Zero, STAT)
  23853. CreateByteField (BUFF, 0x02, DATA)
  23854. Name (RBUF, ResourceTemplate ()
  23855. {
  23856. I2cSerialBus (0x006B, ControllerInitiated, 0x000186A0,
  23857. AddressingMode7Bit, "\\_SB.PCI0.I2C3",
  23858. 0x00, ResourceConsumer, ,
  23859. )
  23860. })
  23861. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  23862. {
  23863. Return (RBUF) /* \_SB_.PCI0.I2C3.TIDR.RBUF */
  23864. }
  23865.  
  23866. Method (_STA, 0, NotSerialized) // _STA: Status
  23867. {
  23868. If ((OSID == One))
  23869. {
  23870. If (((BDID == One) && (PMID == One)))
  23871. {
  23872. Return (0x0F)
  23873. }
  23874. }
  23875.  
  23876. Return (Zero)
  23877. }
  23878.  
  23879. OperationRegion (BMOP, 0x9E, Zero, 0x0100)
  23880. Field (BMOP, DWordAcc, NoLock, Preserve)
  23881. {
  23882. SOC, 32,
  23883. FCCP, 32,
  23884. CHST, 32,
  23885. RMCP, 32,
  23886. VOLT, 32,
  23887. BATP, 32,
  23888. SRP0, 32,
  23889. STYP, 32,
  23890. CHGC, 32,
  23891. STPC, 32,
  23892. GADC, 32,
  23893. TTEM, 32,
  23894. TTCH, 32,
  23895. CYCL, 32,
  23896. BTP, 32,
  23897. DPCU, 32,
  23898. DSCP, 32,
  23899. CHEN, 32
  23900. }
  23901.  
  23902. Name (AVBL, Zero)
  23903. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  23904. {
  23905. If ((Arg0 == 0x9E))
  23906. {
  23907. AVBL = Arg1
  23908. }
  23909. }
  23910.  
  23911. Method (DPTU, 0, NotSerialized)
  23912. {
  23913. ADBG ("DPTU TIDR")
  23914. If ((AVBL == One))
  23915. {
  23916. DPCU = BCCC /* \_SB_.PCI0.I2C3.TIDR.BCCC */
  23917. CHEN = BCCE /* \_SB_.PCI0.I2C3.TIDR.BCCE */
  23918. }
  23919.  
  23920. Return (One)
  23921. }
  23922.  
  23923. Method (CMUX, 1, Serialized)
  23924. {
  23925. If ((^^^I2C7.AVBL == One))
  23926. {
  23927. If ((^^^^GPO1.AVBL == One))
  23928. {
  23929. BUFF = ^^^I2C7.SIRQ /* \_SB_.PCI0.I2C7.SIRQ */
  23930. DATA &= 0x20
  23931. If ((DATA == 0x20))
  23932. {
  23933. If ((Arg0 != 0x03))
  23934. {
  23935. CDRD (One)
  23936. If ((^^^^GPO3.AMMR == One))
  23937. {
  23938. ^^^^GPO3.DMTX = 0x8102
  23939. }
  23940. }
  23941. }
  23942. Else
  23943. {
  23944. CDRD (Zero)
  23945. If ((^^^^GPO3.AMMR == One))
  23946. {
  23947. ^^^^GPO3.DMTX = 0x8100
  23948. }
  23949. }
  23950. }
  23951. }
  23952. }
  23953.  
  23954. Method (SBTP, 0, NotSerialized)
  23955. {
  23956. ADBG ("SBTP TIDR")
  23957. Notify (ADP1, 0x80) // Status Change
  23958. If (CondRefOf (\_SB.DPTF, Local3))
  23959. {
  23960. ADBG ("SBTP Notify DPTF")
  23961. Notify (DPTF, 0x86) // Device-Specific
  23962. Notify (TCHG, 0x80) // Status Change
  23963. }
  23964.  
  23965. Return (One)
  23966. }
  23967.  
  23968. Method (PTYP, 0, NotSerialized)
  23969. {
  23970. If ((PMID == One))
  23971. {
  23972. Return (0x06)
  23973. }
  23974.  
  23975. If ((PMID == 0x02))
  23976. {
  23977. Return (0x05)
  23978. }
  23979.  
  23980. Return (Zero)
  23981. }
  23982.  
  23983. Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
  23984. {
  23985. Return (_SB) /* \_SB_ */
  23986. }
  23987.  
  23988. Method (PSOC, 0, NotSerialized)
  23989. {
  23990. ADBG ("PSOC")
  23991. If ((AVBL == One))
  23992. {
  23993. Local1 = SOC /* \_SB_.PCI0.I2C3.TIDR.SOC_ */
  23994. Return (Local1)
  23995. }
  23996.  
  23997. Return (Zero)
  23998. }
  23999.  
  24000. Method (PMAX, 0, NotSerialized)
  24001. {
  24002. ADBG ("PMAX")
  24003. If ((AVBL == One))
  24004. {
  24005. Local1 = FCCP /* \_SB_.PCI0.I2C3.TIDR.FCCP */
  24006. Return (Local1)
  24007. }
  24008.  
  24009. Return (Zero)
  24010. }
  24011.  
  24012. Method (VMIN, 0, NotSerialized)
  24013. {
  24014. Return (0x0DAC)
  24015. }
  24016.  
  24017. Method (APWR, 0, NotSerialized)
  24018. {
  24019. Return (0x0365C040)
  24020. }
  24021.  
  24022. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  24023. {
  24024. If ((Arg0 == ToUUID ("aa7bcf77-263f-4e28-8e16-9cac5c610928")))
  24025. {
  24026. If ((Arg2 == One))
  24027. {
  24028. Return (Zero)
  24029. }
  24030.  
  24031. If ((Arg2 == 0x02))
  24032. {
  24033. Return (0x08)
  24034. }
  24035.  
  24036. If ((Arg2 == 0x03))
  24037. {
  24038. Return (0xC0)
  24039. }
  24040.  
  24041. If ((Arg2 == 0x04))
  24042. {
  24043. Return (0x02)
  24044. }
  24045.  
  24046. If ((Arg2 == 0x05))
  24047. {
  24048. Return (One)
  24049. }
  24050.  
  24051. If ((Arg2 == 0x06))
  24052. {
  24053. Return (0xFFFFFFFF)
  24054. }
  24055.  
  24056. If ((Arg2 == 0x07))
  24057. {
  24058. Return (Zero)
  24059. }
  24060.  
  24061. Return (0xFFFFFFFF)
  24062. }
  24063. }
  24064.  
  24065. Method (PSRC, 0, NotSerialized)
  24066. {
  24067. ADBG ("TIDR PSRC")
  24068. If ((AVBL == One))
  24069. {
  24070. ADBG ("Read STYP")
  24071. Local0 = STYP /* \_SB_.PCI0.I2C3.TIDR.STYP */
  24072. If ((Local0 == Zero))
  24073. {
  24074. Return (Zero)
  24075. }
  24076.  
  24077. If ((Local0 == One))
  24078. {
  24079. Return (One)
  24080. }
  24081.  
  24082. If ((Local0 == 0x02))
  24083. {
  24084. Return (0x02)
  24085. }
  24086.  
  24087. If ((Local0 == 0x03))
  24088. {
  24089. Return (0x03)
  24090. }
  24091.  
  24092. If ((Local0 == 0x04))
  24093. {
  24094. Return (0x04)
  24095. }
  24096.  
  24097. If ((Local0 == 0x05))
  24098. {
  24099. Return (0x05)
  24100. }
  24101. }
  24102.  
  24103. Return (One)
  24104. }
  24105.  
  24106. Method (BATD, 0, NotSerialized)
  24107. {
  24108. If ((AVBL == One))
  24109. {
  24110. ADBG ("BATD")
  24111. Local0 = CHST /* \_SB_.PCI0.I2C3.TIDR.CHST */
  24112. Local0 &= 0x0F
  24113. If ((Local0 == 0x02))
  24114. {
  24115. Local1 = 0x02
  24116. }
  24117.  
  24118. If ((Local0 == One))
  24119. {
  24120. Local1 = One
  24121. }
  24122.  
  24123. If ((Local0 == 0x08))
  24124. {
  24125. Local1 = Zero
  24126. }
  24127.  
  24128. BSTP [Zero] = Local1
  24129. BSTP [One] = CHGC /* \_SB_.PCI0.I2C3.TIDR.CHGC */
  24130. BSTP [0x02] = RMCP /* \_SB_.PCI0.I2C3.TIDR.RMCP */
  24131. BSTP [0x03] = VOLT /* \_SB_.PCI0.I2C3.TIDR.VOLT */
  24132. DPCU = BCCC /* \_SB_.PCI0.I2C3.TIDR.BCCC */
  24133. }
  24134.  
  24135. Return (BSTP) /* \_SB_.PCI0.I2C3.TIDR.BSTP */
  24136. }
  24137.  
  24138. Method (CTYP, 0, NotSerialized)
  24139. {
  24140. Return (0x02)
  24141. }
  24142.  
  24143. Method (ARTG, 0, NotSerialized)
  24144. {
  24145. Return (0x0365C040)
  24146. }
  24147. }
  24148.  
  24149. OperationRegion (POCR, GenericSerialBus, Zero, 0x0100)
  24150. Field (POCR, BufferAcc, NoLock, Preserve)
  24151. {
  24152. Connection (
  24153. I2cSerialBus (0x006B, ControllerInitiated, 0x000F4240,
  24154. AddressingMode7Bit, "\\_SB.PCI0.I2C3",
  24155. 0x00, ResourceConsumer, ,
  24156. )
  24157. ),
  24158. Offset (0x01),
  24159. AccessAs (BufferAcc, AttribByte),
  24160. P0TG, 8
  24161. }
  24162.  
  24163. Device (ABAT)
  24164. {
  24165. Name (_HID, "TBQ24296" /* Charger */) // _HID: Hardware ID
  24166. Name (_CID, "TBQ24296" /* Charger */) // _CID: Compatible ID
  24167. Name (_DDN, "TI PMIC Battery Device") // _DDN: DOS Device Name
  24168. Name (_DEP, Package (0x03) // _DEP: Dependencies
  24169. {
  24170. GPO1,
  24171. GPO3,
  24172. I2C3
  24173. })
  24174. Name (RBUF, ResourceTemplate ()
  24175. {
  24176. I2cSerialBus (0x006B, ControllerInitiated, 0x000186A0,
  24177. AddressingMode7Bit, "\\_SB.PCI0.I2C3",
  24178. 0x00, ResourceConsumer, ,
  24179. )
  24180. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
  24181. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  24182. )
  24183. { // Pin list
  24184. 0x0005
  24185. }
  24186. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  24187. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  24188. )
  24189. { // Pin list
  24190. 0x0045
  24191. }
  24192. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  24193. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  24194. )
  24195. { // Pin list
  24196. 0x0041
  24197. }
  24198. })
  24199. Name (ABUF, ResourceTemplate ()
  24200. {
  24201. })
  24202. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  24203. {
  24204. If ((OSID == 0x04))
  24205. {
  24206. Return (ABUF) /* \_SB_.PCI0.I2C3.ABAT.ABUF */
  24207. }
  24208.  
  24209. Return (RBUF) /* \_SB_.PCI0.I2C3.ABAT.RBUF */
  24210. }
  24211.  
  24212. Method (_STA, 0, NotSerialized) // _STA: Status
  24213. {
  24214. If (((BDID == One) && (PMID == One)))
  24215. {
  24216. If ((OSID != One))
  24217. {
  24218. Return (0x0F)
  24219. }
  24220. }
  24221.  
  24222. Return (Zero)
  24223. }
  24224. }
  24225. }
  24226.  
  24227. Scope (_SB.PCI0.I2C1)
  24228. {
  24229. Device (USTC)
  24230. {
  24231. Name (_HID, "FUSB0300") // _HID: Hardware ID
  24232. Name (_UID, Zero) // _UID: Unique ID
  24233. Method (_STA, 0, NotSerialized) // _STA: Status
  24234. {
  24235. If (((OSID == 0x04) && ((BDID == 0x09) || (BDID == 0x0A))))
  24236. {
  24237. Return (0x0F)
  24238. }
  24239.  
  24240. Return (Zero)
  24241. }
  24242.  
  24243. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  24244. {
  24245. Name (SBUF, ResourceTemplate ()
  24246. {
  24247. I2cSerialBus (0x0022, ControllerInitiated, 0x00061A80,
  24248. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  24249. 0x00, ResourceConsumer, ,
  24250. )
  24251. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
  24252. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  24253. )
  24254. { // Pin list
  24255. 0x0005
  24256. }
  24257. })
  24258. Return (SBUF) /* \_SB_.PCI0.I2C1.USTC._CRS.SBUF */
  24259. }
  24260. }
  24261.  
  24262. Device (PER1)
  24263. {
  24264. Name (_HID, "PI330532") // _HID: Hardware ID
  24265. Name (_UID, Zero) // _UID: Unique ID
  24266. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  24267. {
  24268. Name (SBUF, ResourceTemplate ()
  24269. {
  24270. I2cSerialBus (0x0054, ControllerInitiated, 0x00061A80,
  24271. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  24272. 0x00, ResourceConsumer, ,
  24273. )
  24274. })
  24275. Return (SBUF) /* \_SB_.PCI0.I2C1.PER1._CRS.SBUF */
  24276. }
  24277.  
  24278. Method (_STA, 0, NotSerialized) // _STA: Status
  24279. {
  24280. If (((OSID == 0x04) && ((BDID == 0x09) || (BDID == 0x0A))))
  24281. {
  24282. Return (0x0F)
  24283. }
  24284.  
  24285. Return (Zero)
  24286. }
  24287. }
  24288.  
  24289. Device (ANFG)
  24290. {
  24291. Name (_HID, "MAX17047" /* Fuel Gauge Controller */) // _HID: Hardware ID
  24292. Name (_CID, "MAX17047" /* Fuel Gauge Controller */) // _CID: Compatible ID
  24293. Name (_DDN, "Fuel Gauge Controller") // _DDN: DOS Device Name
  24294. Name (RBUF, ResourceTemplate ()
  24295. {
  24296. I2cSerialBus (0x0036, ControllerInitiated, 0x00061A80,
  24297. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  24298. 0x00, ResourceConsumer, ,
  24299. )
  24300. GpioInt (Level, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
  24301. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  24302. )
  24303. { // Pin list
  24304. 0x0001
  24305. }
  24306. })
  24307. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  24308. {
  24309. Return (RBUF) /* \_SB_.PCI0.I2C1.ANFG.RBUF */
  24310. }
  24311.  
  24312. Method (_STA, 0, NotSerialized) // _STA: Status
  24313. {
  24314. If (((OSID != One) && (BDID != One)))
  24315. {
  24316. Return (0x0F)
  24317. }
  24318.  
  24319. Return (Zero)
  24320. }
  24321. }
  24322.  
  24323. Device (ANCG)
  24324. {
  24325. Name (_HID, "SMB0349" /* Charger */) // _HID: Hardware ID
  24326. Name (_CID, "SMB0349" /* Charger */) // _CID: Compatible ID
  24327. Name (_DDN, "Charger") // _DDN: DOS Device Name
  24328. Name (RBUF, ResourceTemplate ()
  24329. {
  24330. I2cSerialBus (0x0035, ControllerInitiated, 0x00061A80,
  24331. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  24332. 0x00, ResourceConsumer, ,
  24333. )
  24334. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
  24335. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  24336. )
  24337. { // Pin list
  24338. 0x0000
  24339. }
  24340. })
  24341. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  24342. {
  24343. Return (RBUF) /* \_SB_.PCI0.I2C1.ANCG.RBUF */
  24344. }
  24345.  
  24346. Method (_STA, 0, NotSerialized) // _STA: Status
  24347. {
  24348. If (((OSID != One) && (BDID != One)))
  24349. {
  24350. Return (0x0F)
  24351. }
  24352.  
  24353. Return (Zero)
  24354. }
  24355. }
  24356.  
  24357. Device (ANF1)
  24358. {
  24359. Name (_HID, "TXN27501") // _HID: Hardware ID
  24360. Name (_CID, "TXN27501") // _CID: Compatible ID
  24361. Name (_DDN, "TI Fuel Gauge Controller") // _DDN: DOS Device Name
  24362. Name (RBUF, ResourceTemplate ()
  24363. {
  24364. I2cSerialBus (0x006B, ControllerInitiated, 0x00061A80,
  24365. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  24366. 0x00, ResourceConsumer, ,
  24367. )
  24368. GpioInt (Level, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
  24369. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  24370. )
  24371. { // Pin list
  24372. 0x0001
  24373. }
  24374. })
  24375. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  24376. {
  24377. Return (RBUF) /* \_SB_.PCI0.I2C1.ANF1.RBUF */
  24378. }
  24379.  
  24380. Method (_STA, 0, NotSerialized) // _STA: Status
  24381. {
  24382. If ((OSID != One))
  24383. {
  24384. Return (0x0F)
  24385. }
  24386.  
  24387. Return (Zero)
  24388. }
  24389. }
  24390.  
  24391. Device (ANC2)
  24392. {
  24393. Name (_HID, "TXN24292") // _HID: Hardware ID
  24394. Name (_CID, "TXN24292") // _CID: Compatible ID
  24395. Name (_DDN, "TI Charger") // _DDN: DOS Device Name
  24396. Name (RBUF, ResourceTemplate ()
  24397. {
  24398. I2cSerialBus (0x0055, ControllerInitiated, 0x00061A80,
  24399. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  24400. 0x00, ResourceConsumer, ,
  24401. )
  24402. GpioInt (Edge, ActiveBoth, ExclusiveAndWake, PullUp, 0x0000,
  24403. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  24404. )
  24405. { // Pin list
  24406. 0x0005
  24407. }
  24408. })
  24409. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  24410. {
  24411. Return (RBUF) /* \_SB_.PCI0.I2C1.ANC2.RBUF */
  24412. }
  24413.  
  24414. Method (_STA, 0, NotSerialized) // _STA: Status
  24415. {
  24416. If ((OSID != One))
  24417. {
  24418. Return (0x0F)
  24419. }
  24420.  
  24421. Return (Zero)
  24422. }
  24423. }
  24424.  
  24425. Name (SMFG, ResourceTemplate ()
  24426. {
  24427. I2cSerialBus (0x0036, ControllerInitiated, 0x000186A0,
  24428. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  24429. 0x00, ResourceConsumer, ,
  24430. )
  24431. })
  24432. Name (AVBL, Zero)
  24433. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  24434. {
  24435. If ((Arg0 == 0x09))
  24436. {
  24437. AVBL = Arg1
  24438. }
  24439. }
  24440.  
  24441. OperationRegion (DVFG, GenericSerialBus, Zero, 0x0100)
  24442. Field (DVFG, BufferAcc, NoLock, Preserve)
  24443. {
  24444. Connection (SMFG),
  24445. Offset (0x05),
  24446. AccessAs (BufferAcc, AttribBytes (0x02)),
  24447. FG05, 8
  24448. }
  24449.  
  24450. Field (DVFG, BufferAcc, NoLock, Preserve)
  24451. {
  24452. Connection (SMFG),
  24453. Offset (0x10),
  24454. AccessAs (BufferAcc, AttribBytes (0x02)),
  24455. FG10, 8
  24456. }
  24457.  
  24458. Field (DVFG, BufferAcc, NoLock, Preserve)
  24459. {
  24460. Connection (SMFG),
  24461. Offset (0x17),
  24462. AccessAs (BufferAcc, AttribBytes (0x02)),
  24463. FG17, 8
  24464. }
  24465.  
  24466. Field (DVFG, BufferAcc, NoLock, Preserve)
  24467. {
  24468. Connection (SMFG),
  24469. Offset (0x18),
  24470. AccessAs (BufferAcc, AttribBytes (0x02)),
  24471. FG18, 8
  24472. }
  24473.  
  24474. Field (DVFG, BufferAcc, NoLock, Preserve)
  24475. {
  24476. Connection (SMFG),
  24477. Offset (0x09),
  24478. AccessAs (BufferAcc, AttribBytes (0x02)),
  24479. FG09, 8
  24480. }
  24481.  
  24482. Field (DVFG, BufferAcc, NoLock, Preserve)
  24483. {
  24484. Connection (SMFG),
  24485. Offset (0x0A),
  24486. AccessAs (BufferAcc, AttribBytes (0x02)),
  24487. FG0A, 8
  24488. }
  24489.  
  24490. Field (DVFG, BufferAcc, NoLock, Preserve)
  24491. {
  24492. Connection (SMFG),
  24493. Offset (0x11),
  24494. AccessAs (BufferAcc, AttribBytes (0x02)),
  24495. FG11, 8
  24496. }
  24497.  
  24498. Field (DVFG, BufferAcc, NoLock, Preserve)
  24499. {
  24500. Connection (SMFG),
  24501. AccessAs (BufferAcc, AttribBytes (0x02)),
  24502. FG00, 8
  24503. }
  24504.  
  24505. Field (DVFG, BufferAcc, NoLock, Preserve)
  24506. {
  24507. Connection (SMFG),
  24508. Offset (0x03),
  24509. AccessAs (BufferAcc, AttribBytes (0x02)),
  24510. FG03, 8
  24511. }
  24512.  
  24513. Field (DVFG, BufferAcc, NoLock, Preserve)
  24514. {
  24515. Connection (SMFG),
  24516. Offset (0x1D),
  24517. AccessAs (BufferAcc, AttribBytes (0x02)),
  24518. FG1D, 8
  24519. }
  24520.  
  24521. Field (DVFG, BufferAcc, NoLock, Preserve)
  24522. {
  24523. Connection (SMFG),
  24524. Offset (0x2B),
  24525. AccessAs (BufferAcc, AttribBytes (0x02)),
  24526. FG2B, 8
  24527. }
  24528.  
  24529. Field (DVFG, BufferAcc, NoLock, Preserve)
  24530. {
  24531. Connection (SMFG),
  24532. Offset (0x08),
  24533. AccessAs (BufferAcc, AttribBytes (0x02)),
  24534. THRM, 8
  24535. }
  24536.  
  24537. Field (DVFG, BufferAcc, NoLock, Preserve)
  24538. {
  24539. Connection (SMFG),
  24540. Offset (0x06),
  24541. AccessAs (BufferAcc, AttribBytes (0x02)),
  24542. SOCR, 8
  24543. }
  24544.  
  24545. Field (DVFG, BufferAcc, NoLock, Preserve)
  24546. {
  24547. Connection (SMFG),
  24548. Offset (0x1C),
  24549. AccessAs (BufferAcc, AttribBytes (0x02)),
  24550. MXCU, 8
  24551. }
  24552.  
  24553. Name (SMBC, ResourceTemplate ()
  24554. {
  24555. I2cSerialBus (0x0035, ControllerInitiated, 0x000186A0,
  24556. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  24557. 0x00, ResourceConsumer, ,
  24558. )
  24559. })
  24560. OperationRegion (DVBC, GenericSerialBus, Zero, 0x0100)
  24561. Field (DVBC, BufferAcc, NoLock, Preserve)
  24562. {
  24563. Connection (SMBC),
  24564. AccessAs (BufferAcc, AttribByte),
  24565. BC00, 8,
  24566. BC01, 8,
  24567. BC02, 8,
  24568. BC03, 8,
  24569. BC04, 8,
  24570. BC05, 8,
  24571. BC06, 8,
  24572. BC07, 8,
  24573. BC08, 8,
  24574. BC09, 8,
  24575. BC0A, 8,
  24576. BC0B, 8,
  24577. BC0C, 8,
  24578. BC0D, 8,
  24579. BC0E, 8,
  24580. BC0F, 8,
  24581. BC10, 8
  24582. }
  24583.  
  24584. Field (DVBC, BufferAcc, NoLock, Preserve)
  24585. {
  24586. Connection (SMBC),
  24587. Offset (0x3D),
  24588. AccessAs (BufferAcc, AttribByte),
  24589. BC3D, 8
  24590. }
  24591.  
  24592. Field (DVBC, BufferAcc, NoLock, Preserve)
  24593. {
  24594. Connection (SMBC),
  24595. Offset (0x30),
  24596. AccessAs (BufferAcc, AttribByte),
  24597. BC30, 8
  24598. }
  24599.  
  24600. Field (DVBC, BufferAcc, NoLock, Preserve)
  24601. {
  24602. Connection (SMBC),
  24603. Offset (0x31),
  24604. AccessAs (BufferAcc, AttribByte),
  24605. BC31, 8
  24606. }
  24607.  
  24608. Field (DVBC, BufferAcc, NoLock, Preserve)
  24609. {
  24610. Connection (SMBC),
  24611. Offset (0x3C),
  24612. AccessAs (BufferAcc, AttribByte),
  24613. BC3C, 8
  24614. }
  24615.  
  24616. Field (DVBC, BufferAcc, NoLock, Preserve)
  24617. {
  24618. Connection (SMBC),
  24619. Offset (0x3E),
  24620. AccessAs (BufferAcc, AttribByte),
  24621. BC3E, 8
  24622. }
  24623.  
  24624. Field (DVBC, BufferAcc, NoLock, Preserve)
  24625. {
  24626. Connection (SMBC),
  24627. Offset (0x35),
  24628. AccessAs (BufferAcc, AttribBytes (0x06)),
  24629. BC35, 8
  24630. }
  24631.  
  24632. Device (BATC)
  24633. {
  24634. Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID
  24635. Name (_UID, One) // _UID: Unique ID
  24636. Name (BCCE, One)
  24637. Name (OTGS, Zero)
  24638. Name (HSMD, Zero)
  24639. Name (CHPR, Zero)
  24640. Name (FGDV, 0x0A)
  24641. Name (BCCC, 0x46)
  24642. Name (RECT, Zero)
  24643. Name (BCCL, 0xFFFFFFFF)
  24644. Name (BCLP, 0x1004)
  24645. Name (DSCP, 0x1300)
  24646. Name (DSVO, 0x0EA6)
  24647. Name (BTPC, Zero)
  24648. Name (AVCU, Zero)
  24649. Name (DCPS, Zero)
  24650. Name (_DEP, Package (0x01) // _DEP: Dependencies
  24651. {
  24652. I2C1
  24653. })
  24654. Name (BUFF, Buffer (0x03)
  24655. {
  24656. 0x00, 0x01, 0x00 /* ... */
  24657. })
  24658. CreateByteField (BUFF, Zero, BYAT)
  24659. CreateByteField (BUFF, 0x02, DATA)
  24660. Name (BUF1, Buffer (0x06)
  24661. {
  24662. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ...... */
  24663. })
  24664. CreateByteField (BUF1, Zero, BSTA)
  24665. CreateByteField (BUF1, One, BLEN)
  24666. CreateDWordField (BUF1, 0x02, DAT1)
  24667. Name (BUF2, Buffer (0x04)
  24668. {
  24669. 0x00, 0x00, 0x00, 0x00 /* .... */
  24670. })
  24671. CreateByteField (BUF2, Zero, BSTS)
  24672. CreateByteField (BUF2, One, SLEN)
  24673. CreateWordField (BUF2, 0x02, WRD1)
  24674. Name (INBU, Buffer (0x08)
  24675. {
  24676. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  24677. })
  24678. CreateByteField (INBU, Zero, INST)
  24679. CreateByteField (INBU, One, INLN)
  24680. CreateByteField (INBU, 0x02, INT0)
  24681. CreateByteField (INBU, 0x03, INT1)
  24682. CreateByteField (INBU, 0x04, INT2)
  24683. CreateByteField (INBU, 0x05, INT3)
  24684. CreateByteField (INBU, 0x06, INT4)
  24685. CreateByteField (INBU, 0x07, INT5)
  24686. Name (BIXP, Package (0x14)
  24687. {
  24688. Zero,
  24689. One,
  24690. 0xFFFFFFFF,
  24691. 0xFFFFFFFF,
  24692. One,
  24693. 0xFFFFFFFF,
  24694. 0x0A,
  24695. 0x04,
  24696. Zero,
  24697. 0x00017318,
  24698. 0xFFFFFFFF,
  24699. 0xFFFFFFFF,
  24700. 0x88B8,
  24701. 0x61A8,
  24702. One,
  24703. One,
  24704. "SR Real Battery",
  24705. "123456789",
  24706. "LION",
  24707. "Intel SR 1"
  24708. })
  24709. Name (BSTP, Package (0x04)
  24710. {
  24711. Zero,
  24712. 0xFFFFFFFF,
  24713. 0xFFFFFFFF,
  24714. 0xFFFFFFFF
  24715. })
  24716. Method (_BIX, 0, NotSerialized) // _BIX: Battery Information Extended
  24717. {
  24718. If ((AVBL == One))
  24719. {
  24720. BUF2 = FG10 /* \_SB_.PCI0.I2C1.FG10 */
  24721. If ((BSTS != One))
  24722. {
  24723. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  24724. Local2 = (Local1 * 0x05)
  24725. Divide (Local2, FGDV, Local0, Local1)
  24726. BIXP [0x03] = Local1
  24727. }
  24728.  
  24729. BUF2 = FG17 /* \_SB_.PCI0.I2C1.FG17 */
  24730. If ((BSTS != One))
  24731. {
  24732. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  24733. Divide (Local1, 0x64, Local0, Local2)
  24734. BIXP [0x08] = Local2
  24735. }
  24736. }
  24737.  
  24738. BIXP [0x02] = DSCP /* \_SB_.PCI0.I2C1.BATC.DSCP */
  24739. BIXP [0x05] = DSVO /* \_SB_.PCI0.I2C1.BATC.DSVO */
  24740. Divide (DSCP, 0x0A, Local0, Local1)
  24741. BIXP [0x06] = Local1
  24742. Divide (DSCP, 0x14, Local0, Local1)
  24743. BIXP [0x07] = Local1
  24744. Return (BIXP) /* \_SB_.PCI0.I2C1.BATC.BIXP */
  24745. }
  24746.  
  24747. Method (_BST, 0, NotSerialized) // _BST: Battery Status
  24748. {
  24749. If ((AVBL == One))
  24750. {
  24751. ADBG ("CH PR")
  24752. BUFF = BC30 /* \_SB_.PCI0.I2C1.BC30 */
  24753. Local1 = (DATA & 0x7F)
  24754. DATA = (Local1 | 0x80)
  24755. BC30 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24756. DATA = 0x3D
  24757. BC04 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24758. DATA = 0x05
  24759. BC05 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24760. DATA = 0xA5
  24761. BC07 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24762. DATA = 0xCF
  24763. BC09 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24764. DATA = 0x47
  24765. BC0A = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24766. DATA = 0x66
  24767. BC10 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24768. CHPR = Zero
  24769. ADBG ("CH PR DONE")
  24770. BUFF = BC3D /* \_SB_.PCI0.I2C1.BC3D */
  24771. If ((BYAT != One))
  24772. {
  24773. Local0 = (DATA >> One)
  24774. Local0 &= 0x03
  24775. If (((Local0 == One) || (Local0 == 0x02)))
  24776. {
  24777. Local1 = 0x02
  24778. }
  24779.  
  24780. If ((Local0 == Zero))
  24781. {
  24782. Local1 = One
  24783. }
  24784.  
  24785. If ((Local0 == 0x03))
  24786. {
  24787. Local1 = Zero
  24788. }
  24789.  
  24790. BSTP [Zero] = Local1
  24791. }
  24792.  
  24793. BUF2 = FG0A /* \_SB_.PCI0.I2C1.FG0A */
  24794. If ((BSTS != One))
  24795. {
  24796. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  24797. If ((Local1 & 0x8000))
  24798. {
  24799. Local1 = (0xFFFF - Local1)
  24800. }
  24801.  
  24802. Divide (Local1, FGDV, Local0, Local2)
  24803. Local1 = (Local2 * 0x9C)
  24804. Divide (Local1, 0x64, Local0, Local2)
  24805. BSTP [One] = Local2
  24806. }
  24807.  
  24808. BUF2 = FG05 /* \_SB_.PCI0.I2C1.FG05 */
  24809. If ((BSTS != One))
  24810. {
  24811. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  24812. Local2 = (Local1 * 0x05)
  24813. Divide (Local2, FGDV, Local0, Local1)
  24814. BSTP [0x02] = Local1
  24815. }
  24816.  
  24817. BUF2 = FG09 /* \_SB_.PCI0.I2C1.FG09 */
  24818. If ((BSTS != One))
  24819. {
  24820. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  24821. Local2 = (Local1 >> 0x03)
  24822. Local1 = (Local2 * 0x0271)
  24823. Divide (Local1, 0x03E8, Local0, Local2)
  24824. BSTP [0x03] = Local2
  24825. }
  24826.  
  24827. BUFF = BC30 /* \_SB_.PCI0.I2C1.BC30 */
  24828. Local1 = (DATA & 0x7F)
  24829. DATA = (Local1 | 0x80)
  24830. BC30 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24831. BUFF = BC00 /* \_SB_.PCI0.I2C1.BC00 */
  24832. Local1 = BCCC /* \_SB_.PCI0.I2C1.BATC.BCCC */
  24833. Local3 = Local1
  24834. Local2 = (DATA & 0xF0)
  24835. Local0 = (Local3 & 0xF0)
  24836. If ((Local2 != Local0))
  24837. {
  24838. Local2 = (DATA & 0x0F)
  24839. Local0 = (Local1 & 0xF0)
  24840. DATA = (Local2 | Local0)
  24841. BC00 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24842. }
  24843.  
  24844. BUFF = BC06 /* \_SB_.PCI0.I2C1.BC06 */
  24845. Local1 = (DATA & 0x9F)
  24846. DATA = (Local1 | 0x20)
  24847. BC06 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24848. BUFF = BC30 /* \_SB_.PCI0.I2C1.BC30 */
  24849. Local1 = (DATA & 0x7D)
  24850. If ((BCCE == One))
  24851. {
  24852. ADBG ("EN CH")
  24853. DATA = (Local1 | Zero)
  24854. DATA &= 0xFB
  24855. BC30 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24856. }
  24857. Else
  24858. {
  24859. ADBG ("DIS CH")
  24860. DATA = (Local1 | 0x02)
  24861. BC30 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  24862. }
  24863. }
  24864.  
  24865. Return (BSTP) /* \_SB_.PCI0.I2C1.BATC.BSTP */
  24866. }
  24867.  
  24868. Method (INTC, 0, NotSerialized)
  24869. {
  24870. ADBG ("INTC")
  24871. If ((AVBL == One))
  24872. {
  24873. INBU = BC35 /* \_SB_.PCI0.I2C1.BC35 */
  24874. }
  24875.  
  24876. Local0 = PSRC ()
  24877. If ((Local0 == One))
  24878. {
  24879. ADBG ("ACA CHG")
  24880. }
  24881. ElseIf ((Local0 == 0x02))
  24882. {
  24883. ADBG ("SDP")
  24884. DCPS = Zero
  24885. }
  24886. ElseIf ((Local0 == 0x03))
  24887. {
  24888. ADBG ("DCP")
  24889. DCPS = One
  24890. }
  24891. ElseIf ((Local0 == 0x04))
  24892. {
  24893. ADBG ("CDP")
  24894. DCPS = Zero
  24895. }
  24896. ElseIf ((Local0 == 0x05))
  24897. {
  24898. ADBG ("OTH")
  24899. }
  24900. ElseIf ((Local0 == Zero))
  24901. {
  24902. CHPR = One
  24903. ADBG ("NOINP")
  24904. }
  24905.  
  24906. Local1 = (INT5 & 0x0C)
  24907. Local0 = (INT5 & 0x08)
  24908. If ((Local1 == 0x0C))
  24909. {
  24910. If ((OTGS != One))
  24911. {
  24912. ADBG ("OTG Detected")
  24913. OTGS = One
  24914. }
  24915. }
  24916. ElseIf ((Local0 == 0x08))
  24917. {
  24918. If ((OTGS != Zero))
  24919. {
  24920. ADBG ("OTG Removal")
  24921. OTGS = Zero
  24922. }
  24923. }
  24924.  
  24925. If ((AVBL == One))
  24926. {
  24927. BUFF = BC3C /* \_SB_.PCI0.I2C1.BC3C */
  24928. }
  24929.  
  24930. If ((BYAT != One))
  24931. {
  24932. Local0 = (DATA & 0x1F)
  24933. If ((Local0 == 0x10))
  24934. {
  24935. CDRH (Zero)
  24936. If ((BDID == 0x02))
  24937. {
  24938. If ((^^^^GPO1.AMMR == One))
  24939. {
  24940. ^^^^GPO1.COPM = One
  24941. }
  24942. }
  24943.  
  24944. HSMD = One
  24945. ADBG ("RID GND")
  24946. }
  24947. ElseIf ((Local0 == 0x08))
  24948. {
  24949. CDRH (Zero)
  24950. If ((BDID == 0x02))
  24951. {
  24952. If ((^^^^GPO1.AMMR == One))
  24953. {
  24954. ^^^^GPO1.COPM = One
  24955. }
  24956. }
  24957.  
  24958. HSMD = One
  24959. ADBG ("RID A")
  24960. }
  24961. ElseIf ((Local0 == 0x04))
  24962. {
  24963. CDRH (Zero)
  24964. If ((BDID == 0x02))
  24965. {
  24966. If ((^^^^GPO1.AMMR == One))
  24967. {
  24968. ^^^^GPO1.COPM = One
  24969. }
  24970. }
  24971.  
  24972. HSMD = One
  24973. ADBG ("RID B")
  24974. }
  24975. ElseIf ((Local0 == 0x02))
  24976. {
  24977. CDRH (Zero)
  24978. If ((BDID == 0x02))
  24979. {
  24980. If ((^^^^GPO1.AMMR == One))
  24981. {
  24982. ^^^^GPO1.COPM = One
  24983. }
  24984. }
  24985.  
  24986. HSMD = One
  24987. ADBG ("RID C")
  24988. }
  24989. ElseIf ((Local0 == One))
  24990. {
  24991. If ((DCPS == Zero))
  24992. {
  24993. CDRD (One)
  24994. If ((BDID == 0x02))
  24995. {
  24996. If ((^^^^GPO1.AMMR == One))
  24997. {
  24998. ^^^^GPO1.COPM = One
  24999. }
  25000. }
  25001. }
  25002. Else
  25003. {
  25004. CDRD (Zero)
  25005. }
  25006.  
  25007. HSMD = Zero
  25008. ADBG ("RID Float")
  25009. }
  25010. Else
  25011. {
  25012. CDRH (Zero)
  25013. If ((BDID == 0x02))
  25014. {
  25015. If ((^^^^GPO1.AMMR == One))
  25016. {
  25017. ^^^^GPO1.COPM = One
  25018. }
  25019. }
  25020.  
  25021. ADBG ("RID Unknown")
  25022. HSMD = One
  25023. }
  25024. }
  25025.  
  25026. Local0 = (INT3 & 0x80)
  25027. Local1 = (INT3 & 0x20)
  25028. If (((Local0 == 0x80) || (Local1 == 0x20)))
  25029. {
  25030. Return (One)
  25031. }
  25032.  
  25033. If ((CHPR == One))
  25034. {
  25035. If ((HSMD == Zero))
  25036. {
  25037. ADBG ("CHG Rmv")
  25038. If ((DSFG == One))
  25039. {
  25040. CDRH (Zero)
  25041. }
  25042. Else
  25043. {
  25044. CDRD (Zero)
  25045. }
  25046.  
  25047. ADBG ("Charger removed")
  25048. If ((BDID == 0x02))
  25049. {
  25050. If ((^^^^GPO1.AMMR == One))
  25051. {
  25052. ^^^^GPO1.COPM = Zero
  25053. }
  25054. }
  25055.  
  25056. HSMD = Zero
  25057. }
  25058.  
  25059. Return (One)
  25060. }
  25061.  
  25062. If ((AVBL == One))
  25063. {
  25064. BUFF = BC30 /* \_SB_.PCI0.I2C1.BC30 */
  25065. }
  25066.  
  25067. If ((BYAT != One))
  25068. {
  25069. Local0 = DATA /* \_SB_.PCI0.I2C1.BATC.DATA */
  25070. DATA = (Local0 | 0x40)
  25071. }
  25072.  
  25073. If ((AVBL == One))
  25074. {
  25075. BC30 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  25076. }
  25077.  
  25078. Return (One)
  25079. }
  25080.  
  25081. Method (INTF, 0, NotSerialized)
  25082. {
  25083. ADBG ("INTF")
  25084. If ((AVBL == One))
  25085. {
  25086. BUF2 = FG00 /* \_SB_.PCI0.I2C1.FG00 */
  25087. }
  25088.  
  25089. If ((BSTS != One))
  25090. {
  25091. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25092. }
  25093.  
  25094. Return (One)
  25095. }
  25096.  
  25097. Method (CHCU, 1, NotSerialized)
  25098. {
  25099. Local0 = Arg0
  25100. BUFF = BC00 /* \_SB_.PCI0.I2C1.BC00 */
  25101. If ((BYAT != One))
  25102. {
  25103. Local1 = (Local0 & 0x0F)
  25104. Local2 = (DATA & 0x0F)
  25105. If ((Local1 != Local2))
  25106. {
  25107. Local1 = (Local0 & 0x0F)
  25108. Local2 = (DATA & 0xF0)
  25109. Local0 = (Local2 | Local1)
  25110. If ((AVBL == One))
  25111. {
  25112. DATA = 0x80
  25113. BC30 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  25114. DATA = Local0
  25115. BC00 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  25116. DATA = 0x87
  25117. BC02 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  25118. DATA = 0x97
  25119. BC02 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  25120. DATA = Zero
  25121. BC30 = BUFF /* \_SB_.PCI0.I2C1.BATC.BUFF */
  25122. }
  25123. }
  25124. }
  25125. }
  25126.  
  25127. Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point
  25128. {
  25129. BTPC = Arg0
  25130. If ((AVBL == One))
  25131. {
  25132. DAT1 = Arg0
  25133. BLEN = 0x04
  25134. BUF2 = FG2B /* \_SB_.PCI0.I2C1.FG2B */
  25135. If ((BSTS != One))
  25136. {
  25137. Local1 = (WRD1 & 0xFFFC)
  25138. WRD1 = Local1
  25139. FG2B = BUF2 /* \_SB_.PCI0.I2C1.BATC.BUF2 */
  25140. }
  25141.  
  25142. BUF2 = FG1D /* \_SB_.PCI0.I2C1.FG1D */
  25143. If ((BSTS != One))
  25144. {
  25145. Local1 = (WRD1 & 0xFFFB)
  25146. Local2 = (Local1 | 0x04)
  25147. WRD1 = Local2
  25148. FG1D = BUF2 /* \_SB_.PCI0.I2C1.BATC.BUF2 */
  25149. }
  25150.  
  25151. BUF2 = SOCR /* \_SB_.PCI0.I2C1.SOCR */
  25152. If ((BSTS != One))
  25153. {
  25154. Local0 = (WRD1 >> 0x08)
  25155. Local1 = (Local0 & 0xFF)
  25156. }
  25157.  
  25158. Local2 = (Local1 + One)
  25159. Local3 = (Local1 - One)
  25160. Local1 = (Local2 << 0x08)
  25161. Local2 = (Local1 | Local3)
  25162. WRD1 = Local2
  25163. FG03 = BUF2 /* \_SB_.PCI0.I2C1.BATC.BUF2 */
  25164. }
  25165. }
  25166.  
  25167. Method (_BTM, 1, NotSerialized) // _BTM: Battery Time
  25168. {
  25169. If ((Arg0 > 0x7530))
  25170. {
  25171. Return (Zero)
  25172. }
  25173.  
  25174. If ((AVBL == One))
  25175. {
  25176. BUF2 = FG11 /* \_SB_.PCI0.I2C1.FG11 */
  25177. If ((BSTS != One))
  25178. {
  25179. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25180. If ((Arg0 == Zero))
  25181. {
  25182. Local2 = (Local1 >> 0x05)
  25183. Local1 = (Local2 * 0x03)
  25184. Local2 = (Local1 * 0x3C)
  25185. Return (Local2)
  25186. }
  25187.  
  25188. BUF2 = FG05 /* \_SB_.PCI0.I2C1.FG05 */
  25189. If ((BSTS != One))
  25190. {
  25191. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25192. Local2 = (Local1 * 0x05)
  25193. Divide (Local2, FGDV, Local0, Local1)
  25194. Local0 = (Local1 * 0x0E10)
  25195. Divide (Local0, Arg0, Local1, Local2)
  25196. Return (Local2)
  25197. }
  25198. }
  25199. }
  25200.  
  25201. Return (0xFFFFFFFF)
  25202. }
  25203.  
  25204. Method (_BCT, 1, NotSerialized) // _BCT: Battery Charge Time
  25205. {
  25206. If (((Arg0 > 0x64) || (Arg0 < One)))
  25207. {
  25208. Return (Zero)
  25209. }
  25210.  
  25211. If ((AVBL == One))
  25212. {
  25213. BUF2 = FG05 /* \_SB_.PCI0.I2C1.FG05 */
  25214. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25215. If ((BSTS != One))
  25216. {
  25217. Local2 = (Local1 * 0x05)
  25218. Divide (Local2, FGDV, Local0, Local1)
  25219. If ((Arg0 < Local1))
  25220. {
  25221. Return (Zero)
  25222. }
  25223.  
  25224. RECT = Local1
  25225. }
  25226.  
  25227. BUF2 = FG10 /* \_SB_.PCI0.I2C1.FG10 */
  25228. If ((BSTS != One))
  25229. {
  25230. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25231. Local2 = (Local1 * 0x05)
  25232. Divide (Local2, FGDV, Local0, Local1)
  25233. BCLP = Local1
  25234. }
  25235.  
  25236. BUF2 = FG0A /* \_SB_.PCI0.I2C1.FG0A */
  25237. If ((BSTS != One))
  25238. {
  25239. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25240. If ((Local1 & 0x8000))
  25241. {
  25242. Return (Zero)
  25243. }
  25244. }
  25245.  
  25246. Local0 = (BCLP * Arg0)
  25247. Local0 -= RECT /* \_SB_.PCI0.I2C1.BATC.RECT */
  25248. Local0 *= 0x0E10
  25249. Divide (Local0, Local1, Local2, Local3)
  25250. Return (Local3)
  25251. }
  25252.  
  25253. Return (0xFFFFFFFF)
  25254. }
  25255.  
  25256. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  25257. {
  25258. If ((Arg0 == ToUUID ("4c2067e3-887d-475c-9720-4af1d3ed602e") /* Battery Thermal Limit */))
  25259. {
  25260. If ((Arg2 == 0x02))
  25261. {
  25262. If ((Arg1 == Zero))
  25263. {
  25264. Return (Buffer (One)
  25265. {
  25266. 0x00 /* . */
  25267. })
  25268. }
  25269. }
  25270. }
  25271.  
  25272. Return (Zero)
  25273. }
  25274.  
  25275. Method (_STA, 0, NotSerialized) // _STA: Status
  25276. {
  25277. If ((BDID == One))
  25278. {
  25279. Return (Zero)
  25280. }
  25281.  
  25282. If ((((BDID == 0x08) || (BDID == 0x0A)) || (BDID == 0x09)))
  25283. {
  25284. Return (Zero)
  25285. }
  25286.  
  25287. If ((OSID != One))
  25288. {
  25289. Return (Zero)
  25290. }
  25291.  
  25292. If ((AVBL == One))
  25293. {
  25294. BUF2 = FG05 /* \_SB_.PCI0.I2C1.FG05 */
  25295. If ((BSTS != Zero))
  25296. {
  25297. Return (Zero)
  25298. }
  25299. }
  25300.  
  25301. Return (0x1F)
  25302. }
  25303.  
  25304. Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
  25305. {
  25306. Return (_SB) /* \_SB_ */
  25307. }
  25308.  
  25309. Method (PSOC, 0, NotSerialized)
  25310. {
  25311. If ((AVBL == One))
  25312. {
  25313. BUF2 = SOCR /* \_SB_.PCI0.I2C1.SOCR */
  25314. If ((BSTS != One))
  25315. {
  25316. Local0 = (WRD1 >> 0x08)
  25317. Local1 = (Local0 & 0xFF)
  25318. }
  25319.  
  25320. Return (Local1)
  25321. }
  25322.  
  25323. Return (Zero)
  25324. }
  25325.  
  25326. Method (PMAX, 0, NotSerialized)
  25327. {
  25328. If ((AVBL == One))
  25329. {
  25330. BUF2 = MXCU /* \_SB_.PCI0.I2C1.MXCU */
  25331. If ((BSTS != One))
  25332. {
  25333. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25334. If ((Local1 & 0x8000))
  25335. {
  25336. Local0 = (Local1 >> 0x08)
  25337. Local1 = (Local0 & 0xFF)
  25338. Local0 = (0xFFFF - Local1)
  25339. Local1 = (Local0 * 0x04)
  25340. }
  25341. Else
  25342. {
  25343. Local0 = (Local1 >> 0x08)
  25344. Local2 = (Local0 & 0xFF)
  25345. Local1 = (Local2 * 0x04)
  25346. }
  25347.  
  25348. Divide (Local1, 0x0A, Local0, Local2)
  25349. Divide (Local2, FGDV, Local0, Local1)
  25350. Local2 = (Local1 * 0x03E8)
  25351. Local1 = (DSVO * Local2)
  25352. Return (Local1)
  25353. }
  25354. }
  25355.  
  25356. Return (Zero)
  25357. }
  25358.  
  25359. Method (VMIN, 0, NotSerialized)
  25360. {
  25361. Return (0x0DAC)
  25362. }
  25363.  
  25364. Method (APWR, 0, NotSerialized)
  25365. {
  25366. Return (0x0365C040)
  25367. }
  25368.  
  25369. Method (NPWR, 0, NotSerialized)
  25370. {
  25371. Local3 = APWR ()
  25372. If ((AVBL == One))
  25373. {
  25374. BUF2 = FG0A /* \_SB_.PCI0.I2C1.FG0A */
  25375. If ((BSTS != One))
  25376. {
  25377. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25378. If ((Local1 & 0x8000))
  25379. {
  25380. Local1 = (0xFFFF - Local1)
  25381. }
  25382.  
  25383. Divide (Local1, FGDV, Local0, Local2)
  25384. Local1 = (Local2 * 0x9C)
  25385. Divide (Local1, 0x64, Local0, Local2)
  25386. AVCU = Local2
  25387. BUF2 = FG09 /* \_SB_.PCI0.I2C1.FG09 */
  25388. If ((BSTS != One))
  25389. {
  25390. Local1 = WRD1 /* \_SB_.PCI0.I2C1.BATC.WRD1 */
  25391. Local2 = (Local1 >> 0x03)
  25392. Local1 = (Local2 * 0x0271)
  25393. Divide (Local1, 0x03E8, Local0, Local2)
  25394. }
  25395.  
  25396. Local1 = (Local2 * AVCU) /* \_SB_.PCI0.I2C1.BATC.AVCU */
  25397. Local0 = (Local3 - Local1)
  25398. Return (Local0)
  25399. }
  25400. }
  25401.  
  25402. Return (Local0)
  25403. }
  25404.  
  25405. Method (PSRC, 0, NotSerialized)
  25406. {
  25407. If ((AVBL == One))
  25408. {
  25409. BUFF = BC3E /* \_SB_.PCI0.I2C1.BC3E */
  25410. If ((BYAT != One))
  25411. {
  25412. Local0 = DATA /* \_SB_.PCI0.I2C1.BATC.DATA */
  25413. If ((Local0 == Zero))
  25414. {
  25415. Return (Zero)
  25416. }
  25417.  
  25418. If ((((Local0 == 0x10) || (Local0 == 0x20)) || ((Local0 ==
  25419. 0x40) || (Local0 == 0x80))))
  25420. {
  25421. Return (One)
  25422. }
  25423.  
  25424. If ((Local0 == 0x02))
  25425. {
  25426. Return (0x02)
  25427. }
  25428.  
  25429. If ((Local0 == 0x04))
  25430. {
  25431. Return (0x03)
  25432. }
  25433.  
  25434. If ((Local0 == 0x08))
  25435. {
  25436. Return (0x04)
  25437. }
  25438.  
  25439. If ((Local0 == One))
  25440. {
  25441. Return (0x05)
  25442. }
  25443. }
  25444. }
  25445.  
  25446. Return (One)
  25447. }
  25448.  
  25449. Method (CTYP, 0, NotSerialized)
  25450. {
  25451. Return (0x02)
  25452. }
  25453.  
  25454. Method (ARTG, 0, NotSerialized)
  25455. {
  25456. Return (0x0365C040)
  25457. }
  25458. }
  25459. }
  25460.  
  25461. Scope (_SB.PCI0.I2C7)
  25462. {
  25463. Name (AVBL, Zero)
  25464. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  25465. {
  25466. If ((Arg0 == 0x09))
  25467. {
  25468. AVBL = Arg1
  25469. }
  25470. }
  25471.  
  25472. Device (WIDR)
  25473. {
  25474. Name (_HID, "INT33FE" /* XPOWER Battery Device */) // _HID: Hardware ID
  25475. Name (_CID, "INT33FE" /* XPOWER Battery Device */) // _CID: Compatible ID
  25476. Name (_DDN, "WC PMIC Battery Device") // _DDN: DOS Device Name
  25477. Name (BCCC, 0x80)
  25478. Name (BCCE, One)
  25479. Name (OTGS, Zero)
  25480. Name (CHPR, One)
  25481. Name (FGDV, 0x0A)
  25482. Name (BCIL, 0x65)
  25483. Name (BCVF, 0x93)
  25484. Name (BCFV, 0xED)
  25485. Name (BCCH, 0x38)
  25486. Name (BCST, 0x05)
  25487. Name (BCPE, 0x74)
  25488. Name (BCCL, 0xFFFFFFFF)
  25489. Name (BCLP, 0x1004)
  25490. Name (DSVO, 0x0EA6)
  25491. Name (BTPC, Zero)
  25492. Name (AVCU, Zero)
  25493. Name (BSTP, Package (0x04)
  25494. {
  25495. Zero,
  25496. 0xFFFFFFFF,
  25497. 0xFFFFFFFF,
  25498. 0xFFFFFFFF
  25499. })
  25500. Name (_DEP, Package (0x05) // _DEP: Dependencies
  25501. {
  25502. I2C7,
  25503. PMI5,
  25504. I2C1,
  25505. GPO3,
  25506. MBID
  25507. })
  25508. Name (RBUF, ResourceTemplate ()
  25509. {
  25510. I2cSerialBus (0x005E, ControllerInitiated, 0x000186A0,
  25511. AddressingMode7Bit, "\\_SB.PCI0.I2C7",
  25512. 0x00, ResourceConsumer, ,
  25513. )
  25514. I2cSerialBus (0x0036, ControllerInitiated, 0x000186A0,
  25515. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  25516. 0x00, ResourceConsumer, ,
  25517. )
  25518. I2cSerialBus (0x0022, ControllerInitiated, 0x00061A80,
  25519. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  25520. 0x00, ResourceConsumer, ,
  25521. )
  25522. I2cSerialBus (0x0054, ControllerInitiated, 0x00061A80,
  25523. AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  25524. 0x00, ResourceConsumer, ,
  25525. )
  25526. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  25527. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  25528. )
  25529. { // Pin list
  25530. 0x0012
  25531. }
  25532. GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
  25533. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  25534. )
  25535. { // Pin list
  25536. 0x0005
  25537. }
  25538. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  25539. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  25540. )
  25541. { // Pin list
  25542. 0x0013
  25543. }
  25544. })
  25545. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  25546. {
  25547. Return (RBUF) /* \_SB_.PCI0.I2C7.WIDR.RBUF */
  25548. }
  25549.  
  25550. Method (GETM, 0, NotSerialized)
  25551. {
  25552. Return (UBCB) /* \UBCB */
  25553. }
  25554.  
  25555. Method (_STA, 0, NotSerialized) // _STA: Status
  25556. {
  25557. If ((OSID == One))
  25558. {
  25559. If (((BDID == 0x09) || (BDID == 0x0A)))
  25560. {
  25561. Return (0x0F)
  25562. }
  25563. }
  25564.  
  25565. Return (Zero)
  25566. }
  25567.  
  25568. OperationRegion (BMOP, 0x9E, Zero, 0x0100)
  25569. Field (BMOP, DWordAcc, NoLock, Preserve)
  25570. {
  25571. SOC, 32,
  25572. FCCP, 32,
  25573. CHST, 32,
  25574. RMCP, 32,
  25575. VOLT, 32,
  25576. BATP, 32,
  25577. SRP0, 32,
  25578. STYP, 32,
  25579. CHGC, 32,
  25580. STPC, 32,
  25581. GADC, 32,
  25582. TTEM, 32,
  25583. TTCH, 32,
  25584. CYCL, 32,
  25585. BTP, 32,
  25586. DPCU, 32,
  25587. DSCP, 32,
  25588. CHEN, 32
  25589. }
  25590.  
  25591. Name (AVBL, Zero)
  25592. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  25593. {
  25594. If ((Arg0 == 0x9E))
  25595. {
  25596. AVBL = Arg1
  25597. }
  25598. }
  25599.  
  25600. Method (DPTU, 0, NotSerialized)
  25601. {
  25602. ADBG ("DPTU WIDR")
  25603. If ((AVBL == One))
  25604. {
  25605. DPCU = BCCC /* \_SB_.PCI0.I2C7.WIDR.BCCC */
  25606. CHEN = BCCE /* \_SB_.PCI0.I2C7.WIDR.BCCE */
  25607. }
  25608.  
  25609. Return (One)
  25610. }
  25611.  
  25612. Method (SBTP, 0, NotSerialized)
  25613. {
  25614. ADBG ("SBTP WIDR")
  25615. If (CondRefOf (\_SB.PCI0.I2C7.WIDR, Local1))
  25616. {
  25617. Local0 = ^^PMI5.GET (One, 0x6E, 0x1E)
  25618. Local0 >>= 0x03
  25619. Local0 &= 0x03
  25620. If ((Local0 != One))
  25621. {
  25622. Notify (ADP1, 0x80) // Status Change
  25623. }
  25624. }
  25625.  
  25626. If (CondRefOf (\_SB.DPTF, Local3))
  25627. {
  25628. ADBG ("SBTP NOTIFY DPTF 86")
  25629. Notify (DPTF, 0x86) // Device-Specific
  25630. Notify (TCHG, 0x80) // Status Change
  25631. }
  25632.  
  25633. Return (One)
  25634. }
  25635.  
  25636. Method (PTYP, 0, NotSerialized)
  25637. {
  25638. If ((PMID == One))
  25639. {
  25640. Return (0x06)
  25641. }
  25642.  
  25643. If ((PMID == 0x02))
  25644. {
  25645. Return (0x05)
  25646. }
  25647.  
  25648. If ((PMID == 0x03))
  25649. {
  25650. Return (0x04)
  25651. }
  25652.  
  25653. Return (Zero)
  25654. }
  25655.  
  25656. Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
  25657. {
  25658. Return (_SB) /* \_SB_ */
  25659. }
  25660.  
  25661. Method (PSOC, 0, NotSerialized)
  25662. {
  25663. ADBG ("PSOC")
  25664. If ((AVBL == One))
  25665. {
  25666. Local1 = WIDR /* \_SB_.PCI0.I2C7.WIDR */
  25667. Return (Local1)
  25668. }
  25669.  
  25670. Return (Zero)
  25671. }
  25672.  
  25673. Method (PMAX, 0, NotSerialized)
  25674. {
  25675. ADBG ("PMAX")
  25676. If ((AVBL == One))
  25677. {
  25678. Local1 = FCCP /* \_SB_.PCI0.I2C7.WIDR.FCCP */
  25679. Return (Local1)
  25680. }
  25681.  
  25682. Return (Zero)
  25683. }
  25684.  
  25685. Method (VMIN, 0, NotSerialized)
  25686. {
  25687. Return (0x0DAC)
  25688. }
  25689.  
  25690. Method (APWR, 0, NotSerialized)
  25691. {
  25692. Return (0x0365C040)
  25693. }
  25694.  
  25695. Method (DSM2, 0, NotSerialized)
  25696. {
  25697. Notify (UBTC, 0x80) // Status Change
  25698. Return (0x0F)
  25699. }
  25700.  
  25701. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  25702. {
  25703. If ((Arg0 == ToUUID ("aa7bcf77-263f-4e28-8e16-9cac5c610928")))
  25704. {
  25705. If ((Arg2 == One))
  25706. {
  25707. Return (Zero)
  25708. }
  25709.  
  25710. If ((Arg2 == 0x02))
  25711. {
  25712. Return (0x08)
  25713. }
  25714.  
  25715. If ((Arg2 == 0x03))
  25716. {
  25717. Return (0xC0)
  25718. }
  25719.  
  25720. If ((Arg2 == 0x04))
  25721. {
  25722. Return (0x06)
  25723. }
  25724.  
  25725. If ((Arg2 == 0x05))
  25726. {
  25727. Return (0x02)
  25728. }
  25729.  
  25730. If ((Arg2 == 0x06))
  25731. {
  25732. Return (0x05)
  25733. }
  25734.  
  25735. If ((Arg2 == 0x07))
  25736. {
  25737. Return (Zero)
  25738. }
  25739.  
  25740. If ((Arg2 == 0x08))
  25741. {
  25742. Return (0x07)
  25743. }
  25744.  
  25745. If ((Arg2 == 0x09))
  25746. {
  25747. Return (0xA0)
  25748. }
  25749.  
  25750. If ((Arg2 == 0x0A))
  25751. {
  25752. Return (0xD6)
  25753. }
  25754.  
  25755. Return (0xFFFFFFFF)
  25756. }
  25757. }
  25758.  
  25759. Method (PSRC, 0, NotSerialized)
  25760. {
  25761. If ((AVBL == One))
  25762. {
  25763. Local0 = STYP /* \_SB_.PCI0.I2C7.WIDR.STYP */
  25764. If ((Local0 == Zero))
  25765. {
  25766. Return (Zero)
  25767. }
  25768.  
  25769. If ((Local0 == One))
  25770. {
  25771. Return (One)
  25772. }
  25773.  
  25774. If ((Local0 == 0x02))
  25775. {
  25776. Return (0x02)
  25777. }
  25778.  
  25779. If ((Local0 == 0x03))
  25780. {
  25781. Return (0x03)
  25782. }
  25783.  
  25784. If ((Local0 == 0x04))
  25785. {
  25786. Return (0x04)
  25787. }
  25788.  
  25789. If ((Local0 == 0x05))
  25790. {
  25791. Return (0x05)
  25792. }
  25793. }
  25794.  
  25795. Return (One)
  25796. }
  25797.  
  25798. Method (GPTG, 1, Serialized)
  25799. {
  25800. If ((^^^^GPO3.AMMR == One))
  25801. {
  25802. Local0 = ^^^^GPO3.FGGP /* \_SB_.GPO3.FGGP */
  25803. }
  25804.  
  25805. ADBG ("GPO PAD BEFORE")
  25806. ADBG (Local0)
  25807. Local0 |= 0x02
  25808. ADBG ("GPO PAD AFTER")
  25809. ADBG (Local0)
  25810. If ((^^^^GPO3.AMMR == One))
  25811. {
  25812. ^^^^GPO3.FGGP = Local0
  25813. }
  25814. }
  25815.  
  25816. Method (USBH, 1, Serialized)
  25817. {
  25818. If ((Arg0 == One))
  25819. {
  25820. Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
  25821. Local0 |= One
  25822. ADBG (Local0)
  25823. ^^PMI5.SET (One, 0x5E, 0x07, Local0)
  25824. CDRH (Zero)
  25825. Local0 = ^^PMI5.GET (One, 0x5E, 0x17)
  25826. Local0 |= 0x40
  25827. ^^PMI5.SET (One, 0x5E, 0x17, Local0)
  25828. }
  25829. ElseIf ((Arg0 == 0x02))
  25830. {
  25831. ADBG ("CDP/SDP")
  25832. Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
  25833. Local0 |= One
  25834. ^^PMI5.SET (One, 0x5E, 0x07, Local0)
  25835. CDRD (One)
  25836. }
  25837. Else
  25838. {
  25839. ADBG ("DCP/no cable is connected")
  25840. Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
  25841. Local0 &= 0xFE
  25842. ^^PMI5.SET (One, 0x5E, 0x07, Local0)
  25843. CDRD (Zero)
  25844. }
  25845.  
  25846. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  25847. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  25848. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  25849. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  25850. ADBG ("B4 Set")
  25851. ADBG (Local0)
  25852. Local0 &= 0xCF
  25853. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  25854. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  25855. ^^PMI5.SET (One, 0x5E, 0x27, Local0)
  25856. ^^PMI5.SET (One, 0x5E, 0x24, One)
  25857. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  25858. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  25859. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  25860. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  25861. ADBG ("After Set")
  25862. ADBG ("REG05")
  25863. ADBG (Local0)
  25864. ADBG ("USB Host")
  25865. }
  25866.  
  25867. Method (BATD, 0, NotSerialized)
  25868. {
  25869. ADBG ("BATD")
  25870. If ((AVBL == One))
  25871. {
  25872. ADBG ("BATD")
  25873. Local0 = CHST /* \_SB_.PCI0.I2C7.WIDR.CHST */
  25874. Local0 &= 0x0F
  25875. If ((Local0 == 0x02))
  25876. {
  25877. Local1 = 0x02
  25878. }
  25879.  
  25880. If ((Local0 == One))
  25881. {
  25882. Local1 = One
  25883. }
  25884.  
  25885. If ((Local0 == 0x08))
  25886. {
  25887. Local1 = Zero
  25888. }
  25889.  
  25890. BSTP [Zero] = Local1
  25891. BSTP [One] = CHGC /* \_SB_.PCI0.I2C7.WIDR.CHGC */
  25892. BSTP [0x02] = RMCP /* \_SB_.PCI0.I2C7.WIDR.RMCP */
  25893. BSTP [0x03] = VOLT /* \_SB_.PCI0.I2C7.WIDR.VOLT */
  25894. DPCU = BCCC /* \_SB_.PCI0.I2C7.WIDR.BCCC */
  25895. }
  25896.  
  25897. Return (BSTP) /* \_SB_.PCI0.I2C7.WIDR.BSTP */
  25898. }
  25899. }
  25900.  
  25901. Device (BATC)
  25902. {
  25903. Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID
  25904. Name (_UID, One) // _UID: Unique ID
  25905. Name (BCCE, One)
  25906. Name (OTGS, Zero)
  25907. Name (HSMD, Zero)
  25908. Name (CHPR, One)
  25909. Name (FGDV, 0x0A)
  25910. Name (RECT, Zero)
  25911. Name (BCCL, 0xFFFFFFFF)
  25912. Name (BCLP, 0x1004)
  25913. Name (DSCP, 0x1023)
  25914. Name (DSVO, 0x0EA6)
  25915. Name (BTPC, Zero)
  25916. Name (AVCU, Zero)
  25917. Name (BQCC, 0x50)
  25918. Name (TSHV, Zero)
  25919. Name (BCCC, 0x50)
  25920. Name (_DEP, Package (0x03) // _DEP: Dependencies
  25921. {
  25922. I2C1,
  25923. I2C7,
  25924. PMI5
  25925. })
  25926. Name (BUFF, Buffer (0x03)
  25927. {
  25928. 0x00, 0x01, 0x00 /* ... */
  25929. })
  25930. CreateByteField (BUFF, Zero, BYAT)
  25931. CreateByteField (BUFF, 0x02, DATA)
  25932. Name (BUF1, Buffer (0x06)
  25933. {
  25934. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ...... */
  25935. })
  25936. CreateByteField (BUF1, Zero, BSTA)
  25937. CreateByteField (BUF1, One, BLEN)
  25938. CreateDWordField (BUF1, 0x02, DAT1)
  25939. Name (BUF2, Buffer (0x04)
  25940. {
  25941. 0x00, 0x00, 0x00, 0x00 /* .... */
  25942. })
  25943. CreateByteField (BUF2, Zero, BSTS)
  25944. CreateByteField (BUF2, One, SLEN)
  25945. CreateWordField (BUF2, 0x02, WRD1)
  25946. Name (INBU, Buffer (0x08)
  25947. {
  25948. 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  25949. })
  25950. CreateByteField (INBU, Zero, INST)
  25951. CreateByteField (INBU, One, INLN)
  25952. CreateByteField (INBU, 0x02, INT0)
  25953. CreateByteField (INBU, 0x03, INT1)
  25954. CreateByteField (INBU, 0x04, INT2)
  25955. CreateByteField (INBU, 0x05, INT3)
  25956. CreateByteField (INBU, 0x06, INT4)
  25957. CreateByteField (INBU, 0x07, INT5)
  25958. Name (BIXP, Package (0x14)
  25959. {
  25960. Zero,
  25961. One,
  25962. 0xFFFFFFFF,
  25963. 0xFFFFFFFF,
  25964. One,
  25965. 0xFFFFFFFF,
  25966. 0x0A,
  25967. 0x04,
  25968. Zero,
  25969. 0x00017318,
  25970. 0xFFFFFFFF,
  25971. 0xFFFFFFFF,
  25972. 0x88B8,
  25973. 0x61A8,
  25974. One,
  25975. One,
  25976. "SR Real Battery",
  25977. "123456789",
  25978. "LION",
  25979. "Intel SR 1"
  25980. })
  25981. Name (BSTP, Package (0x04)
  25982. {
  25983. Zero,
  25984. 0xFFFFFFFF,
  25985. 0xFFFFFFFF,
  25986. 0xFFFFFFFF
  25987. })
  25988. Method (_BIX, 0, NotSerialized) // _BIX: Battery Information Extended
  25989. {
  25990. If ((^^^I2C1.AVBL == One))
  25991. {
  25992. BUF2 = ^^^I2C1.FG10 /* \_SB_.PCI0.I2C1.FG10 */
  25993. If ((BSTS != One))
  25994. {
  25995. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  25996. Local2 = (Local1 * 0x05)
  25997. Divide (Local2, FGDV, Local0, Local1)
  25998. BIXP [0x03] = Local1
  25999. }
  26000.  
  26001. BUF2 = ^^^I2C1.FG17 /* \_SB_.PCI0.I2C1.FG17 */
  26002. If ((BSTS != One))
  26003. {
  26004. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26005. Divide (Local1, 0x64, Local0, Local2)
  26006. BIXP [0x08] = Local2
  26007. }
  26008. }
  26009.  
  26010. BIXP [0x02] = DSCP /* \_SB_.PCI0.I2C7.BATC.DSCP */
  26011. BIXP [0x05] = DSVO /* \_SB_.PCI0.I2C7.BATC.DSVO */
  26012. Divide (DSCP, 0x0A, Local0, Local1)
  26013. BIXP [0x06] = Local1
  26014. Divide (DSCP, 0x14, Local0, Local1)
  26015. BIXP [0x07] = Local1
  26016. Return (BIXP) /* \_SB_.PCI0.I2C7.BATC.BIXP */
  26017. }
  26018.  
  26019. Method (_BST, 0, NotSerialized) // _BST: Battery Status
  26020. {
  26021. Name (RGND, One)
  26022. If ((^^PMI5.AVBL == One))
  26023. {
  26024. Local0 = ^^PMI5.GET (One, 0x6E, 0x1E)
  26025. Local0 >>= 0x03
  26026. Local0 &= 0x03
  26027. If ((Local0 != One))
  26028. {
  26029. RGND = Zero
  26030. }
  26031.  
  26032. If ((RGND == Zero))
  26033. {
  26034. If ((TSHV == Zero))
  26035. {
  26036. TSHV = One
  26037. ^^PMI5.SET (One, 0x5E, 0x20, 0x02)
  26038. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26039. ^^PMI5.SET (One, 0x5E, 0x26, One)
  26040. ^^PMI5.SET (One, 0x5E, 0x27, 0x19)
  26041. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26042. ADBG ("Min Sys vol")
  26043. }
  26044.  
  26045. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26046. ^^PMI5.SET (One, 0x5E, 0x26, 0x04)
  26047. ^^PMI5.SET (One, 0x5E, 0x27, 0xD6)
  26048. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26049. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26050. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26051. ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
  26052. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26053. Local0 = ^^PMI5.GET (One, 0x5E, 0x16)
  26054. Local2 = (Local0 | 0xA8)
  26055. ^^PMI5.SET (One, 0x5E, 0x16, Local2)
  26056. Local0 = ^^PMI5.GET (One, 0x5E, 0x16)
  26057. ADBG ("WC16")
  26058. ADBG (Local0)
  26059. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26060. ^^PMI5.SET (One, 0x5E, 0x26, 0x09)
  26061. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26062. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26063. If ((Local0 != Zero))
  26064. {
  26065. ADBG ("FAULT OCCURED")
  26066. ADBG (Local0)
  26067. Local0 = PSRC ()
  26068. }
  26069.  
  26070. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26071. ^^PMI5.SET (One, 0x5E, 0x26, One)
  26072. ^^PMI5.SET (One, 0x5E, 0x27, 0x1B)
  26073. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26074. }
  26075.  
  26076. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26077. ^^PMI5.SET (One, 0x5E, 0x26, One)
  26078. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26079. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26080. ADBG ("CH REG01")
  26081. ADBG (Local0)
  26082. If ((RGND == Zero))
  26083. {
  26084. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26085. ^^PMI5.SET (One, 0x5E, 0x26, 0x02)
  26086. ^^PMI5.SET (One, 0x5E, 0x27, 0x42)
  26087. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26088. }
  26089.  
  26090. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26091. ^^PMI5.SET (One, 0x5E, 0x26, 0x09)
  26092. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26093. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26094. ADBG ("REG09")
  26095. ADBG (Local0)
  26096. CHPR = Zero
  26097. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26098. ^^PMI5.SET (One, 0x5E, 0x26, 0x08)
  26099. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26100. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26101. Local0 >>= 0x04
  26102. Local0 &= 0x03
  26103. If (((Local0 == One) || (Local0 == 0x02)))
  26104. {
  26105. Local1 = 0x02
  26106. }
  26107.  
  26108. If ((Local0 == Zero))
  26109. {
  26110. Local1 = One
  26111. }
  26112.  
  26113. If ((Local0 == 0x03))
  26114. {
  26115. Local1 = Zero
  26116. }
  26117.  
  26118. BSTP [Zero] = Local1
  26119. BUF2 = ^^^I2C1.FG0A /* \_SB_.PCI0.I2C1.FG0A */
  26120. If ((BSTS != One))
  26121. {
  26122. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26123. If ((Local1 & 0x8000))
  26124. {
  26125. Local1 = (0xFFFF - Local1)
  26126. }
  26127.  
  26128. Divide (Local1, FGDV, Local0, Local2)
  26129. Local1 = (Local2 * 0x9C)
  26130. Divide (Local1, 0x64, Local0, Local2)
  26131. BSTP [One] = Local2
  26132. }
  26133.  
  26134. BUF2 = ^^^I2C1.FG05 /* \_SB_.PCI0.I2C1.FG05 */
  26135. If ((BSTS != One))
  26136. {
  26137. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26138. Local2 = (Local1 * 0x05)
  26139. Divide (Local2, FGDV, Local0, Local1)
  26140. BSTP [0x02] = Local1
  26141. }
  26142.  
  26143. BUF2 = ^^^I2C1.FG09 /* \_SB_.PCI0.I2C1.FG09 */
  26144. If ((BSTS != One))
  26145. {
  26146. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26147. Local2 = (Local1 >> 0x03)
  26148. Local1 = (Local2 * 0x0271)
  26149. Divide (Local1, 0x03E8, Local0, Local2)
  26150. BSTP [0x03] = Local2
  26151. }
  26152.  
  26153. BUF2 = ^^^I2C1.FG1D /* \_SB_.PCI0.I2C1.FG1D */
  26154. If ((BSTS != One))
  26155. {
  26156. Local1 = (WRD1 & Zero)
  26157. Local2 = (Local1 | 0x0104)
  26158. WRD1 = Local2
  26159. ^^^I2C1.FG1D = BUF2 /* \_SB_.PCI0.I2C7.BATC.BUF2 */
  26160. }
  26161.  
  26162. Local2 = 0x18
  26163. Local1 = (Local2 << 0x08)
  26164. WRD1 = Local1
  26165. ^^^I2C1.THRM = BUF2 /* \_SB_.PCI0.I2C7.BATC.BUF2 */
  26166. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26167. ^^PMI5.SET (One, 0x5E, 0x26, 0x02)
  26168. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26169. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26170. Local1 = BQCC /* \_SB_.PCI0.I2C7.BATC.BQCC */
  26171. Local3 = Local1
  26172. Local2 = (Local0 & 0xFC)
  26173. Local3 &= 0xFC
  26174. If ((Local2 != Local3))
  26175. {
  26176. Local2 = (Local0 & 0x03)
  26177. Local1 &= 0xFC
  26178. Local0 = (Local2 | Local1)
  26179. }
  26180.  
  26181. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26182. ^^PMI5.SET (One, 0x5E, 0x26, One)
  26183. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26184. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26185. Local1 = (Local0 & 0xCF)
  26186. If ((BCCE == One))
  26187. {
  26188. Local0 = (Local1 | 0x10)
  26189. If ((RGND == Zero))
  26190. {
  26191. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26192. ^^PMI5.SET (One, 0x5E, 0x26, One)
  26193. ^^PMI5.SET (One, 0x5E, 0x27, Local0)
  26194. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26195. }
  26196. }
  26197. ElseIf ((RGND == Zero))
  26198. {
  26199. Local0 = (Local1 | Zero)
  26200. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26201. ^^PMI5.SET (One, 0x5E, 0x26, One)
  26202. ^^PMI5.SET (One, 0x5E, 0x27, Local0)
  26203. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26204. }
  26205. }
  26206.  
  26207. Return (BSTP) /* \_SB_.PCI0.I2C7.BATC.BSTP */
  26208. }
  26209.  
  26210. Method (INTC, 0, NotSerialized)
  26211. {
  26212. ADBG ("INTC")
  26213. Name (RGND, One)
  26214. Local0 = ^^PMI5.GET (One, 0x6E, 0x1E)
  26215. Local0 >>= 0x03
  26216. Local0 &= 0x03
  26217. If ((Local0 != One))
  26218. {
  26219. RGND = Zero
  26220. }
  26221.  
  26222. If ((RGND == Zero))
  26223. {
  26224. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26225. ^^PMI5.SET (One, 0x5E, 0x26, 0x09)
  26226. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26227. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26228. If ((Local0 != Zero))
  26229. {
  26230. ADBG ("FAULT OCCURED")
  26231. ADBG (Local0)
  26232. }
  26233.  
  26234. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26235. ^^PMI5.SET (One, 0x5E, 0x26, 0x04)
  26236. ^^PMI5.SET (One, 0x5E, 0x27, 0xD6)
  26237. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26238. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26239. ^^PMI5.SET (One, 0x5E, 0x26, One)
  26240. ^^PMI5.SET (One, 0x5E, 0x27, 0x19)
  26241. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26242. }
  26243.  
  26244. Local0 = PSRC ()
  26245. If ((((Local0 == One) || (Local0 == 0x02)) || ((Local0 ==
  26246. 0x03) || (Local0 == 0x04))))
  26247. {
  26248. ^^PMI5.ACDC = One
  26249. }
  26250. Else
  26251. {
  26252. ^^PMI5.ACDC = Zero
  26253. }
  26254.  
  26255. If ((Local0 == One))
  26256. {
  26257. HSMD = One
  26258. }
  26259. ElseIf ((Local0 == 0x02))
  26260. {
  26261. HSMD = Zero
  26262. }
  26263. ElseIf ((Local0 == 0x03))
  26264. {
  26265. HSMD = Zero
  26266. }
  26267. ElseIf ((Local0 == 0x04))
  26268. {
  26269. HSMD = Zero
  26270. }
  26271. ElseIf ((Local0 == 0x05))
  26272. {
  26273. HSMD = Zero
  26274. }
  26275. ElseIf ((Local0 == Zero))
  26276. {
  26277. CHPR = One
  26278. HSMD = Zero
  26279. }
  26280.  
  26281. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26282. ^^PMI5.SET (One, 0x5E, 0x26, 0x08)
  26283. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26284. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26285. Local1 = (Local0 & 0xC0)
  26286. If ((Local1 == 0xC0))
  26287. {
  26288. If ((OTGS != One))
  26289. {
  26290. OTGS = One
  26291. }
  26292. }
  26293. ElseIf ((OTGS != Zero))
  26294. {
  26295. OTGS = Zero
  26296. }
  26297.  
  26298. If ((HSMD == Zero))
  26299. {
  26300. Local0 = ^^PMI5.GET (One, 0x5E, 0x29)
  26301. Local1 = (Local0 >> 0x02)
  26302. Local1 &= 0x0F
  26303. If ((Local1 == 0x02))
  26304. {
  26305. ADBG ("DCP Detected")
  26306. CDRD (Zero)
  26307. }
  26308. Else
  26309. {
  26310. ADBG ("None DCP Charger")
  26311. Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
  26312. Local0 |= One
  26313. ^^PMI5.SET (One, 0x5E, 0x07, Local0)
  26314. CDRD (One)
  26315. }
  26316. }
  26317. Else
  26318. {
  26319. Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
  26320. Local0 &= 0xFE
  26321. ^^PMI5.SET (One, 0x5E, 0x07, Local0)
  26322. ADBG ("Host Mode")
  26323. ADBG (Local0)
  26324. Local0 = ^^PMI5.GET (One, 0x6E, 0x1E)
  26325. Local0 >>= 0x03
  26326. Local0 &= 0x03
  26327. If ((Local0 == Zero))
  26328. {
  26329. Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
  26330. Local0 |= One
  26331. ^^PMI5.SET (One, 0x5E, 0x07, Local0)
  26332. Local0 = ^^PMI5.GET (One, 0x5E, 0x17)
  26333. Local0 |= 0x40
  26334. ^^PMI5.SET (One, 0x5E, 0x17, Local0)
  26335. CDRH (One)
  26336. }
  26337. Else
  26338. {
  26339. CDRH (Zero)
  26340. }
  26341. }
  26342.  
  26343. If ((CHPR == One))
  26344. {
  26345. Local0 = ^^PMI5.GET (One, 0x5E, 0x07)
  26346. Local0 &= 0xFE
  26347. ^^PMI5.SET (One, 0x5E, 0x07, Local0)
  26348. If ((DSFG == One))
  26349. {
  26350. CDRH (Zero)
  26351. }
  26352. Else
  26353. {
  26354. CDRD (Zero)
  26355. }
  26356.  
  26357. HSMD = One
  26358. ^^PMI5.SET (One, 0x5E, 0x1F, 0x18)
  26359. Return (One)
  26360. }
  26361.  
  26362. ^^PMI5.SET (One, 0x5E, 0x1F, 0x1B)
  26363. Return (One)
  26364. }
  26365.  
  26366. Method (INTF, 0, NotSerialized)
  26367. {
  26368. ADBG ("INTF")
  26369. BUF2 = ^^^I2C1.FG00 /* \_SB_.PCI0.I2C1.FG00 */
  26370. If ((BSTS != One))
  26371. {
  26372. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26373. ADBG ("FG00")
  26374. ADBG (Local1)
  26375. }
  26376.  
  26377. Return (One)
  26378. }
  26379.  
  26380. Method (CHCU, 1, NotSerialized)
  26381. {
  26382. Local0 = Arg0
  26383. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26384. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26385. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26386. Local1 = ^^PMI5.GET (One, 0x5E, 0x28)
  26387. Local2 = (Local0 & 0x07)
  26388. Local1 &= 0x07
  26389. If ((Local1 != Local2))
  26390. {
  26391. Local2 = (Local0 & 0x07)
  26392. Local1 = (DATA & 0xF8)
  26393. Local0 = (Local1 | Local2)
  26394. }
  26395. }
  26396.  
  26397. Method (_BTP, 1, NotSerialized) // _BTP: Battery Trip Point
  26398. {
  26399. BTPC = Arg0
  26400. If ((^^^I2C1.AVBL == One))
  26401. {
  26402. ADBG ("BTP")
  26403. DAT1 = Arg0
  26404. BLEN = 0x04
  26405. BUF2 = ^^^I2C1.FG2B /* \_SB_.PCI0.I2C1.FG2B */
  26406. If ((BSTS != One))
  26407. {
  26408. Local1 = (WRD1 & 0xFFFC)
  26409. WRD1 = Local1
  26410. ^^^I2C1.FG2B = BUF2 /* \_SB_.PCI0.I2C7.BATC.BUF2 */
  26411. }
  26412.  
  26413. BUF2 = ^^^I2C1.FG1D /* \_SB_.PCI0.I2C1.FG1D */
  26414. If ((BSTS != One))
  26415. {
  26416. Local1 = (WRD1 & 0xFFFB)
  26417. Local2 = (Local1 | 0x04)
  26418. WRD1 = Local2
  26419. ^^^I2C1.FG1D = BUF2 /* \_SB_.PCI0.I2C7.BATC.BUF2 */
  26420. }
  26421.  
  26422. BUF2 = ^^^I2C1.SOCR /* \_SB_.PCI0.I2C1.SOCR */
  26423. If ((BSTS != One))
  26424. {
  26425. Local0 = (WRD1 >> 0x08)
  26426. Local1 = (Local0 & 0xFF)
  26427. }
  26428.  
  26429. Local2 = (Local1 + One)
  26430. Local3 = (Local1 - One)
  26431. Local1 = (Local2 << 0x08)
  26432. Local2 = (Local1 | Local3)
  26433. WRD1 = Local2
  26434. ^^^I2C1.FG03 = BUF2 /* \_SB_.PCI0.I2C7.BATC.BUF2 */
  26435. }
  26436. }
  26437.  
  26438. Method (_BTM, 1, NotSerialized) // _BTM: Battery Time
  26439. {
  26440. If ((Arg0 > 0x7530))
  26441. {
  26442. Return (Zero)
  26443. }
  26444.  
  26445. If ((^^^I2C1.AVBL == One))
  26446. {
  26447. BUF2 = ^^^I2C1.FG11 /* \_SB_.PCI0.I2C1.FG11 */
  26448. If ((BSTS != One))
  26449. {
  26450. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26451. If ((Arg0 == Zero))
  26452. {
  26453. Local2 = (Local1 >> 0x05)
  26454. Local1 = (Local2 * 0x03)
  26455. Local2 = (Local1 * 0x3C)
  26456. Return (Local2)
  26457. }
  26458.  
  26459. BUF2 = ^^^I2C1.FG05 /* \_SB_.PCI0.I2C1.FG05 */
  26460. If ((BSTS != One))
  26461. {
  26462. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26463. Local2 = (Local1 * 0x05)
  26464. Divide (Local2, FGDV, Local0, Local1)
  26465. Local0 = (Local1 * 0x0E10)
  26466. Divide (Local0, Arg0, Local1, Local2)
  26467. Return (Local2)
  26468. }
  26469. }
  26470. }
  26471.  
  26472. Return (0xFFFFFFFF)
  26473. }
  26474.  
  26475. Method (_BCT, 1, NotSerialized) // _BCT: Battery Charge Time
  26476. {
  26477. If (((Arg0 > 0x64) || (Arg0 < One)))
  26478. {
  26479. Return (Zero)
  26480. }
  26481.  
  26482. If ((^^^I2C1.AVBL == One))
  26483. {
  26484. BUF2 = ^^^I2C1.FG05 /* \_SB_.PCI0.I2C1.FG05 */
  26485. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26486. If ((BSTS != One))
  26487. {
  26488. Local2 = (Local1 * 0x05)
  26489. Divide (Local2, FGDV, Local0, Local1)
  26490. If ((Arg0 < Local1))
  26491. {
  26492. Return (Zero)
  26493. }
  26494.  
  26495. RECT = Local1
  26496. }
  26497.  
  26498. BUF2 = ^^^I2C1.FG10 /* \_SB_.PCI0.I2C1.FG10 */
  26499. If ((BSTS != One))
  26500. {
  26501. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26502. Local2 = (Local1 * 0x05)
  26503. Divide (Local2, FGDV, Local0, Local1)
  26504. BCLP = Local1
  26505. }
  26506.  
  26507. BUF2 = ^^^I2C1.FG0A /* \_SB_.PCI0.I2C1.FG0A */
  26508. If ((BSTS != One))
  26509. {
  26510. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26511. If ((Local1 & 0x8000))
  26512. {
  26513. Return (Zero)
  26514. }
  26515. }
  26516.  
  26517. Local0 = (BCLP * Arg0)
  26518. Local0 -= RECT /* \_SB_.PCI0.I2C7.BATC.RECT */
  26519. Local0 *= 0x0E10
  26520. Divide (Local0, Local1, Local2, Local3)
  26521. Return (Local3)
  26522. }
  26523.  
  26524. Return (0xFFFFFFFF)
  26525. }
  26526.  
  26527. Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
  26528. {
  26529. If ((Arg0 == ToUUID ("4c2067e3-887d-475c-9720-4af1d3ed602e") /* Battery Thermal Limit */))
  26530. {
  26531. If ((Arg2 == 0x02))
  26532. {
  26533. If ((Arg1 == Zero))
  26534. {
  26535. Return (Buffer (One)
  26536. {
  26537. 0x00 /* . */
  26538. })
  26539. }
  26540. }
  26541. }
  26542.  
  26543. Return (Zero)
  26544. }
  26545.  
  26546. Method (_STA, 0, NotSerialized) // _STA: Status
  26547. {
  26548. If ((BDID != 0x08))
  26549. {
  26550. Return (Zero)
  26551. }
  26552.  
  26553. If ((OSID != One))
  26554. {
  26555. Return (Zero)
  26556. }
  26557.  
  26558. If ((^^^I2C1.AVBL == One))
  26559. {
  26560. BUF2 = ^^^I2C1.FG05 /* \_SB_.PCI0.I2C1.FG05 */
  26561. If ((BSTS != Zero))
  26562. {
  26563. Return (Zero)
  26564. }
  26565. }
  26566.  
  26567. ADBG ("TI CHARGER")
  26568. Return (0x1F)
  26569. }
  26570.  
  26571. Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
  26572. {
  26573. Return (_SB) /* \_SB_ */
  26574. }
  26575.  
  26576. Method (PSOC, 0, NotSerialized)
  26577. {
  26578. If ((^^^I2C1.AVBL == One))
  26579. {
  26580. BUF2 = ^^^I2C1.SOCR /* \_SB_.PCI0.I2C1.SOCR */
  26581. If ((BSTS != One))
  26582. {
  26583. Local0 = (WRD1 >> 0x08)
  26584. Local1 = (Local0 & 0xFF)
  26585. }
  26586.  
  26587. Return (Local1)
  26588. }
  26589.  
  26590. Return (Zero)
  26591. }
  26592.  
  26593. Method (PMAX, 0, NotSerialized)
  26594. {
  26595. If ((^^^I2C1.AVBL == One))
  26596. {
  26597. BUF2 = ^^^I2C1.MXCU /* \_SB_.PCI0.I2C1.MXCU */
  26598. If ((BSTS != One))
  26599. {
  26600. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26601. If ((Local1 & 0x8000))
  26602. {
  26603. Local0 = (Local1 >> 0x08)
  26604. Local1 = (Local0 & 0xFF)
  26605. Local0 = (0xFFFF - Local1)
  26606. Local1 = (Local0 * 0x04)
  26607. }
  26608. Else
  26609. {
  26610. Local0 = (Local1 >> 0x08)
  26611. Local2 = (Local0 & 0xFF)
  26612. Local1 = (Local2 * 0x04)
  26613. }
  26614.  
  26615. Divide (Local1, 0x0A, Local0, Local2)
  26616. Divide (Local2, FGDV, Local0, Local1)
  26617. Local2 = (Local1 * 0x03E8)
  26618. Local1 = (DSVO * Local2)
  26619. Return (Local1)
  26620. }
  26621. }
  26622.  
  26623. Return (Zero)
  26624. }
  26625.  
  26626. Method (VMIN, 0, NotSerialized)
  26627. {
  26628. Return (0x0DAC)
  26629. }
  26630.  
  26631. Method (APWR, 0, NotSerialized)
  26632. {
  26633. Return (0x0365C040)
  26634. }
  26635.  
  26636. Method (NPWR, 0, NotSerialized)
  26637. {
  26638. Local3 = APWR ()
  26639. If ((^^^I2C1.AVBL == One))
  26640. {
  26641. BUF2 = ^^^I2C1.FG0A /* \_SB_.PCI0.I2C1.FG0A */
  26642. If ((BSTS != One))
  26643. {
  26644. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26645. If ((Local1 & 0x8000))
  26646. {
  26647. Local1 = (0xFFFF - Local1)
  26648. }
  26649.  
  26650. Divide (Local1, FGDV, Local0, Local2)
  26651. Local1 = (Local2 * 0x9C)
  26652. Divide (Local1, 0x64, Local0, Local2)
  26653. AVCU = Local2
  26654. BUF2 = ^^^I2C1.FG09 /* \_SB_.PCI0.I2C1.FG09 */
  26655. If ((BSTS != One))
  26656. {
  26657. Local1 = WRD1 /* \_SB_.PCI0.I2C7.BATC.WRD1 */
  26658. Local2 = (Local1 >> 0x03)
  26659. Local1 = (Local2 * 0x0271)
  26660. Divide (Local1, 0x03E8, Local0, Local2)
  26661. }
  26662.  
  26663. Local1 = (Local2 * AVCU) /* \_SB_.PCI0.I2C7.BATC.AVCU */
  26664. Local0 = (Local3 - Local1)
  26665. Return (Local0)
  26666. }
  26667. }
  26668.  
  26669. Return (Local0)
  26670. }
  26671.  
  26672. Method (PSRC, 0, Serialized)
  26673. {
  26674. Name (RGND, One)
  26675. If ((^^PMI5.AVBL == One))
  26676. {
  26677. Local7 = ^^PMI5.GET (One, 0x6E, 0x1E)
  26678. Local7 >>= 0x03
  26679. Local7 &= 0x03
  26680. If ((Local7 != One))
  26681. {
  26682. RGND = Zero
  26683. }
  26684.  
  26685. Local0 = ^^PMI5.GET (One, 0x5E, 0x29)
  26686. ADBG (Local0)
  26687. Local1 = (Local0 >> 0x02)
  26688. Local1 &= 0x0F
  26689. If (((Local1 == Zero) || (RGND != Zero)))
  26690. {
  26691. ADBG ("NONE")
  26692. Return (Zero)
  26693. }
  26694. ElseIf ((Local1 == 0x04))
  26695. {
  26696. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26697. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26698. ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
  26699. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26700. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26701. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26702. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26703. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26704. ADBG ("REG05")
  26705. ADBG (Local0)
  26706. If ((RGND == Zero))
  26707. {
  26708. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26709. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26710. ^^PMI5.SET (One, 0x5E, 0x27, 0x3D)
  26711. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26712. }
  26713.  
  26714. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26715. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26716. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26717. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26718. ADBG ("ACA")
  26719. ADBG (Local0)
  26720. Return (One)
  26721. }
  26722. ElseIf ((Local1 == One))
  26723. {
  26724. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26725. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26726. ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
  26727. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26728. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26729. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26730. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26731. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26732. ADBG ("REG05")
  26733. ADBG (Local0)
  26734. If ((RGND == Zero))
  26735. {
  26736. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26737. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26738. ^^PMI5.SET (One, 0x5E, 0x27, 0x3A)
  26739. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26740. }
  26741.  
  26742. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26743. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26744. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26745. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26746. ADBG ("SDP")
  26747. ADBG (Local0)
  26748. Return (0x02)
  26749. }
  26750. ElseIf ((Local1 == 0x02))
  26751. {
  26752. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26753. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26754. ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
  26755. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26756. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26757. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26758. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26759. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26760. ADBG ("REG05")
  26761. ADBG (Local0)
  26762. If ((RGND == Zero))
  26763. {
  26764. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26765. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26766. ^^PMI5.SET (One, 0x5E, 0x27, 0x3D)
  26767. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26768. }
  26769.  
  26770. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26771. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26772. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26773. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26774. ADBG ("DCP")
  26775. ADBG (Local0)
  26776. Return (0x03)
  26777. }
  26778. ElseIf ((Local1 == 0x03))
  26779. {
  26780. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26781. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26782. ^^PMI5.SET (One, 0x5E, 0x27, 0x8A)
  26783. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26784. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26785. ^^PMI5.SET (One, 0x5E, 0x26, 0x05)
  26786. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26787. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26788. ADBG ("REG05")
  26789. ADBG (Local0)
  26790. If ((RGND == Zero))
  26791. {
  26792. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26793. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26794. ^^PMI5.SET (One, 0x5E, 0x27, 0x3D)
  26795. ^^PMI5.SET (One, 0x5E, 0x24, One)
  26796. }
  26797.  
  26798. ^^PMI5.SET (One, 0x5E, 0x25, 0x6B)
  26799. ^^PMI5.SET (One, 0x5E, 0x26, Zero)
  26800. ^^PMI5.SET (One, 0x5E, 0x24, 0x02)
  26801. Local0 = ^^PMI5.GET (One, 0x5E, 0x28)
  26802. ADBG ("CDP")
  26803. ADBG (Local0)
  26804. Return (0x04)
  26805. }
  26806. ElseIf ((Local1 == 0x08))
  26807. {
  26808. ADBG ("OTG")
  26809. Return (0x05)
  26810. }
  26811. Else
  26812. {
  26813. Return (Zero)
  26814. }
  26815. }
  26816.  
  26817. Return (One)
  26818. }
  26819. }
  26820. }
  26821.  
  26822. Scope (_SB)
  26823. {
  26824. Device (ADP1)
  26825. {
  26826. Name (_HID, "ACPI0003" /* Power Source Device */) // _HID: Hardware ID
  26827. Method (_PSR, 0, Serialized) // _PSR: Power Source
  26828. {
  26829. ADBG ("ADP1 _PSR")
  26830. If ((BDID == 0x08))
  26831. {
  26832. ADBG ("ADP1 _PSR FFD")
  26833. If (CondRefOf (\_SB.PCI0.I2C7.BATC, Local1))
  26834. {
  26835. Local0 = ^^PCI0.I2C7.BATC.PSRC ()
  26836. If ((Local0 == Zero))
  26837. {
  26838. ADBG ("DC")
  26839. Return (Zero)
  26840. }
  26841. Else
  26842. {
  26843. ADBG ("AC")
  26844. Return (One)
  26845. }
  26846. }
  26847. }
  26848.  
  26849. If (((BDID == 0x09) || (BDID == 0x0A)))
  26850. {
  26851. ADBG ("ADP1 _PSR FFD HR")
  26852. If (CondRefOf (\_SB.PCI0.I2C7.WIDR, Local1))
  26853. {
  26854. Local0 = ^^PCI0.I2C7.WIDR.PSRC ()
  26855. If ((Local0 == Zero))
  26856. {
  26857. ADBG ("DC")
  26858. Return (Zero)
  26859. }
  26860. Else
  26861. {
  26862. ADBG ("AC")
  26863. Return (One)
  26864. }
  26865. }
  26866. }
  26867.  
  26868. If ((BDID == One))
  26869. {
  26870. ADBG ("ADP1 _PSR CHTCR")
  26871. If ((PMID == 0x02))
  26872. {
  26873. If (CondRefOf (\_SB.PCI0.I2C7.BMDR, Local1))
  26874. {
  26875. Local0 = ^^PCI0.I2C7.BMDR.PSRC ()
  26876. If ((Local0 == Zero))
  26877. {
  26878. ADBG ("DC")
  26879. Return (Zero)
  26880. }
  26881. Else
  26882. {
  26883. ADBG ("AC")
  26884. Return (One)
  26885. }
  26886. }
  26887. }
  26888. ElseIf (CondRefOf (\_SB.PCI0.I2C3.TIDR, Local1))
  26889. {
  26890. Local0 = ^^PCI0.I2C3.TIDR.PSRC ()
  26891. If ((Local0 == Zero))
  26892. {
  26893. ADBG ("DC")
  26894. Return (Zero)
  26895. }
  26896. Else
  26897. {
  26898. ADBG ("AC")
  26899. Return (One)
  26900. }
  26901. }
  26902. }
  26903. ElseIf (CondRefOf (\_SB.PCI0.I2C1.BATC, Local1))
  26904. {
  26905. Local0 = ^^PCI0.I2C1.BATC.PSRC ()
  26906. If ((Local0 == Zero))
  26907. {
  26908. Return (Zero)
  26909. }
  26910. Else
  26911. {
  26912. Return (One)
  26913. }
  26914. }
  26915.  
  26916. ADBG ("_PSR DEF")
  26917. Return (One)
  26918. }
  26919.  
  26920. Method (_PCL, 0, NotSerialized) // _PCL: Power Consumer List
  26921. {
  26922. Return (_SB) /* \_SB_ */
  26923. }
  26924.  
  26925. Method (_STA, 0, NotSerialized) // _STA: Status
  26926. {
  26927. If ((OSID != One))
  26928. {
  26929. Return (Zero)
  26930. }
  26931.  
  26932. Return (0x0F)
  26933. }
  26934. }
  26935. }
  26936.  
  26937. Scope (_SB)
  26938. {
  26939. Device (MDM3)
  26940. {
  26941. Name (_HID, EisaId ("MCD0001")) // _HID: Hardware ID
  26942. Name (_CID, "MCD0001") // _CID: Compatible ID
  26943. Name (_UID, One) // _UID: Unique ID
  26944. Name (MDMN, "XMM_7360")
  26945. Name (CONF, "XMM7360_CONF_2")
  26946. Method (_STA, 0, NotSerialized) // _STA: Status
  26947. {
  26948. If ((BDID == One))
  26949. {
  26950. Return (Zero)
  26951. }
  26952.  
  26953. If (((OSID != One) && (MODS == Zero)))
  26954. {
  26955. Return (0x0F)
  26956. }
  26957.  
  26958. Return (Zero)
  26959. }
  26960.  
  26961. Name (PMIC, Package (0x04)
  26962. {
  26963. 0x29,
  26964. One,
  26965. Zero,
  26966. 0xFA
  26967. })
  26968. Name (EPWR, Package (0x02)
  26969. {
  26970. Zero,
  26971. One
  26972. })
  26973. }
  26974.  
  26975. Device (MDM2)
  26976. {
  26977. Name (_HID, EisaId ("MCD0001")) // _HID: Hardware ID
  26978. Name (_CID, "MCD0001") // _CID: Compatible ID
  26979. Name (CPU, "CherryView")
  26980. Name (MDMN, "XMM_7260")
  26981. Name (CONF, "XMM7260_CONF_3")
  26982. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  26983. {
  26984. Name (UBUF, ResourceTemplate ()
  26985. {
  26986. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  26987. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  26988. )
  26989. { // Pin list
  26990. 0x0000
  26991. }
  26992. GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
  26993. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  26994. )
  26995. { // Pin list
  26996. 0x0013
  26997. }
  26998. GpioInt (Edge, ActiveBoth, Exclusive, PullDown, 0x0000,
  26999. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27000. )
  27001. { // Pin list
  27002. 0x0006
  27003. }
  27004. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27005. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27006. )
  27007. { // Pin list
  27008. 0x0002
  27009. }
  27010. })
  27011. Return (UBUF) /* \_SB_.MDM2._CRS.UBUF */
  27012. }
  27013.  
  27014. Method (_STA, 0, NotSerialized) // _STA: Status
  27015. {
  27016. If ((BDID == One))
  27017. {
  27018. Return (Zero)
  27019. }
  27020.  
  27021. If (((OSID != One) && (MODS == One)))
  27022. {
  27023. Return (0x0F)
  27024. }
  27025.  
  27026. Return (Zero)
  27027. }
  27028.  
  27029. Name (PMIC, Package (0x04)
  27030. {
  27031. 0x29,
  27032. One,
  27033. Zero,
  27034. 0xFC
  27035. })
  27036. Name (EPWR, Package (0x02)
  27037. {
  27038. Zero,
  27039. One
  27040. })
  27041. }
  27042.  
  27043. Device (MDM)
  27044. {
  27045. Name (_HID, EisaId ("MCD0001")) // _HID: Hardware ID
  27046. Name (_CID, "MCD0001") // _CID: Compatible ID
  27047. Name (CPU, "CherryView")
  27048. Name (MDMN, "XMM_7260")
  27049. Name (CONF, "XMM7260_CONF_7")
  27050. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  27051. {
  27052. Name (UBUF, ResourceTemplate ()
  27053. {
  27054. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27055. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27056. )
  27057. { // Pin list
  27058. 0x0000
  27059. }
  27060. GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
  27061. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27062. )
  27063. { // Pin list
  27064. 0x0013
  27065. }
  27066. GpioInt (Edge, ActiveBoth, Exclusive, PullDown, 0x0000,
  27067. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27068. )
  27069. { // Pin list
  27070. 0x0006
  27071. }
  27072. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27073. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27074. )
  27075. { // Pin list
  27076. 0x0002
  27077. }
  27078. })
  27079. Return (UBUF) /* \_SB_.MDM_._CRS.UBUF */
  27080. }
  27081.  
  27082. Method (_STA, 0, NotSerialized) // _STA: Status
  27083. {
  27084. If ((BDID == One))
  27085. {
  27086. Return (Zero)
  27087. }
  27088.  
  27089. If (((OSID != One) && (MODS == 0x02)))
  27090. {
  27091. Return (0x0F)
  27092. }
  27093.  
  27094. Return (Zero)
  27095. }
  27096.  
  27097. Name (PMIC, Package (0x04)
  27098. {
  27099. 0x29,
  27100. One,
  27101. Zero,
  27102. 0xFC
  27103. })
  27104. Name (EPWR, Package (0x02)
  27105. {
  27106. Zero,
  27107. One
  27108. })
  27109. }
  27110.  
  27111. Device (MDM4)
  27112. {
  27113. Name (_HID, EisaId ("MCD0001")) // _HID: Hardware ID
  27114. Name (_CID, "MCD0001") // _CID: Compatible ID
  27115. Name (CPU, "CherryView")
  27116. Name (MDMN, "XMM_7160")
  27117. Name (CONF, "XMM7160_CONF_9")
  27118. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  27119. {
  27120. Name (UBUF, ResourceTemplate ()
  27121. {
  27122. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27123. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  27124. )
  27125. { // Pin list
  27126. 0x0006
  27127. }
  27128. GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
  27129. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27130. )
  27131. { // Pin list
  27132. 0x0016
  27133. }
  27134. GpioIo (Exclusive, PullUp, 0x0001, 0x0001, IoRestrictionOutputOnly,
  27135. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27136. )
  27137. { // Pin list
  27138. 0x0006
  27139. }
  27140. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27141. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27142. )
  27143. { // Pin list
  27144. 0x0002
  27145. }
  27146. })
  27147. Return (UBUF) /* \_SB_.MDM4._CRS.UBUF */
  27148. }
  27149.  
  27150. Method (_STA, 0, NotSerialized) // _STA: Status
  27151. {
  27152. If ((BDID != One))
  27153. {
  27154. Return (Zero)
  27155. }
  27156.  
  27157. If ((((OSID == 0x02) || (OSID == 0x04)) && (MODS == 0x03)))
  27158. {
  27159. Return (0x0F)
  27160. }
  27161.  
  27162. Return (Zero)
  27163. }
  27164.  
  27165. Name (PMIC, Package (0x04)
  27166. {
  27167. 0x29,
  27168. One,
  27169. Zero,
  27170. 0xFC
  27171. })
  27172. Name (EPWR, Package (0x02)
  27173. {
  27174. Zero,
  27175. One
  27176. })
  27177. }
  27178.  
  27179. Device (MDM5)
  27180. {
  27181. Name (_HID, EisaId ("MCD0001")) // _HID: Hardware ID
  27182. Name (_CID, "MCD0001") // _CID: Compatible ID
  27183. Name (CPU, "CherryView")
  27184. Name (MDMN, "XMM_7260")
  27185. Name (CONF, "XMM7260_CONF_13")
  27186. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  27187. {
  27188. Name (UBUF, ResourceTemplate ()
  27189. {
  27190. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27191. "\\_SB.GPO3", 0x00, ResourceConsumer, ,
  27192. )
  27193. { // Pin list
  27194. 0x0006
  27195. }
  27196. GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
  27197. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27198. )
  27199. { // Pin list
  27200. 0x0016
  27201. }
  27202. GpioIo (Exclusive, PullUp, 0x0001, 0x0001, IoRestrictionOutputOnly,
  27203. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27204. )
  27205. { // Pin list
  27206. 0x0006
  27207. }
  27208. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27209. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27210. )
  27211. { // Pin list
  27212. 0x0002
  27213. }
  27214. })
  27215. Name (RBUF, ResourceTemplate ()
  27216. {
  27217. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27218. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27219. )
  27220. { // Pin list
  27221. 0x0000
  27222. }
  27223. GpioInt (Edge, ActiveHigh, Exclusive, PullDown, 0x0000,
  27224. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27225. )
  27226. { // Pin list
  27227. 0x0007
  27228. }
  27229. GpioIo (Exclusive, PullUp, 0x0001, 0x0001, IoRestrictionOutputOnly,
  27230. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27231. )
  27232. { // Pin list
  27233. 0x0006
  27234. }
  27235. GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
  27236. "\\_SB.GPO1", 0x00, ResourceConsumer, ,
  27237. )
  27238. { // Pin list
  27239. 0x0002
  27240. }
  27241. })
  27242. If ((BDID == One))
  27243. {
  27244. Return (UBUF) /* \_SB_.MDM5._CRS.UBUF */
  27245. }
  27246.  
  27247. Return (RBUF) /* \_SB_.MDM5._CRS.RBUF */
  27248. }
  27249.  
  27250. Method (_STA, 0, NotSerialized) // _STA: Status
  27251. {
  27252. If ((((BDID != 0x09) && (BDID != 0x0A)) &&
  27253. (BDID != One)))
  27254. {
  27255. Return (Zero)
  27256. }
  27257.  
  27258. If ((((OSID == 0x02) || (OSID == 0x04)) && (MODS == 0x04)))
  27259. {
  27260. Return (0x0F)
  27261. }
  27262.  
  27263. Return (Zero)
  27264. }
  27265.  
  27266. Name (PMIC, Package (0x04)
  27267. {
  27268. 0x29,
  27269. One,
  27270. Zero,
  27271. 0xFC
  27272. })
  27273. Name (EPWR, Package (0x02)
  27274. {
  27275. Zero,
  27276. One
  27277. })
  27278. }
  27279. }
  27280.  
  27281. Scope (_GPE)
  27282. {
  27283. Method (_L09, 0, NotSerialized) // _Lxx: Level-Triggered GPE
  27284. {
  27285. If (((BDID != One) && (OSID != One)))
  27286. {
  27287. If ((RP1D == Zero))
  27288. {
  27289. \_SB.PCI0.RP01.HPME ()
  27290. Notify (\_SB.PCI0.RP01, 0x02) // Device Wake
  27291. }
  27292.  
  27293. If ((RP2D == Zero))
  27294. {
  27295. \_SB.PCI0.RP02.HPME ()
  27296. Notify (\_SB.PCI0.RP02, 0x02) // Device Wake
  27297. }
  27298.  
  27299. If ((RP3D == Zero))
  27300. {
  27301. \_SB.PCI0.RP03.HPME ()
  27302. Notify (\_SB.PCI0.RP03, 0x02) // Device Wake
  27303. }
  27304.  
  27305. If ((RP4D == Zero))
  27306. {
  27307. \_SB.PCI0.RP04.HPME ()
  27308. Notify (\_SB.PCI0.RP04, 0x02) // Device Wake
  27309. }
  27310. }
  27311. }
  27312. }
  27313.  
  27314. Device (_SB.TPM)
  27315. {
  27316. Method (_HID, 0, NotSerialized) // _HID: Hardware ID
  27317. {
  27318. If (TCMF)
  27319. {
  27320. Return (0x01013469)
  27321. }
  27322. ElseIf ((TTDP == Zero))
  27323. {
  27324. Return (0x310CD041)
  27325. }
  27326. Else
  27327. {
  27328. Return ("MSFT0101")
  27329. }
  27330. }
  27331.  
  27332. Method (_STR, 0, NotSerialized) // _STR: Description String
  27333. {
  27334. If ((TTDP == Zero))
  27335. {
  27336. Return (Unicode ("TPM 1.2 Device"))
  27337. }
  27338. Else
  27339. {
  27340. Return (Unicode ("TPM 2.0 Device"))
  27341. }
  27342. }
  27343.  
  27344. Name (_UID, One) // _UID: Unique ID
  27345. Name (CRST, ResourceTemplate ()
  27346. {
  27347. Memory32Fixed (ReadOnly,
  27348. 0x00000000, // Address Base
  27349. 0x00001000, // Address Length
  27350. _Y3C)
  27351. Memory32Fixed (ReadOnly,
  27352. 0xFED70000, // Address Base
  27353. 0x00001000, // Address Length
  27354. _Y3D)
  27355. })
  27356. Name (CRSD, ResourceTemplate ()
  27357. {
  27358. Memory32Fixed (ReadOnly,
  27359. 0xFED40000, // Address Base
  27360. 0x00001000, // Address Length
  27361. _Y3E)
  27362. })
  27363. Name (CRSI, ResourceTemplate ()
  27364. {
  27365. Memory32Fixed (ReadOnly,
  27366. 0xFED40000, // Address Base
  27367. 0x00001000, // Address Length
  27368. _Y3F)
  27369. })
  27370. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  27371. {
  27372. If ((AMDT == One))
  27373. {
  27374. CreateDWordField (CRST, \_SB.TPM._Y3C._BAS, MTFB) // _BAS: Base Address
  27375. CreateDWordField (CRST, \_SB.TPM._Y3C._LEN, LTFB) // _LEN: Length
  27376. MTFB = TPMB /* \TPMB */
  27377. LTFB = 0x1000
  27378. CreateDWordField (CRST, \_SB.TPM._Y3D._BAS, MTFC) // _BAS: Base Address
  27379. CreateDWordField (CRST, \_SB.TPM._Y3D._LEN, LTFC) // _LEN: Length
  27380. MTFC = TPMC /* \TPMC */
  27381. LTFC = 0x1000
  27382. Return (CRST) /* \_SB_.TPM_.CRST */
  27383. }
  27384. ElseIf ((DTPT == One))
  27385. {
  27386. CreateDWordField (CRSD, \_SB.TPM._Y3E._BAS, MTFE) // _BAS: Base Address
  27387. CreateDWordField (CRSD, \_SB.TPM._Y3E._LEN, LTFE) // _LEN: Length
  27388. MTFE = 0xFED40000
  27389. LTFE = 0x0880
  27390. Return (CRSD) /* \_SB_.TPM_.CRSD */
  27391. }
  27392. ElseIf ((TTPF == One))
  27393. {
  27394. CreateDWordField (CRSI, \_SB.TPM._Y3F._BAS, MTFD) // _BAS: Base Address
  27395. CreateDWordField (CRSI, \_SB.TPM._Y3F._LEN, LTFD) // _LEN: Length
  27396. MTFD = 0xFED40000
  27397. LTFD = 0x5000
  27398. Return (CRSI) /* \_SB_.TPM_.CRSI */
  27399. }
  27400. ElseIf ((TTPF == Zero))
  27401. {
  27402. CreateDWordField (CRSI, \_SB.TPM._Y3F._BAS, MTFF) // _BAS: Base Address
  27403. MTFF = TPMM /* \TPMM */
  27404. Return (CRSI) /* \_SB_.TPM_.CRSI */
  27405. }
  27406. }
  27407.  
  27408. OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x5000)
  27409. Field (TMMB, ByteAcc, Lock, Preserve)
  27410. {
  27411. Offset (0x04),
  27412. LCST, 32,
  27413. Offset (0x40),
  27414. CREQ, 32,
  27415. CSTS, 32,
  27416. Offset (0x4C),
  27417. SCMD, 32
  27418. }
  27419.  
  27420. OperationRegion (CRBD, SystemMemory, TPMM, 0x48)
  27421. Field (CRBD, AnyAcc, NoLock, Preserve)
  27422. {
  27423. Offset (0x04),
  27424. HERR, 32,
  27425. Offset (0x40),
  27426. HCMD, 32,
  27427. HSTS, 32
  27428. }
  27429.  
  27430. Method (_STA, 0, NotSerialized) // _STA: Status
  27431. {
  27432. If ((TTDP == Zero))
  27433. {
  27434. If (TPMF)
  27435. {
  27436. Return (0x0F)
  27437. }
  27438.  
  27439. Return (Zero)
  27440. }
  27441. ElseIf ((TTDP == One))
  27442. {
  27443. If (TPMF)
  27444. {
  27445. Return (0x0F)
  27446. }
  27447.  
  27448. Return (Zero)
  27449. }
  27450. }
  27451.  
  27452. Method (STRT, 3, Serialized)
  27453. {
  27454. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  27455. OperationRegion (TPMR, SystemMemory, FTPM, 0x1000)
  27456. Field (TPMR, AnyAcc, NoLock, Preserve)
  27457. {
  27458. Offset (0x04),
  27459. FERR, 32,
  27460. Offset (0x0C),
  27461. BEGN, 32
  27462. }
  27463.  
  27464. Name (TIMR, Zero)
  27465. While (One)
  27466. {
  27467. _T_0 = ToInteger (Arg1)
  27468. If ((_T_0 == Zero))
  27469. {
  27470. Return (Buffer (One)
  27471. {
  27472. 0x03 /* . */
  27473. })
  27474. }
  27475. ElseIf ((_T_0 == One))
  27476. {
  27477. TIMR = Zero
  27478. If ((AMDT == One))
  27479. {
  27480. While (((BEGN == One) && (TIMR < 0x0200)))
  27481. {
  27482. If ((BEGN == One))
  27483. {
  27484. Sleep (One)
  27485. TIMR++
  27486. }
  27487. }
  27488.  
  27489. Return (Zero)
  27490. }
  27491. ElseIf ((((HSTS & 0x02) | (HSTS & One)
  27492. ) == 0x03))
  27493. {
  27494. HCMD = One
  27495. }
  27496. Else
  27497. {
  27498. FERR = One
  27499. BEGN = Zero
  27500. }
  27501. }
  27502.  
  27503. Break
  27504. }
  27505.  
  27506. Return (One)
  27507. }
  27508.  
  27509. Method (CRYF, 3, Serialized)
  27510. {
  27511. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  27512. While (One)
  27513. {
  27514. _T_0 = ToInteger (Arg1)
  27515. If ((_T_0 == Zero))
  27516. {
  27517. Return (Buffer (One)
  27518. {
  27519. 0x03 /* . */
  27520. })
  27521. }
  27522. ElseIf ((_T_0 == One))
  27523. {
  27524. Name (TPMV, Package (0x02)
  27525. {
  27526. One,
  27527. Package (0x02)
  27528. {
  27529. One,
  27530. 0x20
  27531. }
  27532. })
  27533. If ((_STA () == Zero))
  27534. {
  27535. Return (Package (0x01)
  27536. {
  27537. Zero
  27538. })
  27539. }
  27540.  
  27541. Return (TPMV) /* \_SB_.TPM_.CRYF.TPMV */
  27542. }
  27543.  
  27544. Break
  27545. }
  27546.  
  27547. Return (Buffer (One)
  27548. {
  27549. 0x00 /* . */
  27550. })
  27551. }
  27552. }
  27553.  
  27554. Scope (_SB.TPM)
  27555. {
  27556. OperationRegion (ASMI, SystemIO, SMIA, One)
  27557. Field (ASMI, ByteAcc, NoLock, Preserve)
  27558. {
  27559. INQ, 8
  27560. }
  27561.  
  27562. OperationRegion (BSMI, SystemIO, SMIB, One)
  27563. Field (BSMI, ByteAcc, NoLock, Preserve)
  27564. {
  27565. DAT, 8
  27566. }
  27567.  
  27568. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  27569. {
  27570. Name (_T_1, Zero) // _T_x: Emitted by ASL Compiler
  27571. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  27572. If ((Arg0 == ToUUID ("3dddfaa6-361b-4eb4-a424-8d10089d1653") /* Physical Presence Interface */))
  27573. {
  27574. While (One)
  27575. {
  27576. _T_0 = ToInteger (Arg2)
  27577. If ((_T_0 == Zero))
  27578. {
  27579. Return (Buffer (0x02)
  27580. {
  27581. 0xFF, 0x01 /* .. */
  27582. })
  27583. }
  27584. ElseIf ((_T_0 == One))
  27585. {
  27586. Return ("1.2")
  27587. }
  27588. ElseIf ((_T_0 == 0x02))
  27589. {
  27590. ToInteger (DerefOf (Arg3 [Zero]), TMF2) /* \TMF2 */
  27591. TMF1 = 0x12
  27592. DAT = TMF1 /* \TMF1 */
  27593. INQ = OFST /* \OFST */
  27594. If ((DAT == 0xFF))
  27595. {
  27596. Return (0x02)
  27597. }
  27598.  
  27599. DAT = TMF2 /* \TMF2 */
  27600. INQ = OFST /* \OFST */
  27601. If ((DAT == 0xFF))
  27602. {
  27603. Return (0x02)
  27604. }
  27605.  
  27606. If ((DAT == 0xF1))
  27607. {
  27608. Return (One)
  27609. }
  27610.  
  27611. Return (Zero)
  27612. }
  27613. ElseIf ((_T_0 == 0x03))
  27614. {
  27615. Name (PPI1, Package (0x02)
  27616. {
  27617. Zero,
  27618. Zero
  27619. })
  27620. DAT = 0x11
  27621. INQ = OFST /* \OFST */
  27622. If ((DAT == 0xFF))
  27623. {
  27624. Return (One)
  27625. }
  27626.  
  27627. PPI1 [One] = DAT /* \_SB_.TPM_.DAT_ */
  27628. Return (PPI1) /* \_SB_.TPM_._DSM.PPI1 */
  27629. }
  27630. ElseIf ((_T_0 == 0x04))
  27631. {
  27632. Return (TRST) /* \TRST */
  27633. }
  27634. ElseIf ((_T_0 == 0x05))
  27635. {
  27636. Name (PPI2, Package (0x03)
  27637. {
  27638. Zero,
  27639. Zero,
  27640. Zero
  27641. })
  27642. DAT = 0x21
  27643. INQ = OFST /* \OFST */
  27644. PPI2 [One] = DAT /* \_SB_.TPM_.DAT_ */
  27645. If ((DAT == 0xFF))
  27646. {
  27647. Return (0x02)
  27648. }
  27649.  
  27650. DAT = 0x31
  27651. INQ = OFST /* \OFST */
  27652. If ((DAT == 0xFF))
  27653. {
  27654. Return (0x02)
  27655. }
  27656.  
  27657. If ((DAT == 0xF0))
  27658. {
  27659. DAT = 0x51
  27660. INQ = OFST /* \OFST */
  27661. If ((DAT == 0xFF))
  27662. {
  27663. PPI2 [0x02] = 0xFFFFFFF0
  27664. Return (PPI2) /* \_SB_.TPM_._DSM.PPI2 */
  27665. }
  27666. }
  27667. ElseIf ((DAT == 0xF1))
  27668. {
  27669. DAT = 0x51
  27670. INQ = OFST /* \OFST */
  27671. If ((DAT == 0xFF))
  27672. {
  27673. PPI2 [0x02] = 0xFFFFFFF1
  27674. Return (PPI2) /* \_SB_.TPM_._DSM.PPI2 */
  27675. }
  27676. }
  27677. Else
  27678. {
  27679. PPI2 [0x02] = DAT /* \_SB_.TPM_.DAT_ */
  27680. }
  27681.  
  27682. Return (PPI2) /* \_SB_.TPM_._DSM.PPI2 */
  27683. }
  27684. ElseIf ((_T_0 == 0x06))
  27685. {
  27686. Return (0x03)
  27687. }
  27688. ElseIf ((_T_0 == 0x07))
  27689. {
  27690. ToInteger (DerefOf (Arg3 [Zero]), TMF2) /* \TMF2 */
  27691. TMF1 = 0x12
  27692. DAT = TMF1 /* \TMF1 */
  27693. INQ = OFST /* \OFST */
  27694. If ((DAT == 0xFF))
  27695. {
  27696. Return (0x02)
  27697. }
  27698.  
  27699. DAT = TMF2 /* \TMF2 */
  27700. INQ = OFST /* \OFST */
  27701. If ((DAT == 0xFF))
  27702. {
  27703. Return (0x02)
  27704. }
  27705.  
  27706. If ((DAT == 0xF1))
  27707. {
  27708. Return (One)
  27709. }
  27710.  
  27711. Return (Zero)
  27712. }
  27713. ElseIf ((_T_0 == 0x08))
  27714. {
  27715. ToInteger (DerefOf (Arg3 [Zero]), TMF2) /* \TMF2 */
  27716. TMF1 = 0x43
  27717. DAT = TMF1 /* \TMF1 */
  27718. INQ = OFST /* \OFST */
  27719. DAT = TMF2 /* \TMF2 */
  27720. INQ = OFST /* \OFST */
  27721. Return (DAT) /* \_SB_.TPM_.DAT_ */
  27722. }
  27723. Else
  27724. {
  27725. }
  27726.  
  27727. Break
  27728. }
  27729. }
  27730. ElseIf ((Arg0 == ToUUID ("376054ed-cc13-4675-901c-4756d7f2d45d")))
  27731. {
  27732. While (One)
  27733. {
  27734. _T_1 = ToInteger (Arg2)
  27735. If ((_T_1 == Zero))
  27736. {
  27737. Return (Buffer (One)
  27738. {
  27739. 0x03 /* . */
  27740. })
  27741. }
  27742. ElseIf ((_T_1 == One))
  27743. {
  27744. TMF1 = 0x22
  27745. DAT = TMF1 /* \TMF1 */
  27746. INQ = OFST /* \OFST */
  27747. If ((DAT == 0xFF))
  27748. {
  27749. Return (0x02)
  27750. }
  27751.  
  27752. ToInteger (DerefOf (Arg3 [Zero]), TMF1) /* \TMF1 */
  27753. DAT = TMF1 /* \TMF1 */
  27754. INQ = OFST /* \OFST */
  27755. If ((DAT == 0xFF))
  27756. {
  27757. Return (0x02)
  27758. }
  27759.  
  27760. Return (Zero)
  27761. }
  27762. Else
  27763. {
  27764. }
  27765.  
  27766. Break
  27767. }
  27768. }
  27769.  
  27770. If ((Arg0 == ToUUID ("cf8e16a5-c1e8-4e25-b712-4f54a96702c8")))
  27771. {
  27772. Return (CRYF (Arg1, Arg2, Arg3))
  27773. }
  27774.  
  27775. If ((Arg0 == ToUUID ("6bbf6cab-5463-4714-b7cd-f0203c0368d4")))
  27776. {
  27777. Return (STRT (Arg1, Arg2, Arg3))
  27778. }
  27779.  
  27780. Return (Buffer (One)
  27781. {
  27782. 0x00 /* . */
  27783. })
  27784. }
  27785. }
  27786. }
  27787.  
  27788. /*
  27789. * Intel ACPI Component Architecture
  27790. * AML/ASL+ Disassembler version 20160108-64
  27791. * Copyright (c) 2000 - 2016 Intel Corporation
  27792. *
  27793. * Disassembly of FACP.dat, Mon Sep 12 10:24:46 2016
  27794. *
  27795. * ACPI Data Table [FACP]
  27796. *
  27797. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  27798. */
  27799.  
  27800. [000h 0000 4] Signature : "FACP" [Fixed ACPI Description Table (FADT)]
  27801. [004h 0004 4] Table Length : 0000010C
  27802. [008h 0008 1] Revision : 05
  27803. [009h 0009 1] Checksum : 93
  27804. [00Ah 0010 6] Oem ID : "ALASKA"
  27805. [010h 0016 8] Oem Table ID : "A M I "
  27806. [018h 0024 4] Oem Revision : 01072009
  27807. [01Ch 0028 4] Asl Compiler ID : "AMI "
  27808. [020h 0032 4] Asl Compiler Revision : 00010013
  27809.  
  27810. [024h 0036 4] FACS Address : 6B5B2F80
  27811. [028h 0040 4] DSDT Address : 6AD3C218
  27812. [02Ch 0044 1] Model : 01
  27813. [02Dh 0045 1] PM Profile : 08 [Tablet]
  27814. [02Eh 0046 2] SCI Interrupt : 0009
  27815. [030h 0048 4] SMI Command Port : 000000B2
  27816. [034h 0052 1] ACPI Enable Value : A0
  27817. [035h 0053 1] ACPI Disable Value : A1
  27818. [036h 0054 1] S4BIOS Command : 00
  27819. [037h 0055 1] P-State Control : 00
  27820. [038h 0056 4] PM1A Event Block Address : 00000400
  27821. [03Ch 0060 4] PM1B Event Block Address : 00000000
  27822. [040h 0064 4] PM1A Control Block Address : 00000404
  27823. [044h 0068 4] PM1B Control Block Address : 00000000
  27824. [048h 0072 4] PM2 Control Block Address : 00000450
  27825. [04Ch 0076 4] PM Timer Block Address : 00000408
  27826. [050h 0080 4] GPE0 Block Address : 00000000
  27827. [054h 0084 4] GPE1 Block Address : 00000000
  27828. [058h 0088 1] PM1 Event Block Length : 04
  27829. [059h 0089 1] PM1 Control Block Length : 02
  27830. [05Ah 0090 1] PM2 Control Block Length : 01
  27831. [05Bh 0091 1] PM Timer Block Length : 04
  27832. [05Ch 0092 1] GPE0 Block Length : 00
  27833. [05Dh 0093 1] GPE1 Block Length : 00
  27834. [05Eh 0094 1] GPE1 Base Offset : 00
  27835. [05Fh 0095 1] _CST Support : 00
  27836. [060h 0096 2] C2 Latency : 0064
  27837. [062h 0098 2] C3 Latency : 01F4
  27838. [064h 0100 2] CPU Cache Size : 0400
  27839. [066h 0102 2] Cache Flush Stride : 0010
  27840. [068h 0104 1] Duty Cycle Offset : 01
  27841. [069h 0105 1] Duty Cycle Width : 03
  27842. [06Ah 0106 1] RTC Day Alarm Index : 0D
  27843. [06Bh 0107 1] RTC Month Alarm Index : 00
  27844. [06Ch 0108 1] RTC Century Index : 32
  27845. [06Dh 0109 2] Boot Flags (decoded below) : 0004
  27846. Legacy Devices Supported (V2) : 0
  27847. 8042 Present on ports 60/64 (V2) : 0
  27848. VGA Not Present (V4) : 1
  27849. MSI Not Supported (V4) : 0
  27850. PCIe ASPM Not Supported (V4) : 0
  27851. CMOS RTC Not Present (V5) : 0
  27852. [06Fh 0111 1] Reserved : 00
  27853. [070h 0112 4] Flags (decoded below) : 00200421
  27854. WBINVD instruction is operational (V1) : 1
  27855. WBINVD flushes all caches (V1) : 0
  27856. All CPUs support C1 (V1) : 0
  27857. C2 works on MP system (V1) : 0
  27858. Control Method Power Button (V1) : 0
  27859. Control Method Sleep Button (V1) : 1
  27860. RTC wake not in fixed reg space (V1) : 0
  27861. RTC can wake system from S4 (V1) : 0
  27862. 32-bit PM Timer (V1) : 0
  27863. Docking Supported (V1) : 0
  27864. Reset Register Supported (V2) : 1
  27865. Sealed Case (V3) : 0
  27866. Headless - No Video (V3) : 0
  27867. Use native instr after SLP_TYPx (V3) : 0
  27868. PCIEXP_WAK Bits Supported (V4) : 0
  27869. Use Platform Timer (V4) : 0
  27870. RTC_STS valid on S4 wake (V4) : 0
  27871. Remote Power-on capable (V4) : 0
  27872. Use APIC Cluster Model (V4) : 0
  27873. Use APIC Physical Destination Mode (V4) : 0
  27874. Hardware Reduced (V5) : 0
  27875. Low Power S0 Idle (V5) : 1
  27876.  
  27877. [074h 0116 12] Reset Register : [Generic Address Structure]
  27878. [074h 0116 1] Space ID : 01 [SystemIO]
  27879. [075h 0117 1] Bit Width : 08
  27880. [076h 0118 1] Bit Offset : 00
  27881. [077h 0119 1] Encoded Access Width : 00 [Undefined/Legacy]
  27882. [078h 0120 8] Address : 0000000000000CF9
  27883.  
  27884. [080h 0128 1] Value to cause reset : 06
  27885. [081h 0129 2] ARM Flags (decoded below) : 0000
  27886. PSCI Compliant : 0
  27887. Must use HVC for PSCI : 0
  27888.  
  27889. [083h 0131 1] FADT Minor Revision : 00
  27890. [084h 0132 8] FACS Address : 0000000000000000
  27891. [08Ch 0140 8] DSDT Address : 000000006AD3C218
  27892. [094h 0148 12] PM1A Event Block : [Generic Address Structure]
  27893. [094h 0148 1] Space ID : 01 [SystemIO]
  27894. [095h 0149 1] Bit Width : 20
  27895. [096h 0150 1] Bit Offset : 00
  27896. [097h 0151 1] Encoded Access Width : 03 [DWord Access:32]
  27897. [098h 0152 8] Address : 0000000000000400
  27898.  
  27899. [0A0h 0160 12] PM1B Event Block : [Generic Address Structure]
  27900. [0A0h 0160 1] Space ID : 01 [SystemIO]
  27901. [0A1h 0161 1] Bit Width : 00
  27902. [0A2h 0162 1] Bit Offset : 00
  27903. [0A3h 0163 1] Encoded Access Width : 00 [Undefined/Legacy]
  27904. [0A4h 0164 8] Address : 0000000000000000
  27905.  
  27906. [0ACh 0172 12] PM1A Control Block : [Generic Address Structure]
  27907. [0ACh 0172 1] Space ID : 01 [SystemIO]
  27908. [0ADh 0173 1] Bit Width : 10
  27909. [0AEh 0174 1] Bit Offset : 00
  27910. [0AFh 0175 1] Encoded Access Width : 02 [Word Access:16]
  27911. [0B0h 0176 8] Address : 0000000000000404
  27912.  
  27913. [0B8h 0184 12] PM1B Control Block : [Generic Address Structure]
  27914. [0B8h 0184 1] Space ID : 01 [SystemIO]
  27915. [0B9h 0185 1] Bit Width : 00
  27916. [0BAh 0186 1] Bit Offset : 00
  27917. [0BBh 0187 1] Encoded Access Width : 00 [Undefined/Legacy]
  27918. [0BCh 0188 8] Address : 0000000000000000
  27919.  
  27920. [0C4h 0196 12] PM2 Control Block : [Generic Address Structure]
  27921. [0C4h 0196 1] Space ID : 01 [SystemIO]
  27922. [0C5h 0197 1] Bit Width : 08
  27923. [0C6h 0198 1] Bit Offset : 00
  27924. [0C7h 0199 1] Encoded Access Width : 01 [Byte Access:8]
  27925. [0C8h 0200 8] Address : 0000000000000450
  27926.  
  27927. [0D0h 0208 12] PM Timer Block : [Generic Address Structure]
  27928. [0D0h 0208 1] Space ID : 01 [SystemIO]
  27929. [0D1h 0209 1] Bit Width : 20
  27930. [0D2h 0210 1] Bit Offset : 00
  27931. [0D3h 0211 1] Encoded Access Width : 03 [DWord Access:32]
  27932. [0D4h 0212 8] Address : 0000000000000408
  27933.  
  27934. [0DCh 0220 12] GPE0 Block : [Generic Address Structure]
  27935. [0DCh 0220 1] Space ID : 00 [SystemMemory]
  27936. [0DDh 0221 1] Bit Width : 00
  27937. [0DEh 0222 1] Bit Offset : 00
  27938. [0DFh 0223 1] Encoded Access Width : 00 [Undefined/Legacy]
  27939. [0E0h 0224 8] Address : 0000000000000000
  27940.  
  27941. [0E8h 0232 12] GPE1 Block : [Generic Address Structure]
  27942. [0E8h 0232 1] Space ID : 00 [SystemMemory]
  27943. [0E9h 0233 1] Bit Width : 00
  27944. [0EAh 0234 1] Bit Offset : 00
  27945. [0EBh 0235 1] Encoded Access Width : 00 [Undefined/Legacy]
  27946. [0ECh 0236 8] Address : 0000000000000000
  27947.  
  27948.  
  27949. [0F4h 0244 12] Sleep Control Register : [Generic Address Structure]
  27950. [0F4h 0244 1] Space ID : 01 [SystemIO]
  27951. [0F5h 0245 1] Bit Width : 08
  27952. [0F6h 0246 1] Bit Offset : 00
  27953. [0F7h 0247 1] Encoded Access Width : 01 [Byte Access:8]
  27954. [0F8h 0248 8] Address : 0000000000000405
  27955.  
  27956. [100h 0256 12] Sleep Status Register : [Generic Address Structure]
  27957. [100h 0256 1] Space ID : 01 [SystemIO]
  27958. [101h 0257 1] Bit Width : 08
  27959. [102h 0258 1] Bit Offset : 00
  27960. [103h 0259 1] Encoded Access Width : 01 [Byte Access:8]
  27961. [104h 0260 8] Address : 0000000000000401
  27962.  
  27963. /**** ACPI table terminates in the middle of a data structure! (dump table) */
  27964.  
  27965. Raw Table Data: Length 268 (0x10C)
  27966.  
  27967. 0000: 46 41 43 50 0C 01 00 00 05 93 41 4C 41 53 4B 41 // FACP......ALASKA
  27968. 0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 20 // A M I ... ..AMI
  27969. 0020: 13 00 01 00 80 2F 5B 6B 18 C2 D3 6A 01 08 09 00 // ...../[k...j....
  27970. 0030: B2 00 00 00 A0 A1 00 00 00 04 00 00 00 00 00 00 // ................
  27971. 0040: 04 04 00 00 00 00 00 00 50 04 00 00 08 04 00 00 // ........P.......
  27972. 0050: 00 00 00 00 00 00 00 00 04 02 01 04 00 00 00 00 // ................
  27973. 0060: 64 00 F4 01 00 04 10 00 01 03 0D 00 32 04 00 00 // d...........2...
  27974. 0070: 21 04 20 00 01 08 00 00 F9 0C 00 00 00 00 00 00 // !. .............
  27975. 0080: 06 00 00 00 00 00 00 00 00 00 00 00 18 C2 D3 6A // ...............j
  27976. 0090: 00 00 00 00 01 20 00 03 00 04 00 00 00 00 00 00 // ..... ..........
  27977. 00A0: 01 00 00 00 00 00 00 00 00 00 00 00 01 10 00 02 // ................
  27978. 00B0: 04 04 00 00 00 00 00 00 01 00 00 00 00 00 00 00 // ................
  27979. 00C0: 00 00 00 00 01 08 00 01 50 04 00 00 00 00 00 00 // ........P.......
  27980. 00D0: 01 20 00 03 08 04 00 00 00 00 00 00 00 00 00 00 // . ..............
  27981. 00E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  27982. 00F0: 00 00 00 00 01 08 00 01 05 04 00 00 00 00 00 00 // ................
  27983. 0100: 01 08 00 01 01 04 00 00 00 00 00 00 // ............
  27984. /*
  27985. * Intel ACPI Component Architecture
  27986. * AML/ASL+ Disassembler version 20160108-64
  27987. * Copyright (c) 2000 - 2016 Intel Corporation
  27988. *
  27989. * Disassembly of FACS.dat, Mon Sep 12 10:24:46 2016
  27990. *
  27991. * ACPI Data Table [FACS]
  27992. *
  27993. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  27994. */
  27995.  
  27996. [000h 0000 4] Signature : "FACS"
  27997. [004h 0004 4] Length : 00000040
  27998. [008h 0008 4] Hardware Signature : D3AEFD38
  27999. [00Ch 0012 4] 32 Firmware Waking Vector : 00000000
  28000. [010h 0016 4] Global Lock : 00000000
  28001. [014h 0020 4] Flags (decoded below) : 00000000
  28002. S4BIOS Support Present : 0
  28003. 64-bit Wake Supported (V2) : 0
  28004. [018h 0024 8] 64 Firmware Waking Vector : 0000000000000000
  28005. [020h 0032 1] Version : 02
  28006. [021h 0033 3] Reserved : 000000
  28007. [024h 0036 4] OspmFlags (decoded below) : 00000000
  28008. 64-bit Wake Env Required (V2) : 0
  28009.  
  28010. Raw Table Data: Length 64 (0x40)
  28011.  
  28012. 0000: 46 41 43 53 40 00 00 00 38 FD AE D3 00 00 00 00 // FACS@...8.......
  28013. 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  28014. 0020: 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  28015. 0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  28016. /*
  28017. * Intel ACPI Component Architecture
  28018. * AML/ASL+ Disassembler version 20160108-64
  28019. * Copyright (c) 2000 - 2016 Intel Corporation
  28020. *
  28021. * Disassembly of FIDT.dat, Mon Sep 12 10:24:46 2016
  28022. *
  28023. * ACPI Data Table [FIDT]
  28024. *
  28025. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  28026. */
  28027.  
  28028. [000h 0000 4] Signature : "FIDT"
  28029. [004h 0004 4] Table Length : 0000009C
  28030. [008h 0008 1] Revision : 01
  28031. [009h 0009 1] Checksum : 28
  28032. [00Ah 0010 6] Oem ID : "ALASKA"
  28033. [010h 0016 8] Oem Table ID : "A M I "
  28034. [018h 0024 4] Oem Revision : 01072009
  28035. [01Ch 0028 4] Asl Compiler ID : "AMI "
  28036. [020h 0032 4] Asl Compiler Revision : 00010013
  28037.  
  28038.  
  28039. **** Unknown ACPI table signature [FIDT]
  28040.  
  28041.  
  28042. Raw Table Data: Length 156 (0x9C)
  28043.  
  28044. 0000: 46 49 44 54 9C 00 00 00 01 28 41 4C 41 53 4B 41 // FIDT.....(ALASKA
  28045. 0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 20 // A M I ... ..AMI
  28046. 0020: 13 00 01 00 24 46 49 44 04 78 00 31 41 54 46 47 // ....$FID.x.1ATFG
  28047. 0030: 30 30 36 00 2B 28 2D F1 D4 46 25 72 3D 62 4B 83 // 006.+(-..F%r=bK.
  28048. 0040: 55 2D FC 1C 30 35 00 31 31 00 30 30 00 30 36 00 // U-..05.11.00.06.
  28049. 0050: 00 00 00 00 00 00 00 FF FF 41 4C 41 53 4B 41 41 // .........ALASKAA
  28050. 0060: 20 4D 20 49 20 00 00 00 00 00 00 00 00 00 00 00 // M I ...........
  28051. 0070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  28052. 0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  28053. 0090: 00 00 00 00 00 00 00 00 00 00 00 00 // ............
  28054. /*
  28055. * Intel ACPI Component Architecture
  28056. * AML/ASL+ Disassembler version 20160108-64
  28057. * Copyright (c) 2000 - 2016 Intel Corporation
  28058. *
  28059. * Disassembly of FPDT.dat, Mon Sep 12 10:24:46 2016
  28060. *
  28061. * ACPI Data Table [FPDT]
  28062. *
  28063. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  28064. */
  28065.  
  28066. [000h 0000 4] Signature : "FPDT" [Firmware Performance Data Table]
  28067. [004h 0004 4] Table Length : 00000044
  28068. [008h 0008 1] Revision : 01
  28069. [009h 0009 1] Checksum : 24
  28070. [00Ah 0010 6] Oem ID : "ALASKA"
  28071. [010h 0016 8] Oem Table ID : "A M I "
  28072. [018h 0024 4] Oem Revision : 01072009
  28073. [01Ch 0028 4] Asl Compiler ID : "AMI "
  28074. [020h 0032 4] Asl Compiler Revision : 00010013
  28075.  
  28076.  
  28077. [024h 0036 2] Subtable Type : 0001
  28078. [026h 0038 1] Length : 10
  28079. [027h 0039 1] Revision : 01
  28080. [028h 0040 4] Reserved : 00000000
  28081. [02Ch 0044 8] S3PT Address : 000000006B796F30
  28082.  
  28083. [034h 0052 2] Subtable Type : 0000
  28084. [036h 0054 1] Length : 10
  28085. [037h 0055 1] Revision : 01
  28086. [038h 0056 4] Reserved : 00000000
  28087. [03Ch 0060 8] Reset End : 000000006B796F50
  28088. /**** ACPI subtable terminates early - may be older version (dump table) */
  28089.  
  28090. Raw Table Data: Length 68 (0x44)
  28091.  
  28092. 0000: 46 50 44 54 44 00 00 00 01 24 41 4C 41 53 4B 41 // FPDTD....$ALASKA
  28093. 0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 20 // A M I ... ..AMI
  28094. 0020: 13 00 01 00 01 00 10 01 00 00 00 00 30 6F 79 6B // ............0oyk
  28095. 0030: 00 00 00 00 00 00 10 01 00 00 00 00 50 6F 79 6B // ............Poyk
  28096. 0040: 00 00 00 00 // ....
  28097. /*
  28098. * Intel ACPI Component Architecture
  28099. * AML/ASL+ Disassembler version 20160108-64
  28100. * Copyright (c) 2000 - 2016 Intel Corporation
  28101. *
  28102. * Disassembly of HPET.dat, Mon Sep 12 10:24:46 2016
  28103. *
  28104. * ACPI Data Table [HPET]
  28105. *
  28106. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  28107. */
  28108.  
  28109. [000h 0000 4] Signature : "HPET" [High Precision Event Timer table]
  28110. [004h 0004 4] Table Length : 00000038
  28111. [008h 0008 1] Revision : 01
  28112. [009h 0009 1] Checksum : 40
  28113. [00Ah 0010 6] Oem ID : "ALASKA"
  28114. [010h 0016 8] Oem Table ID : "A M I "
  28115. [018h 0024 4] Oem Revision : 01072009
  28116. [01Ch 0028 4] Asl Compiler ID : "AMI."
  28117. [020h 0032 4] Asl Compiler Revision : 00000005
  28118.  
  28119. [024h 0036 4] Hardware Block ID : 8086A201
  28120.  
  28121. [028h 0040 12] Timer Block Register : [Generic Address Structure]
  28122. [028h 0040 1] Space ID : 00 [SystemMemory]
  28123. [029h 0041 1] Bit Width : 40
  28124. [02Ah 0042 1] Bit Offset : 00
  28125. [02Bh 0043 1] Encoded Access Width : 00 [Undefined/Legacy]
  28126. [02Ch 0044 8] Address : 00000000FED00000
  28127.  
  28128. [034h 0052 1] Sequence Number : 00
  28129. [035h 0053 2] Minimum Clock Ticks : 0080
  28130. [037h 0055 1] Flags (decoded below) : 00
  28131. 4K Page Protect : 0
  28132. 64K Page Protect : 0
  28133.  
  28134. Raw Table Data: Length 56 (0x38)
  28135.  
  28136. 0000: 48 50 45 54 38 00 00 00 01 40 41 4C 41 53 4B 41 // HPET8....@ALASKA
  28137. 0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 2E // A M I ... ..AMI.
  28138. 0020: 05 00 00 00 01 A2 86 80 00 40 00 00 00 00 D0 FE // .........@......
  28139. 0030: 00 00 00 00 00 80 00 00 // ........
  28140. /*
  28141. * Intel ACPI Component Architecture
  28142. * AML/ASL+ Disassembler version 20160108-64
  28143. * Copyright (c) 2000 - 2016 Intel Corporation
  28144. *
  28145. * Disassembly of LPIT.dat, Mon Sep 12 10:24:46 2016
  28146. *
  28147. * ACPI Data Table [LPIT]
  28148. *
  28149. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  28150. */
  28151.  
  28152. [000h 0000 4] Signature : "LPIT" [Low Power Idle Table]
  28153. [004h 0004 4] Table Length : 00000104
  28154. [008h 0008 1] Revision : 01
  28155. [009h 0009 1] Checksum : 84
  28156. [00Ah 0010 6] Oem ID : "ALASKA"
  28157. [010h 0016 8] Oem Table ID : "A M I "
  28158. [018h 0024 4] Oem Revision : 00000005
  28159. [01Ch 0028 4] Asl Compiler ID : "MSFT"
  28160. [020h 0032 4] Asl Compiler Revision : 0100000D
  28161.  
  28162. [024h 0036 4] Subtable Type : 00000000 [Native C-state Idle Structure]
  28163. [028h 0040 4] Length : 00000038
  28164. [02Ch 0044 2] Unique ID : 0000
  28165. [02Eh 0046 2] Reserved : 0000
  28166. [030h 0048 4] Flags (decoded below) : 00000000
  28167. State Disabled : 0
  28168. No Counter : 0
  28169.  
  28170. [034h 0052 12] Entry Trigger : [Generic Address Structure]
  28171. [034h 0052 1] Space ID : 7F [FunctionalFixedHW]
  28172. [035h 0053 1] Bit Width : 01
  28173. [036h 0054 1] Bit Offset : 02
  28174. [037h 0055 1] Encoded Access Width : 00 [Undefined/Legacy]
  28175. [038h 0056 8] Address : 0000000000000064
  28176.  
  28177. [040h 0064 4] Residency : 00003A98
  28178. [044h 0068 4] Latency : 00001388
  28179. [048h 0072 12] Residency Counter : [Generic Address Structure]
  28180. [048h 0072 1] Space ID : 7F [FunctionalFixedHW]
  28181. [049h 0073 1] Bit Width : 40
  28182. [04Ah 0074 1] Bit Offset : 00
  28183. [04Bh 0075 1] Encoded Access Width : 00 [Undefined/Legacy]
  28184. [04Ch 0076 8] Address : 0000000000000633
  28185.  
  28186. [054h 0084 8] Counter Frequency : 0000000000000000
  28187.  
  28188. [05Ch 0092 4] Subtable Type : 00000000 [Native C-state Idle Structure]
  28189. [060h 0096 4] Length : 00000038
  28190. [064h 0100 2] Unique ID : 0001
  28191. [066h 0102 2] Reserved : 0000
  28192. [068h 0104 4] Flags (decoded below) : 00000000
  28193. State Disabled : 0
  28194. No Counter : 0
  28195.  
  28196. [06Ch 0108 12] Entry Trigger : [Generic Address Structure]
  28197. [06Ch 0108 1] Space ID : 7F [FunctionalFixedHW]
  28198. [06Dh 0109 1] Bit Width : 01
  28199. [06Eh 0110 1] Bit Offset : 02
  28200. [06Fh 0111 1] Encoded Access Width : 00 [Undefined/Legacy]
  28201. [070h 0112 8] Address : 0000000000000064
  28202.  
  28203. [078h 0120 4] Residency : 00003A98
  28204. [07Ch 0124 4] Latency : 00001388
  28205. [080h 0128 12] Residency Counter : [Generic Address Structure]
  28206. [080h 0128 1] Space ID : 7F [FunctionalFixedHW]
  28207. [081h 0129 1] Bit Width : 40
  28208. [082h 0130 1] Bit Offset : 00
  28209. [083h 0131 1] Encoded Access Width : 00 [Undefined/Legacy]
  28210. [084h 0132 8] Address : 0000000000000630
  28211.  
  28212. [08Ch 0140 8] Counter Frequency : 0000000000000000
  28213.  
  28214. [094h 0148 4] Subtable Type : 00000000 [Native C-state Idle Structure]
  28215. [098h 0152 4] Length : 00000038
  28216. [09Ch 0156 2] Unique ID : 0002
  28217. [09Eh 0158 2] Reserved : 0000
  28218. [0A0h 0160 4] Flags (decoded below) : 00000000
  28219. State Disabled : 0
  28220. No Counter : 0
  28221.  
  28222. [0A4h 0164 12] Entry Trigger : [Generic Address Structure]
  28223. [0A4h 0164 1] Space ID : 7F [FunctionalFixedHW]
  28224. [0A5h 0165 1] Bit Width : 01
  28225. [0A6h 0166 1] Bit Offset : 02
  28226. [0A7h 0167 1] Encoded Access Width : 00 [Undefined/Legacy]
  28227. [0A8h 0168 8] Address : 0000000000000064
  28228.  
  28229. [0B0h 0176 4] Residency : 00003A98
  28230. [0B4h 0180 4] Latency : 00001388
  28231. [0B8h 0184 12] Residency Counter : [Generic Address Structure]
  28232. [0B8h 0184 1] Space ID : 7F [FunctionalFixedHW]
  28233. [0B9h 0185 1] Bit Width : 40
  28234. [0BAh 0186 1] Bit Offset : 00
  28235. [0BBh 0187 1] Encoded Access Width : 00 [Undefined/Legacy]
  28236. [0BCh 0188 8] Address : 0000000000000631
  28237.  
  28238. [0C4h 0196 8] Counter Frequency : 0000000000000000
  28239.  
  28240. [0CCh 0204 4] Subtable Type : 00000000 [Native C-state Idle Structure]
  28241. [0D0h 0208 4] Length : 00000038
  28242. [0D4h 0212 2] Unique ID : 0003
  28243. [0D6h 0214 2] Reserved : 0000
  28244. [0D8h 0216 4] Flags (decoded below) : 00000000
  28245. State Disabled : 0
  28246. No Counter : 0
  28247.  
  28248. [0DCh 0220 12] Entry Trigger : [Generic Address Structure]
  28249. [0DCh 0220 1] Space ID : 7F [FunctionalFixedHW]
  28250. [0DDh 0221 1] Bit Width : 01
  28251. [0DEh 0222 1] Bit Offset : 02
  28252. [0DFh 0223 1] Encoded Access Width : 00 [Undefined/Legacy]
  28253. [0E0h 0224 8] Address : 0000000000000064
  28254.  
  28255. [0E8h 0232 4] Residency : 00003A98
  28256. [0ECh 0236 4] Latency : 00001388
  28257. [0F0h 0240 12] Residency Counter : [Generic Address Structure]
  28258. [0F0h 0240 1] Space ID : 7F [FunctionalFixedHW]
  28259. [0F1h 0241 1] Bit Width : 40
  28260. [0F2h 0242 1] Bit Offset : 00
  28261. [0F3h 0243 1] Encoded Access Width : 00 [Undefined/Legacy]
  28262. [0F4h 0244 8] Address : 0000000000000632
  28263.  
  28264. [0FCh 0252 8] Counter Frequency : 0000000000000000
  28265.  
  28266.  
  28267. Raw Table Data: Length 260 (0x104)
  28268.  
  28269. 0000: 4C 50 49 54 04 01 00 00 01 84 41 4C 41 53 4B 41 // LPIT......ALASKA
  28270. 0010: 41 20 4D 20 49 20 00 00 05 00 00 00 4D 53 46 54 // A M I ......MSFT
  28271. 0020: 0D 00 00 01 00 00 00 00 38 00 00 00 00 00 00 00 // ........8.......
  28272. 0030: 00 00 00 00 7F 01 02 00 64 00 00 00 00 00 00 00 // ........d.......
  28273. 0040: 98 3A 00 00 88 13 00 00 7F 40 00 00 33 06 00 00 // .:.......@..3...
  28274. 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  28275. 0060: 38 00 00 00 01 00 00 00 00 00 00 00 7F 01 02 00 // 8...............
  28276. 0070: 64 00 00 00 00 00 00 00 98 3A 00 00 88 13 00 00 // d........:......
  28277. 0080: 7F 40 00 00 30 06 00 00 00 00 00 00 00 00 00 00 // .@..0...........
  28278. 0090: 00 00 00 00 00 00 00 00 38 00 00 00 02 00 00 00 // ........8.......
  28279. 00A0: 00 00 00 00 7F 01 02 00 64 00 00 00 00 00 00 00 // ........d.......
  28280. 00B0: 98 3A 00 00 88 13 00 00 7F 40 00 00 31 06 00 00 // .:.......@..1...
  28281. 00C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  28282. 00D0: 38 00 00 00 03 00 00 00 00 00 00 00 7F 01 02 00 // 8...............
  28283. 00E0: 64 00 00 00 00 00 00 00 98 3A 00 00 88 13 00 00 // d........:......
  28284. 00F0: 7F 40 00 00 32 06 00 00 00 00 00 00 00 00 00 00 // .@..2...........
  28285. 0100: 00 00 00 00 // ....
  28286. /*
  28287. * Intel ACPI Component Architecture
  28288. * AML/ASL+ Disassembler version 20160108-64
  28289. * Copyright (c) 2000 - 2016 Intel Corporation
  28290. *
  28291. * Disassembly of MCFG.dat, Mon Sep 12 10:24:46 2016
  28292. *
  28293. * ACPI Data Table [MCFG]
  28294. *
  28295. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  28296. */
  28297.  
  28298. [000h 0000 4] Signature : "MCFG" [Memory Mapped Configuration table]
  28299. [004h 0004 4] Table Length : 0000003C
  28300. [008h 0008 1] Revision : 01
  28301. [009h 0009 1] Checksum : E1
  28302. [00Ah 0010 6] Oem ID : "ALASKA"
  28303. [010h 0016 8] Oem Table ID : "A M I "
  28304. [018h 0024 4] Oem Revision : 01072009
  28305. [01Ch 0028 4] Asl Compiler ID : "MSFT"
  28306. [020h 0032 4] Asl Compiler Revision : 00000097
  28307.  
  28308. [024h 0036 8] Reserved : 0000000000000000
  28309.  
  28310. [02Ch 0044 8] Base Address : 00000000E0000000
  28311. [034h 0052 2] Segment Group Number : 0000
  28312. [036h 0054 1] Start Bus Number : 00
  28313. [037h 0055 1] End Bus Number : FF
  28314. [038h 0056 4] Reserved : 00000000
  28315.  
  28316. Raw Table Data: Length 60 (0x3C)
  28317.  
  28318. 0000: 4D 43 46 47 3C 00 00 00 01 E1 41 4C 41 53 4B 41 // MCFG<.....ALASKA
  28319. 0010: 41 20 4D 20 49 20 00 00 09 20 07 01 4D 53 46 54 // A M I ... ..MSFT
  28320. 0020: 97 00 00 00 00 00 00 00 00 00 00 00 00 00 00 E0 // ................
  28321. 0030: 00 00 00 00 00 00 00 FF 00 00 00 00 // ............
  28322. /*
  28323. * Intel ACPI Component Architecture
  28324. * AML/ASL+ Disassembler version 20160108-64
  28325. * Copyright (c) 2000 - 2016 Intel Corporation
  28326. *
  28327. * Disassembly of MSDM.dat, Mon Sep 12 10:24:46 2016
  28328. *
  28329. * ACPI Data Table [MSDM]
  28330. *
  28331. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  28332. */
  28333.  
  28334. [000h 0000 4] Signature : "MSDM" [Microsoft Data Management table]
  28335. [004h 0004 4] Table Length : 00000055
  28336. [008h 0008 1] Revision : 03
  28337. [009h 0009 1] Checksum : 98
  28338. [00Ah 0010 6] Oem ID : "ALASKA"
  28339. [010h 0016 8] Oem Table ID : "A M I "
  28340. [018h 0024 4] Oem Revision : 01072009
  28341. [01Ch 0028 4] Asl Compiler ID : "AMI "
  28342. [020h 0032 4] Asl Compiler Revision : 00010013
  28343.  
  28344. [024h 0036 49] Software Licensing Structure : \
  28345. 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 \
  28346. 1D 00 00 00 47 59 48 43 44 2D 42 4E 50 34 4B 2D \
  28347. 42 58 57 36 42 2D 51 33 48 48 32 2D 57 32 51 44 \
  28348. 51
  28349.  
  28350. Raw Table Data: Length 85 (0x55)
  28351.  
  28352. 0000: 4D 53 44 4D 55 00 00 00 03 98 41 4C 41 53 4B 41 // MSDMU.....ALASKA
  28353. 0010: 41 20 4D 20 49 20 00 00 09 20 07 01 41 4D 49 20 // A M I ... ..AMI
  28354. 0020: 13 00 01 00 01 00 00 00 00 00 00 00 01 00 00 00 // ................
  28355. 0030: 00 00 00 00 1D 00 00 00 47 59 48 43 44 2D 42 4E // ........GYHCD-BN
  28356. 0040: 50 34 4B 2D 42 58 57 36 42 2D 51 33 48 48 32 2D // P4K-BXW6B-Q3HH2-
  28357. 0050: 57 32 51 44 51 // W2QDQ
  28358. /*
  28359. * Intel ACPI Component Architecture
  28360. * AML/ASL+ Disassembler version 20160108-64
  28361. * Copyright (c) 2000 - 2016 Intel Corporation
  28362. *
  28363. * Disassembly of PRAM.dat, Mon Sep 12 10:24:46 2016
  28364. *
  28365. * ACPI Data Table [PRAM]
  28366. *
  28367. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  28368. */
  28369.  
  28370. [000h 0000 4] Signature : "PRAM"
  28371. [004h 0004 4] Table Length : 00000030
  28372. [008h 0008 1] Revision : 01
  28373. [009h 0009 1] Checksum : DE
  28374. [00Ah 0010 6] Oem ID : " "
  28375. [010h 0016 8] Oem Table ID : ""
  28376. [018h 0024 4] Oem Revision : 00000001
  28377. [01Ch 0028 4] Asl Compiler ID : ""
  28378. [020h 0032 4] Asl Compiler Revision : 00000000
  28379.  
  28380.  
  28381. **** Unknown ACPI table signature [PRAM]
  28382.  
  28383.  
  28384. Raw Table Data: Length 48 (0x30)
  28385.  
  28386. 0000: 50 52 41 4D 30 00 00 00 01 DE 20 20 20 20 20 20 // PRAM0.....
  28387. 0010: 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 // ................
  28388. 0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  28389. /*
  28390. * Intel ACPI Component Architecture
  28391. * AML/ASL+ Disassembler version 20160108-64
  28392. * Copyright (c) 2000 - 2016 Intel Corporation
  28393. *
  28394. * Disassembling to symbolic ASL+ operators
  28395. *
  28396. * Disassembly of SSDT1.dat, Mon Sep 12 10:24:46 2016
  28397. *
  28398. * Original Table Header:
  28399. * Signature "SSDT"
  28400. * Length 0x000041C7 (16839)
  28401. * Revision 0x01
  28402. * Checksum 0x40
  28403. * OEM ID "DptfTb"
  28404. * OEM Table ID "DptfTab"
  28405. * OEM Revision 0x00001000 (4096)
  28406. * Compiler ID "INTL"
  28407. * Compiler Version 0x20120913 (538052883)
  28408. */
  28409. DefinitionBlock ("SSDT1.aml", "SSDT", 1, "DptfTb", "DptfTab", 0x00001000)
  28410. {
  28411. /*
  28412. * iASL Warning: There were 2 external control methods found during
  28413. * disassembly, but additional ACPI tables to resolve these externals
  28414. * were not specified. This resulting disassembler output file may not
  28415. * compile because the disassembler did not know how many arguments
  28416. * to assign to these methods. To specify the tables needed to resolve
  28417. * external control method references, the -e option can be used to
  28418. * specify the filenames. Note: SSDTs can be dynamically loaded at
  28419. * runtime and may or may not be available via the host OS.
  28420. * Example iASL invocations:
  28421. * iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
  28422. * iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
  28423. * iasl -e ssdt*.aml -d dsdt.aml
  28424. *
  28425. * In addition, the -fe option can be used to specify a file containing
  28426. * control method external declarations with the associated method
  28427. * argument counts. Each line of the file must be of the form:
  28428. * External (<method pathname>, MethodObj, <argument count>)
  28429. * Invocation:
  28430. * iasl -fe refs.txt -d dsdt.aml
  28431. *
  28432. * The following methods were unresolved and many not compile properly
  28433. * because the disassembler had to guess at the number of arguments
  28434. * required for each:
  28435. */
  28436. External (_SB_.PCI0.GFX0.DD01._BCM, MethodObj) // Warning: Unresolved method, guessing 1 arguments
  28437. External (ADBG, MethodObj) // Warning: Unresolved method, guessing 3 arguments
  28438.  
  28439. External (_SB_.ADP1._PSR, UnknownObj)
  28440. External (_SB_.PCI0.GFX0.DD01._BQC, IntObj)
  28441. External (_SB_.PCI0.GFX0.DD01._DCS, IntObj)
  28442. External (_SB_.PCI0.I2C1, UnknownObj)
  28443. External (_SB_.PCI0.I2C1.AVBL, UnknownObj)
  28444. External (_SB_.PCI0.I2C1.BATC, UnknownObj)
  28445. External (_SB_.PCI0.I2C1.BATC._BST, IntObj)
  28446. External (_SB_.PCI0.I2C1.BATC.ARTG, IntObj)
  28447. External (_SB_.PCI0.I2C1.BATC.BCCC, UnknownObj)
  28448. External (_SB_.PCI0.I2C1.BATC.BCCE, UnknownObj)
  28449. External (_SB_.PCI0.I2C1.BATC.CTYP, IntObj)
  28450. External (_SB_.PCI0.I2C1.BATC.PMAX, IntObj)
  28451. External (_SB_.PCI0.I2C1.BATC.PSOC, IntObj)
  28452. External (_SB_.PCI0.I2C1.BATC.PSRC, IntObj)
  28453. External (_SB_.PCI0.I2C1.THRM, IntObj)
  28454. External (_SB_.PCI0.I2C3, UnknownObj)
  28455. External (_SB_.PCI0.I2C3.TIDR, UnknownObj)
  28456. External (_SB_.PCI0.I2C3.TIDR.ARTG, IntObj)
  28457. External (_SB_.PCI0.I2C3.TIDR.BATD, IntObj)
  28458. External (_SB_.PCI0.I2C3.TIDR.BCCC, UnknownObj)
  28459. External (_SB_.PCI0.I2C3.TIDR.BCCE, UnknownObj)
  28460. External (_SB_.PCI0.I2C3.TIDR.CTYP, IntObj)
  28461. External (_SB_.PCI0.I2C3.TIDR.PMAX, IntObj)
  28462. External (_SB_.PCI0.I2C3.TIDR.PSOC, IntObj)
  28463. External (_SB_.PCI0.I2C3.TIDR.PSRC, IntObj)
  28464. External (_SB_.PCI0.I2C7, UnknownObj)
  28465. External (_SB_.PCI0.I2C7.BATC, UnknownObj)
  28466. External (_SB_.PCI0.I2C7.BATC._BST, IntObj)
  28467. External (_SB_.PCI0.I2C7.BATC.ARTG, IntObj)
  28468. External (_SB_.PCI0.I2C7.BATC.BCCC, UnknownObj)
  28469. External (_SB_.PCI0.I2C7.BATC.BCCE, UnknownObj)
  28470. External (_SB_.PCI0.I2C7.BATC.CTYP, IntObj)
  28471. External (_SB_.PCI0.I2C7.BATC.PMAX, IntObj)
  28472. External (_SB_.PCI0.I2C7.BATC.PSOC, IntObj)
  28473. External (_SB_.PCI0.I2C7.BATC.PSRC, IntObj)
  28474. External (_SB_.PCI0.I2C7.BMDR, UnknownObj)
  28475. External (_SB_.PCI0.I2C7.BMDR.BCCC, UnknownObj)
  28476. External (_SB_.PCI0.I2C7.BMDR.BCCE, UnknownObj)
  28477. External (_SB_.PCI0.I2C7.PMI1, UnknownObj)
  28478. External (_SB_.PCI0.I2C7.PMI1.AVBD, UnknownObj)
  28479. External (_SB_.PCI0.I2C7.PMI1.AVBG, UnknownObj)
  28480. External (_SB_.PCI0.I2C7.PMI1.AX00, UnknownObj)
  28481. External (_SB_.PCI0.I2C7.PMI1.AX01, UnknownObj)
  28482. External (_SB_.PCI0.I2C7.PMI1.GEN0, UnknownObj)
  28483. External (_SB_.PCI0.I2C7.PMI1.GMP0, UnknownObj)
  28484. External (_SB_.PCI0.I2C7.PMI1.GMP3, UnknownObj)
  28485. External (_SB_.PCI0.I2C7.PMI1.GX00, UnknownObj)
  28486. External (_SB_.PCI0.I2C7.PMI1.GX01, UnknownObj)
  28487. External (_SB_.PCI0.I2C7.PMI1.PEN0, UnknownObj)
  28488. External (_SB_.PCI0.I2C7.PMI1.TMP0, IntObj)
  28489. External (_SB_.PCI0.I2C7.PMI1.TMP3, IntObj)
  28490. External (_SB_.PCI0.I2C7.PMI2, UnknownObj)
  28491. External (_SB_.PCI0.I2C7.PMI2.AVBD, UnknownObj)
  28492. External (_SB_.PCI0.I2C7.PMI2.AVBG, UnknownObj)
  28493. External (_SB_.PCI0.I2C7.PMI2.AX00, UnknownObj)
  28494. External (_SB_.PCI0.I2C7.PMI2.AX01, UnknownObj)
  28495. External (_SB_.PCI0.I2C7.PMI2.GEN0, UnknownObj)
  28496. External (_SB_.PCI0.I2C7.PMI2.GMP0, UnknownObj)
  28497. External (_SB_.PCI0.I2C7.PMI2.GMP3, UnknownObj)
  28498. External (_SB_.PCI0.I2C7.PMI2.GX00, UnknownObj)
  28499. External (_SB_.PCI0.I2C7.PMI2.GX01, UnknownObj)
  28500. External (_SB_.PCI0.I2C7.PMI2.PEN0, UnknownObj)
  28501. External (_SB_.PCI0.I2C7.PMI2.TMP0, IntObj)
  28502. External (_SB_.PCI0.I2C7.PMI2.TMP3, IntObj)
  28503. External (_SB_.PCI0.I2C7.PMI5, UnknownObj)
  28504. External (_SB_.PCI0.I2C7.PMI5.AVBD, UnknownObj)
  28505. External (_SB_.PCI0.I2C7.PMI5.AVBG, UnknownObj)
  28506. External (_SB_.PCI0.I2C7.PMI5.AX00, UnknownObj)
  28507. External (_SB_.PCI0.I2C7.PMI5.AX01, UnknownObj)
  28508. External (_SB_.PCI0.I2C7.PMI5.AX10, UnknownObj)
  28509. External (_SB_.PCI0.I2C7.PMI5.AX11, UnknownObj)
  28510. External (_SB_.PCI0.I2C7.PMI5.AX20, UnknownObj)
  28511. External (_SB_.PCI0.I2C7.PMI5.AX21, UnknownObj)
  28512. External (_SB_.PCI0.I2C7.PMI5.AX30, UnknownObj)
  28513. External (_SB_.PCI0.I2C7.PMI5.AX31, UnknownObj)
  28514. External (_SB_.PCI0.I2C7.PMI5.GEN0, UnknownObj)
  28515. External (_SB_.PCI0.I2C7.PMI5.GEN1, UnknownObj)
  28516. External (_SB_.PCI0.I2C7.PMI5.GEN2, UnknownObj)
  28517. External (_SB_.PCI0.I2C7.PMI5.GMP0, UnknownObj)
  28518. External (_SB_.PCI0.I2C7.PMI5.GMP1, UnknownObj)
  28519. External (_SB_.PCI0.I2C7.PMI5.GMP2, UnknownObj)
  28520. External (_SB_.PCI0.I2C7.PMI5.GMP3, UnknownObj)
  28521. External (_SB_.PCI0.I2C7.PMI5.GX00, UnknownObj)
  28522. External (_SB_.PCI0.I2C7.PMI5.GX01, UnknownObj)
  28523. External (_SB_.PCI0.I2C7.PMI5.GX10, UnknownObj)
  28524. External (_SB_.PCI0.I2C7.PMI5.GX11, UnknownObj)
  28525. External (_SB_.PCI0.I2C7.PMI5.GX20, UnknownObj)
  28526. External (_SB_.PCI0.I2C7.PMI5.GX21, UnknownObj)
  28527. External (_SB_.PCI0.I2C7.PMI5.GX30, UnknownObj)
  28528. External (_SB_.PCI0.I2C7.PMI5.GX31, UnknownObj)
  28529. External (_SB_.PCI0.I2C7.PMI5.PEN0, UnknownObj)
  28530. External (_SB_.PCI0.I2C7.PMI5.PEN1, UnknownObj)
  28531. External (_SB_.PCI0.I2C7.PMI5.PEN2, UnknownObj)
  28532. External (_SB_.PCI0.I2C7.PMI5.SRCD, UnknownObj)
  28533. External (_SB_.PCI0.I2C7.PMI5.TMP0, IntObj)
  28534. External (_SB_.PCI0.I2C7.PMI5.TMP1, IntObj)
  28535. External (_SB_.PCI0.I2C7.PMI5.TMP2, IntObj)
  28536. External (_SB_.PCI0.I2C7.PMI5.TMP3, IntObj)
  28537. External (_SB_.PCI0.I2C7.PMIC, UnknownObj)
  28538. External (_SB_.PCI0.I2C7.PMIC.AVBD, UnknownObj)
  28539. External (_SB_.PCI0.I2C7.PMIC.AVBG, UnknownObj)
  28540. External (_SB_.PCI0.I2C7.PMIC.AX00, UnknownObj)
  28541. External (_SB_.PCI0.I2C7.PMIC.AX01, UnknownObj)
  28542. External (_SB_.PCI0.I2C7.PMIC.AX10, UnknownObj)
  28543. External (_SB_.PCI0.I2C7.PMIC.AX11, UnknownObj)
  28544. External (_SB_.PCI0.I2C7.PMIC.AX20, UnknownObj)
  28545. External (_SB_.PCI0.I2C7.PMIC.AX21, UnknownObj)
  28546. External (_SB_.PCI0.I2C7.PMIC.GEN0, UnknownObj)
  28547. External (_SB_.PCI0.I2C7.PMIC.GEN1, UnknownObj)
  28548. External (_SB_.PCI0.I2C7.PMIC.GEN2, UnknownObj)
  28549. External (_SB_.PCI0.I2C7.PMIC.GMP0, UnknownObj)
  28550. External (_SB_.PCI0.I2C7.PMIC.GMP1, UnknownObj)
  28551. External (_SB_.PCI0.I2C7.PMIC.GMP2, UnknownObj)
  28552. External (_SB_.PCI0.I2C7.PMIC.GMP3, UnknownObj)
  28553. External (_SB_.PCI0.I2C7.PMIC.GX00, UnknownObj)
  28554. External (_SB_.PCI0.I2C7.PMIC.GX01, UnknownObj)
  28555. External (_SB_.PCI0.I2C7.PMIC.GX10, UnknownObj)
  28556. External (_SB_.PCI0.I2C7.PMIC.GX11, UnknownObj)
  28557. External (_SB_.PCI0.I2C7.PMIC.GX20, UnknownObj)
  28558. External (_SB_.PCI0.I2C7.PMIC.GX21, UnknownObj)
  28559. External (_SB_.PCI0.I2C7.PMIC.PEN0, UnknownObj)
  28560. External (_SB_.PCI0.I2C7.PMIC.PEN1, UnknownObj)
  28561. External (_SB_.PCI0.I2C7.PMIC.PEN2, UnknownObj)
  28562. External (_SB_.PCI0.I2C7.PMIC.TMP0, IntObj)
  28563. External (_SB_.PCI0.I2C7.PMIC.TMP1, IntObj)
  28564. External (_SB_.PCI0.I2C7.PMIC.TMP2, IntObj)
  28565. External (_SB_.PCI0.I2C7.PMIC.TMP3, IntObj)
  28566. External (_SB_.PCI0.I2C7.WIDR, UnknownObj)
  28567. External (_SB_.PCI0.I2C7.WIDR.ARTG, IntObj)
  28568. External (_SB_.PCI0.I2C7.WIDR.BATD, IntObj)
  28569. External (_SB_.PCI0.I2C7.WIDR.BCCC, UnknownObj)
  28570. External (_SB_.PCI0.I2C7.WIDR.BCCE, UnknownObj)
  28571. External (_SB_.PCI0.I2C7.WIDR.CTYP, IntObj)
  28572. External (_SB_.PCI0.I2C7.WIDR.PMAX, IntObj)
  28573. External (_SB_.PCI0.I2C7.WIDR.PSOC, IntObj)
  28574. External (_SB_.PCI0.I2C7.WIDR.PSRC, IntObj)
  28575. External (_SB_.PCI0.PNIT, UnknownObj)
  28576. External (_SB_.PST0, IntObj)
  28577. External (_SB_.PST2, IntObj)
  28578. External (_SB_.WPPT, IntObj)
  28579. External (ABC0, IntObj)
  28580. External (ABC1, IntObj)
  28581. External (ABC2, IntObj)
  28582. External (ABC3, IntObj)
  28583. External (ABC4, IntObj)
  28584. External (ABC5, IntObj)
  28585. External (ABS0, IntObj)
  28586. External (ABS1, IntObj)
  28587. External (ABS2, IntObj)
  28588. External (ABS3, IntObj)
  28589. External (ABS4, IntObj)
  28590. External (ABS5, IntObj)
  28591. External (AMTE, UnknownObj)
  28592. External (BDID, UnknownObj)
  28593. External (CHGR, UnknownObj)
  28594. External (DDSP, UnknownObj)
  28595. External (DPHL, IntObj)
  28596. External (DPLL, IntObj)
  28597. External (DPTE, UnknownObj)
  28598. External (DSOC, UnknownObj)
  28599. External (GCR0, UnknownObj)
  28600. External (GCR2, UnknownObj)
  28601. External (GCR3, UnknownObj)
  28602. External (HPME, UnknownObj)
  28603. External (LPSP, UnknownObj)
  28604. External (OSID, UnknownObj)
  28605. External (PDBG, IntObj)
  28606. External (PDBP, UnknownObj)
  28607. External (PDPM, UnknownObj)
  28608. External (PMID, UnknownObj)
  28609. External (PST3, UnknownObj)
  28610. External (THM0, UnknownObj)
  28611. External (THM1, UnknownObj)
  28612. External (THM2, UnknownObj)
  28613. External (THM4, UnknownObj)
  28614. External (VTSP, IntObj)
  28615. External (WCR0, UnknownObj)
  28616. External (WWEN, UnknownObj)
  28617.  
  28618. Name (BDLI, 0x28)
  28619. Name (BDHI, 0x3C)
  28620. Name (PSA0, Zero)
  28621. Name (PSC0, Zero)
  28622. Name (PSA2, Zero)
  28623. Name (PSC2, Zero)
  28624. Name (SCPE, One)
  28625. Name (WAN1, Zero)
  28626. Scope (\_SB)
  28627. {
  28628. Device (DPTF)
  28629. {
  28630. Name (_HID, EisaId ("INT3400") /* Intel Dynamic Power Performance Management */) // _HID: Hardware ID
  28631. Name (RDEP, Package (0x01)
  28632. {
  28633. \_SB.PCI0.I2C1
  28634. })
  28635. Name (ODEP, Package (0x01)
  28636. {
  28637. \_SB.PCI0.I2C1
  28638. })
  28639. Name (FDEP, Package (0x02)
  28640. {
  28641. \_SB.PCI0.I2C7,
  28642. \_SB.PCI0.I2C7.PMI5
  28643. })
  28644. Name (DPSP, Package (0x01)
  28645. {
  28646. ToUUID ("42a441d6-ae6a-462b-a84b-4a8ce79027d3")
  28647. })
  28648. Name (DCSP, Package (0x01)
  28649. {
  28650. ToUUID ("97c68ae7-15fa-499c-b8c9-5da81d606e0a")
  28651. })
  28652. Name (DCPP, Package (0x01)
  28653. {
  28654. ToUUID ("16caf1b7-dd38-40ed-b1c1-1b8a1913d531")
  28655. })
  28656. Name (VSPP, Package (0x01)
  28657. {
  28658. ToUUID ("6ed722a7-9240-48a5-b479-31eef723d7cf")
  28659. })
  28660. Name (DBPP, Package (0x01)
  28661. {
  28662. ToUUID ("64568ccd-6597-4bfc-b9d6-9d33854013ce")
  28663. })
  28664. Name (LPMT, Package (0x02)
  28665. {
  28666. One,
  28667. Package (0x06)
  28668. {
  28669. \_SB.PCI0.PNIT,
  28670. Zero,
  28671. 0x00010000,
  28672. 0x3A98,
  28673. Zero,
  28674. Zero
  28675. }
  28676. })
  28677. Name (TMPP, Package (0x06)
  28678. {
  28679. Buffer (0x10)
  28680. {
  28681. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  28682. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  28683. },
  28684.  
  28685. Buffer (0x10)
  28686. {
  28687. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  28688. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  28689. },
  28690.  
  28691. Buffer (0x10)
  28692. {
  28693. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  28694. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  28695. },
  28696.  
  28697. Buffer (0x10)
  28698. {
  28699. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  28700. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  28701. },
  28702.  
  28703. Buffer (0x10)
  28704. {
  28705. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  28706. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  28707. },
  28708.  
  28709. Buffer (0x10)
  28710. {
  28711. /* 0000 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* ........ */
  28712. /* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* ........ */
  28713. }
  28714. })
  28715. Method (IDSP, 0, Serialized)
  28716. {
  28717. Name (TMPI, Zero)
  28718. If ((PDPM == One))
  28719. {
  28720. TMPP [TMPI] = DerefOf (DPSP [Zero])
  28721. TMPI++
  28722. TMPP [TMPI] = DerefOf (DCSP [Zero])
  28723. TMPI++
  28724. TMPP [TMPI] = DerefOf (DCPP [Zero])
  28725. TMPI++
  28726. TMPP [TMPI] = DerefOf (VSPP [Zero])
  28727. TMPI++
  28728. }
  28729.  
  28730. If ((PDBP == One))
  28731. {
  28732. TMPP [TMPI] = DerefOf (DBPP [Zero])
  28733. TMPI++
  28734. }
  28735.  
  28736. TMPP [TMPI] = DerefOf (LPSP [Zero])
  28737. Return (TMPP) /* \_SB_.DPTF.TMPP */
  28738. }
  28739.  
  28740. Method (_STA, 0, NotSerialized) // _STA: Status
  28741. {
  28742. If ((DPTE == Zero))
  28743. {
  28744. Return (Zero)
  28745. }
  28746.  
  28747. Return (0x0F)
  28748. }
  28749.  
  28750. Name (PDRI, Package (0x01)
  28751. {
  28752. Package (0x04)
  28753. {
  28754. 0x0A,
  28755. \_SB.PCI0.PNIT,
  28756. Zero,
  28757. Package (0x02)
  28758. {
  28759. 0x00010002,
  28760. Zero
  28761. }
  28762. }
  28763. })
  28764. Name (PDRA, Package (0x02)
  28765. {
  28766. Package (0x04)
  28767. {
  28768. 0x64,
  28769. \_SB.PCI0.PNIT,
  28770. Zero,
  28771. Package (0x04)
  28772. {
  28773. 0x00010000,
  28774. 0x1770,
  28775. 0x00010002,
  28776. One
  28777. }
  28778. },
  28779.  
  28780. Package (0x04)
  28781. {
  28782. 0x64,
  28783. \_SB.TDSP,
  28784. 0x0A,
  28785. Package (0x02)
  28786. {
  28787. 0x00050000,
  28788. 0x64
  28789. }
  28790. }
  28791. })
  28792. Name (CDRI, Package (0x01)
  28793. {
  28794. Package (0x04)
  28795. {
  28796. 0x0A,
  28797. \_SB.PCI0.PNIT,
  28798. Zero,
  28799. Package (0x02)
  28800. {
  28801. 0x00070000,
  28802. One
  28803. }
  28804. }
  28805. })
  28806. Name (CDRA, Package (0x01)
  28807. {
  28808. Package (0x04)
  28809. {
  28810. 0x64,
  28811. \_SB.PCI0.PNIT,
  28812. Zero,
  28813. Package (0x02)
  28814. {
  28815. 0x00070000,
  28816. Zero
  28817. }
  28818. }
  28819. })
  28820. Method (PDRT, 0, NotSerialized)
  28821. {
  28822. If ((BDID == 0x08))
  28823. {
  28824. If ((\_SB.PCI0.I2C7.PMI5.SRCD == Zero))
  28825. {
  28826. Return (PDRI) /* \_SB_.DPTF.PDRI */
  28827. }
  28828. Else
  28829. {
  28830. Return (PDRA) /* \_SB_.DPTF.PDRA */
  28831. }
  28832. }
  28833. ElseIf ((\_SB.ADP1._PSR == Zero))
  28834. {
  28835. If (((BDID == One) || ((BDID == 0x09) || (BDID == 0x0A))))
  28836. {
  28837. Return (CDRI) /* \_SB_.DPTF.CDRI */
  28838. }
  28839.  
  28840. Return (PDRI) /* \_SB_.DPTF.PDRI */
  28841. }
  28842. ElseIf (((BDID == One) || ((BDID == 0x09) || (BDID ==
  28843. 0x0A))))
  28844. {
  28845. Return (CDRA) /* \_SB_.DPTF.CDRA */
  28846. }
  28847. }
  28848.  
  28849. Name (MTRM, Package (0x09)
  28850. {
  28851. Package (0x04)
  28852. {
  28853. \_SB.PCI0.PNIT,
  28854. "8086_22DC",
  28855. Zero,
  28856. "0x000B0000"
  28857. },
  28858.  
  28859. Package (0x04)
  28860. {
  28861. \_SB.STR0,
  28862. "INT3403",
  28863. 0x06,
  28864. "0"
  28865. },
  28866.  
  28867. Package (0x04)
  28868. {
  28869. \_SB.STR1,
  28870. "INT3403",
  28871. 0x06,
  28872. "1"
  28873. },
  28874.  
  28875. Package (0x04)
  28876. {
  28877. \_SB.STR2,
  28878. "INT3403",
  28879. 0x06,
  28880. "2"
  28881. },
  28882.  
  28883. Package (0x04)
  28884. {
  28885. \_SB.TDSP,
  28886. "INT3406",
  28887. 0x06,
  28888. "0"
  28889. },
  28890.  
  28891. Package (0x04)
  28892. {
  28893. \_SB.TCHG,
  28894. "INT3403",
  28895. 0x06,
  28896. "4"
  28897. },
  28898.  
  28899. Package (0x04)
  28900. {
  28901. \_SB.TPWR,
  28902. "INT3407",
  28903. 0x06,
  28904. "0"
  28905. },
  28906.  
  28907. Package (0x04)
  28908. {
  28909. \_SB.SAMB,
  28910. "INT3409",
  28911. 0x06,
  28912. "0"
  28913. },
  28914.  
  28915. Package (0x04)
  28916. {
  28917. \_SB.WWAN,
  28918. "INT3408",
  28919. 0x06,
  28920. "0"
  28921. }
  28922. })
  28923. Name (ETRM, Package (0x04)
  28924. {
  28925. Package (0x04)
  28926. {
  28927. \_SB.PCI0.PNIT,
  28928. "8086_22DC",
  28929. Zero,
  28930. "0x000B0000"
  28931. },
  28932.  
  28933. Package (0x04)
  28934. {
  28935. \_SB.STR0,
  28936. "INT3403",
  28937. 0x06,
  28938. "0"
  28939. },
  28940.  
  28941. Package (0x04)
  28942. {
  28943. \_SB.TDSP,
  28944. "INT3406",
  28945. 0x06,
  28946. "0"
  28947. },
  28948.  
  28949. Package (0x04)
  28950. {
  28951. \_SB.TCHG,
  28952. "INT3403",
  28953. 0x06,
  28954. "4"
  28955. }
  28956. })
  28957. Name (TRTI, Package (0x03)
  28958. {
  28959. Package (0x08)
  28960. {
  28961. \_SB.TCHG,
  28962. \_SB.STR0,
  28963. 0x64,
  28964. 0x02EE,
  28965. Zero,
  28966. Zero,
  28967. Zero,
  28968. Zero
  28969. },
  28970.  
  28971. Package (0x08)
  28972. {
  28973. \_SB.PCI0.PNIT,
  28974. \_SB.STR0,
  28975. 0x50,
  28976. 0x02EE,
  28977. Zero,
  28978. Zero,
  28979. Zero,
  28980. Zero
  28981. },
  28982.  
  28983. Package (0x08)
  28984. {
  28985. \_SB.TDSP,
  28986. \_SB.STR2,
  28987. 0x64,
  28988. 0x64,
  28989. Zero,
  28990. Zero,
  28991. Zero,
  28992. Zero
  28993. }
  28994. })
  28995. Name (TRTC, Package (0x03)
  28996. {
  28997. Package (0x08)
  28998. {
  28999. \_SB.TCHG,
  29000. \_SB.STR0,
  29001. 0x64,
  29002. 0x012C,
  29003. Zero,
  29004. Zero,
  29005. Zero,
  29006. Zero
  29007. },
  29008.  
  29009. Package (0x08)
  29010. {
  29011. \_SB.PCI0.PNIT,
  29012. \_SB.STR0,
  29013. 0x50,
  29014. 0x012C,
  29015. Zero,
  29016. Zero,
  29017. Zero,
  29018. Zero
  29019. },
  29020.  
  29021. Package (0x08)
  29022. {
  29023. \_SB.TDSP,
  29024. \_SB.STR0,
  29025. 0x3C,
  29026. 0x05DC,
  29027. Zero,
  29028. Zero,
  29029. Zero,
  29030. Zero
  29031. }
  29032. })
  29033. Name (TRTH, Package (0x03)
  29034. {
  29035. Package (0x08)
  29036. {
  29037. \_SB.TCHG,
  29038. \_SB.STR2,
  29039. 0x5A,
  29040. 0x02EE,
  29041. Zero,
  29042. Zero,
  29043. Zero,
  29044. Zero
  29045. },
  29046.  
  29047. Package (0x08)
  29048. {
  29049. \_SB.PCI0.PNIT,
  29050. \_SB.STR0,
  29051. 0x50,
  29052. 0x02EE,
  29053. Zero,
  29054. Zero,
  29055. Zero,
  29056. Zero
  29057. },
  29058.  
  29059. Package (0x08)
  29060. {
  29061. \_SB.TDSP,
  29062. \_SB.STR2,
  29063. 0x64,
  29064. 0x64,
  29065. Zero,
  29066. Zero,
  29067. Zero,
  29068. Zero
  29069. }
  29070. })
  29071. Method (_TRT, 0, NotSerialized) // _TRT: Thermal Relationship Table
  29072. {
  29073. If ((BDID == One))
  29074. {
  29075. Return (TRTC) /* \_SB_.DPTF.TRTC */
  29076. }
  29077. ElseIf ((BDID == 0x0A))
  29078. {
  29079. Return (TRTH) /* \_SB_.DPTF.TRTH */
  29080. }
  29081.  
  29082. Return (TRTI) /* \_SB_.DPTF.TRTI */
  29083. }
  29084.  
  29085. Name (TRTR, One)
  29086. Method (_OSC, 4, Serialized) // _OSC: Operating System Capabilities
  29087. {
  29088. Name (NUMP, Zero)
  29089. Name (UID2, Buffer (0x10)
  29090. {
  29091. /* 0000 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, /* ........ */
  29092. /* 0008 */ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF /* ........ */
  29093. })
  29094. CreateDWordField (Arg3, Zero, STS1)
  29095. CreateDWordField (Arg3, 0x04, CAP1)
  29096. IDSP ()
  29097. NUMP = SizeOf (TMPP)
  29098. CreateDWordField (Arg0, Zero, IID0)
  29099. CreateDWordField (Arg0, 0x04, IID1)
  29100. CreateDWordField (Arg0, 0x08, IID2)
  29101. CreateDWordField (Arg0, 0x0C, IID3)
  29102. CreateDWordField (UID2, Zero, EID0)
  29103. CreateDWordField (UID2, 0x04, EID1)
  29104. CreateDWordField (UID2, 0x08, EID2)
  29105. CreateDWordField (UID2, 0x0C, EID3)
  29106. While (NUMP)
  29107. {
  29108. UID2 = DerefOf (TMPP [(NUMP - One)])
  29109. If ((((IID0 == EID0) && (IID1 == EID1)) && ((IID2 ==
  29110. EID2) && (IID3 == EID3))))
  29111. {
  29112. Break
  29113. }
  29114.  
  29115. NUMP--
  29116. }
  29117.  
  29118. If ((NUMP == Zero))
  29119. {
  29120. STS1 &= 0xFFFFFF00
  29121. STS1 |= 0x06
  29122. Return (Arg3)
  29123. }
  29124.  
  29125. If ((Arg1 != One))
  29126. {
  29127. STS1 &= 0xFFFFFF00
  29128. STS1 |= 0x0A
  29129. Return (Arg3)
  29130. }
  29131.  
  29132. If ((Arg2 != 0x02))
  29133. {
  29134. STS1 &= 0xFFFFFF00
  29135. STS1 |= 0x02
  29136. Return (Arg3)
  29137. }
  29138.  
  29139. Return (Arg3)
  29140. }
  29141.  
  29142. Method (KTOC, 1, NotSerialized)
  29143. {
  29144. If ((Arg0 > 0x0AAC))
  29145. {
  29146. Local1 = (Arg0 - 0x0AAC)
  29147. }
  29148. Else
  29149. {
  29150. Local1 = (0x0AAC - Arg0)
  29151. Local1 = (0x0A00 - Local1)
  29152. }
  29153.  
  29154. Return ((Local1 / 0x0A))
  29155. }
  29156.  
  29157. Method (CTOK, 1, NotSerialized)
  29158. {
  29159. If ((Arg0 & 0x80))
  29160. {
  29161. Local0 = (Arg0 & 0xFF)
  29162. Local0 = (0x0100 - Arg0)
  29163. Local0 *= 0x0A
  29164. Local0 = (0x0AAC - Local0)
  29165. }
  29166. Else
  29167. {
  29168. Local0 = (Arg0 * 0x0A)
  29169. Local0 += 0x0AAC
  29170. }
  29171.  
  29172. Return (Local0)
  29173. }
  29174.  
  29175. Method (SDBG, 0, NotSerialized)
  29176. {
  29177. Return (PDBG) /* External reference */
  29178. }
  29179. }
  29180. }
  29181.  
  29182. Scope (\_SB)
  29183. {
  29184. Device (TPWR)
  29185. {
  29186. Name (_HID, EisaId ("INT3407") /* DPTF Platform Power Meter */) // _HID: Hardware ID
  29187. Name (_UID, Zero) // _UID: Unique ID
  29188. Name (PTYP, 0x11)
  29189. Name (PROP, 0x07D0)
  29190. Name (_STR, Unicode ("Platform Power")) // _STR: Description String
  29191. Name (RDEP, Package (0x02)
  29192. {
  29193. \_SB.PCI0.I2C1,
  29194. \_SB.PCI0.I2C1.BATC
  29195. })
  29196. Name (ODEP, Package (0x02)
  29197. {
  29198. \_SB.PCI0.I2C1,
  29199. \_SB.PCI0.I2C1.BATC
  29200. })
  29201. Name (FDEP, Package (0x03)
  29202. {
  29203. \_SB.PCI0.I2C7,
  29204. \_SB.PCI0.I2C7.PMI5,
  29205. \_SB.PCI0.I2C7.BATC
  29206. })
  29207. Method (_STA, 0, NotSerialized) // _STA: Status
  29208. {
  29209. If (((DSOC == Zero) || (BDID == One)))
  29210. {
  29211. Return (Zero)
  29212. }
  29213.  
  29214. Return (0x0F)
  29215. }
  29216.  
  29217. Method (_BST, 0, NotSerialized) // _BST: Battery Status
  29218. {
  29219. If (CondRefOf (\_SB.PCI0.I2C1.BATC._BST, Local0))
  29220. {
  29221. Return (\_SB.PCI0.I2C1.BATC._BST) /* External reference */
  29222. }
  29223. ElseIf (CondRefOf (\_SB.PCI0.I2C7.BATC._BST, Local0))
  29224. {
  29225. Return (\_SB.PCI0.I2C7.BATC._BST) /* External reference */
  29226. }
  29227. ElseIf (CondRefOf (\_SB.PCI0.I2C7.WIDR.BATD, Local0))
  29228. {
  29229. Return (\_SB.PCI0.I2C7.WIDR.BATD) /* External reference */
  29230. }
  29231. Else
  29232. {
  29233. Return (Package (0x04)
  29234. {
  29235. Zero,
  29236. Zero,
  29237. Zero,
  29238. Zero
  29239. })
  29240. }
  29241.  
  29242. If (CondRefOf (\_SB.PCI0.I2C1.BATC._BST, Local0))
  29243. {
  29244. Return (\_SB.PCI0.I2C1.BATC._BST) /* External reference */
  29245. }
  29246. ElseIf (CondRefOf (\_SB.PCI0.I2C7.BATC._BST, Local0))
  29247. {
  29248. Return (\_SB.PCI0.I2C7.BATC._BST) /* External reference */
  29249. }
  29250. ElseIf (CondRefOf (\_SB.PCI0.I2C7.WIDR.BATD, Local0))
  29251. {
  29252. Return (\_SB.PCI0.I2C7.WIDR.BATD) /* External reference */
  29253. }
  29254. Else
  29255. {
  29256. Return (Package (0x04)
  29257. {
  29258. Zero,
  29259. Zero,
  29260. Zero,
  29261. Zero
  29262. })
  29263. }
  29264.  
  29265. If ((BDID == One))
  29266. {
  29267. If (CondRefOf (\_SB.PCI0.I2C3.TIDR.BATD, Local0))
  29268. {
  29269. Return (\_SB.PCI0.I2C3.TIDR.BATD) /* External reference */
  29270. }
  29271. Else
  29272. {
  29273. Return (Package (0x04)
  29274. {
  29275. Zero,
  29276. Zero,
  29277. Zero,
  29278. Zero
  29279. })
  29280. }
  29281. }
  29282. ElseIf ((BDID == 0x08))
  29283. {
  29284. If (CondRefOf (\_SB.PCI0.I2C7.BATC._BST, Local0))
  29285. {
  29286. Return (\_SB.PCI0.I2C7.BATC._BST) /* External reference */
  29287. }
  29288. Else
  29289. {
  29290. Return (Package (0x04)
  29291. {
  29292. Zero,
  29293. Zero,
  29294. Zero,
  29295. Zero
  29296. })
  29297. }
  29298. }
  29299. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  29300. {
  29301. If (CondRefOf (\_SB.PCI0.I2C7.WIDR.BATD, Local0))
  29302. {
  29303. Return (\_SB.PCI0.I2C7.WIDR.BATD) /* External reference */
  29304. }
  29305. Else
  29306. {
  29307. Return (Package (0x04)
  29308. {
  29309. Zero,
  29310. Zero,
  29311. Zero,
  29312. Zero
  29313. })
  29314. }
  29315. }
  29316. ElseIf (CondRefOf (\_SB.PCI0.I2C1.BATC._BST, Local0))
  29317. {
  29318. Return (\_SB.PCI0.I2C1.BATC._BST) /* External reference */
  29319. }
  29320. Else
  29321. {
  29322. Return (Package (0x04)
  29323. {
  29324. Zero,
  29325. Zero,
  29326. Zero,
  29327. Zero
  29328. })
  29329. }
  29330. }
  29331.  
  29332. Method (PSOC, 0, NotSerialized)
  29333. {
  29334. If ((BDID == One))
  29335. {
  29336. If (CondRefOf (\_SB.PCI0.I2C3.TIDR.PSOC, Local0))
  29337. {
  29338. Return (\_SB.PCI0.I2C3.TIDR.PSOC) /* External reference */
  29339. }
  29340. Else
  29341. {
  29342. Return (Zero)
  29343. }
  29344. }
  29345. ElseIf ((BDID == 0x08))
  29346. {
  29347. If (CondRefOf (\_SB.PCI0.I2C7.BATC.PSOC, Local0))
  29348. {
  29349. Return (\_SB.PCI0.I2C7.BATC.PSOC) /* External reference */
  29350. }
  29351. Else
  29352. {
  29353. Return (Zero)
  29354. }
  29355. }
  29356. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  29357. {
  29358. If (CondRefOf (\_SB.PCI0.I2C7.WIDR.PSOC, Local0))
  29359. {
  29360. Return (\_SB.PCI0.I2C7.WIDR.PSOC) /* External reference */
  29361. }
  29362. Else
  29363. {
  29364. Return (Zero)
  29365. }
  29366. }
  29367. ElseIf (CondRefOf (\_SB.PCI0.I2C1.BATC.PSOC, Local0))
  29368. {
  29369. Return (\_SB.PCI0.I2C1.BATC.PSOC) /* External reference */
  29370. }
  29371. Else
  29372. {
  29373. Return (Zero)
  29374. }
  29375. }
  29376.  
  29377. Method (PMAX, 0, NotSerialized)
  29378. {
  29379. If ((BDID == One))
  29380. {
  29381. If (CondRefOf (\_SB.PCI0.I2C3.TIDR.PMAX, Local0))
  29382. {
  29383. Return (\_SB.PCI0.I2C3.TIDR.PMAX) /* External reference */
  29384. }
  29385. }
  29386. ElseIf ((BDID == 0x08))
  29387. {
  29388. If (CondRefOf (\_SB.PCI0.I2C7.BATC.PMAX, Local0))
  29389. {
  29390. Return (\_SB.PCI0.I2C7.BATC.PMAX) /* External reference */
  29391. }
  29392. Else
  29393. {
  29394. Return (Zero)
  29395. }
  29396. }
  29397. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  29398. {
  29399. If (CondRefOf (\_SB.PCI0.I2C7.WIDR.PMAX, Local0))
  29400. {
  29401. Return (\_SB.PCI0.I2C7.WIDR.PMAX) /* External reference */
  29402. }
  29403. Else
  29404. {
  29405. Return (Zero)
  29406. }
  29407. }
  29408. ElseIf (CondRefOf (\_SB.PCI0.I2C1.BATC.PMAX, Local0))
  29409. {
  29410. Return (\_SB.PCI0.I2C1.BATC.PMAX) /* External reference */
  29411. }
  29412. Else
  29413. {
  29414. Return (Zero)
  29415. }
  29416. }
  29417.  
  29418. Method (PSRC, 0, NotSerialized)
  29419. {
  29420. If ((BDID == One))
  29421. {
  29422. If (CondRefOf (\_SB.PCI0.I2C3.TIDR.PSRC, Local0))
  29423. {
  29424. Return (\_SB.PCI0.I2C3.TIDR.PSRC) /* External reference */
  29425. }
  29426. Else
  29427. {
  29428. Return (Zero)
  29429. }
  29430. }
  29431. ElseIf ((BDID == 0x08))
  29432. {
  29433. If (CondRefOf (\_SB.PCI0.I2C7.BATC.PSRC, Local0))
  29434. {
  29435. Return (\_SB.PCI0.I2C7.BATC.PSRC) /* External reference */
  29436. }
  29437. Else
  29438. {
  29439. Return (Zero)
  29440. }
  29441. }
  29442. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  29443. {
  29444. If (CondRefOf (\_SB.PCI0.I2C7.WIDR.PSRC, Local0))
  29445. {
  29446. Return (\_SB.PCI0.I2C7.WIDR.PSRC) /* External reference */
  29447. }
  29448. Else
  29449. {
  29450. Return (Zero)
  29451. }
  29452. }
  29453. ElseIf (CondRefOf (\_SB.PCI0.I2C1.BATC.PSRC, Local0))
  29454. {
  29455. Return (\_SB.PCI0.I2C1.BATC.PSRC) /* External reference */
  29456. }
  29457. Else
  29458. {
  29459. Return (Zero)
  29460. }
  29461. }
  29462.  
  29463. Method (ARTG, 0, NotSerialized)
  29464. {
  29465. If ((BDID == One))
  29466. {
  29467. If (CondRefOf (\_SB.PCI0.I2C3.TIDR.ARTG, Local0))
  29468. {
  29469. Return (\_SB.PCI0.I2C3.TIDR.ARTG) /* External reference */
  29470. }
  29471. }
  29472. ElseIf ((BDID == 0x08))
  29473. {
  29474. If (CondRefOf (\_SB.PCI0.I2C7.BATC.ARTG, Local0))
  29475. {
  29476. Return (\_SB.PCI0.I2C7.BATC.ARTG) /* External reference */
  29477. }
  29478. Else
  29479. {
  29480. Return (Zero)
  29481. }
  29482. }
  29483. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  29484. {
  29485. If (CondRefOf (\_SB.PCI0.I2C7.WIDR.ARTG, Local0))
  29486. {
  29487. Return (\_SB.PCI0.I2C7.WIDR.ARTG) /* External reference */
  29488. }
  29489. Else
  29490. {
  29491. Return (Zero)
  29492. }
  29493. }
  29494. ElseIf (CondRefOf (\_SB.PCI0.I2C1.BATC.ARTG, Local0))
  29495. {
  29496. Return (\_SB.PCI0.I2C1.BATC.ARTG) /* External reference */
  29497. }
  29498. Else
  29499. {
  29500. Return (Zero)
  29501. }
  29502. }
  29503.  
  29504. Method (CTYP, 0, NotSerialized)
  29505. {
  29506. If ((BDID == One))
  29507. {
  29508. If (CondRefOf (\_SB.PCI0.I2C3.TIDR.CTYP, Local0))
  29509. {
  29510. Return (\_SB.PCI0.I2C3.TIDR.CTYP) /* External reference */
  29511. }
  29512. }
  29513. ElseIf ((BDID == 0x08))
  29514. {
  29515. If (CondRefOf (\_SB.PCI0.I2C7.BATC.CTYP, Local0))
  29516. {
  29517. Return (\_SB.PCI0.I2C7.BATC.CTYP) /* External reference */
  29518. }
  29519. }
  29520. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  29521. {
  29522. If (CondRefOf (\_SB.PCI0.I2C7.WIDR.CTYP, Local0))
  29523. {
  29524. Return (\_SB.PCI0.I2C7.WIDR.CTYP) /* External reference */
  29525. }
  29526. }
  29527. ElseIf (CondRefOf (\_SB.PCI0.I2C1.BATC.CTYP, Local0))
  29528. {
  29529. Return (\_SB.PCI0.I2C1.BATC.CTYP) /* External reference */
  29530. }
  29531. Else
  29532. {
  29533. Return (Zero)
  29534. }
  29535. }
  29536.  
  29537. Method (SDBG, 0, NotSerialized)
  29538. {
  29539. Return (PDBG) /* External reference */
  29540. }
  29541. }
  29542. }
  29543.  
  29544. Scope (\_SB)
  29545. {
  29546. Name (RBUF, ResourceTemplate ()
  29547. {
  29548. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  29549. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  29550. )
  29551. { // Pin list
  29552. 0x0015
  29553. }
  29554. })
  29555. Device (STR0)
  29556. {
  29557. Name (_HID, EisaId ("INT3403") /* DPTF Temperature Sensor */) // _HID: Hardware ID
  29558. Name (_UID, Zero) // _UID: Unique ID
  29559. Name (PTYP, 0x03)
  29560. Name (_STR, Unicode ("Skin hotspot proxy thermistor")) // _STR: Description String
  29561. Name (CTYP, Zero)
  29562. Name (LTM0, Zero)
  29563. Name (XDEP, Package (0x02)
  29564. {
  29565. \_SB.PCI0.I2C7,
  29566. \_SB.PCI0.I2C7.PMI1
  29567. })
  29568. Name (TDEP, Package (0x02)
  29569. {
  29570. \_SB.PCI0.I2C7,
  29571. \_SB.PCI0.I2C7.PMI2
  29572. })
  29573. Name (CDEP, Package (0x02)
  29574. {
  29575. \_SB.PCI0.I2C7,
  29576. \_SB.PCI0.I2C7.PMIC
  29577. })
  29578. Name (WDEP, Package (0x02)
  29579. {
  29580. \_SB.PCI0.I2C7,
  29581. \_SB.PCI0.I2C7.PMI5
  29582. })
  29583. Method (_STA, 0, NotSerialized) // _STA: Status
  29584. {
  29585. If ((THM0 == Zero))
  29586. {
  29587. Return (Zero)
  29588. }
  29589.  
  29590. Return (0x0F)
  29591. }
  29592.  
  29593. Method (_TSP, 0, NotSerialized) // _TSP: Thermal Sampling Period
  29594. {
  29595. If (((PMID == Zero) || (PMID == 0x03)))
  29596. {
  29597. If (((BDID == 0x09) || (BDID == 0x0A)))
  29598. {
  29599. Return (Ones)
  29600. }
  29601. Else
  29602. {
  29603. Return (0xFFFF)
  29604. }
  29605. }
  29606. Else
  29607. {
  29608. Return (VTSP) /* External reference */
  29609. }
  29610. }
  29611.  
  29612. Method (_DTI, 1, NotSerialized) // _DTI: Device Temperature Indication
  29613. {
  29614. LTM0 = Arg0
  29615. }
  29616.  
  29617. Method (_NTT, 0, NotSerialized) // _NTT: Notification Temperature Threshold
  29618. {
  29619. Return (0x0ADE)
  29620. }
  29621.  
  29622. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  29623. {
  29624. Name (SBUF, ResourceTemplate ()
  29625. {
  29626. })
  29627. Name (WBUF, ResourceTemplate ()
  29628. {
  29629. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  29630. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  29631. )
  29632. { // Pin list
  29633. 0x0015
  29634. }
  29635. })
  29636. If ((PMID == Zero))
  29637. {
  29638. Return (^^RBUF) /* \_SB_.RBUF */
  29639. }
  29640. ElseIf ((PMID == 0x03))
  29641. {
  29642. Return (WBUF) /* \_SB_.STR0._CRS.WBUF */
  29643. }
  29644. Else
  29645. {
  29646. Return (SBUF) /* \_SB_.STR0._CRS.SBUF */
  29647. }
  29648. }
  29649.  
  29650. Method (_INI, 0, NotSerialized) // _INI: Initialize
  29651. {
  29652. }
  29653.  
  29654. Method (_TMP, 0, Serialized) // _TMP: Temperature
  29655. {
  29656. If ((PMID == Zero))
  29657. {
  29658. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  29659. {
  29660. \_SB.PCI0.I2C7.PMIC.GMP0 = Zero
  29661. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  29662. {
  29663. Return (\_SB.PCI0.I2C7.PMIC.TMP0) /* External reference */
  29664. }
  29665. }
  29666. }
  29667.  
  29668. If ((PMID == One))
  29669. {
  29670. If ((\_SB.PCI0.I2C7.PMI2.AVBG == One))
  29671. {
  29672. \_SB.PCI0.I2C7.PMI2.GMP0 = Zero
  29673. If ((\_SB.PCI0.I2C7.PMI2.AVBD == One))
  29674. {
  29675. Return (\_SB.PCI0.I2C7.PMI2.TMP0) /* External reference */
  29676. }
  29677. }
  29678. }
  29679.  
  29680. If ((PMID == 0x02))
  29681. {
  29682. If ((\_SB.PCI0.I2C7.PMI1.AVBG == One))
  29683. {
  29684. \_SB.PCI0.I2C7.PMI1.GMP0 = Zero
  29685. If ((\_SB.PCI0.I2C7.PMI1.AVBD == One))
  29686. {
  29687. Return (\_SB.PCI0.I2C7.PMI1.TMP0) /* External reference */
  29688. }
  29689. }
  29690. }
  29691.  
  29692. If ((PMID == 0x03))
  29693. {
  29694. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  29695. {
  29696. \_SB.PCI0.I2C7.PMI5.GMP0 = Zero
  29697. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  29698. {
  29699. Return (\_SB.PCI0.I2C7.PMI5.TMP0) /* External reference */
  29700. }
  29701. }
  29702. }
  29703.  
  29704. Return (Zero)
  29705. }
  29706.  
  29707. Name (PATC, 0x02)
  29708. Method (PAT0, 1, Serialized)
  29709. {
  29710. If ((PMID == Zero))
  29711. {
  29712. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  29713. {
  29714. \_SB.PCI0.I2C7.PMIC.AX00 = Arg0
  29715. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  29716. {
  29717. \_SB.PCI0.I2C7.PMIC.GX00 = One
  29718. }
  29719.  
  29720. \_SB.PCI0.I2C7.PMIC.PEN0 = Zero
  29721. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  29722. {
  29723. \_SB.PCI0.I2C7.PMIC.GEN0 = One
  29724. }
  29725. }
  29726. }
  29727. ElseIf ((PMID == 0x02))
  29728. {
  29729. If ((\_SB.PCI0.I2C7.PMI1.AVBD == One))
  29730. {
  29731. \_SB.PCI0.I2C7.PMI1.AX00 = Arg0
  29732. If ((\_SB.PCI0.I2C7.PMI1.AVBG == One))
  29733. {
  29734. \_SB.PCI0.I2C7.PMI1.GX00 = One
  29735. }
  29736.  
  29737. \_SB.PCI0.I2C7.PMI1.PEN0 = Zero
  29738. If ((\_SB.PCI0.I2C7.PMI1.AVBG == One))
  29739. {
  29740. \_SB.PCI0.I2C7.PMI1.GEN0 = One
  29741. }
  29742. }
  29743. }
  29744. ElseIf ((PMID == One))
  29745. {
  29746. If ((\_SB.PCI0.I2C7.PMI2.AVBD == One))
  29747. {
  29748. \_SB.PCI0.I2C7.PMI2.AX00 = Arg0
  29749. If ((\_SB.PCI0.I2C7.PMI2.AVBG == One))
  29750. {
  29751. \_SB.PCI0.I2C7.PMI2.GX00 = One
  29752. }
  29753.  
  29754. \_SB.PCI0.I2C7.PMI2.PEN0 = Zero
  29755. If ((\_SB.PCI0.I2C7.PMI2.AVBG == One))
  29756. {
  29757. \_SB.PCI0.I2C7.PMI2.GEN0 = One
  29758. }
  29759. }
  29760. }
  29761. ElseIf ((PMID == 0x03))
  29762. {
  29763. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  29764. {
  29765. \_SB.PCI0.I2C7.PMI5.AX00 = Arg0
  29766. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  29767. {
  29768. \_SB.PCI0.I2C7.PMI5.GX00 = One
  29769. }
  29770.  
  29771. \_SB.PCI0.I2C7.PMI5.PEN0 = Zero
  29772. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  29773. {
  29774. \_SB.PCI0.I2C7.PMI5.GEN0 = One
  29775. }
  29776. }
  29777. }
  29778. }
  29779.  
  29780. Method (PAT1, 1, Serialized)
  29781. {
  29782. If ((PMID == Zero))
  29783. {
  29784. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  29785. {
  29786. \_SB.PCI0.I2C7.PMIC.AX01 = Arg0
  29787. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  29788. {
  29789. \_SB.PCI0.I2C7.PMIC.GX01 = One
  29790. }
  29791. }
  29792. }
  29793. ElseIf ((PMID == One))
  29794. {
  29795. If ((\_SB.PCI0.I2C7.PMI2.AVBD == One))
  29796. {
  29797. \_SB.PCI0.I2C7.PMI2.AX01 = Arg0
  29798. If ((\_SB.PCI0.I2C7.PMI2.AVBG == One))
  29799. {
  29800. \_SB.PCI0.I2C7.PMI2.GX01 = One
  29801. }
  29802. }
  29803. }
  29804. ElseIf ((PMID == 0x02))
  29805. {
  29806. If ((\_SB.PCI0.I2C7.PMI1.AVBD == One))
  29807. {
  29808. \_SB.PCI0.I2C7.PMI1.AX01 = Arg0
  29809. If ((\_SB.PCI0.I2C7.PMI1.AVBG == One))
  29810. {
  29811. \_SB.PCI0.I2C7.PMI1.GX01 = One
  29812. }
  29813. }
  29814. }
  29815. ElseIf ((PMID == 0x03))
  29816. {
  29817. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  29818. {
  29819. \_SB.PCI0.I2C7.PMI5.AX01 = Arg0
  29820. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  29821. {
  29822. \_SB.PCI0.I2C7.PMI5.GX01 = One
  29823. }
  29824. }
  29825. }
  29826. }
  29827.  
  29828. Name (GTSH, 0x06)
  29829. Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
  29830. {
  29831. Return (\_SB.DPTF.CTOK (GCR0))
  29832. }
  29833.  
  29834. Method (_HOT, 0, Serialized) // _HOT: Hot Temperature
  29835. {
  29836. Return (\_SB.DPTF.CTOK ((GCR0 - 0x03)))
  29837. }
  29838.  
  29839. Method (_PSV, 0, Serialized) // _PSV: Passive Temperature
  29840. {
  29841. Name (MAXV, Zero)
  29842. If (((HPME == One) && (PSC0 >= MAXV)))
  29843. {
  29844. MAXV = PSC0 /* \PSC0 */
  29845. }
  29846.  
  29847. If ((PSA0 >= MAXV))
  29848. {
  29849. MAXV = PSA0 /* \PSA0 */
  29850. }
  29851.  
  29852. If ((\_SB.PST0 >= MAXV))
  29853. {
  29854. MAXV = \_SB.PST0 /* External reference */
  29855. }
  29856.  
  29857. Return (\_SB.DPTF.CTOK (MAXV))
  29858. }
  29859.  
  29860. Method (_SCP, 3, Serialized) // _SCP: Set Cooling Policy
  29861. {
  29862. If (((Arg0 == Zero) || (Arg0 == One)))
  29863. {
  29864. CTYP = Arg0
  29865. If ((BDID == 0x08))
  29866. {
  29867. If ((\_SB.PCI0.I2C7.PMI5.SRCD == Zero))
  29868. {
  29869. PSC0 = Zero
  29870. }
  29871. Else
  29872. {
  29873. PSC0 = 0x40
  29874. }
  29875. }
  29876. ElseIf ((\_SB.ADP1._PSR == Zero))
  29877. {
  29878. PSC0 = Zero
  29879. }
  29880. Else
  29881. {
  29882. PSC0 = 0x40
  29883. }
  29884.  
  29885. If (CondRefOf (\_SB.STR0._PSV, Local0))
  29886. {
  29887. Notify (\_SB.STR0, 0x91) // Device-Specific
  29888. }
  29889. }
  29890. }
  29891.  
  29892. Method (SDBG, 0, NotSerialized)
  29893. {
  29894. Return (PDBG) /* External reference */
  29895. }
  29896. }
  29897.  
  29898. Device (STR1)
  29899. {
  29900. Name (_HID, EisaId ("INT3403") /* DPTF Temperature Sensor */) // _HID: Hardware ID
  29901. Name (_UID, One) // _UID: Unique ID
  29902. Name (PTYP, 0x03)
  29903. Name (_STR, Unicode ("Ambient estimation")) // _STR: Description String
  29904. Name (CTYP, Zero)
  29905. Name (LTM1, Zero)
  29906. Name (_DEP, Package (0x02) // _DEP: Dependencies
  29907. {
  29908. \_SB.PCI0.I2C7,
  29909. \_SB.PCI0.I2C7.PMIC
  29910. })
  29911. Name (WDEP, Package (0x02)
  29912. {
  29913. \_SB.PCI0.I2C7,
  29914. \_SB.PCI0.I2C7.PMI5
  29915. })
  29916. Method (_STA, 0, NotSerialized) // _STA: Status
  29917. {
  29918. If (((THM1 == Zero) || (BDID == One)))
  29919. {
  29920. Return (Zero)
  29921. }
  29922.  
  29923. Return (0x0F)
  29924. }
  29925.  
  29926. Method (HCRS, 0, Serialized)
  29927. {
  29928. Name (RBUF, ResourceTemplate ()
  29929. {
  29930. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  29931. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  29932. )
  29933. { // Pin list
  29934. 0x0016
  29935. }
  29936. })
  29937. Name (WBUF, ResourceTemplate ()
  29938. {
  29939. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  29940. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  29941. )
  29942. { // Pin list
  29943. 0x0016
  29944. }
  29945. })
  29946. Name (SBUF, ResourceTemplate ()
  29947. {
  29948. })
  29949. If ((PMID == Zero))
  29950. {
  29951. Return (RBUF) /* \_SB_.STR1.HCRS.RBUF */
  29952. }
  29953. ElseIf ((PMID == 0x03))
  29954. {
  29955. Return (WBUF) /* \_SB_.STR1.HCRS.WBUF */
  29956. }
  29957. Else
  29958. {
  29959. Return (SBUF) /* \_SB_.STR1.HCRS.SBUF */
  29960. }
  29961. }
  29962.  
  29963. Name (PATC, 0x02)
  29964. Method (HAT0, 1, Serialized)
  29965. {
  29966. If ((PMID == Zero))
  29967. {
  29968. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  29969. {
  29970. \_SB.PCI0.I2C7.PMIC.AX10 = Arg0
  29971. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  29972. {
  29973. \_SB.PCI0.I2C7.PMIC.GX10 = One
  29974. }
  29975.  
  29976. \_SB.PCI0.I2C7.PMIC.PEN1 = Zero
  29977. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  29978. {
  29979. \_SB.PCI0.I2C7.PMIC.GEN1 = One
  29980. }
  29981. }
  29982. }
  29983. ElseIf ((PMID == 0x03))
  29984. {
  29985. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  29986. {
  29987. \_SB.PCI0.I2C7.PMI5.AX10 = Arg0
  29988. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  29989. {
  29990. \_SB.PCI0.I2C7.PMI5.GX10 = One
  29991. }
  29992.  
  29993. \_SB.PCI0.I2C7.PMI5.PEN1 = Zero
  29994. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  29995. {
  29996. \_SB.PCI0.I2C7.PMI5.GEN1 = One
  29997. }
  29998. }
  29999. }
  30000. }
  30001.  
  30002. Method (HAT1, 1, Serialized)
  30003. {
  30004. If ((PMID == Zero))
  30005. {
  30006. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30007. {
  30008. \_SB.PCI0.I2C7.PMIC.AX11 = Arg0
  30009. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30010. {
  30011. \_SB.PCI0.I2C7.PMIC.GX11 = One
  30012. }
  30013. }
  30014. }
  30015. ElseIf ((PMID == 0x03))
  30016. {
  30017. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30018. {
  30019. \_SB.PCI0.I2C7.PMI5.AX11 = Arg0
  30020. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30021. {
  30022. \_SB.PCI0.I2C7.PMI5.GX11 = One
  30023. }
  30024. }
  30025. }
  30026. }
  30027.  
  30028. Method (_DTI, 1, NotSerialized) // _DTI: Device Temperature Indication
  30029. {
  30030. LTM1 = Arg0
  30031. }
  30032.  
  30033. Method (_NTT, 0, NotSerialized) // _NTT: Notification Temperature Threshold
  30034. {
  30035. Return (0x0ADE)
  30036. }
  30037.  
  30038. Method (_TMP, 0, Serialized) // _TMP: Temperature
  30039. {
  30040. If ((PMID == Zero))
  30041. {
  30042. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30043. {
  30044. \_SB.PCI0.I2C7.PMIC.GMP1 = Zero
  30045. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30046. {
  30047. Return (\_SB.PCI0.I2C7.PMIC.TMP1) /* External reference */
  30048. }
  30049. Else
  30050. {
  30051. Return (Zero)
  30052. }
  30053. }
  30054. Else
  30055. {
  30056. Return (Zero)
  30057. }
  30058. }
  30059. ElseIf ((PMID == 0x03))
  30060. {
  30061. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30062. {
  30063. \_SB.PCI0.I2C7.PMI5.GMP1 = Zero
  30064. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30065. {
  30066. Return (\_SB.PCI0.I2C7.PMI5.TMP1) /* External reference */
  30067. }
  30068. Else
  30069. {
  30070. Return (Zero)
  30071. }
  30072. }
  30073. Else
  30074. {
  30075. Return (Zero)
  30076. }
  30077. }
  30078.  
  30079. Return (Zero)
  30080. }
  30081.  
  30082. Name (GTSH, 0x06)
  30083. Method (_SCP, 3, Serialized) // _SCP: Set Cooling Policy
  30084. {
  30085. If (((Arg0 == Zero) || (Arg0 == One)))
  30086. {
  30087. CTYP = Arg0
  30088. Notify (\_SB.PCI0.PNIT, 0x91) // Device-Specific
  30089. }
  30090. }
  30091.  
  30092. Method (SDBG, 0, NotSerialized)
  30093. {
  30094. Return (PDBG) /* External reference */
  30095. }
  30096. }
  30097.  
  30098. Device (STR2)
  30099. {
  30100. Name (_HID, EisaId ("INT3403") /* DPTF Temperature Sensor */) // _HID: Hardware ID
  30101. Name (_UID, 0x02) // _UID: Unique ID
  30102. Name (_STR, Unicode ("Charger-display thermistor")) // _STR: Description String
  30103. Name (PTYP, 0x03)
  30104. Name (CTYP, Zero)
  30105. Name (LTM2, Zero)
  30106. Name (_DEP, Package (0x02) // _DEP: Dependencies
  30107. {
  30108. \_SB.PCI0.I2C7,
  30109. \_SB.PCI0.I2C7.PMIC
  30110. })
  30111. Name (WDEP, Package (0x02)
  30112. {
  30113. \_SB.PCI0.I2C7,
  30114. \_SB.PCI0.I2C7.PMI5
  30115. })
  30116. Method (_STA, 0, NotSerialized) // _STA: Status
  30117. {
  30118. If (((THM2 == Zero) || (BDID == One)))
  30119. {
  30120. Return (Zero)
  30121. }
  30122.  
  30123. Return (0x0F)
  30124. }
  30125.  
  30126. Method (_DTI, 1, NotSerialized) // _DTI: Device Temperature Indication
  30127. {
  30128. LTM2 = Arg0
  30129. }
  30130.  
  30131. Method (_NTT, 0, NotSerialized) // _NTT: Notification Temperature Threshold
  30132. {
  30133. Return (0x0ADE)
  30134. }
  30135.  
  30136. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  30137. {
  30138. Name (RBUF, ResourceTemplate ()
  30139. {
  30140. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  30141. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  30142. )
  30143. { // Pin list
  30144. 0x0017
  30145. }
  30146. })
  30147. Name (WBUF, ResourceTemplate ()
  30148. {
  30149. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  30150. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  30151. )
  30152. { // Pin list
  30153. 0x0017
  30154. }
  30155. })
  30156. Name (SBUF, ResourceTemplate ()
  30157. {
  30158. })
  30159. If ((PMID == Zero))
  30160. {
  30161. Return (RBUF) /* \_SB_.STR2._CRS.RBUF */
  30162. }
  30163. ElseIf ((PMID == 0x03))
  30164. {
  30165. Return (WBUF) /* \_SB_.STR2._CRS.WBUF */
  30166. }
  30167. Else
  30168. {
  30169. Return (SBUF) /* \_SB_.STR2._CRS.SBUF */
  30170. }
  30171. }
  30172.  
  30173. Method (_INI, 0, NotSerialized) // _INI: Initialize
  30174. {
  30175. }
  30176.  
  30177. Method (_TMP, 0, Serialized) // _TMP: Temperature
  30178. {
  30179. If ((PMID == Zero))
  30180. {
  30181. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30182. {
  30183. \_SB.PCI0.I2C7.PMIC.GMP2 = Zero
  30184. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30185. {
  30186. Return (\_SB.PCI0.I2C7.PMIC.TMP2) /* External reference */
  30187. }
  30188. Else
  30189. {
  30190. Return (Zero)
  30191. }
  30192. }
  30193. Else
  30194. {
  30195. Return (Zero)
  30196. }
  30197. }
  30198. ElseIf ((PMID == 0x03))
  30199. {
  30200. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30201. {
  30202. \_SB.PCI0.I2C7.PMI5.GMP2 = Zero
  30203. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30204. {
  30205. Return (\_SB.PCI0.I2C7.PMI5.TMP2) /* External reference */
  30206. }
  30207. Else
  30208. {
  30209. Return (Zero)
  30210. }
  30211. }
  30212. Else
  30213. {
  30214. Return (Zero)
  30215. }
  30216. }
  30217.  
  30218. Return (Zero)
  30219. }
  30220.  
  30221. Name (PATC, 0x02)
  30222. Method (PAT0, 1, Serialized)
  30223. {
  30224. If ((PMID == Zero))
  30225. {
  30226. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30227. {
  30228. \_SB.PCI0.I2C7.PMIC.AX20 = Arg0
  30229. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30230. {
  30231. \_SB.PCI0.I2C7.PMIC.GX20 = One
  30232. }
  30233.  
  30234. \_SB.PCI0.I2C7.PMIC.PEN2 = Zero
  30235. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30236. {
  30237. \_SB.PCI0.I2C7.PMIC.GEN2 = One
  30238. }
  30239. }
  30240. }
  30241. ElseIf ((PMID == 0x03))
  30242. {
  30243. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30244. {
  30245. \_SB.PCI0.I2C7.PMI5.AX20 = Arg0
  30246. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30247. {
  30248. \_SB.PCI0.I2C7.PMI5.GX20 = One
  30249. }
  30250.  
  30251. \_SB.PCI0.I2C7.PMI5.PEN2 = Zero
  30252. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30253. {
  30254. \_SB.PCI0.I2C7.PMI5.GEN2 = One
  30255. }
  30256. }
  30257. }
  30258. }
  30259.  
  30260. Method (PAT1, 1, Serialized)
  30261. {
  30262. If ((PMID == Zero))
  30263. {
  30264. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30265. {
  30266. \_SB.PCI0.I2C7.PMIC.AX21 = Arg0
  30267. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30268. {
  30269. \_SB.PCI0.I2C7.PMIC.GX21 = One
  30270. }
  30271. }
  30272. }
  30273. ElseIf ((PMID == 0x03))
  30274. {
  30275. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30276. {
  30277. \_SB.PCI0.I2C7.PMI5.AX21 = Arg0
  30278. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30279. {
  30280. \_SB.PCI0.I2C7.PMI5.GX21 = One
  30281. }
  30282. }
  30283. }
  30284. }
  30285.  
  30286. Name (GTSH, 0x06)
  30287. Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
  30288. {
  30289. Return (\_SB.DPTF.CTOK (GCR2))
  30290. }
  30291.  
  30292. Method (_HOT, 0, Serialized) // _HOT: Hot Temperature
  30293. {
  30294. Return (\_SB.DPTF.CTOK ((GCR2 - 0x03)))
  30295. }
  30296.  
  30297. Method (_PSV, 0, Serialized) // _PSV: Passive Temperature
  30298. {
  30299. Name (MAXV, Zero)
  30300. If (((HPME == One) && (PSC2 >= MAXV)))
  30301. {
  30302. MAXV = PSC2 /* \PSC2 */
  30303. }
  30304.  
  30305. If ((PSA2 >= MAXV))
  30306. {
  30307. MAXV = PSA2 /* \PSA2 */
  30308. }
  30309.  
  30310. If ((\_SB.PST2 >= MAXV))
  30311. {
  30312. MAXV = \_SB.PST2 /* External reference */
  30313. }
  30314.  
  30315. Return (\_SB.DPTF.CTOK (MAXV))
  30316. }
  30317.  
  30318. Method (_SCP, 3, Serialized) // _SCP: Set Cooling Policy
  30319. {
  30320. If (((Arg0 == Zero) || (Arg0 == One)))
  30321. {
  30322. CTYP = Arg0
  30323. If ((BDID == 0x08))
  30324. {
  30325. If ((\_SB.PCI0.I2C7.PMI5.SRCD == Zero))
  30326. {
  30327. PSC2 = Zero
  30328. }
  30329. Else
  30330. {
  30331. PSC2 = 0x40
  30332. }
  30333. }
  30334. ElseIf ((\_SB.ADP1._PSR == Zero))
  30335. {
  30336. PSC2 = Zero
  30337. }
  30338. Else
  30339. {
  30340. PSC2 = 0x40
  30341. }
  30342.  
  30343. If (CondRefOf (\_SB.STR2._PSV, Local0))
  30344. {
  30345. Notify (\_SB.STR2, 0x91) // Device-Specific
  30346. }
  30347. }
  30348. }
  30349.  
  30350. Method (SDBG, 0, NotSerialized)
  30351. {
  30352. Return (PDBG) /* External reference */
  30353. }
  30354. }
  30355.  
  30356. Device (STR3)
  30357. {
  30358. Name (_HID, EisaId ("INT3403") /* DPTF Temperature Sensor */) // _HID: Hardware ID
  30359. Name (_UID, 0x03) // _UID: Unique ID
  30360. Name (_STR, Unicode ("Charger Board Sensor")) // _STR: Description String
  30361. Name (PTYP, 0x03)
  30362. Name (CTYP, Zero)
  30363. Name (LTM3, Zero)
  30364. Name (XDEP, Package (0x02)
  30365. {
  30366. \_SB.PCI0.I2C7,
  30367. \_SB.PCI0.I2C7.PMI1
  30368. })
  30369. Name (TDEP, Package (0x02)
  30370. {
  30371. \_SB.PCI0.I2C7,
  30372. \_SB.PCI0.I2C7.PMI2
  30373. })
  30374. Name (CDEP, Package (0x02)
  30375. {
  30376. \_SB.PCI0.I2C7,
  30377. \_SB.PCI0.I2C7.PMIC
  30378. })
  30379. Name (WDEP, Package (0x02)
  30380. {
  30381. \_SB.PCI0.I2C7,
  30382. \_SB.PCI0.I2C7.PMI5
  30383. })
  30384. Method (_STA, 0, NotSerialized) // _STA: Status
  30385. {
  30386. If ((OSID != One))
  30387. {
  30388. Return (0x0F)
  30389. }
  30390.  
  30391. Return (Zero)
  30392. }
  30393.  
  30394. Method (_DTI, 1, NotSerialized) // _DTI: Device Temperature Indication
  30395. {
  30396. LTM3 = Arg0
  30397. }
  30398.  
  30399. Method (_NTT, 0, NotSerialized) // _NTT: Notification Temperature Threshold
  30400. {
  30401. Return (0x0ADE)
  30402. }
  30403.  
  30404. Method (_INI, 0, NotSerialized) // _INI: Initialize
  30405. {
  30406. }
  30407.  
  30408. Name (BUFF, Buffer (0x07)
  30409. {
  30410. 0xFF /* . */
  30411. })
  30412. CreateByteField (BUFF, Zero, STAT)
  30413. CreateByteField (BUFF, One, LEN)
  30414. CreateByteField (BUFF, 0x02, TMP0)
  30415. CreateByteField (BUFF, 0x03, AX00)
  30416. CreateByteField (BUFF, 0x04, AX01)
  30417. CreateByteField (BUFF, 0x05, AX10)
  30418. CreateByteField (BUFF, 0x06, AX11)
  30419. Method (_TMP, 0, Serialized) // _TMP: Temperature
  30420. {
  30421. If ((PMID == Zero))
  30422. {
  30423. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30424. {
  30425. \_SB.PCI0.I2C7.PMIC.GMP3 = Zero
  30426. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30427. {
  30428. Return (\_SB.PCI0.I2C7.PMIC.TMP3) /* External reference */
  30429. }
  30430. }
  30431. }
  30432.  
  30433. If ((PMID == One))
  30434. {
  30435. If ((\_SB.PCI0.I2C7.PMI2.AVBG == One))
  30436. {
  30437. \_SB.PCI0.I2C7.PMI2.GMP3 = Zero
  30438. If ((\_SB.PCI0.I2C7.PMI2.AVBD == One))
  30439. {
  30440. Return (\_SB.PCI0.I2C7.PMI2.TMP3) /* External reference */
  30441. }
  30442. }
  30443. }
  30444.  
  30445. If ((PMID == 0x02))
  30446. {
  30447. If ((\_SB.PCI0.I2C7.PMI1.AVBG == One))
  30448. {
  30449. \_SB.PCI0.I2C7.PMI1.GMP3 = Zero
  30450. If ((\_SB.PCI0.I2C7.PMI1.AVBD == One))
  30451. {
  30452. Return (\_SB.PCI0.I2C7.PMI1.TMP3) /* External reference */
  30453. }
  30454. }
  30455. }
  30456.  
  30457. If ((PMID == 0x03))
  30458. {
  30459. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30460. {
  30461. \_SB.PCI0.I2C7.PMI5.GMP3 = Zero
  30462. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30463. {
  30464. Return (\_SB.PCI0.I2C7.PMI5.TMP3) /* External reference */
  30465. }
  30466. }
  30467. }
  30468.  
  30469. Return (Zero)
  30470. }
  30471.  
  30472. Name (PATC, 0x02)
  30473. Method (PAT0, 1, Serialized)
  30474. {
  30475. Local0 = Arg0
  30476. Local0 &= 0xFFFF
  30477. If ((Local0 == 0xFFFF))
  30478. {
  30479. Local1 = 0xFF
  30480. Local2 = Zero
  30481. }
  30482. Else
  30483. {
  30484. Local1 = \_SB.DPTF.KTOC (Arg0)
  30485. Local1 &= 0xFF
  30486. Local2 = 0x08
  30487. }
  30488.  
  30489. Local3 = (GTSH / 0x0A)
  30490. Local3 &= 0x07
  30491. Local2 |= Local3
  30492. If ((\_SB.PCI0.I2C1.AVBL == One))
  30493. {
  30494. BUFF = \_SB.PCI0.I2C1.THRM /* External reference */
  30495. If ((STAT == Zero))
  30496. {
  30497. AX00 = Local1
  30498. AX01 = Local2
  30499. \_SB.PCI0.I2C1.THRM = BUFF /* \_SB_.STR3.BUFF */
  30500. }
  30501. }
  30502.  
  30503. If ((PMID == 0x03))
  30504. {
  30505. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30506. {
  30507. \_SB.PCI0.I2C7.PMI5.AX30 = Arg0
  30508. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30509. {
  30510. \_SB.PCI0.I2C7.PMI5.GX30 = One
  30511. }
  30512. }
  30513. }
  30514. }
  30515.  
  30516. Method (PAT1, 1, Serialized)
  30517. {
  30518. Local0 = Arg0
  30519. Local0 &= 0xFFFF
  30520. If ((Local0 == 0xFFFF))
  30521. {
  30522. Local1 = 0xFF
  30523. Local2 = Zero
  30524. }
  30525. Else
  30526. {
  30527. Local1 = \_SB.DPTF.KTOC (Arg0)
  30528. Local1 &= 0xFF
  30529. Local2 = 0x08
  30530. }
  30531.  
  30532. Local3 = (GTSH / 0x0A)
  30533. Local3 &= 0x07
  30534. Local2 |= Local3
  30535. If ((\_SB.PCI0.I2C1.AVBL == One))
  30536. {
  30537. BUFF = \_SB.PCI0.I2C1.THRM /* External reference */
  30538. If ((STAT == Zero))
  30539. {
  30540. AX10 = Local1
  30541. AX11 = Local2
  30542. \_SB.PCI0.I2C1.THRM = BUFF /* \_SB_.STR3.BUFF */
  30543. }
  30544. }
  30545.  
  30546. If ((PMID == 0x03))
  30547. {
  30548. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30549. {
  30550. \_SB.PCI0.I2C7.PMI5.AX31 = Arg0
  30551. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30552. {
  30553. \_SB.PCI0.I2C7.PMI5.GX31 = One
  30554. }
  30555. }
  30556. }
  30557. }
  30558.  
  30559. Name (GTSH, 0x06)
  30560. Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
  30561. {
  30562. Return (\_SB.DPTF.CTOK (GCR3))
  30563. }
  30564.  
  30565. Method (_HOT, 0, Serialized) // _HOT: Hot Temperature
  30566. {
  30567. Return (\_SB.DPTF.CTOK ((GCR3 - 0x03)))
  30568. }
  30569.  
  30570. Method (_PSV, 0, Serialized) // _PSV: Passive Temperature
  30571. {
  30572. Return (\_SB.DPTF.CTOK (PST3))
  30573. }
  30574.  
  30575. Method (_SCP, 3, Serialized) // _SCP: Set Cooling Policy
  30576. {
  30577. If (((Arg0 == Zero) || (Arg0 == One)))
  30578. {
  30579. CTYP = Arg0
  30580. Notify (\_SB.PCI0.PNIT, 0x91) // Device-Specific
  30581. }
  30582. }
  30583.  
  30584. Method (SDBG, 0, NotSerialized)
  30585. {
  30586. Return (PDBG) /* External reference */
  30587. }
  30588. }
  30589.  
  30590. Device (SAMB)
  30591. {
  30592. Name (_HID, EisaId ("INT3409")) // _HID: Hardware ID
  30593. Name (_UID, Zero) // _UID: Unique ID
  30594. Name (PTYP, 0x16)
  30595. Name (_STR, Unicode ("Ambient Temperature")) // _STR: Description String
  30596. Name (CPRM, 0x0B54)
  30597. Name (_DEP, Package (0x02) // _DEP: Dependencies
  30598. {
  30599. \_SB.PCI0.I2C7,
  30600. \_SB.PCI0.I2C7.PMIC
  30601. })
  30602. Name (WDEP, Package (0x02)
  30603. {
  30604. \_SB.PCI0.I2C7,
  30605. \_SB.PCI0.I2C7.PMI5
  30606. })
  30607. Method (_STA, 0, NotSerialized) // _STA: Status
  30608. {
  30609. If (((THM4 == Zero) || (BDID == One)))
  30610. {
  30611. Return (Zero)
  30612. }
  30613.  
  30614. If (((BDID == 0x09) || (BDID == 0x0A)))
  30615. {
  30616. Return (Zero)
  30617. }
  30618. Else
  30619. {
  30620. Return (0x0F)
  30621. }
  30622. }
  30623.  
  30624. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  30625. {
  30626. Name (RBUF, ResourceTemplate ()
  30627. {
  30628. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  30629. "\\_SB.PCI0.I2C7.PMIC", 0x00, ResourceConsumer, ,
  30630. )
  30631. { // Pin list
  30632. 0x0016
  30633. }
  30634. })
  30635. Name (WBUF, ResourceTemplate ()
  30636. {
  30637. GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
  30638. "\\_SB.PCI0.I2C7.PMI5", 0x00, ResourceConsumer, ,
  30639. )
  30640. { // Pin list
  30641. 0x0016
  30642. }
  30643. })
  30644. Name (SBUF, ResourceTemplate ()
  30645. {
  30646. })
  30647. If ((PMID == Zero))
  30648. {
  30649. Return (RBUF) /* \_SB_.SAMB._CRS.RBUF */
  30650. }
  30651. ElseIf ((PMID == 0x03))
  30652. {
  30653. Return (WBUF) /* \_SB_.SAMB._CRS.WBUF */
  30654. }
  30655. Else
  30656. {
  30657. Return (SBUF) /* \_SB_.SAMB._CRS.SBUF */
  30658. }
  30659. }
  30660.  
  30661. Method (AMBC, 0, Serialized)
  30662. {
  30663. Name (AMBF, Package (0x0C)
  30664. {
  30665. Zero,
  30666. Zero,
  30667. Zero,
  30668. Zero,
  30669. Zero,
  30670. Zero,
  30671. Zero,
  30672. Zero,
  30673. Zero,
  30674. Zero,
  30675. Zero,
  30676. Zero
  30677. })
  30678. AMBF [Zero] = ABS0 /* External reference */
  30679. AMBF [One] = ABC0 /* External reference */
  30680. AMBF [0x02] = ABS1 /* External reference */
  30681. AMBF [0x03] = ABC1 /* External reference */
  30682. AMBF [0x04] = ABS2 /* External reference */
  30683. AMBF [0x05] = ABC2 /* External reference */
  30684. AMBF [0x06] = ABS3 /* External reference */
  30685. AMBF [0x07] = ABC3 /* External reference */
  30686. AMBF [0x08] = ABS4 /* External reference */
  30687. AMBF [0x09] = ABC4 /* External reference */
  30688. AMBF [0x0A] = ABS5 /* External reference */
  30689. AMBF [0x0B] = ABC5 /* External reference */
  30690. Return (AMBF) /* \_SB_.SAMB.AMBC.AMBF */
  30691. }
  30692.  
  30693. Method (AMTT, 0, Serialized)
  30694. {
  30695. Name (AMTF, Package (0x03)
  30696. {
  30697. Zero,
  30698. Zero,
  30699. Zero
  30700. })
  30701. If ((PMID == Zero))
  30702. {
  30703. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30704. {
  30705. \_SB.PCI0.I2C7.PMIC.GMP1 = Zero
  30706. \_SB.PCI0.I2C7.PMIC.GMP0 = Zero
  30707. \_SB.PCI0.I2C7.PMIC.GMP2 = Zero
  30708. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30709. {
  30710. AMTF [Zero] = \_SB.PCI0.I2C7.PMIC.TMP1 /* External reference */
  30711. AMTF [One] = \_SB.PCI0.I2C7.PMIC.TMP0 /* External reference */
  30712. AMTF [0x02] = \_SB.PCI0.I2C7.PMIC.TMP2 /* External reference */
  30713. Return (AMTF) /* \_SB_.SAMB.AMTT.AMTF */
  30714. }
  30715. Else
  30716. {
  30717. Return (Zero)
  30718. }
  30719. }
  30720. Else
  30721. {
  30722. Return (Zero)
  30723. }
  30724. }
  30725. ElseIf ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30726. {
  30727. \_SB.PCI0.I2C7.PMI5.GMP1 = Zero
  30728. \_SB.PCI0.I2C7.PMI5.GMP0 = Zero
  30729. \_SB.PCI0.I2C7.PMI5.GMP2 = Zero
  30730. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30731. {
  30732. AMTF [Zero] = \_SB.PCI0.I2C7.PMI5.TMP1 /* External reference */
  30733. AMTF [One] = \_SB.PCI0.I2C7.PMI5.TMP0 /* External reference */
  30734. AMTF [0x02] = \_SB.PCI0.I2C7.PMI5.TMP2 /* External reference */
  30735. Return (AMTF) /* \_SB_.SAMB.AMTT.AMTF */
  30736. }
  30737. Else
  30738. {
  30739. Return (Zero)
  30740. }
  30741. }
  30742. Else
  30743. {
  30744. Return (Zero)
  30745. }
  30746. }
  30747.  
  30748. Method (_INI, 0, NotSerialized) // _INI: Initialize
  30749. {
  30750. }
  30751.  
  30752. Method (_ATI, 1, Serialized)
  30753. {
  30754. If ((AMTE == One))
  30755. {
  30756. If ((Arg0 <= 0x0BA6))
  30757. {
  30758. If ((BDID == 0x0A))
  30759. {
  30760. PSA2 = 0x34
  30761. }
  30762. Else
  30763. {
  30764. PSA2 = 0x3D
  30765. }
  30766.  
  30767. PSA0 = 0x34
  30768. WAN1 = 0x28
  30769. }
  30770. ElseIf ((Arg0 <= 0x0BD8))
  30771. {
  30772. If ((BDID == 0x0A))
  30773. {
  30774. PSA2 = 0x35
  30775. }
  30776. Else
  30777. {
  30778. PSA2 = 0x3E
  30779. }
  30780.  
  30781. PSA0 = 0x35
  30782. WAN1 = 0x29
  30783. }
  30784. ElseIf ((Arg0 <= 0x0C0A))
  30785. {
  30786. If ((BDID == 0x0A))
  30787. {
  30788. PSA2 = 0x36
  30789. }
  30790. Else
  30791. {
  30792. PSA2 = 0x3F
  30793. }
  30794.  
  30795. PSA0 = 0x38
  30796. WAN1 = 0x2A
  30797. }
  30798. ElseIf ((BDID == 0x0A))
  30799. {
  30800. PSA2 = 0x37
  30801. }
  30802. Else
  30803. {
  30804. PSA2 = 0x40
  30805. }
  30806.  
  30807. Notify (\_SB.STR2, 0x91) // Device-Specific
  30808. Notify (\_SB.STR0, 0x91) // Device-Specific
  30809. Notify (\_SB.WWAN, 0x91) // Device-Specific
  30810. }
  30811. }
  30812.  
  30813. Method (AMBT, 0, Serialized)
  30814. {
  30815. Return (0x0AC0)
  30816. }
  30817.  
  30818. Method (TMPC, 0, Serialized)
  30819. {
  30820. If (CondRefOf (\_SB.STR0._TMP, Local0))
  30821. {
  30822. Return (\_SB.STR0._TMP ())
  30823. }
  30824. Else
  30825. {
  30826. Return (Zero)
  30827. }
  30828. }
  30829.  
  30830. Method (TMPH, 0, Serialized)
  30831. {
  30832. If (CondRefOf (\_SB.STR2._TMP, Local0))
  30833. {
  30834. Return (\_SB.STR2._TMP ())
  30835. }
  30836. Else
  30837. {
  30838. Return (Zero)
  30839. }
  30840. }
  30841.  
  30842. Name (PATC, 0x02)
  30843. Method (PAT0, 1, Serialized)
  30844. {
  30845. If ((PMID == Zero))
  30846. {
  30847. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30848. {
  30849. \_SB.PCI0.I2C7.PMIC.AX10 = Arg0
  30850. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30851. {
  30852. \_SB.PCI0.I2C7.PMIC.GX10 = One
  30853. }
  30854.  
  30855. \_SB.PCI0.I2C7.PMIC.PEN1 = Zero
  30856. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30857. {
  30858. \_SB.PCI0.I2C7.PMIC.GEN1 = One
  30859. }
  30860. }
  30861. }
  30862. ElseIf ((PMID == 0x03))
  30863. {
  30864. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30865. {
  30866. \_SB.PCI0.I2C7.PMI5.AX10 = Arg0
  30867. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30868. {
  30869. \_SB.PCI0.I2C7.PMI5.GX10 = One
  30870. }
  30871.  
  30872. \_SB.PCI0.I2C7.PMI5.PEN1 = Zero
  30873. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30874. {
  30875. \_SB.PCI0.I2C7.PMI5.GEN1 = One
  30876. }
  30877. }
  30878. }
  30879. }
  30880.  
  30881. Method (PAT1, 1, Serialized)
  30882. {
  30883. If ((PMID == Zero))
  30884. {
  30885. If ((\_SB.PCI0.I2C7.PMIC.AVBD == One))
  30886. {
  30887. \_SB.PCI0.I2C7.PMIC.AX11 = Arg0
  30888. If ((\_SB.PCI0.I2C7.PMIC.AVBG == One))
  30889. {
  30890. \_SB.PCI0.I2C7.PMIC.GX11 = One
  30891. }
  30892. }
  30893. }
  30894. ElseIf ((PMID == 0x03))
  30895. {
  30896. If ((\_SB.PCI0.I2C7.PMI5.AVBD == One))
  30897. {
  30898. \_SB.PCI0.I2C7.PMI5.AX11 = Arg0
  30899. If ((\_SB.PCI0.I2C7.PMI5.AVBG == One))
  30900. {
  30901. \_SB.PCI0.I2C7.PMI5.GX11 = One
  30902. }
  30903. }
  30904. }
  30905. }
  30906.  
  30907. Method (SDBG, 0, NotSerialized)
  30908. {
  30909. Return (PDBG) /* External reference */
  30910. }
  30911. }
  30912.  
  30913. Device (VIR1)
  30914. {
  30915. Name (_HID, EisaId ("INT3409")) // _HID: Hardware ID
  30916. Name (_UID, "VIR1") // _UID: Unique ID
  30917. Name (PTYP, 0x15)
  30918. Name (_STR, Unicode ("Virtual Sensor 1")) // _STR: Description String
  30919. Method (_STA, 0, NotSerialized) // _STA: Status
  30920. {
  30921. If (((BDID == 0x09) || (BDID == 0x0A)))
  30922. {
  30923. Return (0x0F)
  30924. }
  30925. Else
  30926. {
  30927. Return (Zero)
  30928. }
  30929. }
  30930.  
  30931. Name (LSTM, Zero)
  30932. Method (_DTI, 1, Serialized) // _DTI: Device Temperature Indication
  30933. {
  30934. If ((AMTE == One))
  30935. {
  30936. If ((Arg0 <= 0x0BA6))
  30937. {
  30938. PSA0 = 0x34
  30939. PSA2 = 0x3D
  30940. WAN1 = 0x28
  30941. }
  30942. ElseIf ((Arg0 <= 0x0BD8))
  30943. {
  30944. PSA0 = 0x35
  30945. PSA2 = 0x3E
  30946. WAN1 = 0x29
  30947. }
  30948. ElseIf ((Arg0 <= 0x0C0A))
  30949. {
  30950. PSA0 = 0x38
  30951. PSA2 = 0x3F
  30952. WAN1 = 0x2A
  30953. }
  30954. Else
  30955. {
  30956. PSA0 = 0x39
  30957. PSA2 = 0x40
  30958. WAN1 = 0x2B
  30959. }
  30960.  
  30961. Notify (\_SB.STR2, 0x91) // Device-Specific
  30962. Notify (\_SB.STR0, 0x91) // Device-Specific
  30963. Notify (\_SB.WWAN, 0x91) // Device-Specific
  30964. }
  30965. }
  30966.  
  30967. Method (_NTT, 0, NotSerialized) // _NTT: Notification Temperature Threshold
  30968. {
  30969. Return (0x32)
  30970. }
  30971.  
  30972. Name (VSCT, Package (0x02)
  30973. {
  30974. One,
  30975. Package (0x03)
  30976. {
  30977. Package (0x07)
  30978. {
  30979. \_SB.STR0,
  30980. 0x0E,
  30981. Zero,
  30982. 0x012C,
  30983. Zero,
  30984. 0x03E8,
  30985. Zero
  30986. },
  30987.  
  30988. Package (0x07)
  30989. {
  30990. \_SB.STR1,
  30991. 0x0E,
  30992. Zero,
  30993. 0x012C,
  30994. Zero,
  30995. 0x03E8,
  30996. 0x0CA0
  30997. },
  30998.  
  30999. Package (0x07)
  31000. {
  31001. \_SB.STR2,
  31002. 0x0E,
  31003. Zero,
  31004. 0x012C,
  31005. Zero,
  31006. 0x03E8,
  31007. Zero
  31008. }
  31009. }
  31010. })
  31011. Name (VSPT, Package (0x02)
  31012. {
  31013. One,
  31014. Package (0x01)
  31015. {
  31016. Package (0x02)
  31017. {
  31018. 0x0E93,
  31019. 0x0258
  31020. }
  31021. }
  31022. })
  31023. Method (_AC0, 0, Serialized) // _ACx: Active Cooling
  31024. {
  31025. Local1 = Zero
  31026. If ((LSTM >= Local1))
  31027. {
  31028. Return ((Local1 - 0x14))
  31029. }
  31030. Else
  31031. {
  31032. Return (Local1)
  31033. }
  31034. }
  31035.  
  31036. Method (_AC1, 0, Serialized) // _ACx: Active Cooling
  31037. {
  31038. Return ((_AC0 () - 0x28))
  31039. }
  31040.  
  31041. Method (_AC2, 0, Serialized) // _ACx: Active Cooling
  31042. {
  31043. Return ((_AC0 () - 0x50))
  31044. }
  31045.  
  31046. Method (_AC3, 0, Serialized) // _ACx: Active Cooling
  31047. {
  31048. Return ((_AC0 () - 0x78))
  31049. }
  31050.  
  31051. Method (_AC4, 0, Serialized) // _ACx: Active Cooling
  31052. {
  31053. Return ((_AC0 () - 0xA0))
  31054. }
  31055.  
  31056. Method (_AC5, 0, Serialized) // _ACx: Active Cooling
  31057. {
  31058. Return ((_AC0 () - 0xC8))
  31059. }
  31060.  
  31061. Method (_AC6, 0, Serialized) // _ACx: Active Cooling
  31062. {
  31063. Return ((_AC0 () - 0xF0))
  31064. }
  31065.  
  31066. Method (_AC7, 0, Serialized) // _ACx: Active Cooling
  31067. {
  31068. Return ((_AC0 () - 0x0118))
  31069. }
  31070.  
  31071. Method (_AC8, 0, Serialized) // _ACx: Active Cooling
  31072. {
  31073. Return ((_AC0 () - 0x0140))
  31074. }
  31075.  
  31076. Method (_AC9, 0, Serialized) // _ACx: Active Cooling
  31077. {
  31078. Return ((_AC0 () - 0x0168))
  31079. }
  31080.  
  31081. Method (_PSV, 0, Serialized) // _PSV: Passive Temperature
  31082. {
  31083. }
  31084.  
  31085. Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
  31086. {
  31087. }
  31088.  
  31089. Method (_CR3, 0, Serialized) // _CR3: Warm/Standby Temperature
  31090. {
  31091. }
  31092.  
  31093. Method (_HOT, 0, Serialized) // _HOT: Hot Temperature
  31094. {
  31095. }
  31096.  
  31097. Method (_SCP, 3, Serialized) // _SCP: Set Cooling Policy
  31098. {
  31099. If (((Arg0 == Zero) || (Arg0 == One)))
  31100. {
  31101. CTYP = Arg0
  31102. Notify (\_SB.VIR1, 0x91) // Device-Specific
  31103. }
  31104. }
  31105.  
  31106. Name (VERS, Zero)
  31107. Name (CTYP, Zero)
  31108. Name (ALMT, Zero)
  31109. Name (PLMT, Zero)
  31110. Name (WKLD, Zero)
  31111. Name (DSTA, Zero)
  31112. Name (RES1, Zero)
  31113. Method (DSCP, 7, Serialized)
  31114. {
  31115. Name (CHNG, Zero)
  31116. If ((Arg0 != Zero))
  31117. {
  31118. Return (Zero)
  31119. }
  31120.  
  31121. If (((Arg1 == Zero) || (Arg1 == One)))
  31122. {
  31123. If ((Arg1 != CTYP))
  31124. {
  31125. CHNG = One
  31126. CTYP = Arg1
  31127. }
  31128. }
  31129.  
  31130. If (((Arg1 >= Zero) || (Arg1 <= 0x05)))
  31131. {
  31132. If ((Arg2 != ALMT))
  31133. {
  31134. CHNG = One
  31135. ALMT = Arg2
  31136. }
  31137. }
  31138.  
  31139. If (((Arg1 >= Zero) || (Arg1 <= 0x05)))
  31140. {
  31141. If ((Arg3 != PLMT))
  31142. {
  31143. CHNG = One
  31144. PLMT = Arg3
  31145. }
  31146. }
  31147.  
  31148. If ((Arg4 != WKLD))
  31149. {
  31150. CHNG = One
  31151. WKLD = Arg4
  31152. }
  31153.  
  31154. If ((Arg5 != DSTA))
  31155. {
  31156. CHNG = One
  31157. DSTA = Arg5
  31158. }
  31159.  
  31160. If ((Arg6 != RES1))
  31161. {
  31162. CHNG = One
  31163. RES1 = Arg6
  31164. }
  31165.  
  31166. If (CHNG)
  31167. {
  31168. Notify (\_SB.VIR1, 0x91) // Device-Specific
  31169. }
  31170. }
  31171. }
  31172.  
  31173. Device (TDSP)
  31174. {
  31175. Name (_HID, EisaId ("INT3406") /* Intel Dynamic Platform & Thermal Framework Display Participant */) // _HID: Hardware ID
  31176. Method (_STA, 0, NotSerialized) // _STA: Status
  31177. {
  31178. If ((DDSP == Zero))
  31179. {
  31180. Return (Zero)
  31181. }
  31182.  
  31183. Return (0x0F)
  31184. }
  31185.  
  31186. Method (DDDL, 0, NotSerialized)
  31187. {
  31188. BDLI = DPLL /* External reference */
  31189. Return (BDLI) /* \BDLI */
  31190. }
  31191.  
  31192. Method (DDPC, 0, NotSerialized)
  31193. {
  31194. BDHI = DPHL /* External reference */
  31195. Return (BDHI) /* \BDHI */
  31196. }
  31197.  
  31198. Method (_BCL, 0, NotSerialized) // _BCL: Brightness Control Levels
  31199. {
  31200. Return (Package (0x0C)
  31201. {
  31202. 0x50,
  31203. 0x32,
  31204. 0x0A,
  31205. 0x14,
  31206. 0x1E,
  31207. 0x28,
  31208. 0x32,
  31209. 0x3C,
  31210. 0x46,
  31211. 0x50,
  31212. 0x5A,
  31213. 0x64
  31214. })
  31215. }
  31216.  
  31217. Method (_BCM, 1, NotSerialized) // _BCM: Brightness Control Method
  31218. {
  31219. If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
  31220. {
  31221. \_SB.PCI0.GFX0.DD01._BCM (Arg0)
  31222. }
  31223. }
  31224.  
  31225. Method (_BQC, 0, NotSerialized) // _BQC: Brightness Query Current
  31226. {
  31227. Return (\_SB.PCI0.GFX0.DD01._BQC) /* External reference */
  31228. }
  31229.  
  31230. Method (_DCS, 0, NotSerialized) // _DCS: Display Current Status
  31231. {
  31232. Return (\_SB.PCI0.GFX0.DD01._DCS) /* External reference */
  31233. }
  31234.  
  31235. Method (SDBG, 0, NotSerialized)
  31236. {
  31237. Return (PDBG) /* External reference */
  31238. }
  31239. }
  31240.  
  31241. Device (TCHG)
  31242. {
  31243. Name (_HID, EisaId ("INT3403") /* DPTF Temperature Sensor */) // _HID: Hardware ID
  31244. Name (_UID, 0x04) // _UID: Unique ID
  31245. Name (PTYP, 0x0B)
  31246. Name (_STR, Unicode ("Intel DPTF Charger Participant")) // _STR: Description String
  31247. Name (RDEP, Package (0x02)
  31248. {
  31249. \_SB.PCI0.I2C1,
  31250. \_SB.PCI0.I2C1.BATC
  31251. })
  31252. Name (ODEP, Package (0x02)
  31253. {
  31254. \_SB.PCI0.I2C1,
  31255. \_SB.PCI0.I2C1.BATC
  31256. })
  31257. Name (FDEP, Package (0x03)
  31258. {
  31259. \_SB.PCI0.I2C7,
  31260. \_SB.PCI0.I2C7.PMI5,
  31261. \_SB.PCI0.I2C7.BATC
  31262. })
  31263. Name (TDEP, Package (0x02)
  31264. {
  31265. \_SB.PCI0.I2C3,
  31266. \_SB.PCI0.I2C3.TIDR
  31267. })
  31268. Method (_STA, 0, NotSerialized) // _STA: Status
  31269. {
  31270. If ((CHGR == Zero))
  31271. {
  31272. Return (Zero)
  31273. }
  31274.  
  31275. Return (0x0F)
  31276. }
  31277.  
  31278. Name (HPSS, Package (0x08)
  31279. {
  31280. Package (0x08)
  31281. {
  31282. Zero,
  31283. Zero,
  31284. Zero,
  31285. Zero,
  31286. Zero,
  31287. 0x9C,
  31288. "mA",
  31289. Zero
  31290. },
  31291.  
  31292. Package (0x08)
  31293. {
  31294. Zero,
  31295. Zero,
  31296. Zero,
  31297. Zero,
  31298. One,
  31299. 0x80,
  31300. "mA",
  31301. Zero
  31302. },
  31303.  
  31304. Package (0x08)
  31305. {
  31306. Zero,
  31307. Zero,
  31308. Zero,
  31309. Zero,
  31310. 0x02,
  31311. 0x60,
  31312. "mA",
  31313. Zero
  31314. },
  31315.  
  31316. Package (0x08)
  31317. {
  31318. Zero,
  31319. Zero,
  31320. Zero,
  31321. Zero,
  31322. 0x03,
  31323. 0x40,
  31324. "mA",
  31325. Zero
  31326. },
  31327.  
  31328. Package (0x08)
  31329. {
  31330. Zero,
  31331. Zero,
  31332. Zero,
  31333. Zero,
  31334. 0x04,
  31335. 0x30,
  31336. "mA",
  31337. Zero
  31338. },
  31339.  
  31340. Package (0x08)
  31341. {
  31342. Zero,
  31343. Zero,
  31344. Zero,
  31345. Zero,
  31346. 0x05,
  31347. 0x18,
  31348. "mA",
  31349. Zero
  31350. },
  31351.  
  31352. Package (0x08)
  31353. {
  31354. Zero,
  31355. Zero,
  31356. Zero,
  31357. Zero,
  31358. 0x06,
  31359. 0x10,
  31360. "mA",
  31361. Zero
  31362. },
  31363.  
  31364. Package (0x08)
  31365. {
  31366. Zero,
  31367. Zero,
  31368. Zero,
  31369. Zero,
  31370. 0x07,
  31371. Zero,
  31372. "mA",
  31373. Zero
  31374. }
  31375. })
  31376. Name (CPSS, Package (0x05)
  31377. {
  31378. Package (0x08)
  31379. {
  31380. Zero,
  31381. Zero,
  31382. Zero,
  31383. Zero,
  31384. Zero,
  31385. 0x08,
  31386. "mA",
  31387. Zero
  31388. },
  31389.  
  31390. Package (0x08)
  31391. {
  31392. Zero,
  31393. Zero,
  31394. Zero,
  31395. Zero,
  31396. One,
  31397. 0x05,
  31398. "mA",
  31399. Zero
  31400. },
  31401.  
  31402. Package (0x08)
  31403. {
  31404. Zero,
  31405. Zero,
  31406. Zero,
  31407. Zero,
  31408. 0x02,
  31409. 0x05,
  31410. "mA",
  31411. Zero
  31412. },
  31413.  
  31414. Package (0x08)
  31415. {
  31416. Zero,
  31417. Zero,
  31418. Zero,
  31419. Zero,
  31420. 0x03,
  31421. 0x05,
  31422. "mA",
  31423. Zero
  31424. },
  31425.  
  31426. Package (0x08)
  31427. {
  31428. Zero,
  31429. Zero,
  31430. Zero,
  31431. Zero,
  31432. 0x04,
  31433. 0x05,
  31434. "mA",
  31435. Zero
  31436. }
  31437. })
  31438. Method (PPSS, 0, NotSerialized)
  31439. {
  31440. If ((BDID == 0x0A))
  31441. {
  31442. Return (HPSS) /* \_SB_.TCHG.HPSS */
  31443. }
  31444. Else
  31445. {
  31446. Return (CPSS) /* \_SB_.TCHG.CPSS */
  31447. }
  31448. }
  31449.  
  31450. Method (PPPC, 0, NotSerialized)
  31451. {
  31452. If ((BDID == 0x0A))
  31453. {
  31454. Local2 = SizeOf (HPSS)
  31455. }
  31456. Else
  31457. {
  31458. Local2 = SizeOf (CPSS)
  31459. }
  31460.  
  31461. Local2--
  31462. If ((BDID == 0x08))
  31463. {
  31464. If ((\_SB.PCI0.I2C7.PMI5.SRCD == Zero))
  31465. {
  31466. ADBG ("PSR DPTF DC", ADBG (Local2, Return (Local2), Else
  31467. {
  31468. ADBG ("PSR DPTF AC", Return (Zero), ElseIf ((\_SB.ADP1._PSR == Zero))
  31469. {
  31470. ADBG ("PSR DPTF DC", ADBG (Local2, Return (Local2), Else
  31471. {
  31472. ADBG ("PSR DPTF AC", Return (Zero))
  31473. }))
  31474. })
  31475. }))
  31476. }
  31477. }
  31478. }
  31479.  
  31480. Method (SPPC, 1, NotSerialized)
  31481. {
  31482. ADBG ("SPPC ..", If ((BDID == 0x0A))
  31483. {
  31484. Local2 = SizeOf (HPSS)
  31485. }, Else
  31486. {
  31487. Local2 = SizeOf (CPSS)
  31488. })
  31489. Local2--
  31490. If (((Arg0 >= Zero) && (Arg0 <= Local2)))
  31491. {
  31492. If ((BDID == 0x0A))
  31493. {
  31494. Local1 = DerefOf (DerefOf (HPSS [Arg0]) [0x05])
  31495. }
  31496. Else
  31497. {
  31498. Local1 = DerefOf (DerefOf (CPSS [Arg0]) [0x05])
  31499. }
  31500.  
  31501. If ((BDID == One))
  31502. {
  31503. If ((PMID == One))
  31504. {
  31505. \_SB.PCI0.I2C3.TIDR.BCCC = Local1
  31506. ADBG ("SPPC BDID 1 TI", If ((Arg0 < Local2))
  31507. {
  31508. \_SB.PCI0.I2C3.TIDR.BCCE = One
  31509. }, If ((Arg0 == Local2))
  31510. {
  31511. \_SB.PCI0.I2C3.TIDR.BCCE = Zero
  31512. })
  31513. Notify (\_SB.PCI0.I2C3.TIDR, 0x86) // Device-Specific
  31514. }
  31515.  
  31516. If ((PMID == 0x02))
  31517. {
  31518. \_SB.PCI0.I2C7.BMDR.BCCC = Local1
  31519. ADBG ("SPPC BDID 1 XPWR", If ((Arg0 < Local2))
  31520. {
  31521. \_SB.PCI0.I2C7.BMDR.BCCE = One
  31522. }, If ((Arg0 == Local2))
  31523. {
  31524. \_SB.PCI0.I2C7.BMDR.BCCE = Zero
  31525. })
  31526. Notify (\_SB.PCI0.I2C7.BMDR, 0x86) // Device-Specific
  31527. }
  31528. }
  31529. ElseIf ((BDID == 0x08))
  31530. {
  31531. \_SB.PCI0.I2C7.BATC.BCCC = Local1
  31532. If ((Arg0 < Local2))
  31533. {
  31534. \_SB.PCI0.I2C7.BATC.BCCE = One
  31535. }
  31536.  
  31537. If ((Arg0 == Local2))
  31538. {
  31539. \_SB.PCI0.I2C7.BATC.BCCE = Zero
  31540. }
  31541.  
  31542. Notify (\_SB.PCI0.I2C7.BATC, 0x80) // Status Change
  31543. }
  31544. ElseIf (((BDID == 0x09) || (BDID == 0x0A)))
  31545. {
  31546. \_SB.PCI0.I2C7.WIDR.BCCC = Local1
  31547. If ((Arg0 < Local2))
  31548. {
  31549. \_SB.PCI0.I2C7.WIDR.BCCE = One
  31550. }
  31551.  
  31552. If ((Arg0 == Local2))
  31553. {
  31554. \_SB.PCI0.I2C7.WIDR.BCCE = Zero
  31555. }
  31556.  
  31557. Notify (\_SB.PCI0.I2C7.WIDR, 0x86) // Device-Specific
  31558. }
  31559. Else
  31560. {
  31561. ADBG ("SPPC BDID ", \_SB.PCI0.I2C1.BATC.BCCC = Local1, If ((Arg0 < Local2))
  31562. {
  31563. \_SB.PCI0.I2C1.BATC.BCCE = One
  31564. })
  31565. If ((Arg0 == Local2))
  31566. {
  31567. \_SB.PCI0.I2C1.BATC.BCCE = Zero
  31568. }
  31569.  
  31570. Notify (\_SB.PCI0.I2C1.BATC, 0x80) // Status Change
  31571. }
  31572. }
  31573. }
  31574.  
  31575. Method (SDBG, 0, NotSerialized)
  31576. {
  31577. Return (PDBG) /* External reference */
  31578. }
  31579. }
  31580.  
  31581. Device (WWAN)
  31582. {
  31583. Name (_HID, EisaId ("INT3408")) // _HID: Hardware ID
  31584. Name (_UID, Zero) // _UID: Unique ID
  31585. Name (_STR, Unicode ("Intel DPTF WWAN Participant")) // _STR: Description String
  31586. Name (PTYP, 0x0F)
  31587. Method (_STA, 0, NotSerialized) // _STA: Status
  31588. {
  31589. If (((WWEN == Zero) || (BDID == One)))
  31590. {
  31591. Return (Zero)
  31592. }
  31593.  
  31594. Return (0x0F)
  31595. }
  31596.  
  31597. Method (_PSV, 0, Serialized) // _PSV: Passive Temperature
  31598. {
  31599. Name (MAXV, Zero)
  31600. If ((WAN1 >= MAXV))
  31601. {
  31602. MAXV = WAN1 /* \WAN1 */
  31603. }
  31604.  
  31605. If ((\_SB.WPPT >= MAXV))
  31606. {
  31607. MAXV = \_SB.WPPT /* External reference */
  31608. }
  31609.  
  31610. Return (\_SB.DPTF.CTOK (MAXV))
  31611. }
  31612.  
  31613. Method (_CRT, 0, Serialized) // _CRT: Critical Temperature
  31614. {
  31615. Return (\_SB.DPTF.CTOK (WCR0))
  31616. }
  31617.  
  31618. Method (_HOT, 0, Serialized) // _HOT: Hot Temperature
  31619. {
  31620. Return (\_SB.DPTF.CTOK ((WCR0 - 0x03)))
  31621. }
  31622.  
  31623. Name (LWAN, Zero)
  31624. Method (_DTI, 1, NotSerialized) // _DTI: Device Temperature Indication
  31625. {
  31626. LWAN = Arg0
  31627. Notify (WWAN, 0x91) // Device-Specific
  31628. }
  31629.  
  31630. Method (SDBG, 0, NotSerialized)
  31631. {
  31632. Return (PDBG) /* External reference */
  31633. }
  31634.  
  31635. Name (GTSH, 0x14)
  31636. Method (_NTT, 0, NotSerialized) // _NTT: Notification Temperature Threshold
  31637. {
  31638. Return (0x0ADE)
  31639. }
  31640.  
  31641. Name (PPSS, Package (0x02)
  31642. {
  31643. Package (0x08)
  31644. {
  31645. 0x64,
  31646. Zero,
  31647. Zero,
  31648. One,
  31649. Zero,
  31650. Zero,
  31651. "MHz",
  31652. Zero
  31653. },
  31654.  
  31655. Package (0x08)
  31656. {
  31657. Zero,
  31658. Zero,
  31659. Zero,
  31660. One,
  31661. One,
  31662. Zero,
  31663. "MHz",
  31664. Zero
  31665. }
  31666. })
  31667. Method (PPPC, 0, NotSerialized)
  31668. {
  31669. Return (Zero)
  31670. }
  31671.  
  31672. Method (PPDL, 0, NotSerialized)
  31673. {
  31674. Local2 = SizeOf (PPSS)
  31675. Local2--
  31676. Return (Local2)
  31677. }
  31678. }
  31679. }
  31680. }
  31681.  
  31682. /*
  31683. * Intel ACPI Component Architecture
  31684. * AML/ASL+ Disassembler version 20160108-64
  31685. * Copyright (c) 2000 - 2016 Intel Corporation
  31686. *
  31687. * Disassembling to symbolic ASL+ operators
  31688. *
  31689. * Disassembly of SSDT2.dat, Mon Sep 12 10:24:46 2016
  31690. *
  31691. * Original Table Header:
  31692. * Signature "SSDT"
  31693. * Length 0x00000654 (1620)
  31694. * Revision 0x01
  31695. * Checksum 0x44
  31696. * OEM ID "CpuDpf"
  31697. * OEM Table ID "CpuDptf"
  31698. * OEM Revision 0x00001000 (4096)
  31699. * Compiler ID "INTL"
  31700. * Compiler Version 0x20120913 (538052883)
  31701. */
  31702. DefinitionBlock ("SSDT2.aml", "SSDT", 1, "CpuDpf", "CpuDptf", 0x00001000)
  31703. {
  31704. /*
  31705. * iASL Warning: There were 1 external control methods found during
  31706. * disassembly, but additional ACPI tables to resolve these externals
  31707. * were not specified. This resulting disassembler output file may not
  31708. * compile because the disassembler did not know how many arguments
  31709. * to assign to these methods. To specify the tables needed to resolve
  31710. * external control method references, the -e option can be used to
  31711. * specify the filenames. Note: SSDTs can be dynamically loaded at
  31712. * runtime and may or may not be available via the host OS.
  31713. * Example iASL invocations:
  31714. * iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
  31715. * iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
  31716. * iasl -e ssdt*.aml -d dsdt.aml
  31717. *
  31718. * In addition, the -fe option can be used to specify a file containing
  31719. * control method external declarations with the associated method
  31720. * argument counts. Each line of the file must be of the form:
  31721. * External (<method pathname>, MethodObj, <argument count>)
  31722. * Invocation:
  31723. * iasl -fe refs.txt -d dsdt.aml
  31724. *
  31725. * The following methods were unresolved and many not compile properly
  31726. * because the disassembler had to guess at the number of arguments
  31727. * required for each:
  31728. */
  31729. External (ACTT, MethodObj) // Warning: Unresolved method, guessing 0 arguments
  31730.  
  31731. External (_PR_.CPU0, UnknownObj)
  31732. External (_PR_.CPU0._PPC, UnknownObj)
  31733. External (_PR_.CPU0._PSS, IntObj)
  31734. External (_PR_.CPU0._PTC, IntObj)
  31735. External (_PR_.CPU0._TDL, IntObj)
  31736. External (_PR_.CPU0._TPC, IntObj)
  31737. External (_PR_.CPU0._TSD, IntObj)
  31738. External (_PR_.CPU0._TSS, IntObj)
  31739. External (_PR_.CPU1, UnknownObj)
  31740. External (_PR_.CPU2, UnknownObj)
  31741. External (_PR_.CPU3, UnknownObj)
  31742. External (_SB_.ADP1._PSR, UnknownObj)
  31743. External (_SB_.DPTF.CTOK, IntObj)
  31744. External (_SB_.MBID, UnknownObj)
  31745. External (_SB_.PAGD, UnknownObj)
  31746. External (_SB_.PAGD.IDCN, UnknownObj)
  31747. External (_SB_.PCI0, DeviceObj)
  31748. External (_SB_.PCI0.I2C1, UnknownObj)
  31749. External (_SB_.PCI0.I2C7.PMI5.SRCD, UnknownObj)
  31750. External (BDID, UnknownObj)
  31751. External (DLPO, UnknownObj)
  31752. External (DPSR, UnknownObj)
  31753. External (PDBG, IntObj)
  31754.  
  31755. Scope (\_SB.PCI0)
  31756. {
  31757. Device (PNIT)
  31758. {
  31759. Name (_ADR, 0x000B0000) // _ADR: Address
  31760. Name (CTYP, Zero)
  31761. Name (_DEP, Package (0x02) // _DEP: Dependencies
  31762. {
  31763. \_SB.MBID,
  31764. \_SB.PCI0.I2C1
  31765. })
  31766. Name (CINT, 0x04)
  31767. Name (LSTM, Zero)
  31768. Name (MED4, 0xE00000D4)
  31769. Name (MED0, 0xE00000D0)
  31770. Name (AEXL, Package (0x04)
  31771. {
  31772. "Svchost.exe",
  31773. "dllhost.exe",
  31774. "smss.exe",
  31775. "WinSAT.exe"
  31776. })
  31777. Name (PPCC, Package (0x02)
  31778. {
  31779. 0x02,
  31780. Package (0x06)
  31781. {
  31782. Zero,
  31783. 0x03E8,
  31784. 0x1770,
  31785. 0x03E8,
  31786. 0x03E8,
  31787. 0xFA
  31788. }
  31789. })
  31790. Name (CLPO, Package (0x06)
  31791. {
  31792. One,
  31793. Zero,
  31794. One,
  31795. 0x19,
  31796. 0x02,
  31797. 0x02
  31798. })
  31799. Method (_INI, 0, NotSerialized) // _INI: Initialize
  31800. {
  31801. CLPO [One] = DerefOf (DLPO [One])
  31802. CLPO [0x02] = DerefOf (DLPO [0x02])
  31803. CLPO [0x03] = DerefOf (DLPO [0x03])
  31804. }
  31805.  
  31806. Method (_STA, 0, NotSerialized) // _STA: Status
  31807. {
  31808. If ((DPSR == Zero))
  31809. {
  31810. Return (Zero)
  31811. }
  31812.  
  31813. Return (0x0F)
  31814. }
  31815.  
  31816. OperationRegion (SOCP, 0x8E, Zero, 0x04)
  31817. Field (SOCP, DWordAcc, NoLock, Preserve)
  31818. {
  31819. DDRT, 32
  31820. }
  31821.  
  31822. Name (AVBD, Zero)
  31823. Method (_REG, 2, NotSerialized) // _REG: Region Availability
  31824. {
  31825. If ((Arg0 == 0x8E))
  31826. {
  31827. AVBD = Arg1
  31828. }
  31829. }
  31830.  
  31831. Method (MBIW, 4, Serialized)
  31832. {
  31833. MED4 = Arg3
  31834. If ((Arg2 == Zero))
  31835. {
  31836. Local1 = 0x10
  31837. }
  31838. ElseIf ((Arg2 == One))
  31839. {
  31840. Local1 = 0x30
  31841. }
  31842. Else
  31843. {
  31844. Local1 = 0xF0
  31845. }
  31846.  
  31847. Local0 = ((Arg0 << 0x10) | (Arg1 << 0x08))
  31848. Local0 |= Local1
  31849. Local0 |= 0x11000000
  31850. MED0 = Local0
  31851. }
  31852.  
  31853. Method (MBIR, 4, Serialized)
  31854. {
  31855. If ((Arg2 == Zero))
  31856. {
  31857. Local1 = 0x10
  31858. }
  31859. ElseIf ((Arg2 == One))
  31860. {
  31861. Local1 = 0x30
  31862. }
  31863. Else
  31864. {
  31865. Local1 = 0xF0
  31866. }
  31867.  
  31868. Local0 = ((Arg0 << 0x10) | (Arg1 << 0x08))
  31869. Local0 |= Local1
  31870. Local0 |= 0x10000000
  31871. MED0 = Local0
  31872. Arg3 = MED4 /* \_SB_.PCI0.PNIT.MED4 */
  31873. }
  31874.  
  31875. Method (_PPC, 0, NotSerialized) // _PPC: Performance Present Capabilities
  31876. {
  31877. Debug = "cpudptf: _PPC Called"
  31878. Return (Zero)
  31879. }
  31880.  
  31881. Method (SPPC, 1, Serialized)
  31882. {
  31883. Debug = "cpudptf: SPPC Called"
  31884. \_PR.CPU0._PPC = Arg0
  31885. Notify (\_PR.CPU0, 0x80) // Status Change
  31886. Notify (\_PR.CPU1, 0x80) // Status Change
  31887. Notify (\_PR.CPU2, 0x80) // Status Change
  31888. Notify (\_PR.CPU3, 0x80) // Status Change
  31889. Return (Zero)
  31890. }
  31891.  
  31892. Name (PURE, One)
  31893. Method (SPUR, 1, Serialized)
  31894. {
  31895. Name (_DEP, Package (0x01) // _DEP: Dependencies
  31896. {
  31897. \_SB.PAGD
  31898. })
  31899. \_SB.PAGD.IDCN = Arg0
  31900. Notify (\_SB.PAGD, 0x80) // Status Change
  31901. Return (Zero)
  31902. }
  31903.  
  31904. Method (_DTI, 1, NotSerialized) // _DTI: Device Temperature Indication
  31905. {
  31906. LSTM = Arg0
  31907. }
  31908.  
  31909. Method (_NTT, 0, NotSerialized) // _NTT: Notification Temperature Threshold
  31910. {
  31911. Return (0x0ADE)
  31912. }
  31913.  
  31914. Method (_PSS, 0, NotSerialized) // _PSS: Performance Supported States
  31915. {
  31916. Debug = "cpudptf: _PSS Called"
  31917. If (CondRefOf (\_PR.CPU0._PSS, Local0))
  31918. {
  31919. Return (\_PR.CPU0._PSS) /* External reference */
  31920. }
  31921. Else
  31922. {
  31923. Return (Package (0x01)
  31924. {
  31925. Package (0x06)
  31926. {
  31927. Zero,
  31928. Zero,
  31929. Zero,
  31930. Zero,
  31931. Zero,
  31932. Zero
  31933. }
  31934. })
  31935. }
  31936.  
  31937. Return (Package (0x01)
  31938. {
  31939. Package (0x06)
  31940. {
  31941. Zero,
  31942. Zero,
  31943. Zero,
  31944. Zero,
  31945. Zero,
  31946. Zero
  31947. }
  31948. })
  31949. }
  31950.  
  31951. Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States
  31952. {
  31953. Debug = "cpudptf: _TSS Called"
  31954. If (CondRefOf (\_PR.CPU0._TSS, Local0))
  31955. {
  31956. Return (\_PR.CPU0._TSS) /* External reference */
  31957. }
  31958. Else
  31959. {
  31960. Return (Package (0x01)
  31961. {
  31962. Package (0x05)
  31963. {
  31964. Zero,
  31965. Zero,
  31966. Zero,
  31967. Zero,
  31968. Zero
  31969. }
  31970. })
  31971. }
  31972.  
  31973. Return (Package (0x01)
  31974. {
  31975. Package (0x05)
  31976. {
  31977. Zero,
  31978. Zero,
  31979. Zero,
  31980. Zero,
  31981. Zero
  31982. }
  31983. })
  31984. }
  31985.  
  31986. Method (_TPC, 0, NotSerialized) // _TPC: Throttling Present Capabilities
  31987. {
  31988. Debug = "cpudptf: _TPC Called"
  31989. If (CondRefOf (\_PR.CPU0._TPC, Local0))
  31990. {
  31991. Return (\_PR.CPU0._TPC) /* External reference */
  31992. }
  31993. Else
  31994. {
  31995. Return (Zero)
  31996. }
  31997.  
  31998. Return (Zero)
  31999. }
  32000.  
  32001. Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control
  32002. {
  32003. Debug = "cpudptf: _PTC Called"
  32004. If (CondRefOf (\_PR.CPU0._PTC, Local0))
  32005. {
  32006. Return (\_PR.CPU0._PTC) /* External reference */
  32007. }
  32008. Else
  32009. {
  32010. Return (Package (0x02)
  32011. {
  32012. ResourceTemplate ()
  32013. {
  32014. Register (FFixedHW,
  32015. 0x00, // Bit Width
  32016. 0x00, // Bit Offset
  32017. 0x0000000000000000, // Address
  32018. ,)
  32019. },
  32020.  
  32021. ResourceTemplate ()
  32022. {
  32023. Register (FFixedHW,
  32024. 0x00, // Bit Width
  32025. 0x00, // Bit Offset
  32026. 0x0000000000000000, // Address
  32027. ,)
  32028. }
  32029. })
  32030. }
  32031.  
  32032. Return (Package (0x02)
  32033. {
  32034. ResourceTemplate ()
  32035. {
  32036. Register (FFixedHW,
  32037. 0x00, // Bit Width
  32038. 0x00, // Bit Offset
  32039. 0x0000000000000000, // Address
  32040. ,)
  32041. },
  32042.  
  32043. ResourceTemplate ()
  32044. {
  32045. Register (FFixedHW,
  32046. 0x00, // Bit Width
  32047. 0x00, // Bit Offset
  32048. 0x0000000000000000, // Address
  32049. ,)
  32050. }
  32051. })
  32052. }
  32053.  
  32054. Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies
  32055. {
  32056. Debug = "cpudptf: _TSD Called"
  32057. If (CondRefOf (\_PR.CPU0._TSD, Local0))
  32058. {
  32059. Return (\_PR.CPU0._TSD) /* External reference */
  32060. }
  32061. Else
  32062. {
  32063. Return (Package (0x01)
  32064. {
  32065. Package (0x05)
  32066. {
  32067. 0x05,
  32068. Zero,
  32069. Zero,
  32070. Zero,
  32071. Zero
  32072. }
  32073. })
  32074. }
  32075.  
  32076. Return (Package (0x01)
  32077. {
  32078. Package (0x05)
  32079. {
  32080. 0x05,
  32081. Zero,
  32082. Zero,
  32083. Zero,
  32084. Zero
  32085. }
  32086. })
  32087. }
  32088.  
  32089. Method (_TDL, 0, NotSerialized) // _TDL: T-State Depth Limit
  32090. {
  32091. Debug = "cpudptf: _TDL Called"
  32092. If (CondRefOf (\_PR.CPU0._TDL, Local0))
  32093. {
  32094. Return (\_PR.CPU0._TDL) /* External reference */
  32095. }
  32096. Else
  32097. {
  32098. Return (Zero)
  32099. }
  32100.  
  32101. Return (Zero)
  32102. }
  32103.  
  32104. Method (_PDL, 0, NotSerialized) // _PDL: P-state Depth Limit
  32105. {
  32106. Debug = "cpudptf: _PDL Called"
  32107. If (CondRefOf (\_PR.CPU0._PSS, Local0))
  32108. {
  32109. Name (LFMI, Zero)
  32110. LFMI = SizeOf (\_PR.CPU0._PSS)
  32111. LFMI--
  32112. Return (LFMI) /* \_SB_.PCI0.PNIT._PDL.LFMI */
  32113. }
  32114. Else
  32115. {
  32116. Return (Zero)
  32117. }
  32118.  
  32119. Return (Zero)
  32120. }
  32121.  
  32122. Method (_PSV, 0, Serialized) // _PSV: Passive Temperature
  32123. {
  32124. If (((BDID == 0x08) || (BDID == 0x0A)))
  32125. {
  32126. If ((\_SB.PCI0.I2C7.PMI5.SRCD == Zero))
  32127. {
  32128. Return (\_SB.DPTF.CTOK) /* External reference */
  32129. (ACTT () - 0x05)
  32130. }
  32131. }
  32132. ElseIf ((\_SB.ADP1._PSR == Zero))
  32133. {
  32134. Return (\_SB.DPTF.CTOK) /* External reference */
  32135. (ACTT () - 0x05)
  32136. }
  32137.  
  32138. Return (\_SB.DPTF.CTOK) /* External reference */
  32139. ACTT ()
  32140. }
  32141.  
  32142. Method (_SCP, 3, Serialized) // _SCP: Set Cooling Policy
  32143. {
  32144. If (((Arg0 == Zero) || (Arg0 == One)))
  32145. {
  32146. CTYP = Arg0
  32147. Notify (PNIT, 0x91) // Device-Specific
  32148. }
  32149. }
  32150.  
  32151. Name (GTSH, 0x14)
  32152. Method (SDBG, 0, NotSerialized)
  32153. {
  32154. Return (PDBG) /* External reference */
  32155. }
  32156. }
  32157. }
  32158. }
  32159.  
  32160. /*
  32161. * Intel ACPI Component Architecture
  32162. * AML/ASL+ Disassembler version 20160108-64
  32163. * Copyright (c) 2000 - 2016 Intel Corporation
  32164. *
  32165. * Disassembling to symbolic ASL+ operators
  32166. *
  32167. * Disassembly of SSDT3.dat, Mon Sep 12 10:24:46 2016
  32168. *
  32169. * Original Table Header:
  32170. * Signature "SSDT"
  32171. * Length 0x00000058 (88)
  32172. * Revision 0x01
  32173. * Checksum 0xDB
  32174. * OEM ID "LowPM"
  32175. * OEM Table ID "LowPwrM"
  32176. * OEM Revision 0x00001000 (4096)
  32177. * Compiler ID "INTL"
  32178. * Compiler Version 0x20120913 (538052883)
  32179. */
  32180. DefinitionBlock ("SSDT3.aml", "SSDT", 1, "LowPM", "LowPwrM", 0x00001000)
  32181. {
  32182.  
  32183. External (_SB_.DPTF, DeviceObj)
  32184. External (LPMV, IntObj)
  32185.  
  32186. Scope (\_SB.DPTF)
  32187. {
  32188. Name (LPSP, Package (0x01)
  32189. {
  32190. ToUUID ("b9455b06-7949-40c6-abf2-363a70c8706c")
  32191. })
  32192. Method (CLPM, 0, NotSerialized)
  32193. {
  32194. Return (LPMV) /* External reference */
  32195. }
  32196. }
  32197. }
  32198.  
  32199. /*
  32200. * Intel ACPI Component Architecture
  32201. * AML/ASL+ Disassembler version 20160108-64
  32202. * Copyright (c) 2000 - 2016 Intel Corporation
  32203. *
  32204. * Disassembling to symbolic ASL+ operators
  32205. *
  32206. * Disassembly of SSDT4.dat, Mon Sep 12 10:24:46 2016
  32207. *
  32208. * Original Table Header:
  32209. * Signature "SSDT"
  32210. * Length 0x00000269 (617)
  32211. * Revision 0x01
  32212. * Checksum 0x45
  32213. * OEM ID "UsbCTb"
  32214. * OEM Table ID "UsbCTab"
  32215. * OEM Revision 0x00001000 (4096)
  32216. * Compiler ID "INTL"
  32217. * Compiler Version 0x20120913 (538052883)
  32218. */
  32219. DefinitionBlock ("SSDT4.aml", "SSDT", 1, "UsbCTb", "UsbCTab", 0x00001000)
  32220. {
  32221.  
  32222. External (_SB_.PCI0.I2C7.WIDR, UnknownObj)
  32223. External (_SB_.PCI0.XHC1.RHUB.TPLD, IntObj)
  32224. External (BDID, UnknownObj)
  32225. External (FBID, UnknownObj)
  32226. External (OSID, UnknownObj)
  32227. External (UBCB, IntObj)
  32228.  
  32229. Scope (\_SB)
  32230. {
  32231. Device (UBTC)
  32232. {
  32233. Name (_HID, EisaId ("USBC000")) // _HID: Hardware ID
  32234. Name (_UID, Zero) // _UID: Unique ID
  32235. Name (_DDN, "USB Type C") // _DDN: DOS Device Name
  32236. Name (_ADR, Zero) // _ADR: Address
  32237. Name (_DEP, Package (0x01) // _DEP: Dependencies
  32238. {
  32239. \_SB.PCI0.I2C7.WIDR
  32240. })
  32241. Name (CRS, ResourceTemplate ()
  32242. {
  32243. Memory32Fixed (ReadWrite,
  32244. 0x00000000, // Address Base
  32245. 0x00001000, // Address Length
  32246. _Y00)
  32247. })
  32248. Device (CR01)
  32249. {
  32250. Name (_ADR, Zero) // _ADR: Address
  32251. Method (_PLD, 0, NotSerialized) // _PLD: Physical Location of Device
  32252. {
  32253. Return (\_SB.PCI0.XHC1.RHUB.TPLD) /* External reference */
  32254. One
  32255. One
  32256. }
  32257. }
  32258.  
  32259. Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
  32260. {
  32261. CreateDWordField (CRS, \_SB.UBTC._Y00._BAS, CBAS) // _BAS: Base Address
  32262. CBAS = UBCB /* External reference */
  32263. Return (CRS) /* \_SB_.UBTC.CRS_ */
  32264. }
  32265.  
  32266. Method (_STA, 0, NotSerialized) // _STA: Status
  32267. {
  32268. If (((BDID == 0x09) || (BDID == 0x0A)))
  32269. {
  32270. If ((OSID == One))
  32271. {
  32272. If ((FBID == One))
  32273. {
  32274. Return (0x0F)
  32275. }
  32276. }
  32277. }
  32278.  
  32279. Return (Zero)
  32280. }
  32281.  
  32282. OperationRegion (USBC, SystemMemory, UBCB, 0x38)
  32283. Field (USBC, ByteAcc, Lock, Preserve)
  32284. {
  32285. VER1, 8,
  32286. VER2, 8,
  32287. RSV1, 8,
  32288. RSV2, 8,
  32289. CCI0, 8,
  32290. CCI1, 8,
  32291. CCI2, 8,
  32292. CCI3, 8,
  32293. CTL0, 8,
  32294. CTL1, 8,
  32295. CTL2, 8,
  32296. CTL3, 8,
  32297. CTL4, 8,
  32298. CTL5, 8,
  32299. CTL6, 8,
  32300. CTL7, 8,
  32301. MGI0, 8,
  32302. MGI1, 8,
  32303. MGI2, 8,
  32304. MGI3, 8,
  32305. MGI4, 8,
  32306. MGI5, 8,
  32307. MGI6, 8,
  32308. MGI7, 8,
  32309. MGI8, 8,
  32310. MGI9, 8,
  32311. MGIA, 8,
  32312. MGIB, 8,
  32313. MGIC, 8,
  32314. MGID, 8,
  32315. MGIE, 8,
  32316. MGIF, 8,
  32317. MGO0, 8,
  32318. MGO1, 8,
  32319. MGO2, 8,
  32320. MGO3, 8,
  32321. MGO4, 8,
  32322. MGO5, 8,
  32323. MGO6, 8,
  32324. MGO7, 8,
  32325. MGO8, 8,
  32326. MGO9, 8,
  32327. MGOA, 8,
  32328. MGOB, 8,
  32329. MGOC, 8,
  32330. MGOD, 8,
  32331. MGOE, 8,
  32332. MGOF, 8
  32333. }
  32334.  
  32335. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  32336. {
  32337. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  32338. If ((Arg0 == ToUUID ("6f8398c2-7ca4-11e4-ad36-631042b5008f")))
  32339. {
  32340. While (One)
  32341. {
  32342. _T_0 = ToInteger (Arg2)
  32343. If ((_T_0 == Zero))
  32344. {
  32345. Return (Buffer (One)
  32346. {
  32347. 0x03 /* . */
  32348. })
  32349. }
  32350.  
  32351. Break
  32352. }
  32353.  
  32354. Notify (\_SB.PCI0.I2C7.WIDR, 0x91) // Device-Specific
  32355. Return (0x0F)
  32356. }
  32357.  
  32358. Return (Zero)
  32359. }
  32360. }
  32361. }
  32362. }
  32363.  
  32364. /*
  32365. * Intel ACPI Component Architecture
  32366. * AML/ASL+ Disassembler version 20160108-64
  32367. * Copyright (c) 2000 - 2016 Intel Corporation
  32368. *
  32369. * Disassembling to symbolic ASL+ operators
  32370. *
  32371. * Disassembly of SSDT5.dat, Mon Sep 12 10:24:46 2016
  32372. *
  32373. * Original Table Header:
  32374. * Signature "SSDT"
  32375. * Length 0x00000763 (1891)
  32376. * Revision 0x01
  32377. * Checksum 0x3E
  32378. * OEM ID "PmRef"
  32379. * OEM Table ID "CpuPm"
  32380. * OEM Revision 0x00003000 (12288)
  32381. * Compiler ID "INTL"
  32382. * Compiler Version 0x20120913 (538052883)
  32383. */
  32384. DefinitionBlock ("SSDT5.aml", "SSDT", 1, "PmRef", "CpuPm", 0x00003000)
  32385. {
  32386.  
  32387. External (_PR_.CPU0, DeviceObj)
  32388. External (_PR_.CPU1, DeviceObj)
  32389. External (_PR_.CPU2, DeviceObj)
  32390. External (_PR_.CPU3, DeviceObj)
  32391.  
  32392. Scope (\)
  32393. {
  32394. Name (SSDT, Package (0x0C)
  32395. {
  32396. "CPU0IST ",
  32397. 0x6AD2D618,
  32398. 0x0000057B,
  32399. "APIST ",
  32400. 0x6AD2FE18,
  32401. 0x0000015F,
  32402. "CPU0CST ",
  32403. 0x6AD2DC18,
  32404. 0x000003A5,
  32405. "APCST ",
  32406. 0x6AD2EF18,
  32407. 0x0000008D
  32408. })
  32409. Name (CFGD, 0x73B92803)
  32410. Name (\PDC0, 0x80000000)
  32411. Name (\PDC1, 0x80000000)
  32412. Name (\PDC2, 0x80000000)
  32413. Name (\PDC3, 0x80000000)
  32414. Name (\SDTL, Zero)
  32415. }
  32416.  
  32417. Scope (\_PR.CPU0)
  32418. {
  32419. Name (HI0, Zero)
  32420. Name (HC0, Zero)
  32421. Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
  32422. {
  32423. Local0 = CPDC (Arg0)
  32424. GCAP (Local0)
  32425. }
  32426.  
  32427. Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
  32428. {
  32429. Local0 = COSC (Arg0, Arg1, Arg2, Arg3)
  32430. GCAP (Local0)
  32431. Return (Local0)
  32432. }
  32433.  
  32434. Method (CPDC, 1, NotSerialized)
  32435. {
  32436. CreateDWordField (Arg0, Zero, REVS)
  32437. CreateDWordField (Arg0, 0x04, SIZE)
  32438. Local0 = SizeOf (Arg0)
  32439. Local1 = (Local0 - 0x08)
  32440. CreateField (Arg0, 0x40, (Local1 * 0x08), TEMP)
  32441. Name (STS0, Buffer (0x04)
  32442. {
  32443. 0x00, 0x00, 0x00, 0x00 /* .... */
  32444. })
  32445. Concatenate (STS0, TEMP, Local2)
  32446. Return (COSC (ToUUID ("4077a616-290c-47be-9ebd-d87058713953"), REVS, SIZE, Local2))
  32447. }
  32448.  
  32449. Method (COSC, 4, NotSerialized)
  32450. {
  32451. CreateDWordField (Arg3, Zero, STS0)
  32452. CreateDWordField (Arg3, 0x04, CAP0)
  32453. CreateDWordField (Arg0, Zero, IID0)
  32454. CreateDWordField (Arg0, 0x04, IID1)
  32455. CreateDWordField (Arg0, 0x08, IID2)
  32456. CreateDWordField (Arg0, 0x0C, IID3)
  32457. Name (UID0, ToUUID ("4077a616-290c-47be-9ebd-d87058713953"))
  32458. CreateDWordField (UID0, Zero, EID0)
  32459. CreateDWordField (UID0, 0x04, EID1)
  32460. CreateDWordField (UID0, 0x08, EID2)
  32461. CreateDWordField (UID0, 0x0C, EID3)
  32462. If (!(((IID0 == EID0) && (IID1 == EID1)) && ((
  32463. IID2 == EID2) && (IID3 == EID3))))
  32464. {
  32465. STS0 = 0x06
  32466. Return (Arg3)
  32467. }
  32468.  
  32469. If ((Arg1 != One))
  32470. {
  32471. STS0 = 0x0A
  32472. Return (Arg3)
  32473. }
  32474.  
  32475. Return (Arg3)
  32476. }
  32477.  
  32478. Method (GCAP, 1, NotSerialized)
  32479. {
  32480. CreateDWordField (Arg0, Zero, STS0)
  32481. CreateDWordField (Arg0, 0x04, CAP0)
  32482. If (((STS0 == 0x06) || (STS0 == 0x0A)))
  32483. {
  32484. Return (Zero)
  32485. }
  32486.  
  32487. If ((STS0 & One))
  32488. {
  32489. CAP0 &= 0x0BFF
  32490. Return (Zero)
  32491. }
  32492.  
  32493. PDC0 = ((PDC0 & 0x7FFFFFFF) | CAP0) /* \_PR_.CPU0.GCAP.CAP0 */
  32494. If ((CFGD & One))
  32495. {
  32496. If ((((CFGD & 0x01000000) && ((PDC0 & 0x09) ==
  32497. 0x09)) && !(SDTL & One)))
  32498. {
  32499. SDTL |= One
  32500. OperationRegion (IST0, SystemMemory, DerefOf (SSDT [One]), DerefOf (SSDT [0x02]))
  32501. Load (IST0, HI0) /* \_PR_.CPU0.HI0_ */
  32502. }
  32503. }
  32504.  
  32505. If ((CFGD & 0x82))
  32506. {
  32507. If ((((CFGD & 0x01000000) && (PDC0 & 0x18)) && !
  32508. (SDTL & 0x02)))
  32509. {
  32510. SDTL |= 0x02
  32511. OperationRegion (CST0, SystemMemory, DerefOf (SSDT [0x07]), DerefOf (SSDT [0x08]))
  32512. Load (CST0, HC0) /* \_PR_.CPU0.HC0_ */
  32513. }
  32514. }
  32515.  
  32516. Return (Zero)
  32517. }
  32518. }
  32519.  
  32520. Scope (\_PR.CPU1)
  32521. {
  32522. Name (HI1, Zero)
  32523. Name (HC1, Zero)
  32524. Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
  32525. {
  32526. Local0 = \_PR.CPU0.CPDC (Arg0)
  32527. GCAP (Local0)
  32528. }
  32529.  
  32530. Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
  32531. {
  32532. Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
  32533. GCAP (Local0)
  32534. Return (Local0)
  32535. }
  32536.  
  32537. Method (GCAP, 1, NotSerialized)
  32538. {
  32539. CreateDWordField (Arg0, Zero, STS1)
  32540. CreateDWordField (Arg0, 0x04, CAP1)
  32541. If (((STS1 == 0x06) || (STS1 == 0x0A)))
  32542. {
  32543. Return (Zero)
  32544. }
  32545.  
  32546. If ((STS1 & One))
  32547. {
  32548. CAP1 &= 0x0BFF
  32549. Return (Zero)
  32550. }
  32551.  
  32552. PDC1 = ((PDC1 & 0x7FFFFFFF) | CAP1) /* \_PR_.CPU1.GCAP.CAP1 */
  32553. If (((PDC0 & 0x09) == 0x09))
  32554. {
  32555. APPT ()
  32556. }
  32557.  
  32558. If ((PDC0 & 0x18))
  32559. {
  32560. APCT ()
  32561. }
  32562.  
  32563. Return (Zero)
  32564. }
  32565.  
  32566. Method (APCT, 0, NotSerialized)
  32567. {
  32568. If (((CFGD & 0x82) && !(SDTL & 0x20)))
  32569. {
  32570. SDTL |= 0x20
  32571. OperationRegion (CST1, SystemMemory, DerefOf (SSDT [0x0A]), DerefOf (SSDT [0x0B]))
  32572. Load (CST1, HC1) /* \_PR_.CPU1.HC1_ */
  32573. }
  32574. }
  32575.  
  32576. Method (APPT, 0, NotSerialized)
  32577. {
  32578. If (((CFGD & One) && !(SDTL & 0x10)))
  32579. {
  32580. SDTL |= 0x10
  32581. OperationRegion (IST1, SystemMemory, DerefOf (SSDT [0x04]), DerefOf (SSDT [0x05]))
  32582. Load (IST1, HI1) /* \_PR_.CPU1.HI1_ */
  32583. }
  32584. }
  32585. }
  32586.  
  32587. Scope (\_PR.CPU2)
  32588. {
  32589. Name (HI1, Zero)
  32590. Name (HC1, Zero)
  32591. Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
  32592. {
  32593. Local0 = \_PR.CPU0.CPDC (Arg0)
  32594. GCAP (Local0)
  32595. }
  32596.  
  32597. Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
  32598. {
  32599. Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
  32600. GCAP (Local0)
  32601. Return (Local0)
  32602. }
  32603.  
  32604. Method (GCAP, 1, NotSerialized)
  32605. {
  32606. CreateDWordField (Arg0, Zero, STS1)
  32607. CreateDWordField (Arg0, 0x04, CAP1)
  32608. If (((STS1 == 0x06) || (STS1 == 0x0A)))
  32609. {
  32610. Return (Zero)
  32611. }
  32612.  
  32613. If ((STS1 & One))
  32614. {
  32615. CAP1 &= 0x0BFF
  32616. Return (Zero)
  32617. }
  32618.  
  32619. PDC1 = ((PDC1 & 0x7FFFFFFF) | CAP1) /* \_PR_.CPU2.GCAP.CAP1 */
  32620. If (((PDC0 & 0x09) == 0x09))
  32621. {
  32622. APPT ()
  32623. }
  32624.  
  32625. If ((PDC0 & 0x18))
  32626. {
  32627. APCT ()
  32628. }
  32629.  
  32630. Return (Zero)
  32631. }
  32632.  
  32633. Method (APCT, 0, NotSerialized)
  32634. {
  32635. If (((CFGD & 0x82) && !(SDTL & 0x20)))
  32636. {
  32637. SDTL |= 0x20
  32638. OperationRegion (CST1, SystemMemory, DerefOf (SSDT [0x0A]), DerefOf (SSDT [0x0B]))
  32639. Load (CST1, HC1) /* \_PR_.CPU2.HC1_ */
  32640. }
  32641. }
  32642.  
  32643. Method (APPT, 0, NotSerialized)
  32644. {
  32645. If (((CFGD & One) && !(SDTL & 0x10)))
  32646. {
  32647. SDTL |= 0x10
  32648. OperationRegion (IST1, SystemMemory, DerefOf (SSDT [0x04]), DerefOf (SSDT [0x05]))
  32649. Load (IST1, HI1) /* \_PR_.CPU2.HI1_ */
  32650. }
  32651. }
  32652. }
  32653.  
  32654. Scope (\_PR.CPU3)
  32655. {
  32656. Name (HI1, Zero)
  32657. Name (HC1, Zero)
  32658. Method (_PDC, 1, NotSerialized) // _PDC: Processor Driver Capabilities
  32659. {
  32660. Local0 = \_PR.CPU0.CPDC (Arg0)
  32661. GCAP (Local0)
  32662. }
  32663.  
  32664. Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
  32665. {
  32666. Local0 = \_PR.CPU0.COSC (Arg0, Arg1, Arg2, Arg3)
  32667. GCAP (Local0)
  32668. Return (Local0)
  32669. }
  32670.  
  32671. Method (GCAP, 1, NotSerialized)
  32672. {
  32673. CreateDWordField (Arg0, Zero, STS1)
  32674. CreateDWordField (Arg0, 0x04, CAP1)
  32675. If (((STS1 == 0x06) || (STS1 == 0x0A)))
  32676. {
  32677. Return (Zero)
  32678. }
  32679.  
  32680. If ((STS1 & One))
  32681. {
  32682. CAP1 &= 0x0BFF
  32683. Return (Zero)
  32684. }
  32685.  
  32686. PDC1 = ((PDC1 & 0x7FFFFFFF) | CAP1) /* \_PR_.CPU3.GCAP.CAP1 */
  32687. If (((PDC0 & 0x09) == 0x09))
  32688. {
  32689. APPT ()
  32690. }
  32691.  
  32692. If ((PDC0 & 0x18))
  32693. {
  32694. APCT ()
  32695. }
  32696.  
  32697. Return (Zero)
  32698. }
  32699.  
  32700. Method (APCT, 0, NotSerialized)
  32701. {
  32702. If (((CFGD & 0x82) && !(SDTL & 0x20)))
  32703. {
  32704. SDTL |= 0x20
  32705. OperationRegion (CST1, SystemMemory, DerefOf (SSDT [0x0A]), DerefOf (SSDT [0x0B]))
  32706. Load (CST1, HC1) /* \_PR_.CPU3.HC1_ */
  32707. }
  32708. }
  32709.  
  32710. Method (APPT, 0, NotSerialized)
  32711. {
  32712. If (((CFGD & One) && !(SDTL & 0x10)))
  32713. {
  32714. SDTL |= 0x10
  32715. OperationRegion (IST1, SystemMemory, DerefOf (SSDT [0x04]), DerefOf (SSDT [0x05]))
  32716. Load (IST1, HI1) /* \_PR_.CPU3.HI1_ */
  32717. }
  32718. }
  32719. }
  32720. }
  32721.  
  32722. /*
  32723. * Intel ACPI Component Architecture
  32724. * AML/ASL+ Disassembler version 20160108-64
  32725. * Copyright (c) 2000 - 2016 Intel Corporation
  32726. *
  32727. * Disassembling to symbolic ASL+ operators
  32728. *
  32729. * Disassembly of SSDT6.dat, Mon Sep 12 10:24:46 2016
  32730. *
  32731. * Original Table Header:
  32732. * Signature "SSDT"
  32733. * Length 0x00000290 (656)
  32734. * Revision 0x01
  32735. * Checksum 0x08
  32736. * OEM ID "PmRef"
  32737. * OEM Table ID "Cpu0Tst"
  32738. * OEM Revision 0x00003000 (12288)
  32739. * Compiler ID "INTL"
  32740. * Compiler Version 0x20120913 (538052883)
  32741. */
  32742. DefinitionBlock ("SSDT6.aml", "SSDT", 1, "PmRef", "Cpu0Tst", 0x00003000)
  32743. {
  32744.  
  32745. External (_PR_.CPU0, DeviceObj)
  32746. External (_PSS, IntObj)
  32747. External (CFGD, UnknownObj)
  32748. External (PDC0, UnknownObj)
  32749.  
  32750. Scope (\_PR.CPU0)
  32751. {
  32752. Name (_TPC, Zero) // _TPC: Throttling Present Capabilities
  32753. Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control
  32754. {
  32755. If ((PDC0 & 0x04))
  32756. {
  32757. Return (Package (0x02)
  32758. {
  32759. ResourceTemplate ()
  32760. {
  32761. Register (FFixedHW,
  32762. 0x00, // Bit Width
  32763. 0x00, // Bit Offset
  32764. 0x0000000000000000, // Address
  32765. ,)
  32766. },
  32767.  
  32768. ResourceTemplate ()
  32769. {
  32770. Register (FFixedHW,
  32771. 0x00, // Bit Width
  32772. 0x00, // Bit Offset
  32773. 0x0000000000000000, // Address
  32774. ,)
  32775. }
  32776. })
  32777. }
  32778.  
  32779. Return (Package (0x02)
  32780. {
  32781. ResourceTemplate ()
  32782. {
  32783. Register (SystemIO,
  32784. 0x04, // Bit Width
  32785. 0x01, // Bit Offset
  32786. 0x0000000000000410, // Address
  32787. ,)
  32788. },
  32789.  
  32790. ResourceTemplate ()
  32791. {
  32792. Register (SystemIO,
  32793. 0x04, // Bit Width
  32794. 0x01, // Bit Offset
  32795. 0x0000000000000410, // Address
  32796. ,)
  32797. }
  32798. })
  32799. }
  32800.  
  32801. Name (TSSI, Package (0x08)
  32802. {
  32803. Package (0x05)
  32804. {
  32805. 0x64,
  32806. 0x03E8,
  32807. Zero,
  32808. Zero,
  32809. Zero
  32810. },
  32811.  
  32812. Package (0x05)
  32813. {
  32814. 0x58,
  32815. 0x036B,
  32816. Zero,
  32817. 0x0F,
  32818. Zero
  32819. },
  32820.  
  32821. Package (0x05)
  32822. {
  32823. 0x4B,
  32824. 0x02EE,
  32825. Zero,
  32826. 0x0E,
  32827. Zero
  32828. },
  32829.  
  32830. Package (0x05)
  32831. {
  32832. 0x3F,
  32833. 0x0271,
  32834. Zero,
  32835. 0x0D,
  32836. Zero
  32837. },
  32838.  
  32839. Package (0x05)
  32840. {
  32841. 0x32,
  32842. 0x01F4,
  32843. Zero,
  32844. 0x0C,
  32845. Zero
  32846. },
  32847.  
  32848. Package (0x05)
  32849. {
  32850. 0x26,
  32851. 0x0177,
  32852. Zero,
  32853. 0x0B,
  32854. Zero
  32855. },
  32856.  
  32857. Package (0x05)
  32858. {
  32859. 0x19,
  32860. 0xFA,
  32861. Zero,
  32862. 0x0A,
  32863. Zero
  32864. },
  32865.  
  32866. Package (0x05)
  32867. {
  32868. 0x0D,
  32869. 0x7D,
  32870. Zero,
  32871. 0x09,
  32872. Zero
  32873. }
  32874. })
  32875. Name (TSSM, Package (0x08)
  32876. {
  32877. Package (0x05)
  32878. {
  32879. 0x64,
  32880. 0x03E8,
  32881. Zero,
  32882. Zero,
  32883. Zero
  32884. },
  32885.  
  32886. Package (0x05)
  32887. {
  32888. 0x58,
  32889. 0x036B,
  32890. Zero,
  32891. 0x1E,
  32892. Zero
  32893. },
  32894.  
  32895. Package (0x05)
  32896. {
  32897. 0x4B,
  32898. 0x02EE,
  32899. Zero,
  32900. 0x1C,
  32901. Zero
  32902. },
  32903.  
  32904. Package (0x05)
  32905. {
  32906. 0x3F,
  32907. 0x0271,
  32908. Zero,
  32909. 0x1A,
  32910. Zero
  32911. },
  32912.  
  32913. Package (0x05)
  32914. {
  32915. 0x32,
  32916. 0x01F4,
  32917. Zero,
  32918. 0x18,
  32919. Zero
  32920. },
  32921.  
  32922. Package (0x05)
  32923. {
  32924. 0x26,
  32925. 0x0177,
  32926. Zero,
  32927. 0x16,
  32928. Zero
  32929. },
  32930.  
  32931. Package (0x05)
  32932. {
  32933. 0x19,
  32934. 0xFA,
  32935. Zero,
  32936. 0x14,
  32937. Zero
  32938. },
  32939.  
  32940. Package (0x05)
  32941. {
  32942. 0x0D,
  32943. 0x7D,
  32944. Zero,
  32945. 0x12,
  32946. Zero
  32947. }
  32948. })
  32949. Name (TSSF, Zero)
  32950. Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States
  32951. {
  32952. If ((!TSSF && CondRefOf (_PSS)))
  32953. {
  32954. Local0 = _PSS /* External reference */
  32955. Local1 = SizeOf (Local0)
  32956. Local1--
  32957. Local2 = DerefOf (DerefOf (Local0 [Local1]) [One])
  32958. Local3 = Zero
  32959. While ((Local3 < SizeOf (TSSI)))
  32960. {
  32961. Local4 = ((Local2 * (0x08 - Local3)) / 0x08)
  32962. DerefOf (TSSI [Local3]) [One] = Local4
  32963. DerefOf (TSSM [Local3]) [One] = Local4
  32964. Local3++
  32965. }
  32966.  
  32967. TSSF = Ones
  32968. }
  32969.  
  32970. If ((PDC0 & 0x04))
  32971. {
  32972. Return (TSSM) /* \_PR_.CPU0.TSSM */
  32973. }
  32974.  
  32975. Return (TSSI) /* \_PR_.CPU0.TSSI */
  32976. }
  32977.  
  32978. Method (_TDL, 0, NotSerialized) // _TDL: T-State Depth Limit
  32979. {
  32980. Debug = "Cpu0: _TDL Called"
  32981. Name (LFMI, Zero)
  32982. LFMI = SizeOf (TSSM)
  32983. LFMI--
  32984. Return (LFMI) /* \_PR_.CPU0._TDL.LFMI */
  32985. }
  32986.  
  32987. Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies
  32988. {
  32989. If (((CFGD & 0x00800000) && !(PDC0 & 0x04)))
  32990. {
  32991. Return (Package (0x01)
  32992. {
  32993. Package (0x05)
  32994. {
  32995. 0x05,
  32996. Zero,
  32997. Zero,
  32998. 0xFD,
  32999. 0x04
  33000. }
  33001. })
  33002. }
  33003.  
  33004. If (((CFGD & 0x01000000) && !(PDC0 & 0x04)))
  33005. {
  33006. Return (Package (0x01)
  33007. {
  33008. Package (0x05)
  33009. {
  33010. 0x05,
  33011. Zero,
  33012. Zero,
  33013. 0xFD,
  33014. 0x02
  33015. }
  33016. })
  33017. }
  33018.  
  33019. Return (Package (0x01)
  33020. {
  33021. Package (0x05)
  33022. {
  33023. 0x05,
  33024. Zero,
  33025. Zero,
  33026. 0xFC,
  33027. One
  33028. }
  33029. })
  33030. }
  33031. }
  33032. }
  33033.  
  33034. /*
  33035. * Intel ACPI Component Architecture
  33036. * AML/ASL+ Disassembler version 20160108-64
  33037. * Copyright (c) 2000 - 2016 Intel Corporation
  33038. *
  33039. * Disassembling to symbolic ASL+ operators
  33040. *
  33041. * Disassembly of SSDT7.dat, Mon Sep 12 10:24:46 2016
  33042. *
  33043. * Original Table Header:
  33044. * Signature "SSDT"
  33045. * Length 0x0000017A (378)
  33046. * Revision 0x01
  33047. * Checksum 0x5F
  33048. * OEM ID "PmRef"
  33049. * OEM Table ID "ApTst"
  33050. * OEM Revision 0x00003000 (12288)
  33051. * Compiler ID "INTL"
  33052. * Compiler Version 0x20120913 (538052883)
  33053. */
  33054. DefinitionBlock ("SSDT7.aml", "SSDT", 1, "PmRef", "ApTst", 0x00003000)
  33055. {
  33056.  
  33057. External (_PR_.CPU0._PTC, IntObj)
  33058. External (_PR_.CPU0._TSS, IntObj)
  33059. External (_PR_.CPU1, DeviceObj)
  33060. External (_PR_.CPU2, DeviceObj)
  33061. External (_PR_.CPU3, DeviceObj)
  33062. External (MPEN, UnknownObj)
  33063. External (PDC0, UnknownObj)
  33064.  
  33065. Scope (\_PR.CPU1)
  33066. {
  33067. Name (_TPC, Zero) // _TPC: Throttling Present Capabilities
  33068. Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control
  33069. {
  33070. Return (\_PR.CPU0._PTC) /* External reference */
  33071. }
  33072.  
  33073. Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States
  33074. {
  33075. Return (\_PR.CPU0._TSS) /* External reference */
  33076. }
  33077.  
  33078. Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies
  33079. {
  33080. If (!(PDC0 & 0x04))
  33081. {
  33082. Return (Package (0x01)
  33083. {
  33084. Package (0x05)
  33085. {
  33086. 0x05,
  33087. Zero,
  33088. Zero,
  33089. 0xFD,
  33090. MPEN
  33091. }
  33092. })
  33093. }
  33094.  
  33095. Return (Package (0x01)
  33096. {
  33097. Package (0x05)
  33098. {
  33099. 0x05,
  33100. Zero,
  33101. One,
  33102. 0xFC,
  33103. One
  33104. }
  33105. })
  33106. }
  33107. }
  33108.  
  33109. Scope (\_PR.CPU2)
  33110. {
  33111. Name (_TPC, Zero) // _TPC: Throttling Present Capabilities
  33112. Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control
  33113. {
  33114. Return (\_PR.CPU0._PTC) /* External reference */
  33115. }
  33116.  
  33117. Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States
  33118. {
  33119. Return (\_PR.CPU0._TSS) /* External reference */
  33120. }
  33121.  
  33122. Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies
  33123. {
  33124. If (!(PDC0 & 0x04))
  33125. {
  33126. Return (Package (0x01)
  33127. {
  33128. Package (0x05)
  33129. {
  33130. 0x05,
  33131. Zero,
  33132. Zero,
  33133. 0xFD,
  33134. MPEN
  33135. }
  33136. })
  33137. }
  33138.  
  33139. Return (Package (0x01)
  33140. {
  33141. Package (0x05)
  33142. {
  33143. 0x05,
  33144. Zero,
  33145. One,
  33146. 0xFC,
  33147. One
  33148. }
  33149. })
  33150. }
  33151. }
  33152.  
  33153. Scope (\_PR.CPU3)
  33154. {
  33155. Name (_TPC, Zero) // _TPC: Throttling Present Capabilities
  33156. Method (_PTC, 0, NotSerialized) // _PTC: Processor Throttling Control
  33157. {
  33158. Return (\_PR.CPU0._PTC) /* External reference */
  33159. }
  33160.  
  33161. Method (_TSS, 0, NotSerialized) // _TSS: Throttling Supported States
  33162. {
  33163. Return (\_PR.CPU0._TSS) /* External reference */
  33164. }
  33165.  
  33166. Method (_TSD, 0, NotSerialized) // _TSD: Throttling State Dependencies
  33167. {
  33168. If (!(PDC0 & 0x04))
  33169. {
  33170. Return (Package (0x01)
  33171. {
  33172. Package (0x05)
  33173. {
  33174. 0x05,
  33175. Zero,
  33176. Zero,
  33177. 0xFD,
  33178. MPEN
  33179. }
  33180. })
  33181. }
  33182.  
  33183. Return (Package (0x01)
  33184. {
  33185. Package (0x05)
  33186. {
  33187. 0x05,
  33188. Zero,
  33189. One,
  33190. 0xFC,
  33191. One
  33192. }
  33193. })
  33194. }
  33195. }
  33196. }
  33197.  
  33198. /*
  33199. * Intel ACPI Component Architecture
  33200. * AML/ASL+ Disassembler version 20160108-64
  33201. * Copyright (c) 2000 - 2016 Intel Corporation
  33202. *
  33203. * Disassembling to symbolic ASL+ operators
  33204. *
  33205. * Disassembly of SSDT8.dat, Mon Sep 12 10:24:46 2016
  33206. *
  33207. * Original Table Header:
  33208. * Signature "SSDT"
  33209. * Length 0x0000043A (1082)
  33210. * Revision 0x01
  33211. * Checksum 0xFE
  33212. * OEM ID "Intel_"
  33213. * OEM Table ID "Tpm2Tabl"
  33214. * OEM Revision 0x00001000 (4096)
  33215. * Compiler ID "INTL"
  33216. * Compiler Version 0x20120913 (538052883)
  33217. */
  33218. DefinitionBlock ("SSDT8.aml", "SSDT", 1, "Intel_", "Tpm2Tabl", 0x00001000)
  33219. {
  33220.  
  33221. External (TM2A, IntObj)
  33222. External (TM2E, IntObj)
  33223. External (TM2L, IntObj)
  33224.  
  33225. Scope (\_SB)
  33226. {
  33227. Device (CTPM)
  33228. {
  33229. Name (_HID, "MSFT0101" /* TPM 2.0 Security Device */) // _HID: Hardware ID
  33230. Name (_STR, Unicode ("TPM 2.0 Device")) // _STR: Description String
  33231. Name (TPMX, ResourceTemplate ()
  33232. {
  33233. Memory32Fixed (ReadWrite,
  33234. 0x00000000, // Address Base
  33235. 0x00001000, // Address Length
  33236. _Y00)
  33237. })
  33238. Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
  33239. {
  33240. CreateDWordField (^TPMX, \_SB.CTPM._Y00._BAS, TB0A) // _BAS: Base Address
  33241. CreateDWordField (^TPMX, \_SB.CTPM._Y00._LEN, TB0L) // _LEN: Length
  33242. TB0A = TM2A /* External reference */
  33243. TB0L = TM2L /* External reference */
  33244. Return (TPMX) /* \_SB_.CTPM.TPMX */
  33245. }
  33246.  
  33247. OperationRegion (TICR, SystemMemory, 0xE00D0000, 0x0100)
  33248. Field (TICR, AnyAcc, NoLock, Preserve)
  33249. {
  33250. Offset (0x8C),
  33251. STAT, 32
  33252. }
  33253.  
  33254. OperationRegion (SMIP, SystemIO, 0xB2, One)
  33255. Field (SMIP, ByteAcc, NoLock, Preserve)
  33256. {
  33257. IOB2, 8
  33258. }
  33259.  
  33260. OperationRegion (TNVF, SystemMemory, 0x6AF50000, 0x22)
  33261. Field (TNVF, AnyAcc, NoLock, Preserve)
  33262. {
  33263. PPIN, 8,
  33264. PPIP, 32,
  33265. PPRP, 32,
  33266. PPRQ, 32,
  33267. LPPR, 32,
  33268. FRET, 32,
  33269. MCIN, 8,
  33270. MCIP, 32,
  33271. MORD, 32,
  33272. MRET, 32
  33273. }
  33274.  
  33275. Method (PTS, 1, Serialized)
  33276. {
  33277. If (((Arg0 < 0x06) && (Arg0 > 0x03)))
  33278. {
  33279. If (!(MORD & 0x10))
  33280. {
  33281. MCIP = 0x02
  33282. IOB2 = MCIN /* \_SB_.CTPM.MCIN */
  33283. }
  33284. }
  33285.  
  33286. Return (Zero)
  33287. }
  33288.  
  33289. Method (_STA, 0, NotSerialized) // _STA: Status
  33290. {
  33291. If (TM2E)
  33292. {
  33293. Return (0x0F)
  33294. }
  33295.  
  33296. Return (Zero)
  33297. }
  33298.  
  33299. Method (HINF, 3, Serialized)
  33300. {
  33301. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  33302. While (One)
  33303. {
  33304. _T_0 = ToInteger (Arg1)
  33305. If ((_T_0 == Zero))
  33306. {
  33307. Return (Buffer (One)
  33308. {
  33309. 0x03 /* . */
  33310. })
  33311. }
  33312. ElseIf ((_T_0 == One))
  33313. {
  33314. Name (TPMV, Package (0x02)
  33315. {
  33316. One,
  33317. Package (0x02)
  33318. {
  33319. 0x02,
  33320. Zero
  33321. }
  33322. })
  33323. If ((_STA () == Zero))
  33324. {
  33325. Return (Package (0x01)
  33326. {
  33327. Zero
  33328. })
  33329. }
  33330.  
  33331. Return (TPMV) /* \_SB_.CTPM.HINF.TPMV */
  33332. }
  33333. Else
  33334. {
  33335. BreakPoint
  33336. }
  33337.  
  33338. Break
  33339. }
  33340.  
  33341. Return (Buffer (One)
  33342. {
  33343. 0x00 /* . */
  33344. })
  33345. }
  33346.  
  33347. Name (TPM2, Package (0x02)
  33348. {
  33349. Zero,
  33350. Zero
  33351. })
  33352. Name (TPM3, Package (0x03)
  33353. {
  33354. Zero,
  33355. Zero,
  33356. Zero
  33357. })
  33358. Method (TPPI, 3, Serialized)
  33359. {
  33360. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  33361. While (One)
  33362. {
  33363. _T_0 = ToInteger (Arg1)
  33364. If ((_T_0 == Zero))
  33365. {
  33366. Return (Buffer (0x02)
  33367. {
  33368. 0xFF, 0x01 /* .. */
  33369. })
  33370. }
  33371. ElseIf ((_T_0 == One))
  33372. {
  33373. Return ("1.2")
  33374. }
  33375. ElseIf ((_T_0 == 0x02))
  33376. {
  33377. PPRQ = DerefOf (Arg2 [Zero])
  33378. PPIP = 0x02
  33379. IOB2 = PPIN /* \_SB_.CTPM.PPIN */
  33380. Return (FRET) /* \_SB_.CTPM.FRET */
  33381. }
  33382. ElseIf ((_T_0 == 0x03))
  33383. {
  33384. TPM2 [One] = PPRQ /* \_SB_.CTPM.PPRQ */
  33385. Return (TPM2) /* \_SB_.CTPM.TPM2 */
  33386. }
  33387. ElseIf ((_T_0 == 0x04))
  33388. {
  33389. Return (0x02)
  33390. }
  33391. ElseIf ((_T_0 == 0x05))
  33392. {
  33393. PPIP = 0x05
  33394. IOB2 = PPIN /* \_SB_.CTPM.PPIN */
  33395. TPM3 [One] = LPPR /* \_SB_.CTPM.LPPR */
  33396. TPM3 [0x02] = PPRP /* \_SB_.CTPM.PPRP */
  33397. Return (TPM3) /* \_SB_.CTPM.TPM3 */
  33398. }
  33399. ElseIf ((_T_0 == 0x06))
  33400. {
  33401. Return (0x03)
  33402. }
  33403. ElseIf ((_T_0 == 0x07))
  33404. {
  33405. PPIP = 0x07
  33406. PPRQ = DerefOf (Arg2 [Zero])
  33407. IOB2 = PPIN /* \_SB_.CTPM.PPIN */
  33408. Return (FRET) /* \_SB_.CTPM.FRET */
  33409. }
  33410. ElseIf ((_T_0 == 0x08))
  33411. {
  33412. PPIP = 0x08
  33413. PPRQ = DerefOf (Arg2 [Zero])
  33414. IOB2 = PPIN /* \_SB_.CTPM.PPIN */
  33415. Return (FRET) /* \_SB_.CTPM.FRET */
  33416. }
  33417. Else
  33418. {
  33419. BreakPoint
  33420. }
  33421.  
  33422. Break
  33423. }
  33424.  
  33425. Return (One)
  33426. }
  33427.  
  33428. Method (TMCI, 3, Serialized)
  33429. {
  33430. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  33431. While (One)
  33432. {
  33433. _T_0 = ToInteger (Arg1)
  33434. If ((_T_0 == Zero))
  33435. {
  33436. Return (Buffer (One)
  33437. {
  33438. 0x03 /* . */
  33439. })
  33440. }
  33441. ElseIf ((_T_0 == One))
  33442. {
  33443. MORD = DerefOf (Arg2 [Zero])
  33444. MCIP = One
  33445. IOB2 = MCIN /* \_SB_.CTPM.MCIN */
  33446. Return (MRET) /* \_SB_.CTPM.MRET */
  33447. }
  33448. Else
  33449. {
  33450. BreakPoint
  33451. }
  33452.  
  33453. Break
  33454. }
  33455.  
  33456. Return (One)
  33457. }
  33458.  
  33459. Method (TSMI, 3, Serialized)
  33460. {
  33461. Name (_T_0, Zero) // _T_x: Emitted by ASL Compiler
  33462. While (One)
  33463. {
  33464. _T_0 = ToInteger (Arg1)
  33465. If ((_T_0 == Zero))
  33466. {
  33467. Return (Buffer (One)
  33468. {
  33469. 0x03 /* . */
  33470. })
  33471. }
  33472. ElseIf ((_T_0 == One))
  33473. {
  33474. STAT = One
  33475. Return (Zero)
  33476. }
  33477. Else
  33478. {
  33479. BreakPoint
  33480. }
  33481.  
  33482. Break
  33483. }
  33484.  
  33485. Return (One)
  33486. }
  33487.  
  33488. Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
  33489. {
  33490. If ((Arg0 == ToUUID ("cf8e16a5-c1e8-4e25-b712-4f54a96702c8")))
  33491. {
  33492. Return (HINF (Arg1, Arg2, Arg3))
  33493. }
  33494.  
  33495. If ((Arg0 == ToUUID ("3dddfaa6-361b-4eb4-a424-8d10089d1653") /* Physical Presence Interface */))
  33496. {
  33497. Return (TPPI (Arg1, Arg2, Arg3))
  33498. }
  33499.  
  33500. If ((Arg0 == ToUUID ("376054ed-cc13-4675-901c-4756d7f2d45d")))
  33501. {
  33502. Return (TMCI (Arg1, Arg2, Arg3))
  33503. }
  33504.  
  33505. If ((Arg0 == ToUUID ("6bbf6cab-5463-4714-b7cd-f0203c0368d4")))
  33506. {
  33507. Return (TSMI (Arg1, Arg2, Arg3))
  33508. }
  33509.  
  33510. Return (Buffer (One)
  33511. {
  33512. 0x00 /* . */
  33513. })
  33514. }
  33515. }
  33516. }
  33517. }
  33518.  
  33519. /*
  33520. * Intel ACPI Component Architecture
  33521. * AML/ASL+ Disassembler version 20160108-64
  33522. * Copyright (c) 2000 - 2016 Intel Corporation
  33523. *
  33524. * Disassembly of TPM2.dat, Mon Sep 12 10:24:46 2016
  33525. *
  33526. * ACPI Data Table [TPM2]
  33527. *
  33528. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  33529. */
  33530.  
  33531. [000h 0000 4] Signature : "TPM2" [Trusted Platform Module hardware interface table]
  33532. [004h 0004 4] Table Length : 00000034
  33533. [008h 0008 1] Revision : 03
  33534. [009h 0009 1] Checksum : 35
  33535. [00Ah 0010 6] Oem ID : ""
  33536. [010h 0016 8] Oem Table ID : ""
  33537. [018h 0024 4] Oem Revision : 00000000
  33538. [01Ch 0028 4] Asl Compiler ID : ""
  33539. [020h 0032 4] Asl Compiler Revision : 00000000
  33540.  
  33541. [024h 0036 2] Platform Class : 0000
  33542. [026h 0038 2] Reserved : 0000
  33543. [028h 0040 8] Control Address : 000000007FF00000
  33544. [030h 0048 4] Start Method : 00000002
  33545.  
  33546. Raw Table Data: Length 52 (0x34)
  33547.  
  33548. 0000: 54 50 4D 32 34 00 00 00 03 35 00 00 00 00 00 00 // TPM24....5......
  33549. 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  33550. 0020: 00 00 00 00 00 00 00 00 00 00 F0 7F 00 00 00 00 // ................
  33551. 0030: 02 00 00 00 // ....
  33552. /*
  33553. * Intel ACPI Component Architecture
  33554. * AML/ASL+ Disassembler version 20160108-64
  33555. * Copyright (c) 2000 - 2016 Intel Corporation
  33556. *
  33557. * Disassembly of UEFI.dat, Mon Sep 12 10:24:46 2016
  33558. *
  33559. * ACPI Data Table [UEFI]
  33560. *
  33561. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  33562. */
  33563.  
  33564. [000h 0000 4] Signature : "UEFI" [UEFI Boot Optimization Table]
  33565. [004h 0004 4] Table Length : 00000042
  33566. [008h 0008 1] Revision : 01
  33567. [009h 0009 1] Checksum : 28
  33568. [00Ah 0010 6] Oem ID : "ALASKA"
  33569. [010h 0016 8] Oem Table ID : "A M I "
  33570. [018h 0024 4] Oem Revision : 00000000
  33571. [01Ch 0028 4] Asl Compiler ID : ""
  33572. [020h 0032 4] Asl Compiler Revision : 00000000
  33573.  
  33574. [024h 0036 16] UUID Identifier : C68ED8E2-9DC6-4CBD-9D94-DB65ACC5C332
  33575. [034h 0052 2] Data Offset : 0036
  33576.  
  33577. Raw Table Data: Length 66 (0x42)
  33578.  
  33579. 0000: 55 45 46 49 42 00 00 00 01 28 41 4C 41 53 4B 41 // UEFIB....(ALASKA
  33580. 0010: 41 20 4D 20 49 20 00 00 00 00 00 00 00 00 00 00 // A M I ..........
  33581. 0020: 00 00 00 00 E2 D8 8E C6 C6 9D BD 4C 9D 94 DB 65 // ...........L...e
  33582. 0030: AC C5 C3 32 36 00 01 00 00 00 00 00 00 00 00 00 // ...26...........
  33583. 0040: 00 00 // ..
  33584. /*
  33585. * Intel ACPI Component Architecture
  33586. * AML/ASL+ Disassembler version 20160108-64
  33587. * Copyright (c) 2000 - 2016 Intel Corporation
  33588. *
  33589. * Disassembly of WDAT.dat, Mon Sep 12 10:24:46 2016
  33590. *
  33591. * ACPI Data Table [WDAT]
  33592. *
  33593. * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
  33594. */
  33595.  
  33596. [000h 0000 4] Signature : "WDAT" [Watchdog Action Table]
  33597. [004h 0004 4] Table Length : 00000104
  33598. [008h 0008 1] Revision : 01
  33599. [009h 0009 1] Checksum : CA
  33600. [00Ah 0010 6] Oem ID : ""
  33601. [010h 0016 8] Oem Table ID : ""
  33602. [018h 0024 4] Oem Revision : 00000000
  33603. [01Ch 0028 4] Asl Compiler ID : ""
  33604. [020h 0032 4] Asl Compiler Revision : 00000000
  33605.  
  33606. [024h 0036 4] Header Length : 00000020
  33607. [028h 0040 2] PCI Segment : 00FF
  33608. [02Ah 0042 1] PCI Bus : FF
  33609. [02Bh 0043 1] PCI Device : FF
  33610. [02Ch 0044 1] PCI Function : FF
  33611. [02Dh 0045 3] Reserved : 000000
  33612. [030h 0048 4] Timer Period : 00000258
  33613. [034h 0052 4] Max Count : 000003FF
  33614. [038h 0056 4] Min Count : 00000002
  33615. [03Ch 0060 1] Flags (decoded below) : 81
  33616. Enabled : 1
  33617. Stopped When Asleep : 1
  33618. [03Dh 0061 3] Reserved : 000000
  33619. [040h 0064 4] Watchdog Entry Count : 00000008
  33620.  
  33621. [044h 0068 1] Watchdog Action : 01
  33622. [045h 0069 1] Instruction : 82
  33623. [046h 0070 2] Reserved : 0000
  33624.  
  33625. [048h 0072 12] Register Region : [Generic Address Structure]
  33626. [048h 0072 1] Space ID : 01 [SystemIO]
  33627. [049h 0073 1] Bit Width : 0A
  33628. [04Ah 0074 1] Bit Offset : 00
  33629. [04Bh 0075 1] Encoded Access Width : 03 [DWord Access:32]
  33630. [04Ch 0076 8] Address : 0000000000000460
  33631.  
  33632. [054h 0084 4] Value : 00000004
  33633. [058h 0088 4] Register Mask : 000003FF
  33634.  
  33635. [05Ch 0092 1] Watchdog Action : 06
  33636. [05Dh 0093 1] Instruction : 83
  33637. [05Eh 0094 2] Reserved : 0000
  33638.  
  33639. [060h 0096 12] Register Region : [Generic Address Structure]
  33640. [060h 0096 1] Space ID : 01 [SystemIO]
  33641. [061h 0097 1] Bit Width : 0A
  33642. [062h 0098 1] Bit Offset : 10
  33643. [063h 0099 1] Encoded Access Width : 03 [DWord Access:32]
  33644. [064h 0100 8] Address : 0000000000000470
  33645.  
  33646. [06Ch 0108 4] Value : 000003FF
  33647. [070h 0112 4] Register Mask : 000003FF
  33648.  
  33649. [074h 0116 1] Watchdog Action : 08
  33650. [075h 0117 1] Instruction : 00
  33651. [076h 0118 2] Reserved : 0000
  33652.  
  33653. [078h 0120 12] Register Region : [Generic Address Structure]
  33654. [078h 0120 1] Space ID : 01 [SystemIO]
  33655. [079h 0121 1] Bit Width : 01
  33656. [07Ah 0122 1] Bit Offset : 0B
  33657. [07Bh 0123 1] Encoded Access Width : 03 [DWord Access:32]
  33658. [07Ch 0124 8] Address : 0000000000000468
  33659.  
  33660. [084h 0132 4] Value : 00000000
  33661. [088h 0136 4] Register Mask : 00000001
  33662.  
  33663. [08Ch 0140 1] Watchdog Action : 09
  33664. [08Dh 0141 1] Instruction : 82
  33665. [08Eh 0142 2] Reserved : 0000
  33666.  
  33667. [090h 0144 12] Register Region : [Generic Address Structure]
  33668. [090h 0144 1] Space ID : 01 [SystemIO]
  33669. [091h 0145 1] Bit Width : 01
  33670. [092h 0146 1] Bit Offset : 0B
  33671. [093h 0147 1] Encoded Access Width : 03 [DWord Access:32]
  33672. [094h 0148 8] Address : 0000000000000468
  33673.  
  33674. [09Ch 0156 4] Value : 00000000
  33675. [0A0h 0160 4] Register Mask : 00000001
  33676.  
  33677. [0A4h 0164 1] Watchdog Action : 0A
  33678. [0A5h 0165 1] Instruction : 00
  33679. [0A6h 0166 2] Reserved : 0000
  33680.  
  33681. [0A8h 0168 12] Register Region : [Generic Address Structure]
  33682. [0A8h 0168 1] Space ID : 01 [SystemIO]
  33683. [0A9h 0169 1] Bit Width : 01
  33684. [0AAh 0170 1] Bit Offset : 0B
  33685. [0ABh 0171 1] Encoded Access Width : 03 [DWord Access:32]
  33686. [0ACh 0172 8] Address : 0000000000000468
  33687.  
  33688. [0B4h 0180 4] Value : 00000001
  33689. [0B8h 0184 4] Register Mask : 00000001
  33690.  
  33691. [0BCh 0188 1] Watchdog Action : 0B
  33692. [0BDh 0189 1] Instruction : 82
  33693. [0BEh 0190 2] Reserved : 0000
  33694.  
  33695. [0C0h 0192 12] Register Region : [Generic Address Structure]
  33696. [0C0h 0192 1] Space ID : 01 [SystemIO]
  33697. [0C1h 0193 1] Bit Width : 01
  33698. [0C2h 0194 1] Bit Offset : 0B
  33699. [0C3h 0195 1] Encoded Access Width : 03 [DWord Access:32]
  33700. [0C4h 0196 8] Address : 0000000000000468
  33701.  
  33702. [0CCh 0204 4] Value : 00000001
  33703. [0D0h 0208 4] Register Mask : 00000001
  33704.  
  33705. [0D4h 0212 1] Watchdog Action : 20
  33706. [0D5h 0213 1] Instruction : 00
  33707. [0D6h 0214 2] Reserved : 0000
  33708.  
  33709. [0D8h 0216 12] Register Region : [Generic Address Structure]
  33710. [0D8h 0216 1] Space ID : 01 [SystemIO]
  33711. [0D9h 0217 1] Bit Width : 01
  33712. [0DAh 0218 1] Bit Offset : 11
  33713. [0DBh 0219 1] Encoded Access Width : 03 [DWord Access:32]
  33714. [0DCh 0220 8] Address : 0000000000000464
  33715.  
  33716. [0E4h 0228 4] Value : 00000001
  33717. [0E8h 0232 4] Register Mask : 00000001
  33718.  
  33719. [0ECh 0236 1] Watchdog Action : 21
  33720. [0EDh 0237 1] Instruction : 82
  33721. [0EEh 0238 2] Reserved : 0000
  33722.  
  33723. [0F0h 0240 12] Register Region : [Generic Address Structure]
  33724. [0F0h 0240 1] Space ID : 01 [SystemIO]
  33725. [0F1h 0241 1] Bit Width : 01
  33726. [0F2h 0242 1] Bit Offset : 11
  33727. [0F3h 0243 1] Encoded Access Width : 03 [DWord Access:32]
  33728. [0F4h 0244 8] Address : 0000000000000464
  33729.  
  33730. [0FCh 0252 4] Value : 00000001
  33731. [100h 0256 4] Register Mask : 00000001
  33732.  
  33733. Raw Table Data: Length 260 (0x104)
  33734.  
  33735. 0000: 57 44 41 54 04 01 00 00 01 CA 00 00 00 00 00 00 // WDAT............
  33736. 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 // ................
  33737. 0020: 00 00 00 00 20 00 00 00 FF 00 FF FF FF 00 00 00 // .... ...........
  33738. 0030: 58 02 00 00 FF 03 00 00 02 00 00 00 81 00 00 00 // X...............
  33739. 0040: 08 00 00 00 01 82 00 00 01 0A 00 03 60 04 00 00 // ............`...
  33740. 0050: 00 00 00 00 04 00 00 00 FF 03 00 00 06 83 00 00 // ................
  33741. 0060: 01 0A 10 03 70 04 00 00 00 00 00 00 FF 03 00 00 // ....p...........
  33742. 0070: FF 03 00 00 08 00 00 00 01 01 0B 03 68 04 00 00 // ............h...
  33743. 0080: 00 00 00 00 00 00 00 00 01 00 00 00 09 82 00 00 // ................
  33744. 0090: 01 01 0B 03 68 04 00 00 00 00 00 00 00 00 00 00 // ....h...........
  33745. 00A0: 01 00 00 00 0A 00 00 00 01 01 0B 03 68 04 00 00 // ............h...
  33746. 00B0: 00 00 00 00 01 00 00 00 01 00 00 00 0B 82 00 00 // ................
  33747. 00C0: 01 01 0B 03 68 04 00 00 00 00 00 00 01 00 00 00 // ....h...........
  33748. 00D0: 01 00 00 00 20 00 00 00 01 01 11 03 64 04 00 00 // .... .......d...
  33749. 00E0: 00 00 00 00 01 00 00 00 01 00 00 00 21 82 00 00 // ............!...
  33750. 00F0: 01 01 11 03 64 04 00 00 00 00 00 00 01 00 00 00 // ....d...........
  33751. 0100: 01 00 00 00 // ....
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement