Attachment 'acpidump.out.txt'

Download

   1 /*
   2   RSD PTR: OEM=LENOVO, ACPI_Rev=2.0x (2)
   3 	XSDT=0x000000005fd0c188, length=36, cksum=100
   4  */
   5 /*
   6   XSDT: Length=260, Revision=1, Checksum=126,
   7 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
   8 	Creator ID=PTEC, Creator Revision=0x2
   9 	Entries={ 0x000000005dc11000, 0x000000005dc64000, 0x000000005dc63000, 0x000000005dc2a000, 0x000000005dc14000, 0x000000005fb2c000, 0x000000005dc12000, 0x000000005dc10000, 0x000000005dc0f000, 0x000000005dc0e000, 0x000000005dc0d000, 0x000000005dbe4000, 0x000000005dbe1000, 0x000000005dbe0000, 0x000000005dbdf000, 0x000000005dbde000, 0x000000005dbdd000, 0x000000005dbdc000, 0x000000005dbda000, 0x000000005dbd9000, 0x000000005dbd8000, 0x000000005dbd7000, 0x000000005d9fa000, 0x000000005c1f2000, 0x000000005c1f3000, 0x000000005c1f0000, 0x000000005c1ef000, 0x000000005fac1000 }
  10  */
  11 /*
  12   FACP: Length=276, Revision=6, Checksum=162,
  13 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
  14 	Creator ID=PTEC, Creator Revision=0x2
  15  	FACS=0x5fb0d000, DSDT=0x5dbe6000
  16 	INT_MODEL=PIC
  17 	Preferred_PM_Profile=Mobile (2)
  18 	SCI_INT=9
  19 	SMI_CMD=0xb2, ACPI_ENABLE=0xf0, ACPI_DISABLE=0xf1, S4BIOS_REQ=0xf2
  20 	PSTATE_CNT=0x0
  21 	PM1a_EVT_BLK=0x1800-0x1803
  22 	PM1a_CNT_BLK=0x1804-0x1805
  23 	PM2_CNT_BLK=0x1850-0x1850
  24 	PM_TMR_BLK=0x1808-0x180b
  25 	GPE0_BLK=0x1860-0x187f
  26 	P_LVL2_LAT=101 us, P_LVL3_LAT=1001 us
  27 	FLUSH_SIZE=0, FLUSH_STRIDE=0
  28 	DUTY_OFFSET=1, DUTY_WIDTH=3
  29 	DAY_ALRM=13, MON_ALRM=0, CENTURY=50
  30 	IAPC_BOOT_ARCH={LEGACY_DEVICES,NO_ASPM}
  31 	Flags={WBINVD,C1_SUPPORTED,SLEEP_BUTTON,S4_RTC_WAKE,DOCKING_SUPPORTED,RESET_REGISTER,PCI_EXPRESS_WAKE,PLATFORM_CLOCK}
  32 	RESET_REG=0xcf9:0[8] (IO), RESET_VALUE=0x6
  33  */
  34 /*
  35   FACS:	Length=64, HwSig=0x00003e40, Firm_Wake_Vec=0x00000000
  36 	Global_Lock=
  37 	Flags=
  38 	Version=2
  39  */
  40 /*
  41   DSDT: Length=156789, Revision=2, Checksum=152,
  42 	OEMID=LENOVO, OEM Table ID=CFL, OEM Revision=0x20170001,
  43 	Creator ID=INTL, Creator Revision=0x20160422
  44  */
  45 /*
  46   SSDT: Length=7007, Revision=2, Checksum=213,
  47 	OEMID=LENOVO, OEM Table ID=CpuSsdt, OEM Revision=0x3000,
  48 	Creator ID=INTL, Creator Revision=0x20160527
  49  */
  50 /*
  51   SSDT: Length=1389, Revision=2, Checksum=146,
  52 	OEMID=LENOVO, OEM Table ID=CtdpB, OEM Revision=0x1000,
  53 	Creator ID=INTL, Creator Revision=0x20160527
  54  */
  55 /*
  56   SSDT: Length=14521, Revision=2, Checksum=176,
  57 	OEMID=LENOVO, OEM Table ID=DptfTabl, OEM Revision=0x1000,
  58 	Creator ID=INTL, Creator Revision=0x20160527
  59  */
  60 /*
  61   SSDT: Length=12605, Revision=2, Checksum=140,
  62 	OEMID=LENOVO, OEM Table ID=SaSsdt, OEM Revision=0x3000,
  63 	Creator ID=INTL, Creator Revision=0x20160527
  64  */
  65 /*
  66   UEFI: Length=66, Revision=1, Checksum=234,
  67 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
  68 	Creator ID=PTEC, Creator Revision=0x2
  69  */
  70 /*
  71   SSDT: Length=1328, Revision=2, Checksum=132,
  72 	OEMID=LENOVO, OEM Table ID=PerfTune, OEM Revision=0x1000,
  73 	Creator ID=INTL, Creator Revision=0x20160527
  74  */
  75 /*
  76   HPET: Length=56, Revision=1, Checksum=30,
  77 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
  78 	Creator ID=PTEC, Creator Revision=0x2
  79 	HPET Number=0
  80 	ADDR=0x00000000fed00000:0[64] (Memory)	HW Rev=0x1
  81 	Comparators=2
  82 	Counter Size=1
  83 	Legacy IRQ routing capable={TRUE}
  84 	PCI Vendor ID=0x8086
  85 	Minimal Tick=128
  86 	Flags=0x00
  87  */
  88 /*
  89   APIC: Length=300, Revision=3, Checksum=225,
  90 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
  91 	Creator ID=PTEC, Creator Revision=0x2
  92 	Local APIC ADDR=0xfee00000
  93 	Flags={PC-AT}
  94 
  95 	Type=Local APIC
  96 	ACPI CPU=1
  97 	Flags={ENABLED}
  98 	APIC ID=0
  99 
 100 	Type=Local APIC
 101 	ACPI CPU=2
 102 	Flags={ENABLED}
 103 	APIC ID=2
 104 
 105 	Type=Local APIC
 106 	ACPI CPU=3
 107 	Flags={ENABLED}
 108 	APIC ID=4
 109 
 110 	Type=Local APIC
 111 	ACPI CPU=4
 112 	Flags={ENABLED}
 113 	APIC ID=6
 114 
 115 	Type=Local APIC
 116 	ACPI CPU=5
 117 	Flags={ENABLED}
 118 	APIC ID=1
 119 
 120 	Type=Local APIC
 121 	ACPI CPU=6
 122 	Flags={ENABLED}
 123 	APIC ID=3
 124 
 125 	Type=Local APIC
 126 	ACPI CPU=7
 127 	Flags={ENABLED}
 128 	APIC ID=5
 129 
 130 	Type=Local APIC
 131 	ACPI CPU=8
 132 	Flags={ENABLED}
 133 	APIC ID=7
 134 
 135 	Type=Local APIC
 136 	ACPI CPU=9
 137 	Flags={DISABLED}
 138 	APIC ID=255
 139 
 140 	Type=Local APIC
 141 	ACPI CPU=10
 142 	Flags={DISABLED}
 143 	APIC ID=255
 144 
 145 	Type=Local APIC
 146 	ACPI CPU=11
 147 	Flags={DISABLED}
 148 	APIC ID=255
 149 
 150 	Type=Local APIC
 151 	ACPI CPU=12
 152 	Flags={DISABLED}
 153 	APIC ID=255
 154 
 155 	Type=Local APIC
 156 	ACPI CPU=13
 157 	Flags={DISABLED}
 158 	APIC ID=255
 159 
 160 	Type=Local APIC
 161 	ACPI CPU=14
 162 	Flags={DISABLED}
 163 	APIC ID=255
 164 
 165 	Type=Local APIC
 166 	ACPI CPU=15
 167 	Flags={DISABLED}
 168 	APIC ID=255
 169 
 170 	Type=Local APIC
 171 	ACPI CPU=16
 172 	Flags={DISABLED}
 173 	APIC ID=255
 174 
 175 	Type=IO APIC
 176 	APIC ID=2
 177 	INT BASE=0
 178 	ADDR=0x00000000fec00000
 179 
 180 	Type=INT Override
 181 	BUS=0
 182 	IRQ=0
 183 	INTR=2
 184 	Flags={Polarity=conforming, Trigger=conforming}
 185 
 186 	Type=INT Override
 187 	BUS=0
 188 	IRQ=9
 189 	INTR=9
 190 	Flags={Polarity=active-hi, Trigger=level}
 191 
 192 	Type=Local APIC NMI
 193 	ACPI CPU=1
 194 	LINT Pin=1
 195 	Flags={Polarity=active-hi, Trigger=edge}
 196 
 197 	Type=Local APIC NMI
 198 	ACPI CPU=2
 199 	LINT Pin=1
 200 	Flags={Polarity=active-hi, Trigger=edge}
 201 
 202 	Type=Local APIC NMI
 203 	ACPI CPU=3
 204 	LINT Pin=1
 205 	Flags={Polarity=active-hi, Trigger=edge}
 206 
 207 	Type=Local APIC NMI
 208 	ACPI CPU=4
 209 	LINT Pin=1
 210 	Flags={Polarity=active-hi, Trigger=edge}
 211 
 212 	Type=Local APIC NMI
 213 	ACPI CPU=5
 214 	LINT Pin=1
 215 	Flags={Polarity=active-hi, Trigger=edge}
 216 
 217 	Type=Local APIC NMI
 218 	ACPI CPU=6
 219 	LINT Pin=1
 220 	Flags={Polarity=active-hi, Trigger=edge}
 221 
 222 	Type=Local APIC NMI
 223 	ACPI CPU=7
 224 	LINT Pin=1
 225 	Flags={Polarity=active-hi, Trigger=edge}
 226 
 227 	Type=Local APIC NMI
 228 	ACPI CPU=8
 229 	LINT Pin=1
 230 	Flags={Polarity=active-hi, Trigger=edge}
 231 
 232 	Type=Local APIC NMI
 233 	ACPI CPU=9
 234 	LINT Pin=1
 235 	Flags={Polarity=active-hi, Trigger=edge}
 236 
 237 	Type=Local APIC NMI
 238 	ACPI CPU=10
 239 	LINT Pin=1
 240 	Flags={Polarity=active-hi, Trigger=edge}
 241 
 242 	Type=Local APIC NMI
 243 	ACPI CPU=11
 244 	LINT Pin=1
 245 	Flags={Polarity=active-hi, Trigger=edge}
 246 
 247 	Type=Local APIC NMI
 248 	ACPI CPU=12
 249 	LINT Pin=1
 250 	Flags={Polarity=active-hi, Trigger=edge}
 251 
 252 	Type=Local APIC NMI
 253 	ACPI CPU=13
 254 	LINT Pin=1
 255 	Flags={Polarity=active-hi, Trigger=edge}
 256 
 257 	Type=Local APIC NMI
 258 	ACPI CPU=14
 259 	LINT Pin=1
 260 	Flags={Polarity=active-hi, Trigger=edge}
 261 
 262 	Type=Local APIC NMI
 263 	ACPI CPU=15
 264 	LINT Pin=1
 265 	Flags={Polarity=active-hi, Trigger=edge}
 266 
 267 	Type=Local APIC NMI
 268 	ACPI CPU=16
 269 	LINT Pin=1
 270 	Flags={Polarity=active-hi, Trigger=edge}
 271  */
 272 /*
 273   MCFG: Length=60, Revision=1, Checksum=134,
 274 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 275 	Creator ID=PTEC, Creator Revision=0x2
 276 
 277 	Base Address=0x00000000e0000000
 278 	Segment Group=0x0000
 279 	Start Bus=0
 280 	End Bus=255
 281  */
 282 /*
 283   ECDT: Length=83, Revision=1, Checksum=204,
 284 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 285 	Creator ID=PTEC, Creator Revision=0x2
 286 	EC_CONTROL=0x66:0[8] (IO)
 287 	EC_DATA=0x62:0[8] (IO)
 288 	UID=0, GPE_BIT=0x16
 289 	EC_ID=\_SB.PCI0.LPCB.EC
 290  */
 291 /*
 292   SSDT: Length=6732, Revision=2, Checksum=21,
 293 	OEMID=LENOVO, OEM Table ID=WHL_Tbt_, OEM Revision=0x1000,
 294 	Creator ID=INTL, Creator Revision=0x20160527
 295  */
 296 /*
 297   SSDT: Length=8983, Revision=2, Checksum=173,
 298 	OEMID=LENOVO, OEM Table ID=ProjSsdt, OEM Revision=0x10,
 299 	Creator ID=INTL, Creator Revision=0x20160527
 300  */
 301 /*
 302   BOOT: Length=40, Revision=1, Checksum=27,
 303 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 304 	Creator ID=PTEC, Creator Revision=0x2
 305  */
 306 /*
 307   SLIC: Length=374, Revision=1, Checksum=98,
 308 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 309 	Creator ID=PTEC, Creator Revision=0x2
 310  */
 311 /*
 312   SSDT: Length=3722, Revision=2, Checksum=218,
 313 	OEMID=LENOVO, OEM Table ID=UsbCTabl, OEM Revision=0x1000,
 314 	Creator ID=INTL, Creator Revision=0x20160527
 315  */
 316 /*
 317   LPIT: Length=148, Revision=1, Checksum=238,
 318 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 319 	Creator ID=PTEC, Creator Revision=0x2
 320 
 321 	Type=ACPI_LPIT_TYPE_NATIVE_CSTATE
 322 	Length=56
 323 	UniqueId=0x0000
 324 	Flags=
 325 	EntryTrigger=0x0000000000000060 (?)	Residency=30000
 326 	Latency=3000
 327 	ResidencyCounter=0x0000000000000632 (?)	CounterFrequency=TSC
 328 
 329 	Type=ACPI_LPIT_TYPE_NATIVE_CSTATE
 330 	Length=56
 331 	UniqueId=0x0001
 332 	Flags=
 333 	EntryTrigger=0x0000000000000060 (?)	Residency=30000
 334 	Latency=3000
 335 	ResidencyCounter=0xfe00193c:0[32] (Memory)	CounterFrequency=9580
 336  */
 337 /*
 338   WSMT: Length=40, Revision=1, Checksum=68,
 339 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 340 	Creator ID=PTEC, Creator Revision=0x2
 341  */
 342 /*
 343   SSDT: Length=5735, Revision=2, Checksum=250,
 344 	OEMID=LENOVO, OEM Table ID=TbtTypeC, OEM Revision=0x0,
 345 	Creator ID=INTL, Creator Revision=0x20160527
 346  */
 347 /*
 348   DBGP: Length=52, Revision=1, Checksum=76,
 349 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 350 	Creator ID=PTEC, Creator Revision=0x2
 351  */
 352 /*
 353   DBG2: Length=84, Revision=0, Checksum=228,
 354 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 355 	Creator ID=PTEC, Creator Revision=0x2
 356  */
 357 /*
 358   MSDM: Length=85, Revision=3, Checksum=69,
 359 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 360 	Creator ID=PTEC, Creator Revision=0x2
 361  */
 362 /*
 363   BATB: Length=74, Revision=2, Checksum=73,
 364 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 365 	Creator ID=PTEC, Creator Revision=0x2
 366  */
 367 /*
 368   NHLT: Length=45, Revision=0, Checksum=32,
 369 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 370 	Creator ID=PTEC, Creator Revision=0x2
 371  */
 372 /*
 373   DMAR: Length=168, Revision=1, Checksum=98,
 374 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 375 	Creator ID=PTEC, Creator Revision=0x2
 376 	Host Address Width=39
 377 	Flags={INTR_REMAP}
 378 
 379 	Type=DRHD
 380 	Length=24
 381 	Flags=
 382 	Segment=0
 383 	Address=0x00000000fed90000
 384 	Device Scope:
 385 		Type=PCI Endpoint Device
 386 		Length=8
 387 		EnumerationId=0
 388 		StartBusNumber=0
 389 		Path={2:0}
 390 
 391 	Type=DRHD
 392 	Length=32
 393 	Flags={INCLUDE_ALL}
 394 	Segment=0
 395 	Address=0x00000000fed91000
 396 	Device Scope:
 397 		Type=IOAPIC
 398 		Length=8
 399 		EnumerationId=2
 400 		StartBusNumber=0
 401 		Path={30:7}
 402 
 403 		Type=HPET
 404 		Length=8
 405 		EnumerationId=0
 406 		StartBusNumber=0
 407 		Path={30:6}
 408 
 409 	Type=RMRR
 410 	Length=32
 411 	Segment=0
 412 	BaseAddress=0x000000005fa2a000
 413 	LimitAddress=0x000000005fa49fff
 414 	Device Scope:
 415 		Type=PCI Endpoint Device
 416 		Length=8
 417 		EnumerationId=0
 418 		StartBusNumber=0
 419 		Path={20:0}
 420 
 421 	Type=RMRR
 422 	Length=32
 423 	Segment=0
 424 	BaseAddress=0x000000006b000000
 425 	LimitAddress=0x000000006d7fffff
 426 	Device Scope:
 427 		Type=PCI Endpoint Device
 428 		Length=8
 429 		EnumerationId=0
 430 		StartBusNumber=0
 431 		Path={2:0}
 432  */
 433 /*
 434   FPDT: Length=68, Revision=1, Checksum=41,
 435 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 436 	Creator ID=PTEC, Creator Revision=0x2
 437  */
 438 /*
 439   BGRT: Length=56, Revision=1, Checksum=251,
 440 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 441 	Creator ID=PTEC, Creator Revision=0x2
 442  */
 443 /*
 444   UEFI: Length=298, Revision=1, Checksum=68,
 445 	OEMID=LENOVO, OEM Table ID=TP-N2J, OEM Revision=0x1550,
 446 	Creator ID=PTEC, Creator Revision=0x2
 447  */
 448 /*
 449  * Intel ACPI Component Architecture
 450  * AML/ASL+ Disassembler version 20181213 (64-bit version)
 451  * Copyright (c) 2000 - 2018 Intel Corporation
 452  * 
 453  * Disassembling to symbolic ASL+ operators
 454  *
 455  * Disassembly of /tmp/acpidump.D8LJhj/acpdump.din, Tue Oct 22 16:47:21 2019
 456  *
 457  * Original Table Header:
 458  *     Signature        "DSDT"
 459  *     Length           0x00035577 (218487)
 460  *     Revision         0x02
 461  *     Checksum         0xAC
 462  *     OEM ID           "LENOVO"
 463  *     OEM Table ID     "CFL     "
 464  *     OEM Revision     0x20170001 (538378241)
 465  *     Compiler ID      "INTL"
 466  *     Compiler Version 0x20160422 (538313762)
 467  */
 468 DefinitionBlock ("", "DSDT", 2, "LENOVO", "CFL     ", 0x20170001)
 469 {
 470     External (_GPE.AL6F, MethodObj)    // 0 Arguments
 471     External (_GPE.P0L6, MethodObj)    // 0 Arguments
 472     External (_GPE.P1L6, MethodObj)    // 0 Arguments
 473     External (_GPE.P2L6, MethodObj)    // 0 Arguments
 474     External (_GPE.P3L6, MethodObj)    // 0 Arguments
 475     External (_SB_.AAC0, FieldUnitObj)
 476     External (_SB_.ACRT, FieldUnitObj)
 477     External (_SB_.APSV, FieldUnitObj)
 478     External (_SB_.BGIA, UnknownObj)
 479     External (_SB_.BGMA, UnknownObj)
 480     External (_SB_.BGMS, UnknownObj)
 481     External (_SB_.CBMI, FieldUnitObj)
 482     External (_SB_.CFGD, UnknownObj)
 483     External (_SB_.CLVL, UnknownObj)
 484     External (_SB_.CPPC, IntObj)
 485     External (_SB_.CTC0, FieldUnitObj)
 486     External (_SB_.CTC1, FieldUnitObj)
 487     External (_SB_.CTC2, FieldUnitObj)
 488     External (_SB_.DSAE, UnknownObj)
 489     External (_SB_.DTS1, UnknownObj)
 490     External (_SB_.DTS2, UnknownObj)
 491     External (_SB_.DTS3, UnknownObj)
 492     External (_SB_.DTS4, UnknownObj)
 493     External (_SB_.DTSE, UnknownObj)
 494     External (_SB_.DTSF, UnknownObj)
 495     External (_SB_.ELNG, UnknownObj)
 496     External (_SB_.EMNA, UnknownObj)
 497     External (_SB_.EPCS, UnknownObj)
 498     External (_SB_.GGIV, MethodObj)    // 1 Arguments
 499     External (_SB_.GGOV, MethodObj)    // 1 Arguments
 500     External (_SB_.GNUM, MethodObj)    // 1 Arguments
 501     External (_SB_.IETM, DeviceObj)
 502     External (_SB_.IETM.DPTE, UnknownObj)
 503     External (_SB_.IETM.GBDV, MethodObj)    // 0 Arguments
 504     External (_SB_.LID_._LID, MethodObj)    // 0 Arguments
 505     External (_SB_.OSCO, UnknownObj)
 506     External (_SB_.OSCP, IntObj)
 507     External (_SB_.PAGD, DeviceObj)
 508     External (_SB_.PAGD._PUR, PkgObj)
 509     External (_SB_.PAGD._STA, MethodObj)    // 0 Arguments
 510     External (_SB_.PCI0, DeviceObj)
 511     External (_SB_.PCI0.B0D3, DeviceObj)
 512     External (_SB_.PCI0.B0D4, DeviceObj)
 513     External (_SB_.PCI0.B0D4.NPCC, PkgObj)
 514     External (_SB_.PCI0.CTCD, MethodObj)    // 0 Arguments
 515     External (_SB_.PCI0.CTCN, MethodObj)    // 0 Arguments
 516     External (_SB_.PCI0.GFX0, DeviceObj)
 517     External (_SB_.PCI0.GFX0.AINT, MethodObj)    // 2 Arguments
 518     External (_SB_.PCI0.GFX0.ALSI, UnknownObj)
 519     External (_SB_.PCI0.GFX0.CBLV, UnknownObj)
 520     External (_SB_.PCI0.GFX0.CDCK, UnknownObj)
 521     External (_SB_.PCI0.GFX0.CLID, UnknownObj)
 522     External (_SB_.PCI0.GFX0.DD1F, DeviceObj)
 523     External (_SB_.PCI0.GFX0.DRDY, UnknownObj)
 524     External (_SB_.PCI0.GFX0.GSCI, MethodObj)    // 0 Arguments
 525     External (_SB_.PCI0.GFX0.GSSE, UnknownObj)
 526     External (_SB_.PCI0.GFX0.HDOS, MethodObj)    // 0 Arguments
 527     External (_SB_.PCI0.GFX0.HNOT, MethodObj)    // 1 Arguments
 528     External (_SB_.PCI0.GFX0.IUEH, MethodObj)    // 1 Arguments
 529     External (_SB_.PCI0.GFX0.STAT, UnknownObj)
 530     External (_SB_.PCI0.GFX0.TCHE, UnknownObj)
 531     External (_SB_.PCI0.GFX0.VLOC, MethodObj)    // 1 Arguments
 532     External (_SB_.PCI0.GLAN, DeviceObj)
 533     External (_SB_.PCI0.GPCB, MethodObj)    // 0 Arguments
 534     External (_SB_.PCI0.HDAS.PPMS, MethodObj)    // 1 Arguments
 535     External (_SB_.PCI0.HDAS.PS0X, MethodObj)    // 0 Arguments
 536     External (_SB_.PCI0.HDAS.PS3X, MethodObj)    // 0 Arguments
 537     External (_SB_.PCI0.HIDW, MethodObj)    // 4 Arguments
 538     External (_SB_.PCI0.HIWC, MethodObj)    // 1 Arguments
 539     External (_SB_.PCI0.I2C0, DeviceObj)
 540     External (_SB_.PCI0.I2C0.TPD0, DeviceObj)
 541     External (_SB_.PCI0.I2C1, DeviceObj)
 542     External (_SB_.PCI0.I2C1.TPL1, DeviceObj)
 543     External (_SB_.PCI0.IPU0, DeviceObj)
 544     External (_SB_.PCI0.LPCB.EC__, DeviceObj)
 545     External (_SB_.PCI0.LPCB.EC__.BRNS, MethodObj)    // 0 Arguments
 546     External (_SB_.PCI0.LPCB.EC__.BRTW, PkgObj)
 547     External (_SB_.PCI0.LPCB.EC__.DOCD, UnknownObj)
 548     External (_SB_.PCI0.LPCB.EC__.HKEY.DHKC, IntObj)
 549     External (_SB_.PCI0.LPCB.EC__.HKEY.DYTC, MethodObj)    // 1 Arguments
 550     External (_SB_.PCI0.LPCB.EC__.HKEY.MHPF, MethodObj)    // 1 Arguments
 551     External (_SB_.PCI0.LPCB.EC__.HKEY.OEMV, IntObj)
 552     External (_SB_.PCI0.LPCB.EC__.HKEY.TSSS, MethodObj)    // 0 Arguments
 553     External (_SB_.PCI0.LPCB.EC__.SLED, MethodObj)    // 1 Arguments
 554     External (_SB_.PCI0.LPCB.EC__.SLEG, MethodObj)    // 2 Arguments
 555     External (_SB_.PCI0.LPCB.ESPI, UnknownObj)
 556     External (_SB_.PCI0.LPCB.H_EC.CFSP, UnknownObj)
 557     External (_SB_.PCI0.LPCB.H_EC.DIM0, UnknownObj)
 558     External (_SB_.PCI0.LPCB.H_EC.DIM1, UnknownObj)
 559     External (_SB_.PCI0.LPCB.H_EC.ECAV, IntObj)
 560     External (_SB_.PCI0.LPCB.H_EC.ECRD, MethodObj)    // 1 Arguments
 561     External (_SB_.PCI0.LPCB.H_EC.PDDT, UnknownObj)
 562     External (_SB_.PCI0.LPCB.H_EC.PDPN, UnknownObj)
 563     External (_SB_.PCI0.LPCB.H_EC.PDVB, UnknownObj)
 564     External (_SB_.PCI0.LPCB.H_EC.SPT2, UnknownObj)
 565     External (_SB_.PCI0.LPCB.H_EC.XDAT, MethodObj)    // 0 Arguments
 566     External (_SB_.PCI0.LPCB.MOU_.PHID, MethodObj)    // 0 Arguments
 567     External (_SB_.PCI0.MHBR, FieldUnitObj)
 568     External (_SB_.PCI0.PAUD.PUAM, MethodObj)    // 0 Arguments
 569     External (_SB_.PCI0.PEG0, DeviceObj)
 570     External (_SB_.PCI0.PEG0.PEGP, DeviceObj)
 571     External (_SB_.PCI0.PEG1, DeviceObj)
 572     External (_SB_.PCI0.PEG2, DeviceObj)
 573     External (_SB_.PCI0.PTDP, UnknownObj)
 574     External (_SB_.PCI0.RP01, DeviceObj)
 575     External (_SB_.PCI0.RP01.D3HT, FieldUnitObj)
 576     External (_SB_.PCI0.RP01.PINI, MethodObj)    // 0 Arguments
 577     External (_SB_.PCI0.RP01.PON_, MethodObj)    // 0 Arguments
 578     External (_SB_.PCI0.RP01.PPBA, MethodObj)    // 1 Arguments
 579     External (_SB_.PCI0.RP01.PPRW, MethodObj)    // 0 Arguments
 580     External (_SB_.PCI0.RP01.PXSX, DeviceObj)
 581     External (_SB_.PCI0.RP01.SLOT, UnknownObj)
 582     External (_SB_.PCI0.RP01.UPRD, MethodObj)    // 1 Arguments
 583     External (_SB_.PCI0.RP01.VDID, UnknownObj)
 584     External (_SB_.PCI0.RP02, DeviceObj)
 585     External (_SB_.PCI0.RP02.D3HT, FieldUnitObj)
 586     External (_SB_.PCI0.RP02.PINI, MethodObj)    // 0 Arguments
 587     External (_SB_.PCI0.RP02.PON_, MethodObj)    // 0 Arguments
 588     External (_SB_.PCI0.RP02.PPBA, MethodObj)    // 1 Arguments
 589     External (_SB_.PCI0.RP02.PPRW, MethodObj)    // 0 Arguments
 590     External (_SB_.PCI0.RP02.SLOT, UnknownObj)
 591     External (_SB_.PCI0.RP02.UPRD, MethodObj)    // 1 Arguments
 592     External (_SB_.PCI0.RP02.VDID, UnknownObj)
 593     External (_SB_.PCI0.RP03, DeviceObj)
 594     External (_SB_.PCI0.RP03.D3HT, FieldUnitObj)
 595     External (_SB_.PCI0.RP03.PINI, MethodObj)    // 0 Arguments
 596     External (_SB_.PCI0.RP03.PON_, MethodObj)    // 0 Arguments
 597     External (_SB_.PCI0.RP03.PPBA, MethodObj)    // 1 Arguments
 598     External (_SB_.PCI0.RP03.PPRW, MethodObj)    // 0 Arguments
 599     External (_SB_.PCI0.RP03.SLOT, UnknownObj)
 600     External (_SB_.PCI0.RP03.UPRD, MethodObj)    // 1 Arguments
 601     External (_SB_.PCI0.RP03.VDID, UnknownObj)
 602     External (_SB_.PCI0.RP04, DeviceObj)
 603     External (_SB_.PCI0.RP04.D3HT, FieldUnitObj)
 604     External (_SB_.PCI0.RP04.PINI, MethodObj)    // 0 Arguments
 605     External (_SB_.PCI0.RP04.PON_, MethodObj)    // 0 Arguments
 606     External (_SB_.PCI0.RP04.PPBA, MethodObj)    // 1 Arguments
 607     External (_SB_.PCI0.RP04.PPRW, MethodObj)    // 0 Arguments
 608     External (_SB_.PCI0.RP04.SLOT, UnknownObj)
 609     External (_SB_.PCI0.RP04.UPRD, MethodObj)    // 1 Arguments
 610     External (_SB_.PCI0.RP04.VDID, UnknownObj)
 611     External (_SB_.PCI0.RP05, DeviceObj)
 612     External (_SB_.PCI0.RP05.D3HT, FieldUnitObj)
 613     External (_SB_.PCI0.RP05.PDOF, MethodObj)    // 0 Arguments
 614     External (_SB_.PCI0.RP05.PDON, MethodObj)    // 0 Arguments
 615     External (_SB_.PCI0.RP05.PINI, MethodObj)    // 0 Arguments
 616     External (_SB_.PCI0.RP05.POFF, MethodObj)    // 0 Arguments
 617     External (_SB_.PCI0.RP05.PON_, MethodObj)    // 0 Arguments
 618     External (_SB_.PCI0.RP05.PPBA, MethodObj)    // 1 Arguments
 619     External (_SB_.PCI0.RP05.PXSX, DeviceObj)
 620     External (_SB_.PCI0.RP05.SLOT, UnknownObj)
 621     External (_SB_.PCI0.RP05.UPRD, MethodObj)    // 1 Arguments
 622     External (_SB_.PCI0.RP05.VDID, UnknownObj)
 623     External (_SB_.PCI0.RP06, DeviceObj)
 624     External (_SB_.PCI0.RP06.D3HT, FieldUnitObj)
 625     External (_SB_.PCI0.RP06.PINI, MethodObj)    // 0 Arguments
 626     External (_SB_.PCI0.RP06.PON_, MethodObj)    // 0 Arguments
 627     External (_SB_.PCI0.RP06.PPBA, MethodObj)    // 1 Arguments
 628     External (_SB_.PCI0.RP06.PPRW, MethodObj)    // 0 Arguments
 629     External (_SB_.PCI0.RP06.SLOT, UnknownObj)
 630     External (_SB_.PCI0.RP06.UPRD, MethodObj)    // 1 Arguments
 631     External (_SB_.PCI0.RP06.VDID, UnknownObj)
 632     External (_SB_.PCI0.RP07, DeviceObj)
 633     External (_SB_.PCI0.RP07._ADR, MethodObj)    // 0 Arguments
 634     External (_SB_.PCI0.RP07.D3HT, FieldUnitObj)
 635     External (_SB_.PCI0.RP07.DL23, MethodObj)    // 0 Arguments
 636     External (_SB_.PCI0.RP07.L23D, MethodObj)    // 0 Arguments
 637     External (_SB_.PCI0.RP07.LASX, UnknownObj)
 638     External (_SB_.PCI0.RP07.PINI, MethodObj)    // 0 Arguments
 639     External (_SB_.PCI0.RP07.POFF, MethodObj)    // 0 Arguments
 640     External (_SB_.PCI0.RP07.PON_, MethodObj)    // 0 Arguments
 641     External (_SB_.PCI0.RP07.PPBA, MethodObj)    // 1 Arguments
 642     External (_SB_.PCI0.RP07.PPRW, MethodObj)    // 0 Arguments
 643     External (_SB_.PCI0.RP07.PXSX, DeviceObj)
 644     External (_SB_.PCI0.RP07.PXSX._ADR, IntObj)
 645     External (_SB_.PCI0.RP07.SLOT, UnknownObj)
 646     External (_SB_.PCI0.RP07.UPRD, MethodObj)    // 1 Arguments
 647     External (_SB_.PCI0.RP07.VDID, UnknownObj)
 648     External (_SB_.PCI0.RP08, DeviceObj)
 649     External (_SB_.PCI0.RP08.D3HT, FieldUnitObj)
 650     External (_SB_.PCI0.RP08.PINI, MethodObj)    // 0 Arguments
 651     External (_SB_.PCI0.RP08.PON_, MethodObj)    // 0 Arguments
 652     External (_SB_.PCI0.RP08.PPBA, MethodObj)    // 1 Arguments
 653     External (_SB_.PCI0.RP08.PPRW, MethodObj)    // 0 Arguments
 654     External (_SB_.PCI0.RP08.SLOT, UnknownObj)
 655     External (_SB_.PCI0.RP08.UPRD, MethodObj)    // 1 Arguments
 656     External (_SB_.PCI0.RP08.VDID, UnknownObj)
 657     External (_SB_.PCI0.RP09, DeviceObj)
 658     External (_SB_.PCI0.RP09.D3HT, FieldUnitObj)
 659     External (_SB_.PCI0.RP09.PINI, MethodObj)    // 0 Arguments
 660     External (_SB_.PCI0.RP09.POFF, MethodObj)    // 0 Arguments
 661     External (_SB_.PCI0.RP09.PON_, MethodObj)    // 0 Arguments
 662     External (_SB_.PCI0.RP09.PPBA, MethodObj)    // 1 Arguments
 663     External (_SB_.PCI0.RP09.PPRW, MethodObj)    // 0 Arguments
 664     External (_SB_.PCI0.RP09.PXSX, DeviceObj)
 665     External (_SB_.PCI0.RP09.SLOT, UnknownObj)
 666     External (_SB_.PCI0.RP09.UPRD, MethodObj)    // 1 Arguments
 667     External (_SB_.PCI0.RP09.VDID, UnknownObj)
 668     External (_SB_.PCI0.RP10, DeviceObj)
 669     External (_SB_.PCI0.RP10.D3HT, FieldUnitObj)
 670     External (_SB_.PCI0.RP10.PINI, MethodObj)    // 0 Arguments
 671     External (_SB_.PCI0.RP10.PON_, MethodObj)    // 0 Arguments
 672     External (_SB_.PCI0.RP10.PPBA, MethodObj)    // 1 Arguments
 673     External (_SB_.PCI0.RP10.PPRW, MethodObj)    // 0 Arguments
 674     External (_SB_.PCI0.RP10.SLOT, UnknownObj)
 675     External (_SB_.PCI0.RP10.UPRD, MethodObj)    // 1 Arguments
 676     External (_SB_.PCI0.RP10.VDID, UnknownObj)
 677     External (_SB_.PCI0.RP11, DeviceObj)
 678     External (_SB_.PCI0.RP11.D3HT, FieldUnitObj)
 679     External (_SB_.PCI0.RP11.PINI, MethodObj)    // 0 Arguments
 680     External (_SB_.PCI0.RP11.POFF, MethodObj)    // 0 Arguments
 681     External (_SB_.PCI0.RP11.PON_, MethodObj)    // 0 Arguments
 682     External (_SB_.PCI0.RP11.PPBA, MethodObj)    // 1 Arguments
 683     External (_SB_.PCI0.RP11.PPRW, MethodObj)    // 0 Arguments
 684     External (_SB_.PCI0.RP11.SLOT, UnknownObj)
 685     External (_SB_.PCI0.RP11.UPRD, MethodObj)    // 1 Arguments
 686     External (_SB_.PCI0.RP11.VDID, UnknownObj)
 687     External (_SB_.PCI0.RP12, DeviceObj)
 688     External (_SB_.PCI0.RP12.D3HT, FieldUnitObj)
 689     External (_SB_.PCI0.RP12.PINI, MethodObj)    // 0 Arguments
 690     External (_SB_.PCI0.RP12.PON_, MethodObj)    // 0 Arguments
 691     External (_SB_.PCI0.RP12.PPBA, MethodObj)    // 1 Arguments
 692     External (_SB_.PCI0.RP12.PPRW, MethodObj)    // 0 Arguments
 693     External (_SB_.PCI0.RP12.SLOT, UnknownObj)
 694     External (_SB_.PCI0.RP12.UPRD, MethodObj)    // 1 Arguments
 695     External (_SB_.PCI0.RP12.VDID, UnknownObj)
 696     External (_SB_.PCI0.RP13, DeviceObj)
 697     External (_SB_.PCI0.RP13.D3HT, FieldUnitObj)
 698     External (_SB_.PCI0.RP13.PINI, MethodObj)    // 0 Arguments
 699     External (_SB_.PCI0.RP13.POFF, MethodObj)    // 0 Arguments
 700     External (_SB_.PCI0.RP13.PON_, MethodObj)    // 0 Arguments
 701     External (_SB_.PCI0.RP13.PPBA, MethodObj)    // 1 Arguments
 702     External (_SB_.PCI0.RP13.PPRW, MethodObj)    // 0 Arguments
 703     External (_SB_.PCI0.RP13.SLOT, UnknownObj)
 704     External (_SB_.PCI0.RP13.UPRD, MethodObj)    // 1 Arguments
 705     External (_SB_.PCI0.RP13.VDID, UnknownObj)
 706     External (_SB_.PCI0.RP14, DeviceObj)
 707     External (_SB_.PCI0.RP14.D3HT, FieldUnitObj)
 708     External (_SB_.PCI0.RP14.PINI, MethodObj)    // 0 Arguments
 709     External (_SB_.PCI0.RP14.PON_, MethodObj)    // 0 Arguments
 710     External (_SB_.PCI0.RP14.PPBA, MethodObj)    // 1 Arguments
 711     External (_SB_.PCI0.RP14.PPRW, MethodObj)    // 0 Arguments
 712     External (_SB_.PCI0.RP14.SLOT, UnknownObj)
 713     External (_SB_.PCI0.RP14.UPRD, MethodObj)    // 1 Arguments
 714     External (_SB_.PCI0.RP14.VDID, UnknownObj)
 715     External (_SB_.PCI0.RP15, DeviceObj)
 716     External (_SB_.PCI0.RP15.D3HT, FieldUnitObj)
 717     External (_SB_.PCI0.RP15.PINI, MethodObj)    // 0 Arguments
 718     External (_SB_.PCI0.RP15.POFF, MethodObj)    // 0 Arguments
 719     External (_SB_.PCI0.RP15.PON_, MethodObj)    // 0 Arguments
 720     External (_SB_.PCI0.RP15.PPBA, MethodObj)    // 1 Arguments
 721     External (_SB_.PCI0.RP15.PPRW, MethodObj)    // 0 Arguments
 722     External (_SB_.PCI0.RP15.SLOT, UnknownObj)
 723     External (_SB_.PCI0.RP15.UPRD, MethodObj)    // 1 Arguments
 724     External (_SB_.PCI0.RP15.VDID, UnknownObj)
 725     External (_SB_.PCI0.RP16, DeviceObj)
 726     External (_SB_.PCI0.RP16.D3HT, FieldUnitObj)
 727     External (_SB_.PCI0.RP16.PINI, MethodObj)    // 0 Arguments
 728     External (_SB_.PCI0.RP16.PON_, MethodObj)    // 0 Arguments
 729     External (_SB_.PCI0.RP16.PPBA, MethodObj)    // 1 Arguments
 730     External (_SB_.PCI0.RP16.PPRW, MethodObj)    // 0 Arguments
 731     External (_SB_.PCI0.RP16.SLOT, UnknownObj)
 732     External (_SB_.PCI0.RP16.UPRD, MethodObj)    // 1 Arguments
 733     External (_SB_.PCI0.RP16.VDID, UnknownObj)
 734     External (_SB_.PCI0.RP17, DeviceObj)
 735     External (_SB_.PCI0.RP17.D3HT, FieldUnitObj)
 736     External (_SB_.PCI0.RP17.PINI, MethodObj)    // 0 Arguments
 737     External (_SB_.PCI0.RP17.POFF, MethodObj)    // 0 Arguments
 738     External (_SB_.PCI0.RP17.PON_, MethodObj)    // 0 Arguments
 739     External (_SB_.PCI0.RP17.PPBA, MethodObj)    // 1 Arguments
 740     External (_SB_.PCI0.RP17.PPRW, MethodObj)    // 0 Arguments
 741     External (_SB_.PCI0.RP17.SLOT, UnknownObj)
 742     External (_SB_.PCI0.RP17.UPRD, MethodObj)    // 1 Arguments
 743     External (_SB_.PCI0.RP17.VDID, UnknownObj)
 744     External (_SB_.PCI0.RP18, DeviceObj)
 745     External (_SB_.PCI0.RP18.D3HT, FieldUnitObj)
 746     External (_SB_.PCI0.RP18.PINI, MethodObj)    // 0 Arguments
 747     External (_SB_.PCI0.RP18.PON_, MethodObj)    // 0 Arguments
 748     External (_SB_.PCI0.RP18.PPBA, MethodObj)    // 1 Arguments
 749     External (_SB_.PCI0.RP18.PPRW, MethodObj)    // 0 Arguments
 750     External (_SB_.PCI0.RP18.SLOT, UnknownObj)
 751     External (_SB_.PCI0.RP18.UPRD, MethodObj)    // 1 Arguments
 752     External (_SB_.PCI0.RP18.VDID, UnknownObj)
 753     External (_SB_.PCI0.RP19, DeviceObj)
 754     External (_SB_.PCI0.RP19.D3HT, FieldUnitObj)
 755     External (_SB_.PCI0.RP19.PINI, MethodObj)    // 0 Arguments
 756     External (_SB_.PCI0.RP19.POFF, MethodObj)    // 0 Arguments
 757     External (_SB_.PCI0.RP19.PON_, MethodObj)    // 0 Arguments
 758     External (_SB_.PCI0.RP19.PPBA, MethodObj)    // 1 Arguments
 759     External (_SB_.PCI0.RP19.PPRW, MethodObj)    // 0 Arguments
 760     External (_SB_.PCI0.RP19.SLOT, UnknownObj)
 761     External (_SB_.PCI0.RP19.UPRD, MethodObj)    // 1 Arguments
 762     External (_SB_.PCI0.RP19.VDID, UnknownObj)
 763     External (_SB_.PCI0.RP20, DeviceObj)
 764     External (_SB_.PCI0.RP20.D3HT, FieldUnitObj)
 765     External (_SB_.PCI0.RP20.PINI, MethodObj)    // 0 Arguments
 766     External (_SB_.PCI0.RP20.PON_, MethodObj)    // 0 Arguments
 767     External (_SB_.PCI0.RP20.PPBA, MethodObj)    // 1 Arguments
 768     External (_SB_.PCI0.RP20.PPRW, MethodObj)    // 0 Arguments
 769     External (_SB_.PCI0.RP20.SLOT, UnknownObj)
 770     External (_SB_.PCI0.RP20.UPRD, MethodObj)    // 1 Arguments
 771     External (_SB_.PCI0.RP20.VDID, UnknownObj)
 772     External (_SB_.PCI0.RP21, DeviceObj)
 773     External (_SB_.PCI0.RP21.PINI, MethodObj)    // 0 Arguments
 774     External (_SB_.PCI0.RP21.POFF, MethodObj)    // 0 Arguments
 775     External (_SB_.PCI0.RP21.PON_, MethodObj)    // 0 Arguments
 776     External (_SB_.PCI0.RP21.PPBA, MethodObj)    // 1 Arguments
 777     External (_SB_.PCI0.RP21.PPRW, MethodObj)    // 0 Arguments
 778     External (_SB_.PCI0.RP21.PXSX, DeviceObj)
 779     External (_SB_.PCI0.RP21.SLOT, UnknownObj)
 780     External (_SB_.PCI0.RP21.UPRD, MethodObj)    // 1 Arguments
 781     External (_SB_.PCI0.RP21.VDID, UnknownObj)
 782     External (_SB_.PCI0.RP22, DeviceObj)
 783     External (_SB_.PCI0.RP22.PINI, MethodObj)    // 0 Arguments
 784     External (_SB_.PCI0.RP22.PON_, MethodObj)    // 0 Arguments
 785     External (_SB_.PCI0.RP22.PPBA, MethodObj)    // 1 Arguments
 786     External (_SB_.PCI0.RP22.PPRW, MethodObj)    // 0 Arguments
 787     External (_SB_.PCI0.RP22.SLOT, UnknownObj)
 788     External (_SB_.PCI0.RP22.UPRD, MethodObj)    // 1 Arguments
 789     External (_SB_.PCI0.RP22.VDID, UnknownObj)
 790     External (_SB_.PCI0.RP23, DeviceObj)
 791     External (_SB_.PCI0.RP23.PINI, MethodObj)    // 0 Arguments
 792     External (_SB_.PCI0.RP23.POFF, MethodObj)    // 0 Arguments
 793     External (_SB_.PCI0.RP23.PON_, MethodObj)    // 0 Arguments
 794     External (_SB_.PCI0.RP23.PPBA, MethodObj)    // 1 Arguments
 795     External (_SB_.PCI0.RP23.PPRW, MethodObj)    // 0 Arguments
 796     External (_SB_.PCI0.RP23.SLOT, UnknownObj)
 797     External (_SB_.PCI0.RP23.UPRD, MethodObj)    // 1 Arguments
 798     External (_SB_.PCI0.RP23.VDID, UnknownObj)
 799     External (_SB_.PCI0.RP24, DeviceObj)
 800     External (_SB_.PCI0.RP24.PINI, MethodObj)    // 0 Arguments
 801     External (_SB_.PCI0.RP24.PON_, MethodObj)    // 0 Arguments
 802     External (_SB_.PCI0.RP24.PPBA, MethodObj)    // 1 Arguments
 803     External (_SB_.PCI0.RP24.PPRW, MethodObj)    // 0 Arguments
 804     External (_SB_.PCI0.RP24.SLOT, UnknownObj)
 805     External (_SB_.PCI0.RP24.UPRD, MethodObj)    // 1 Arguments
 806     External (_SB_.PCI0.RP24.VDID, UnknownObj)
 807     External (_SB_.PCI0.SAT0, DeviceObj)
 808     External (_SB_.PCI0.SAT0.PRIM, DeviceObj)
 809     External (_SB_.PCI0.SAT0.PRIM.GTME, IntObj)
 810     External (_SB_.PCI0.SAT0.PRT0, DeviceObj)
 811     External (_SB_.PCI0.SAT0.PRT0.SPOF, MethodObj)    // 0 Arguments
 812     External (_SB_.PCI0.SAT0.PRT0.SPON, MethodObj)    // 0 Arguments
 813     External (_SB_.PCI0.SAT0.PRT1, DeviceObj)
 814     External (_SB_.PCI0.SAT0.PRT1.SPOF, MethodObj)    // 0 Arguments
 815     External (_SB_.PCI0.SAT0.PRT1.SPON, MethodObj)    // 0 Arguments
 816     External (_SB_.PCI0.SAT0.PRT2, DeviceObj)
 817     External (_SB_.PCI0.SAT0.PRT2.SPOF, MethodObj)    // 0 Arguments
 818     External (_SB_.PCI0.SAT0.PRT2.SPON, MethodObj)    // 0 Arguments
 819     External (_SB_.PCI0.SAT0.PRT3, DeviceObj)
 820     External (_SB_.PCI0.SAT0.PRT3.SPOF, MethodObj)    // 0 Arguments
 821     External (_SB_.PCI0.SAT0.PRT3.SPON, MethodObj)    // 0 Arguments
 822     External (_SB_.PCI0.SAT0.PRT4, DeviceObj)
 823     External (_SB_.PCI0.SAT0.PRT4.SPOF, MethodObj)    // 0 Arguments
 824     External (_SB_.PCI0.SAT0.PRT4.SPON, MethodObj)    // 0 Arguments
 825     External (_SB_.PCI0.SAT0.PRT5, DeviceObj)
 826     External (_SB_.PCI0.SAT0.PRT5.SPOF, MethodObj)    // 0 Arguments
 827     External (_SB_.PCI0.SAT0.PRT5.SPON, MethodObj)    // 0 Arguments
 828     External (_SB_.PCI0.SAT0.SATC, MethodObj)    // 1 Arguments
 829     External (_SB_.PCI0.SAT0.SATD, MethodObj)    // 4 Arguments
 830     External (_SB_.PCI0.SAT0.SCND, DeviceObj)
 831     External (_SB_.PCI0.SAT0.SCND.GTME, IntObj)
 832     External (_SB_.PCI0.SAT0.SCND.MSTR, DeviceObj)
 833     External (_SB_.PCI0.SAT0.ZPOD, MethodObj)    // 3 Arguments
 834     External (_SB_.PCI0.XDCI, DeviceObj)
 835     External (_SB_.PCI0.XDCI.D0I3, UnknownObj)
 836     External (_SB_.PCI0.XDCI.PS0X, MethodObj)    // 0 Arguments
 837     External (_SB_.PCI0.XDCI.PS3X, MethodObj)    // 0 Arguments
 838     External (_SB_.PCI0.XDCI.XDCB, UnknownObj)
 839     External (_SB_.PCI0.XHC_, DeviceObj)
 840     External (_SB_.PCI0.XHC_.DUAM, MethodObj)    // 0 Arguments
 841     External (_SB_.PCI0.XHC_.MEMB, UnknownObj)
 842     External (_SB_.PCI0.XHC_.PS0X, MethodObj)    // 0 Arguments
 843     External (_SB_.PCI0.XHC_.PS3X, MethodObj)    // 0 Arguments
 844     External (_SB_.PCI0.XHC_.RHUB, DeviceObj)
 845     External (_SB_.PCI0.XHC_.RHUB.HS01, DeviceObj)
 846     External (_SB_.PCI0.XHC_.RHUB.HS02, DeviceObj)
 847     External (_SB_.PCI0.XHC_.RHUB.HS03, DeviceObj)
 848     External (_SB_.PCI0.XHC_.RHUB.HS04, DeviceObj)
 849     External (_SB_.PCI0.XHC_.RHUB.HS05, DeviceObj)
 850     External (_SB_.PCI0.XHC_.RHUB.HS06, DeviceObj)
 851     External (_SB_.PCI0.XHC_.RHUB.HS07, DeviceObj)
 852     External (_SB_.PCI0.XHC_.RHUB.HS08, DeviceObj)
 853     External (_SB_.PCI0.XHC_.RHUB.HS09, DeviceObj)
 854     External (_SB_.PCI0.XHC_.RHUB.HS10, DeviceObj)
 855     External (_SB_.PCI0.XHC_.RHUB.INIR, MethodObj)    // 0 Arguments
 856     External (_SB_.PCI0.XHC_.RHUB.PS0X, MethodObj)    // 0 Arguments
 857     External (_SB_.PCI0.XHC_.RHUB.PS2X, MethodObj)    // 0 Arguments
 858     External (_SB_.PCI0.XHC_.RHUB.PS3X, MethodObj)    // 0 Arguments
 859     External (_SB_.PCI0.XHC_.RHUB.SS01, DeviceObj)
 860     External (_SB_.PCI0.XHC_.RHUB.SS02, DeviceObj)
 861     External (_SB_.PCI0.XHC_.RHUB.SS03, DeviceObj)
 862     External (_SB_.PCI0.XHC_.RHUB.SS04, DeviceObj)
 863     External (_SB_.PCI0.XHC_.RHUB.SS05, DeviceObj)
 864     External (_SB_.PCI0.XHC_.RHUB.SS06, DeviceObj)
 865     External (_SB_.PDTS, UnknownObj)
 866     External (_SB_.PKGA, UnknownObj)
 867     External (_SB_.PL10, FieldUnitObj)
 868     External (_SB_.PL11, FieldUnitObj)
 869     External (_SB_.PL12, FieldUnitObj)
 870     External (_SB_.PL20, FieldUnitObj)
 871     External (_SB_.PL21, FieldUnitObj)
 872     External (_SB_.PL22, FieldUnitObj)
 873     External (_SB_.PLW0, FieldUnitObj)
 874     External (_SB_.PLW1, FieldUnitObj)
 875     External (_SB_.PLW2, FieldUnitObj)
 876     External (_SB_.PR00, DeviceObj)
 877     External (_SB_.PR00._PSS, MethodObj)    // 0 Arguments
 878     External (_SB_.PR00._TPC, IntObj)
 879     External (_SB_.PR00._TSD, MethodObj)    // 0 Arguments
 880     External (_SB_.PR00._TSS, MethodObj)    // 0 Arguments
 881     External (_SB_.PR00.LPSS, PkgObj)
 882     External (_SB_.PR00.TPSS, PkgObj)
 883     External (_SB_.PR00.TSMC, PkgObj)
 884     External (_SB_.PR00.TSMF, PkgObj)
 885     External (_SB_.PR01, DeviceObj)
 886     External (_SB_.PR02, DeviceObj)
 887     External (_SB_.PR03, DeviceObj)
 888     External (_SB_.PR04, DeviceObj)
 889     External (_SB_.PR05, DeviceObj)
 890     External (_SB_.PR06, DeviceObj)
 891     External (_SB_.PR07, DeviceObj)
 892     External (_SB_.PR08, DeviceObj)
 893     External (_SB_.PR09, DeviceObj)
 894     External (_SB_.PR10, DeviceObj)
 895     External (_SB_.PR11, DeviceObj)
 896     External (_SB_.PR12, DeviceObj)
 897     External (_SB_.PR13, DeviceObj)
 898     External (_SB_.PR14, DeviceObj)
 899     External (_SB_.PR15, DeviceObj)
 900     External (_SB_.PSD0, MethodObj)    // 1 Arguments
 901     External (_SB_.PSD3, MethodObj)    // 1 Arguments
 902     External (_SB_.SGOV, MethodObj)    // 2 Arguments
 903     External (_SB_.SHPO, MethodObj)    // 2 Arguments
 904     External (_SB_.SLPB, DeviceObj)
 905     External (_SB_.TAR0, FieldUnitObj)
 906     External (_SB_.TAR1, FieldUnitObj)
 907     External (_SB_.TAR2, FieldUnitObj)
 908     External (_SB_.TBFP, MethodObj)    // 2 Arguments
 909     External (_SB_.TPM_.PTS_, MethodObj)    // 1 Arguments
 910     External (_SB_.TRPD, UnknownObj)
 911     External (_SB_.TRPF, UnknownObj)
 912     External (_SB_.UBTC.NTFY, MethodObj)    // 0 Arguments
 913     External (_SB_.UBTC.RUCC, MethodObj)    // 2 Arguments
 914     External (_SB_.VMOF, MethodObj)    // 0 Arguments
 915     External (_SB_.VMON, MethodObj)    // 0 Arguments
 916     External (_TZ_._C2K, MethodObj)    // 1 Arguments
 917     External (_TZ_.ETMD, IntObj)
 918     External (_TZ_.THM0, ThermalZoneObj)
 919     External (_TZ_.THM0._TMP, MethodObj)    // 0 Arguments
 920     External (_TZ_.TZ00, DeviceObj)
 921     External (ACTT, IntObj)
 922     External (ADBG, MethodObj)    // 1 Arguments
 923     External (ALSE, UnknownObj)    // Conflicts with a later declaration
 924     External (APPE, IntObj)
 925     External (ATMC, IntObj)
 926     External (ATPC, IntObj)
 927     External (AUDD, FieldUnitObj)
 928     External (BATR, IntObj)
 929     External (BRLV, UnknownObj)
 930     External (BRTL, UnknownObj)    // Conflicts with a later declaration
 931     External (CA2D, IntObj)
 932     External (CFGD, UnknownObj)
 933     External (CHGE, IntObj)
 934     External (CPSC, UnknownObj)
 935     External (CPUS, IntObj)
 936     External (CRTT, IntObj)
 937     External (CTDP, IntObj)
 938     External (CTPC, UnknownObj)
 939     External (CTPR, UnknownObj)
 940     External (DBGF, FieldUnitObj)
 941     External (DBUP, FieldUnitObj)
 942     External (DCFE, IntObj)
 943     External (DDRF, UnknownObj)
 944     External (DHKC, IntObj)
 945     External (DIDX, UnknownObj)    // Conflicts with a later declaration
 946     External (DISE, IntObj)
 947     External (DPAP, IntObj)
 948     External (DPCP, IntObj)
 949     External (DPHL, IntObj)
 950     External (DPLL, IntObj)
 951     External (DPM1, UnknownObj)
 952     External (DPM2, UnknownObj)
 953     External (DPM3, UnknownObj)
 954     External (DPP0, UnknownObj)
 955     External (DPP1, UnknownObj)
 956     External (DPP2, UnknownObj)
 957     External (DPP3, UnknownObj)
 958     External (DPP4, UnknownObj)
 959     External (DPPP, IntObj)
 960     External (DPTF, IntObj)
 961     External (DSEN, UnknownObj)
 962     External (DVID, UnknownObj)
 963     External (DVS0, UnknownObj)
 964     External (DVS1, UnknownObj)
 965     External (DVS2, UnknownObj)
 966     External (DVS3, UnknownObj)
 967     External (ECON, IntObj)
 968     External (FND1, IntObj)
 969     External (FTPS, UnknownObj)
 970     External (GBEP, UnknownObj)
 971     External (GBES, UnknownObj)
 972     External (GSMI, UnknownObj)    // Conflicts with a later declaration
 973     External (GTST, MethodObj)    // 0 Arguments
 974     External (GUAM, MethodObj)    // 1 Arguments
 975     External (H8DR, UnknownObj)
 976     External (HIDW, MethodObj)    // 4 Arguments
 977     External (HIWC, MethodObj)    // 1 Arguments
 978     External (IC0D, FieldUnitObj)
 979     External (IC1D, FieldUnitObj)
 980     External (IC1S, FieldUnitObj)
 981     External (IGDS, UnknownObj)    // Conflicts with a later declaration
 982     External (LHIH, UnknownObj)    // Conflicts with a later declaration
 983     External (LIDS, UnknownObj)    // Conflicts with a later declaration
 984     External (LLOW, UnknownObj)    // Conflicts with a later declaration
 985     External (LPER, IntObj)
 986     External (LPOE, IntObj)
 987     External (LPOP, IntObj)
 988     External (LPOS, IntObj)
 989     External (LPOW, IntObj)
 990     External (M32B, UnknownObj)    // Conflicts with a later declaration
 991     External (M32L, UnknownObj)    // Conflicts with a later declaration
 992     External (M64B, UnknownObj)    // Conflicts with a later declaration
 993     External (M64L, UnknownObj)    // Conflicts with a later declaration
 994     External (MBEC, UnknownObj)
 995     External (MBGS, MethodObj)    // 1 Arguments
 996     External (MMRP, MethodObj)    // 2 Arguments
 997     External (MMTB, MethodObj)    // 2 Arguments
 998     External (MPL0, IntObj)
 999     External (MPL1, IntObj)
1000     External (MPL2, IntObj)
1001     External (NDUS, UnknownObj)
1002     External (NEXP, IntObj)
1003     External (NTUS, IntObj)
1004     External (ODV0, IntObj)
1005     External (ODV1, IntObj)
1006     External (ODV2, IntObj)
1007     External (ODV3, IntObj)
1008     External (ODV4, IntObj)
1009     External (ODV5, IntObj)
1010     External (ODV6, IntObj)
1011     External (ODV7, IntObj)
1012     External (ODV8, IntObj)
1013     External (ODV9, IntObj)
1014     External (ODVA, IntObj)
1015     External (ODVB, IntObj)
1016     External (ODVC, IntObj)
1017     External (ODVD, IntObj)
1018     External (ODVE, IntObj)
1019     External (ODVF, IntObj)
1020     External (ODVG, IntObj)
1021     External (ODVH, IntObj)
1022     External (ODVI, IntObj)
1023     External (ODVJ, IntObj)
1024     External (OSYS, UnknownObj)
1025     External (P1GP, UnknownObj)    // Conflicts with a later declaration
1026     External (P2GP, UnknownObj)    // Conflicts with a later declaration
1027     External (P3GP, UnknownObj)    // Conflicts with a later declaration
1028     External (PBPE, IntObj)
1029     External (PC00, IntObj)
1030     External (PC01, UnknownObj)
1031     External (PC02, UnknownObj)
1032     External (PC03, UnknownObj)
1033     External (PC04, UnknownObj)
1034     External (PC05, UnknownObj)
1035     External (PC06, UnknownObj)
1036     External (PC07, UnknownObj)
1037     External (PC08, UnknownObj)
1038     External (PC09, UnknownObj)
1039     External (PC10, UnknownObj)
1040     External (PC11, UnknownObj)
1041     External (PC12, UnknownObj)
1042     External (PC13, UnknownObj)
1043     External (PC14, UnknownObj)
1044     External (PC15, UnknownObj)
1045     External (PCAO, MethodObj)    // 4 Arguments
1046     External (PCRR, MethodObj)    // 2 Arguments
1047     External (PCRW, MethodObj)    // 3 Arguments
1048     External (PEP0, UnknownObj)
1049     External (PEPC, UnknownObj)
1050     External (PIDE, IntObj)
1051     External (PIN_.OFF_, MethodObj)    // 1 Arguments
1052     External (PIN_.ON__, MethodObj)    // 1 Arguments
1053     External (PIN_.STA_, MethodObj)    // 1 Arguments
1054     External (PINP.OFF_, MethodObj)    // 1 Arguments
1055     External (PINP.ON__, MethodObj)    // 1 Arguments
1056     External (PLID, UnknownObj)
1057     External (PNHM, FieldUnitObj)
1058     External (PNTF, MethodObj)    // 1 Arguments
1059     External (PPPR, IntObj)
1060     External (PPSZ, IntObj)
1061     External (PRST, UnknownObj)
1062     External (PSON, UnknownObj)
1063     External (PSVT, IntObj)
1064     External (PT0D, UnknownObj)
1065     External (PT1D, UnknownObj)
1066     External (PT2D, UnknownObj)
1067     External (PTMC, IntObj)
1068     External (PTPC, IntObj)
1069     External (PTTB, UnknownObj)
1070     External (PWRE, IntObj)
1071     External (PWRG, UnknownObj)
1072     External (PWRS, IntObj)
1073     External (RBEC, UnknownObj)
1074     External (RCG0, IntObj)
1075     External (RCG1, IntObj)
1076     External (RDCM, MethodObj)    // 1 Arguments
1077     External (RFIM, IntObj)
1078     External (RPS0, IntObj)
1079     External (RPS1, IntObj)
1080     External (RPT0, IntObj)
1081     External (RTBC, IntObj)
1082     External (RTBT, IntObj)
1083     External (S0ID, UnknownObj)
1084     External (S1AT, IntObj)
1085     External (S1CT, IntObj)
1086     External (S1DE, IntObj)
1087     External (S1HT, IntObj)
1088     External (S1PT, IntObj)
1089     External (S1S3, IntObj)
1090     External (S2AT, IntObj)
1091     External (S2CT, IntObj)
1092     External (S2DE, IntObj)
1093     External (S2HT, IntObj)
1094     External (S2PT, IntObj)
1095     External (S2S3, IntObj)
1096     External (S3AT, IntObj)
1097     External (S3CT, IntObj)
1098     External (S3DE, IntObj)
1099     External (S3HT, IntObj)
1100     External (S3PT, IntObj)
1101     External (S3S3, IntObj)
1102     External (S4AT, IntObj)
1103     External (S4CT, IntObj)
1104     External (S4DE, IntObj)
1105     External (S4HT, IntObj)
1106     External (S4PT, IntObj)
1107     External (S4S3, IntObj)
1108     External (S5AT, IntObj)
1109     External (S5CT, IntObj)
1110     External (S5DE, IntObj)
1111     External (S5HT, IntObj)
1112     External (S5PT, IntObj)
1113     External (S5S3, IntObj)
1114     External (SAC3, IntObj)
1115     External (SACT, IntObj)
1116     External (SADE, IntObj)
1117     External (SAHT, IntObj)
1118     External (SAT1, IntObj)
1119     External (SAT2, IntObj)
1120     External (SC31, IntObj)
1121     External (SC32, IntObj)
1122     External (SCLK, UnknownObj)
1123     External (SCT1, IntObj)
1124     External (SCT2, IntObj)
1125     External (SDS0, FieldUnitObj)
1126     External (SDS1, FieldUnitObj)
1127     External (SGE1, IntObj)
1128     External (SGE2, IntObj)
1129     External (SGGP, UnknownObj)    // Conflicts with a later declaration
1130     External (SGMD, UnknownObj)
1131     External (SHSB, FieldUnitObj)
1132     External (SHT1, IntObj)
1133     External (SHT2, IntObj)
1134     External (SPCO, MethodObj)    // 2 Arguments
1135     External (SPST, IntObj)
1136     External (SPT1, IntObj)
1137     External (SPT2, IntObj)
1138     External (SSP1, IntObj)
1139     External (SSP2, IntObj)
1140     External (SSP3, IntObj)
1141     External (SSP4, IntObj)
1142     External (SSP5, IntObj)
1143     External (STDV, IntObj)
1144     External (TBCD, IntObj)
1145     External (TBHR, IntObj)
1146     External (TBOD, IntObj)
1147     External (TBPE, IntObj)
1148     External (TBRP, IntObj)
1149     External (TBSE, IntObj)
1150     External (TBTD, MethodObj)    // 2 Arguments
1151     External (TBTF, MethodObj)    // 2 Arguments
1152     External (TBTS, IntObj)
1153     External (TCNT, FieldUnitObj)
1154     External (TJMX, IntObj)
1155     External (TOFF, IntObj)
1156     External (TP1D, UnknownObj)
1157     External (TP1P, UnknownObj)
1158     External (TP1T, UnknownObj)
1159     External (TP2D, UnknownObj)
1160     External (TP2P, UnknownObj)
1161     External (TP2T, UnknownObj)
1162     External (TP3D, UnknownObj)
1163     External (TP3P, UnknownObj)
1164     External (TP3T, UnknownObj)
1165     External (TP4D, UnknownObj)
1166     External (TP4P, UnknownObj)
1167     External (TP4T, UnknownObj)
1168     External (TP5D, UnknownObj)
1169     External (TP5P, UnknownObj)
1170     External (TP5T, UnknownObj)
1171     External (TP6D, UnknownObj)
1172     External (TP6P, UnknownObj)
1173     External (TP6T, UnknownObj)
1174     External (TRD3, IntObj)
1175     External (TRDO, IntObj)
1176     External (TRTV, IntObj)
1177     External (TSOD, IntObj)
1178     External (TTUP, UnknownObj)
1179     External (TUID, UnknownObj)
1180     External (UAMS, UnknownObj)
1181     External (UBCB, UnknownObj)
1182     External (UDGF, FieldUnitObj)
1183     External (UDUP, FieldUnitObj)
1184     External (USTC, UnknownObj)
1185     External (UTCE, UnknownObj)
1186     External (V1AT, IntObj)
1187     External (V1C3, IntObj)
1188     External (V1CR, IntObj)
1189     External (V1HT, IntObj)
1190     External (V1PV, IntObj)
1191     External (V2AT, IntObj)
1192     External (V2C3, IntObj)
1193     External (V2CR, IntObj)
1194     External (V2HT, IntObj)
1195     External (V2PV, IntObj)
1196     External (VRRD, FieldUnitObj)
1197     External (VSP1, IntObj)
1198     External (VSP2, IntObj)
1199     External (VSPE, IntObj)
1200     External (WAKG, UnknownObj)
1201     External (WAKP, UnknownObj)
1202     External (WAND, IntObj)
1203     External (WDC2, IntObj)
1204     External (WDCT, IntObj)
1205     External (WIN8, UnknownObj)
1206     External (WLC3, IntObj)
1207     External (WLCT, IntObj)
1208     External (WMNS, IntObj)
1209     External (WMXS, IntObj)
1210     External (WNSU, UnknownObj)
1211     External (WPRP, UnknownObj)
1212     External (WRAT, IntObj)
1213     External (WRCM, MethodObj)    // 2 Arguments
1214     External (WRCT, IntObj)
1215     External (WRFD, IntObj)
1216     External (WRHT, IntObj)
1217     External (WRPT, IntObj)
1218     External (WRTO, UnknownObj)
1219     External (WTSP, IntObj)
1220     External (WWAT, IntObj)
1221     External (WWC3, IntObj)
1222     External (WWCT, IntObj)
1223     External (WWHT, IntObj)
1224     External (WWPT, IntObj)
1225     External (XBAS, UnknownObj)
1226     External (XDCE, UnknownObj)
1227     External (XDST, IntObj)
1228     External (XHPR, UnknownObj)
1229     External (XMPB, UnknownObj)
1230     External (XSMI, UnknownObj)
1231     External (XTUB, UnknownObj)
1232     External (XTUS, UnknownObj)
1233 
1234     Name (MBUF, Buffer (0x4000){})
1235     OperationRegion (MDBR, SystemMemory, 0x5FAC2018, 0x00004008)
1236     Field (MDBR, AnyAcc, Lock, Preserve)
1237     {
1238         ASLD,   1, 
1239         LDBG,   7, 
1240         BUFN,   16, 
1241         Offset (0x04), 
1242         MDG0,   131072
1243     }
1244 
1245     Method (DX2H, 2, Serialized)
1246     {
1247         If (ASLD)
1248         {
1249             Switch (ToInteger (Arg0))
1250             {
1251                 Case (0x00)
1252                 {
1253                     DB2H (Arg1)
1254                 }
1255                 Case (0x01)
1256                 {
1257                     DW2H (Arg1)
1258                 }
1259                 Case (0x02)
1260                 {
1261                     DD2H (Arg1)
1262                 }
1263 
1264             }
1265         }
1266     }
1267 
1268     Method (DB2H, 1, Serialized)
1269     {
1270         SHOW (Arg0)
1271         MDGC (0x20)
1272         MDG0 = MBUF /* \MBUF */
1273     }
1274 
1275     Method (DW2H, 1, Serialized)
1276     {
1277         Local0 = Arg0
1278         Local1 = (Arg0 >> 0x08)
1279         Local0 &= 0xFF
1280         Local1 &= 0xFF
1281         DB2H (Local1)
1282         BUFN--
1283         DB2H (Local0)
1284     }
1285 
1286     Method (DD2H, 1, Serialized)
1287     {
1288         Local0 = Arg0
1289         Local1 = (Arg0 >> 0x10)
1290         Local0 &= 0xFFFF
1291         Local1 &= 0xFFFF
1292         DW2H (Local1)
1293         BUFN--
1294         DW2H (Local0)
1295     }
1296 
1297     Method (MBGS, 1, Serialized)
1298     {
1299         If (ASLD)
1300         {
1301             Local0 = SizeOf (Arg0)
1302             Name (BUFS, Buffer (Local0){})
1303             BUFS = Arg0
1304             MDGC (0x20)
1305             While (Local0)
1306             {
1307                 MDGC (DerefOf (BUFS [(SizeOf (Arg0) - Local0)]))
1308                 Local0--
1309             }
1310 
1311             MDG0 = MBUF /* \MBUF */
1312         }
1313     }
1314 
1315     Method (SHOW, 1, Serialized)
1316     {
1317         MDGC (NTOC ((Arg0 >> 0x04)))
1318         MDGC (NTOC (Arg0))
1319     }
1320 
1321     Method (LINE, 0, Serialized)
1322     {
1323         Local0 = BUFN /* \BUFN */
1324         Local0 &= 0x0F
1325         While (Local0)
1326         {
1327             MDGC (0x00)
1328             Local0++
1329             Local0 &= 0x0F
1330         }
1331     }
1332 
1333     Method (MDGC, 1, Serialized)
1334     {
1335         MBUF [BUFN] = Arg0
1336         BUFN += 0x01
1337         If ((BUFN > (0x4000 - 0x01)))
1338         {
1339             BUFN = 0x00
1340         }
1341     }
1342 
1343     Method (UP_L, 1, Serialized)
1344     {
1345         Local2 = Arg0
1346         Local2 <<= 0x04
1347         MOVE (Local2)
1348         Local3 = (0x4000 - Local2)
1349         While (Local2)
1350         {
1351             MBUF [Local3] = 0x00
1352             Local3++
1353             Local2--
1354         }
1355     }
1356 
1357     Method (MOVE, 1, Serialized)
1358     {
1359         Local4 = Arg0
1360         BUFN = 0x00
1361         Local5 = (0x4000 - Local4)
1362         While (Local5)
1363         {
1364             Local5--
1365             MBUF [BUFN] = DerefOf (MBUF [Local4])
1366             BUFN++
1367             Local4++
1368         }
1369     }
1370 
1371     Method (NTOC, 1, Serialized)
1372     {
1373         Local0 = (Arg0 & 0x0F)
1374         If ((Local0 < 0x0A))
1375         {
1376             Local0 += 0x30
1377         }
1378         Else
1379         {
1380             Local0 += 0x37
1381         }
1382 
1383         Return (Local0)
1384     }
1385 
1386     Name (SS1, 0x00)
1387     Name (SS2, 0x00)
1388     Name (SS3, One)
1389     One
1390     Name (SS4, One)
1391     One
1392     OperationRegion (GNVS, SystemMemory, 0x5FB1E000, 0x07FE)
1393     Field (GNVS, AnyAcc, Lock, Preserve)
1394     {
1395         OSYS,   16, 
1396         SMIF,   8, 
1397         PRM0,   8, 
1398         PRM1,   8, 
1399         SCIF,   8, 
1400         PRM2,   8, 
1401         PRM3,   8, 
1402         LCKF,   8, 
1403         PRM4,   8, 
1404         PRM5,   8, 
1405         PWRS,   8, 
1406         DBGS,   8, 
1407         THOF,   8, 
1408         ACT1,   8, 
1409         ACTT,   8, 
1410         PSVT,   8, 
1411         TC1V,   8, 
1412         TC2V,   8, 
1413         TSPV,   8, 
1414         CRTT,   8, 
1415         DTSE,   8, 
1416         DTS1,   8, 
1417         DTS2,   8, 
1418         DTSF,   8, 
1419         REVN,   8, 
1420         APIC,   8, 
1421         TCNT,   8, 
1422         PCP0,   8, 
1423         PCP1,   8, 
1424         PPCM,   8, 
1425         PPMF,   32, 
1426         C67L,   8, 
1427         NATP,   8, 
1428         CMAP,   8, 
1429         CMBP,   8, 
1430         LPTP,   8, 
1431         FDCP,   8, 
1432         W381,   8, 
1433         EMAE,   8, 
1434         EMAP,   16, 
1435         EMAL,   16, 
1436         MEFE,   8, 
1437         DSTS,   8, 
1438         MORD,   8, 
1439         TCGP,   8, 
1440         PPRP,   32, 
1441         PPRQ,   8, 
1442         LPPR,   8, 
1443         IDEM,   8, 
1444         PLID,   8, 
1445         BTYP,   8, 
1446         OSCC,   8, 
1447         NEXP,   8, 
1448         SBV1,   8, 
1449         SBV2,   8, 
1450         ECON,   8, 
1451         DSEN,   8, 
1452         GPIC,   8, 
1453         CTYP,   8, 
1454         L01C,   8, 
1455         VFN0,   8, 
1456         VFN1,   8, 
1457         VFN2,   8, 
1458         VFN3,   8, 
1459         VFN4,   8, 
1460         VFN5,   8, 
1461         VFN6,   8, 
1462         VFN7,   8, 
1463         VFN8,   8, 
1464         VFN9,   8, 
1465         ATMC,   8, 
1466         PTMC,   8, 
1467         PNHM,   32, 
1468         TBAL,   32, 
1469         TBAH,   32, 
1470         TSOD,   8, 
1471         PFLV,   8, 
1472         BREV,   8, 
1473         PDTS,   8, 
1474         PKGA,   8, 
1475         PAMT,   8, 
1476         AC0F,   8, 
1477         AC1F,   8, 
1478         DTS3,   8, 
1479         DTS4,   8, 
1480         XTUB,   32, 
1481         XTUS,   32, 
1482         XMPB,   32, 
1483         DDRF,   8, 
1484         RTD3,   8, 
1485         PEP0,   8, 
1486         DPTF,   8, 
1487         DCFE,   16, 
1488         SADE,   8, 
1489         SACT,   8, 
1490         SAHT,   8, 
1491         CPUS,   8, 
1492         CTDP,   8, 
1493         FND1,   8, 
1494         AMBD,   8, 
1495         AMAT,   8, 
1496         AMPT,   8, 
1497         AMCT,   8, 
1498         AMHT,   8, 
1499         SKDE,   8, 
1500         SKAT,   8, 
1501         SKPT,   8, 
1502         SKCT,   8, 
1503         SKHT,   8, 
1504         EFDE,   8, 
1505         EFAT,   8, 
1506         EFPT,   8, 
1507         EFCT,   8, 
1508         EFHT,   8, 
1509         VRDE,   8, 
1510         VRAT,   8, 
1511         VRPT,   8, 
1512         VRCT,   8, 
1513         VRHT,   8, 
1514         DPAP,   8, 
1515         DPPP,   8, 
1516         DPCP,   8, 
1517         PIDE,   8, 
1518         TRTV,   8, 
1519         LPOE,   8, 
1520         LPOP,   8, 
1521         LPOS,   8, 
1522         LPOW,   8, 
1523         LPER,   8, 
1524         PPSZ,   32, 
1525         DISE,   8, 
1526         BGMA,   64, 
1527         BGMS,   8, 
1528         BGIA,   16, 
1529         IRMC,   8, 
1530         CHEN,   8, 
1531         S0ID,   8, 
1532         CTDB,   8, 
1533         DKSM,   8, 
1534         Offset (0x1F4), 
1535         WRFD,   8, 
1536         WRAT,   8, 
1537         WRPT,   8, 
1538         WRCT,   8, 
1539         WRHT,   8, 
1540         PWRE,   8, 
1541         Offset (0x1FC), 
1542         PPPR,   16, 
1543         PBPE,   8, 
1544         VSPE,   8, 
1545         RFIM,   8, 
1546         Offset (0x203), 
1547         XHPR,   8, 
1548         GBSX,   8, 
1549         IUBE,   8, 
1550         IUCE,   8, 
1551         IUDE,   8, 
1552         ECNO,   8, 
1553         AUDD,   16, 
1554         IC0D,   16, 
1555         IC1D,   16, 
1556         IC1S,   16, 
1557         VRRD,   16, 
1558         PSCP,   8, 
1559         RCG0,   16, 
1560         RCG1,   16, 
1561         ECDB,   8, 
1562         P2ME,   8, 
1563         P2MK,   8, 
1564         WIRC,   8, 
1565         WGRC,   8, 
1566         WWRC,   8, 
1567         SSH0,   16, 
1568         SSL0,   16, 
1569         SSD0,   16, 
1570         FMH0,   16, 
1571         FML0,   16, 
1572         FMD0,   16, 
1573         FPH0,   16, 
1574         FPL0,   16, 
1575         FPD0,   16, 
1576         HMH0,   16, 
1577         HML0,   16, 
1578         HMD0,   16, 
1579         Offset (0x23D), 
1580         SSH1,   16, 
1581         SSL1,   16, 
1582         SSD1,   16, 
1583         FMH1,   16, 
1584         FML1,   16, 
1585         FMD1,   16, 
1586         FPH1,   16, 
1587         FPL1,   16, 
1588         FPD1,   16, 
1589         HMH1,   16, 
1590         HML1,   16, 
1591         HMD1,   16, 
1592         Offset (0x256), 
1593         SSH2,   16, 
1594         SSL2,   16, 
1595         SSD2,   16, 
1596         FMH2,   16, 
1597         FML2,   16, 
1598         FMD2,   16, 
1599         FPH2,   16, 
1600         FPL2,   16, 
1601         FPD2,   16, 
1602         HMH2,   16, 
1603         HML2,   16, 
1604         HMD2,   16, 
1605         Offset (0x26F), 
1606         SSH3,   16, 
1607         SSL3,   16, 
1608         SSD3,   16, 
1609         FMH3,   16, 
1610         FML3,   16, 
1611         FMD3,   16, 
1612         FPH3,   16, 
1613         FPL3,   16, 
1614         FPD3,   16, 
1615         HMH3,   16, 
1616         HML3,   16, 
1617         HMD3,   16, 
1618         Offset (0x288), 
1619         SSH4,   16, 
1620         SSL4,   16, 
1621         SSD4,   16, 
1622         FMH4,   16, 
1623         FML4,   16, 
1624         FMD4,   16, 
1625         FPH4,   16, 
1626         FPL4,   16, 
1627         FPD4,   16, 
1628         HMH4,   16, 
1629         HML4,   16, 
1630         HMD4,   16, 
1631         Offset (0x2A1), 
1632         SSH5,   16, 
1633         SSL5,   16, 
1634         SSD5,   16, 
1635         FMH5,   16, 
1636         FML5,   16, 
1637         FMD5,   16, 
1638         FPH5,   16, 
1639         FPL5,   16, 
1640         FPD5,   16, 
1641         HMH5,   16, 
1642         HML5,   16, 
1643         HMD5,   16, 
1644         Offset (0x2BA), 
1645         M0C0,   16, 
1646         M1C0,   16, 
1647         M0C1,   16, 
1648         M1C1,   16, 
1649         M0C2,   16, 
1650         M1C2,   16, 
1651         M0C3,   16, 
1652         M1C3,   16, 
1653         M0C4,   16, 
1654         M1C4,   16, 
1655         M0C5,   16, 
1656         M1C5,   16, 
1657         M0C6,   16, 
1658         M1C6,   16, 
1659         M0C7,   16, 
1660         M1C7,   16, 
1661         M0C8,   16, 
1662         M1C8,   16, 
1663         Offset (0x2DF), 
1664         M0C9,   16, 
1665         M1C9,   16, 
1666         M0CA,   16, 
1667         M1CA,   16, 
1668         M0CB,   16, 
1669         M1CB,   16, 
1670         Offset (0x2EC), 
1671         GIRQ,   32, 
1672         DMTP,   8, 
1673         DMTD,   8, 
1674         DMSH,   8, 
1675         SHSB,   8, 
1676         PLCS,   8, 
1677         PLVL,   16, 
1678         WWSD,   8, 
1679         CVSD,   8, 
1680         SSDD,   8, 
1681         INLD,   8, 
1682         IFAT,   8, 
1683         IFPT,   8, 
1684         IFCT,   8, 
1685         IFHT,   8, 
1686         USBH,   8, 
1687         BCV4,   8, 
1688         WTV0,   8, 
1689         WTV1,   8, 
1690         APFU,   8, 
1691         Offset (0x30A), 
1692         PEPC,   32, 
1693         PB1E,   8, 
1694         GNID,   8, 
1695         WAND,   8, 
1696         WWAT,   8, 
1697         WWPT,   8, 
1698         WWCT,   8, 
1699         WWHT,   8, 
1700         Offset (0x327), 
1701         MPL0,   16, 
1702         CHGE,   8, 
1703         SAC3,   8, 
1704         AMC3,   8, 
1705         SKC3,   8, 
1706         EFC3,   8, 
1707         VRC3,   8, 
1708         WLC3,   8, 
1709         IFC3,   8, 
1710         WWC3,   8, 
1711         WGC3,   8, 
1712         SPST,   8, 
1713         CA2D,   8, 
1714         ECLP,   8, 
1715         SSP1,   8, 
1716         SSP2,   8, 
1717         SSP3,   8, 
1718         SSP4,   8, 
1719         SSP5,   8, 
1720         SGE1,   8, 
1721         SAT1,   8, 
1722         SPT1,   8, 
1723         SCT1,   8, 
1724         SC31,   8, 
1725         SHT1,   8, 
1726         SGE2,   8, 
1727         SAT2,   8, 
1728         SPT2,   8, 
1729         SCT2,   8, 
1730         SC32,   8, 
1731         SHT2,   8, 
1732         VSP1,   8, 
1733         V1AT,   8, 
1734         V1PV,   8, 
1735         V1CR,   8, 
1736         V1C3,   8, 
1737         V1HT,   8, 
1738         VSP2,   8, 
1739         V2AT,   8, 
1740         V2PV,   8, 
1741         V2CR,   8, 
1742         V2C3,   8, 
1743         V2HT,   8, 
1744         S1DE,   8, 
1745         S1AT,   8, 
1746         S1PT,   8, 
1747         S1CT,   8, 
1748         S1HT,   8, 
1749         S2DE,   8, 
1750         S2AT,   8, 
1751         S2PT,   8, 
1752         S2CT,   8, 
1753         S2HT,   8, 
1754         S3DE,   8, 
1755         S3AT,   8, 
1756         S3PT,   8, 
1757         S3CT,   8, 
1758         S3HT,   8, 
1759         S4DE,   8, 
1760         S4AT,   8, 
1761         S4PT,   8, 
1762         S4CT,   8, 
1763         S4HT,   8, 
1764         S5DE,   8, 
1765         S5AT,   8, 
1766         S5PT,   8, 
1767         S5CT,   8, 
1768         S5HT,   8, 
1769         S1S3,   8, 
1770         S2S3,   8, 
1771         S3S3,   8, 
1772         S4S3,   8, 
1773         S5S3,   8, 
1774         BATR,   8, 
1775         Offset (0x378), 
1776         PSME,   8, 
1777         PDT1,   8, 
1778         PLM1,   32, 
1779         PTW1,   32, 
1780         PDT2,   8, 
1781         PLM2,   32, 
1782         PTW2,   32, 
1783         DDT1,   8, 
1784         DDP1,   8, 
1785         DLI1,   16, 
1786         DPL1,   16, 
1787         DTW1,   32, 
1788         DMI1,   16, 
1789         DMA1,   16, 
1790         DMT1,   16, 
1791         DDT2,   8, 
1792         DDP2,   8, 
1793         DLI2,   16, 
1794         DPL2,   16, 
1795         DTW2,   32, 
1796         DMI2,   16, 
1797         DMA2,   16, 
1798         DMT2,   16, 
1799         WIFE,   8, 
1800         DOM1,   8, 
1801         LIM1,   16, 
1802         TIM1,   32, 
1803         DOM2,   8, 
1804         LIM2,   16, 
1805         TIM2,   32, 
1806         DOM3,   8, 
1807         LIM3,   16, 
1808         TIM3,   32, 
1809         TRD0,   8, 
1810         TRL0,   8, 
1811         TRD1,   8, 
1812         TRL1,   8, 
1813         WDM1,   8, 
1814         CID1,   16, 
1815         WDM2,   8, 
1816         CID2,   16, 
1817         Offset (0x3FA), 
1818         APPE,   8, 
1819         MPL1,   16, 
1820         MPL2,   16, 
1821         SDS0,   8, 
1822         SDS1,   8, 
1823         SDS2,   8, 
1824         SDS3,   8, 
1825         SDS4,   8, 
1826         SDS5,   8, 
1827         SDS6,   8, 
1828         SDS7,   8, 
1829         SDS8,   8, 
1830         SDS9,   8, 
1831         SDSA,   8, 
1832         WTVX,   8, 
1833         WITX,   8, 
1834         GPTD,   8, 
1835         GDBT,   16, 
1836         UTKX,   8, 
1837         SPTD,   8, 
1838         Offset (0x429), 
1839         ATLB,   32, 
1840         SDM0,   8, 
1841         SDM1,   8, 
1842         SDM2,   8, 
1843         SDM3,   8, 
1844         SDM4,   8, 
1845         SDM5,   8, 
1846         SDM6,   8, 
1847         SDM7,   8, 
1848         SDM8,   8, 
1849         SDM9,   8, 
1850         SDMA,   8, 
1851         SDMB,   8, 
1852         Offset (0x43B), 
1853         USTP,   8, 
1854         Offset (0x465), 
1855         GFPS,   32, 
1856         GFPI,   32, 
1857         GNSC,   8, 
1858         GGNR,   32, 
1859         GBTK,   32, 
1860         GBTI,   32, 
1861         GPDI,   32, 
1862         GPLI,   32, 
1863         DBUS,   8, 
1864         CL00,   8, 
1865         CL01,   8, 
1866         CL02,   8, 
1867         CL03,   8, 
1868         L0EN,   8, 
1869         L1EN,   8, 
1870         L2EN,   8, 
1871         L3EN,   8, 
1872         CDIV,   8, 
1873         C0VE,   8, 
1874         C0TP,   8, 
1875         C0CV,   8, 
1876         C0IC,   32, 
1877         C0GP,   8, 
1878         C0IB,   8, 
1879         C0IA,   16, 
1880         C0P0,   8, 
1881         C0P1,   8, 
1882         C0P2,   8, 
1883         C0P3,   8, 
1884         C0G0,   8, 
1885         C0G1,   8, 
1886         C0G2,   8, 
1887         C0G3,   8, 
1888         C0F0,   8, 
1889         C0F1,   8, 
1890         C0F2,   8, 
1891         C0F3,   8, 
1892         C0A0,   8, 
1893         C0A1,   8, 
1894         C0A2,   8, 
1895         C0A3,   8, 
1896         C0I0,   8, 
1897         C0I1,   8, 
1898         C0I2,   8, 
1899         C0I3,   8, 
1900         C0PL,   8, 
1901         C0W0,   8, 
1902         C0W1,   8, 
1903         C0W2,   8, 
1904         C0W3,   8, 
1905         C0SP,   8, 
1906         C0W4,   8, 
1907         C0W5,   8, 
1908         C0CS,   8, 
1909         C1VE,   8, 
1910         C1TP,   8, 
1911         C1CV,   8, 
1912         C1IC,   32, 
1913         C1GP,   8, 
1914         C1IB,   8, 
1915         C1IA,   16, 
1916         C1P0,   8, 
1917         C1P1,   8, 
1918         C1P2,   8, 
1919         C1P3,   8, 
1920         C1G0,   8, 
1921         C1G1,   8, 
1922         C1G2,   8, 
1923         C1G3,   8, 
1924         C1F0,   8, 
1925         C1F1,   8, 
1926         C1F2,   8, 
1927         C1F3,   8, 
1928         C1A0,   8, 
1929         C1A1,   8, 
1930         C1A2,   8, 
1931         C1A3,   8, 
1932         C1I0,   8, 
1933         C1I1,   8, 
1934         C1I2,   8, 
1935         C1I3,   8, 
1936         C1PL,   8, 
1937         C1W0,   8, 
1938         C1W1,   8, 
1939         C1W2,   8, 
1940         C1W3,   8, 
1941         C1SP,   8, 
1942         C1W4,   8, 
1943         C1W5,   8, 
1944         C1CS,   8, 
1945         C2VE,   8, 
1946         C2TP,   8, 
1947         C2CV,   8, 
1948         C2IC,   32, 
1949         C2GP,   8, 
1950         C2IB,   8, 
1951         C2IA,   16, 
1952         C2P0,   8, 
1953         C2P1,   8, 
1954         C2P2,   8, 
1955         C2P3,   8, 
1956         C2G0,   8, 
1957         C2G1,   8, 
1958         C2G2,   8, 
1959         C2G3,   8, 
1960         C2F0,   8, 
1961         C2F1,   8, 
1962         C2F2,   8, 
1963         C2F3,   8, 
1964         C2A0,   8, 
1965         C2A1,   8, 
1966         C2A2,   8, 
1967         C2A3,   8, 
1968         C2I0,   8, 
1969         C2I1,   8, 
1970         C2I2,   8, 
1971         C2I3,   8, 
1972         C2PL,   8, 
1973         C2W0,   8, 
1974         C2W1,   8, 
1975         C2W2,   8, 
1976         C2W3,   8, 
1977         C2SP,   8, 
1978         C2W4,   8, 
1979         C2W5,   8, 
1980         C2CS,   8, 
1981         C3VE,   8, 
1982         C3TP,   8, 
1983         C3CV,   8, 
1984         C3IC,   32, 
1985         C3GP,   8, 
1986         C3IB,   8, 
1987         C3IA,   16, 
1988         C3P0,   8, 
1989         C3P1,   8, 
1990         C3P2,   8, 
1991         C3P3,   8, 
1992         C3G0,   8, 
1993         C3G1,   8, 
1994         C3G2,   8, 
1995         C3G3,   8, 
1996         C3F0,   8, 
1997         C3F1,   8, 
1998         C3F2,   8, 
1999         C3F3,   8, 
2000         C3A0,   8, 
2001         C3A1,   8, 
2002         C3A2,   8, 
2003         C3A3,   8, 
2004         C3I0,   8, 
2005         C3I1,   8, 
2006         C3I2,   8, 
2007         C3I3,   8, 
2008         C3PL,   8, 
2009         C3W0,   8, 
2010         C3W1,   8, 
2011         C3W2,   8, 
2012         C3W3,   8, 
2013         C3SP,   8, 
2014         C3W4,   8, 
2015         C3W5,   8, 
2016         C3CS,   8, 
2017         L0SM,   8, 
2018         L0H0,   8, 
2019         L0H1,   8, 
2020         L0H2,   8, 
2021         L0H3,   8, 
2022         L0H4,   8, 
2023         L0H5,   8, 
2024         L0H6,   8, 
2025         L0H7,   8, 
2026         L0H8,   8, 
2027         L0PL,   8, 
2028         L0M0,   8, 
2029         L0M1,   8, 
2030         L0M2,   8, 
2031         L0M3,   8, 
2032         L0M4,   8, 
2033         L0M5,   8, 
2034         L0M6,   8, 
2035         L0M7,   8, 
2036         L0M8,   8, 
2037         L0M9,   8, 
2038         L0MA,   8, 
2039         L0MB,   8, 
2040         L0MC,   8, 
2041         L0MD,   8, 
2042         L0ME,   8, 
2043         L0MF,   8, 
2044         L0DI,   8, 
2045         L0BS,   8, 
2046         L0A0,   16, 
2047         L0A1,   16, 
2048         L0A2,   16, 
2049         L0A3,   16, 
2050         L0A4,   16, 
2051         L0A5,   16, 
2052         L0A6,   16, 
2053         L0A7,   16, 
2054         L0A8,   16, 
2055         L0A9,   16, 
2056         L0AA,   16, 
2057         L0AB,   16, 
2058         L0D0,   8, 
2059         L0D1,   8, 
2060         L0D2,   8, 
2061         L0D3,   8, 
2062         L0D4,   8, 
2063         L0D5,   8, 
2064         L0D6,   8, 
2065         L0D7,   8, 
2066         L0D8,   8, 
2067         L0D9,   8, 
2068         L0DA,   8, 
2069         L0DB,   8, 
2070         L0DV,   8, 
2071         L0CV,   8, 
2072         L0LU,   8, 
2073         L0NL,   8, 
2074         L0EE,   8, 
2075         L0VC,   8, 
2076         L0FS,   8, 
2077         L0LE,   8, 
2078         L0DG,   8, 
2079         L0CK,   32, 
2080         L0CL,   8, 
2081         L0PP,   8, 
2082         L0VR,   8, 
2083         L1SM,   8, 
2084         L1H0,   8, 
2085         L1H1,   8, 
2086         L1H2,   8, 
2087         L1H3,   8, 
2088         L1H4,   8, 
2089         L1H5,   8, 
2090         L1H6,   8, 
2091         L1H7,   8, 
2092         L1H8,   8, 
2093         L1PL,   8, 
2094         L1M0,   8, 
2095         L1M1,   8, 
2096         L1M2,   8, 
2097         L1M3,   8, 
2098         L1M4,   8, 
2099         L1M5,   8, 
2100         L1M6,   8, 
2101         L1M7,   8, 
2102         L1M8,   8, 
2103         L1M9,   8, 
2104         L1MA,   8, 
2105         L1MB,   8, 
2106         L1MC,   8, 
2107         L1MD,   8, 
2108         L1ME,   8, 
2109         L1MF,   8, 
2110         L1DI,   8, 
2111         L1BS,   8, 
2112         L1A0,   16, 
2113         L1A1,   16, 
2114         L1A2,   16, 
2115         L1A3,   16, 
2116         L1A4,   16, 
2117         L1A5,   16, 
2118         L1A6,   16, 
2119         L1A7,   16, 
2120         L1A8,   16, 
2121         L1A9,   16, 
2122         L1AA,   16, 
2123         L1AB,   16, 
2124         L1D0,   8, 
2125         L1D1,   8, 
2126         L1D2,   8, 
2127         L1D3,   8, 
2128         L1D4,   8, 
2129         L1D5,   8, 
2130         L1D6,   8, 
2131         L1D7,   8, 
2132         L1D8,   8, 
2133         L1D9,   8, 
2134         L1DA,   8, 
2135         L1DB,   8, 
2136         L1DV,   8, 
2137         L1CV,   8, 
2138         L1LU,   8, 
2139         L1NL,   8, 
2140         L1EE,   8, 
2141         L1VC,   8, 
2142         L1FS,   8, 
2143         L1LE,   8, 
2144         L1DG,   8, 
2145         L1CK,   32, 
2146         L1CL,   8, 
2147         L1PP,   8, 
2148         L1VR,   8, 
2149         L2SM,   8, 
2150         L2H0,   8, 
2151         L2H1,   8, 
2152         L2H2,   8, 
2153         L2H3,   8, 
2154         L2H4,   8, 
2155         L2H5,   8, 
2156         L2H6,   8, 
2157         L2H7,   8, 
2158         L2H8,   8, 
2159         L2PL,   8, 
2160         L2M0,   8, 
2161         L2M1,   8, 
2162         L2M2,   8, 
2163         L2M3,   8, 
2164         L2M4,   8, 
2165         L2M5,   8, 
2166         L2M6,   8, 
2167         L2M7,   8, 
2168         L2M8,   8, 
2169         L2M9,   8, 
2170         L2MA,   8, 
2171         L2MB,   8, 
2172         L2MC,   8, 
2173         L2MD,   8, 
2174         L2ME,   8, 
2175         L2MF,   8, 
2176         L2DI,   8, 
2177         L2BS,   8, 
2178         L2A0,   16, 
2179         L2A1,   16, 
2180         L2A2,   16, 
2181         L2A3,   16, 
2182         L2A4,   16, 
2183         L2A5,   16, 
2184         L2A6,   16, 
2185         L2A7,   16, 
2186         L2A8,   16, 
2187         L2A9,   16, 
2188         L2AA,   16, 
2189         L2AB,   16, 
2190         L2D0,   8, 
2191         L2D1,   8, 
2192         L2D2,   8, 
2193         L2D3,   8, 
2194         L2D4,   8, 
2195         L2D5,   8, 
2196         L2D6,   8, 
2197         L2D7,   8, 
2198         L2D8,   8, 
2199         L2D9,   8, 
2200         L2DA,   8, 
2201         L2DB,   8, 
2202         L2DV,   8, 
2203         L2CV,   8, 
2204         L2LU,   8, 
2205         L2NL,   8, 
2206         L2EE,   8, 
2207         L2VC,   8, 
2208         L2FS,   8, 
2209         L2LE,   8, 
2210         L2DG,   8, 
2211         L2CK,   32, 
2212         L2CL,   8, 
2213         L2PP,   8, 
2214         L2VR,   8, 
2215         L3SM,   8, 
2216         L3H0,   8, 
2217         L3H1,   8, 
2218         L3H2,   8, 
2219         L3H3,   8, 
2220         L3H4,   8, 
2221         L3H5,   8, 
2222         L3H6,   8, 
2223         L3H7,   8, 
2224         L3H8,   8, 
2225         L3PL,   8, 
2226         L3M0,   8, 
2227         L3M1,   8, 
2228         L3M2,   8, 
2229         L3M3,   8, 
2230         L3M4,   8, 
2231         L3M5,   8, 
2232         L3M6,   8, 
2233         L3M7,   8, 
2234         L3M8,   8, 
2235         L3M9,   8, 
2236         L3MA,   8, 
2237         L3MB,   8, 
2238         L3MC,   8, 
2239         L3MD,   8, 
2240         L3ME,   8, 
2241         L3MF,   8, 
2242         L3DI,   8, 
2243         L3BS,   8, 
2244         L3A0,   16, 
2245         L3A1,   16, 
2246         L3A2,   16, 
2247         L3A3,   16, 
2248         L3A4,   16, 
2249         L3A5,   16, 
2250         L3A6,   16, 
2251         L3A7,   16, 
2252         L3A8,   16, 
2253         L3A9,   16, 
2254         L3AA,   16, 
2255         L3AB,   16, 
2256         L3D0,   8, 
2257         L3D1,   8, 
2258         L3D2,   8, 
2259         L3D3,   8, 
2260         L3D4,   8, 
2261         L3D5,   8, 
2262         L3D6,   8, 
2263         L3D7,   8, 
2264         L3D8,   8, 
2265         L3D9,   8, 
2266         L3DA,   8, 
2267         L3DB,   8, 
2268         L3DV,   8, 
2269         L3CV,   8, 
2270         L3LU,   8, 
2271         L3NL,   8, 
2272         L3EE,   8, 
2273         L3VC,   8, 
2274         L3FS,   8, 
2275         L3LE,   8, 
2276         L3DG,   8, 
2277         L3CK,   32, 
2278         L3CL,   8, 
2279         L3PP,   8, 
2280         L3VR,   8, 
2281         Offset (0x672), 
2282         ECR1,   8, 
2283         I2SC,   8, 
2284         I2SI,   32, 
2285         I2SB,   8, 
2286         ODV0,   8, 
2287         ODV1,   8, 
2288         ODV2,   8, 
2289         ODV3,   8, 
2290         ODV4,   8, 
2291         ODV5,   8, 
2292         UBCB,   32, 
2293         Offset (0x688), 
2294         WIFC,   8, 
2295         Offset (0x690), 
2296         TPLT,   8, 
2297         TPLM,   8, 
2298         TPLB,   8, 
2299         TPLH,   16, 
2300         TPLS,   8, 
2301         TPDT,   8, 
2302         TPDM,   8, 
2303         TPDB,   8, 
2304         TPDH,   16, 
2305         TPDS,   8, 
2306         FPTT,   8, 
2307         FPTM,   8, 
2308         ADPM,   32, 
2309         AG1L,   64, 
2310         AG1H,   64, 
2311         AG2L,   64, 
2312         AG2H,   64, 
2313         AG3L,   64, 
2314         AG3H,   64, 
2315         HEFE,   8, 
2316         XDCE,   8, 
2317         STXE,   8, 
2318         ST10,   8, 
2319         ST11,   8, 
2320         ST12,   8, 
2321         ST13,   8, 
2322         ST14,   8, 
2323         ST15,   8, 
2324         ST16,   8, 
2325         ST17,   8, 
2326         ST18,   8, 
2327         ST19,   8, 
2328         ENVM,   8, 
2329         DHSP,   16, 
2330         DSSP,   16, 
2331         DSTP,   8, 
2332         WRFE,   8, 
2333         WRC1,   8, 
2334         WRC2,   8, 
2335         WRC3,   8, 
2336         WRC4,   8, 
2337         AWVI,   32, 
2338         STDE,   8, 
2339         STRS,   8, 
2340         ST20,   8, 
2341         ST21,   8, 
2342         ST22,   8, 
2343         ST23,   8, 
2344         ST24,   8, 
2345         ST25,   8, 
2346         ST26,   8, 
2347         ST27,   8, 
2348         ST28,   8, 
2349         ST29,   8, 
2350         ST30,   8, 
2351         ST31,   8, 
2352         ST32,   8, 
2353         ST33,   8, 
2354         ST34,   8, 
2355         ST35,   8, 
2356         ST36,   8, 
2357         ST37,   8, 
2358         ST38,   8, 
2359         ST39,   8, 
2360         ST40,   8, 
2361         ST41,   8, 
2362         ST42,   8, 
2363         ST43,   8, 
2364         ST44,   8, 
2365         ST45,   8, 
2366         ST46,   8, 
2367         ST47,   8, 
2368         ST48,   8, 
2369         ST49,   8, 
2370         SD11,   8, 
2371         SD12,   8, 
2372         SD13,   8, 
2373         SD14,   8, 
2374         SD15,   8, 
2375         SD16,   8, 
2376         SD21,   8, 
2377         SD22,   8, 
2378         SD23,   8, 
2379         SD24,   8, 
2380         SD25,   8, 
2381         SD26,   8, 
2382         SD31,   8, 
2383         SD32,   8, 
2384         SD33,   8, 
2385         SD34,   8, 
2386         SD35,   8, 
2387         SD36,   8, 
2388         Offset (0x732), 
2389         SDAA,   8, 
2390         SDAB,   8, 
2391         BTSE,   8, 
2392         BTBR,   8, 
2393         BED2,   8, 
2394         BED3,   8, 
2395         BTLE,   8, 
2396         Offset (0x73D), 
2397         COEM,   8, 
2398         RTVM,   8, 
2399         USTC,   8, 
2400         UTCE,   8, 
2401         HEB1,   32, 
2402         BATP,   8, 
2403         TSDB,   8, 
2404         Offset (0x749), 
2405         RBY1,   8, 
2406         RBY2,   8, 
2407         SCSS,   8, 
2408         NCTC,   8, 
2409         NCTI,   8, 
2410         NCTH,   8, 
2411         HSIO,   8, 
2412         ZPOD,   8, 
2413         RGBC,   8, 
2414         DPTC,   8, 
2415         SRSP,   32, 
2416         CEDS,   8, 
2417         EHK3,   8, 
2418         EHK4,   8, 
2419         EHK5,   8, 
2420         EHK6,   8, 
2421         EHK7,   8, 
2422         EHK8,   8, 
2423         VBVP,   8, 
2424         VBVD,   8, 
2425         VBHB,   8, 
2426         VBRL,   8, 
2427         SMSS,   8, 
2428         ADAS,   8, 
2429         PPBG,   32, 
2430         AEAB,   8, 
2431         AHDB,   8, 
2432         DPLL,   8, 
2433         DPHL,   8, 
2434         PWIG,   8, 
2435         AUPL,   32, 
2436         Offset (0x77D), 
2437         WTSP,   8, 
2438         ELPM,   32, 
2439         ELPS,   32, 
2440         WGWS,   8, 
2441         UCSI,   8, 
2442         UCG1,   32, 
2443         UCG2,   32, 
2444         UCG3,   32, 
2445         UCG4,   32, 
2446         Offset (0x7A7), 
2447         SRLD,   8, 
2448         TTUP,   8, 
2449         TP1T,   8, 
2450         TP1P,   8, 
2451         TP1D,   8, 
2452         TP2T,   8, 
2453         TP2P,   8, 
2454         TP2D,   8, 
2455         TP3T,   8, 
2456         TP3P,   8, 
2457         TP3D,   8, 
2458         TP4T,   8, 
2459         TP4P,   8, 
2460         TP4D,   8, 
2461         TP5T,   8, 
2462         TP5P,   8, 
2463         TP5D,   8, 
2464         TP6T,   8, 
2465         TP6P,   8, 
2466         TP6D,   8, 
2467         UDGF,   8, 
2468         UDUP,   8, 
2469         DBGF,   8, 
2470         DBUP,   8, 
2471         XSMI,   32, 
2472         GSEN,   8, 
2473         ATDV,   8, 
2474         BTL2,   8, 
2475         BTLL,   8, 
2476         POME,   8, 
2477         WRTO,   8, 
2478         PRST,   32, 
2479         WPRP,   8, 
2480         PUIS,   8, 
2481         WDCT,   16, 
2482         WLCT,   16, 
2483         WDC2,   16, 
2484         WMXS,   16, 
2485         WMNS,   16, 
2486         ESPC,   8, 
2487         UCRT,   8, 
2488         TJMX,   8, 
2489         STAS,   8, 
2490         SXI1,   8, 
2491         SXI2,   8, 
2492         SXP1,   8, 
2493         SXP2,   8, 
2494         WLGP,   32, 
2495         WLRP,   8, 
2496         Offset (0x7EE), 
2497         Offset (0x7EF), 
2498         ODV6,   8, 
2499         ODV7,   8, 
2500         ODV8,   8, 
2501         ODV9,   8, 
2502         ODVA,   8, 
2503         ODVB,   8, 
2504         ODVC,   8, 
2505         ODVD,   8, 
2506         ODVE,   8, 
2507         ODVF,   8, 
2508         ODVG,   8, 
2509         ODVH,   8, 
2510         ODVI,   8, 
2511         ODVJ,   8, 
2512         WNSU,   8
2513     }
2514 
2515     Scope (\_SB)
2516     {
2517         Name (PD00, Package (0x25)
2518         {
2519             Package (0x04)
2520             {
2521                 0x001FFFFF, 
2522                 0x00, 
2523                 0x00, 
2524                 0x0B
2525             }, 
2526 
2527             Package (0x04)
2528             {
2529                 0x001FFFFF, 
2530                 0x01, 
2531                 0x00, 
2532                 0x0A
2533             }, 
2534 
2535             Package (0x04)
2536             {
2537                 0x001FFFFF, 
2538                 0x02, 
2539                 0x00, 
2540                 0x0B
2541             }, 
2542 
2543             Package (0x04)
2544             {
2545                 0x001FFFFF, 
2546                 0x03, 
2547                 0x00, 
2548                 0x0B
2549             }, 
2550 
2551             Package (0x04)
2552             {
2553                 0x001DFFFF, 
2554                 0x00, 
2555                 0x00, 
2556                 0x0B
2557             }, 
2558 
2559             Package (0x04)
2560             {
2561                 0x001DFFFF, 
2562                 0x01, 
2563                 0x00, 
2564                 0x0A
2565             }, 
2566 
2567             Package (0x04)
2568             {
2569                 0x001DFFFF, 
2570                 0x02, 
2571                 0x00, 
2572                 0x0B
2573             }, 
2574 
2575             Package (0x04)
2576             {
2577                 0x001DFFFF, 
2578                 0x03, 
2579                 0x00, 
2580                 0x0B
2581             }, 
2582 
2583             Package (0x04)
2584             {
2585                 0x001CFFFF, 
2586                 0x00, 
2587                 0x00, 
2588                 0x0B
2589             }, 
2590 
2591             Package (0x04)
2592             {
2593                 0x001CFFFF, 
2594                 0x01, 
2595                 0x00, 
2596                 0x0A
2597             }, 
2598 
2599             Package (0x04)
2600             {
2601                 0x001CFFFF, 
2602                 0x02, 
2603                 0x00, 
2604                 0x0B
2605             }, 
2606 
2607             Package (0x04)
2608             {
2609                 0x001CFFFF, 
2610                 0x03, 
2611                 0x00, 
2612                 0x0B
2613             }, 
2614 
2615             Package (0x04)
2616             {
2617                 0x001BFFFF, 
2618                 0x00, 
2619                 0x00, 
2620                 0x0B
2621             }, 
2622 
2623             Package (0x04)
2624             {
2625                 0x001BFFFF, 
2626                 0x01, 
2627                 0x00, 
2628                 0x0A
2629             }, 
2630 
2631             Package (0x04)
2632             {
2633                 0x001BFFFF, 
2634                 0x02, 
2635                 0x00, 
2636                 0x0B
2637             }, 
2638 
2639             Package (0x04)
2640             {
2641                 0x001BFFFF, 
2642                 0x03, 
2643                 0x00, 
2644                 0x0B
2645             }, 
2646 
2647             Package (0x04)
2648             {
2649                 0x0017FFFF, 
2650                 0x00, 
2651                 0x00, 
2652                 0x0B
2653             }, 
2654 
2655             Package (0x04)
2656             {
2657                 0x0016FFFF, 
2658                 0x00, 
2659                 0x00, 
2660                 0x0B
2661             }, 
2662 
2663             Package (0x04)
2664             {
2665                 0x0016FFFF, 
2666                 0x01, 
2667                 0x00, 
2668                 0x0A
2669             }, 
2670 
2671             Package (0x04)
2672             {
2673                 0x0016FFFF, 
2674                 0x02, 
2675                 0x00, 
2676                 0x0B
2677             }, 
2678 
2679             Package (0x04)
2680             {
2681                 0x0016FFFF, 
2682                 0x03, 
2683                 0x00, 
2684                 0x0B
2685             }, 
2686 
2687             Package (0x04)
2688             {
2689                 0x0014FFFF, 
2690                 0x00, 
2691                 0x00, 
2692                 0x0B
2693             }, 
2694 
2695             Package (0x04)
2696             {
2697                 0x0014FFFF, 
2698                 0x01, 
2699                 0x00, 
2700                 0x0A
2701             }, 
2702 
2703             Package (0x04)
2704             {
2705                 0x0014FFFF, 
2706                 0x02, 
2707                 0x00, 
2708                 0x0B
2709             }, 
2710 
2711             Package (0x04)
2712             {
2713                 0x0014FFFF, 
2714                 0x03, 
2715                 0x00, 
2716                 0x0B
2717             }, 
2718 
2719             Package (0x04)
2720             {
2721                 0x0012FFFF, 
2722                 0x00, 
2723                 0x00, 
2724                 0x0B
2725             }, 
2726 
2727             Package (0x04)
2728             {
2729                 0x0012FFFF, 
2730                 0x01, 
2731                 0x00, 
2732                 0x0A
2733             }, 
2734 
2735             Package (0x04)
2736             {
2737                 0x0012FFFF, 
2738                 0x02, 
2739                 0x00, 
2740                 0x0B
2741             }, 
2742 
2743             Package (0x04)
2744             {
2745                 0x0012FFFF, 
2746                 0x03, 
2747                 0x00, 
2748                 0x0B
2749             }, 
2750 
2751             Package (0x04)
2752             {
2753                 0x0001FFFF, 
2754                 0x00, 
2755                 0x00, 
2756                 0x0B
2757             }, 
2758 
2759             Package (0x04)
2760             {
2761                 0x0001FFFF, 
2762                 0x01, 
2763                 0x00, 
2764                 0x0A
2765             }, 
2766 
2767             Package (0x04)
2768             {
2769                 0x0001FFFF, 
2770                 0x02, 
2771                 0x00, 
2772                 0x0B
2773             }, 
2774 
2775             Package (0x04)
2776             {
2777                 0x0001FFFF, 
2778                 0x03, 
2779                 0x00, 
2780                 0x0B
2781             }, 
2782 
2783             Package (0x04)
2784             {
2785                 0x0002FFFF, 
2786                 0x00, 
2787                 0x00, 
2788                 0x0B
2789             }, 
2790 
2791             Package (0x04)
2792             {
2793                 0x0004FFFF, 
2794                 0x00, 
2795                 0x00, 
2796                 0x0B
2797             }, 
2798 
2799             Package (0x04)
2800             {
2801                 0x0005FFFF, 
2802                 0x00, 
2803                 0x00, 
2804                 0x0B
2805             }, 
2806 
2807             Package (0x04)
2808             {
2809                 0x0008FFFF, 
2810                 0x00, 
2811                 0x00, 
2812                 0x0B
2813             }
2814         })
2815         Name (AR00, Package (0x35)
2816         {
2817             Package (0x04)
2818             {
2819                 0x001FFFFF, 
2820                 0x00, 
2821                 0x00, 
2822                 0x10
2823             }, 
2824 
2825             Package (0x04)
2826             {
2827                 0x001FFFFF, 
2828                 0x01, 
2829                 0x00, 
2830                 0x11
2831             }, 
2832 
2833             Package (0x04)
2834             {
2835                 0x001FFFFF, 
2836                 0x02, 
2837                 0x00, 
2838                 0x12
2839             }, 
2840 
2841             Package (0x04)
2842             {
2843                 0x001FFFFF, 
2844                 0x03, 
2845                 0x00, 
2846                 0x13
2847             }, 
2848 
2849             Package (0x04)
2850             {
2851                 0x001EFFFF, 
2852                 0x00, 
2853                 0x00, 
2854                 0x14
2855             }, 
2856 
2857             Package (0x04)
2858             {
2859                 0x001EFFFF, 
2860                 0x01, 
2861                 0x00, 
2862                 0x15
2863             }, 
2864 
2865             Package (0x04)
2866             {
2867                 0x001EFFFF, 
2868                 0x02, 
2869                 0x00, 
2870                 0x16
2871             }, 
2872 
2873             Package (0x04)
2874             {
2875                 0x001EFFFF, 
2876                 0x03, 
2877                 0x00, 
2878                 0x17
2879             }, 
2880 
2881             Package (0x04)
2882             {
2883                 0x001DFFFF, 
2884                 0x00, 
2885                 0x00, 
2886                 0x10
2887             }, 
2888 
2889             Package (0x04)
2890             {
2891                 0x001DFFFF, 
2892                 0x01, 
2893                 0x00, 
2894                 0x11
2895             }, 
2896 
2897             Package (0x04)
2898             {
2899                 0x001DFFFF, 
2900                 0x02, 
2901                 0x00, 
2902                 0x12
2903             }, 
2904 
2905             Package (0x04)
2906             {
2907                 0x001DFFFF, 
2908                 0x03, 
2909                 0x00, 
2910                 0x13
2911             }, 
2912 
2913             Package (0x04)
2914             {
2915                 0x001CFFFF, 
2916                 0x00, 
2917                 0x00, 
2918                 0x10
2919             }, 
2920 
2921             Package (0x04)
2922             {
2923                 0x001CFFFF, 
2924                 0x01, 
2925                 0x00, 
2926                 0x11
2927             }, 
2928 
2929             Package (0x04)
2930             {
2931                 0x001CFFFF, 
2932                 0x02, 
2933                 0x00, 
2934                 0x12
2935             }, 
2936 
2937             Package (0x04)
2938             {
2939                 0x001CFFFF, 
2940                 0x03, 
2941                 0x00, 
2942                 0x13
2943             }, 
2944 
2945             Package (0x04)
2946             {
2947                 0x001BFFFF, 
2948                 0x00, 
2949                 0x00, 
2950                 0x10
2951             }, 
2952 
2953             Package (0x04)
2954             {
2955                 0x001BFFFF, 
2956                 0x01, 
2957                 0x00, 
2958                 0x11
2959             }, 
2960 
2961             Package (0x04)
2962             {
2963                 0x001BFFFF, 
2964                 0x02, 
2965                 0x00, 
2966                 0x12
2967             }, 
2968 
2969             Package (0x04)
2970             {
2971                 0x001BFFFF, 
2972                 0x03, 
2973                 0x00, 
2974                 0x13
2975             }, 
2976 
2977             Package (0x04)
2978             {
2979                 0x001AFFFF, 
2980                 0x00, 
2981                 0x00, 
2982                 0x10
2983             }, 
2984 
2985             Package (0x04)
2986             {
2987                 0x001AFFFF, 
2988                 0x01, 
2989                 0x00, 
2990                 0x11
2991             }, 
2992 
2993             Package (0x04)
2994             {
2995                 0x001AFFFF, 
2996                 0x02, 
2997                 0x00, 
2998                 0x12
2999             }, 
3000 
3001             Package (0x04)
3002             {
3003                 0x001AFFFF, 
3004                 0x03, 
3005                 0x00, 
3006                 0x13
3007             }, 
3008 
3009             Package (0x04)
3010             {
3011                 0x0019FFFF, 
3012                 0x00, 
3013                 0x00, 
3014                 0x20
3015             }, 
3016 
3017             Package (0x04)
3018             {
3019                 0x0019FFFF, 
3020                 0x01, 
3021                 0x00, 
3022                 0x21
3023             }, 
3024 
3025             Package (0x04)
3026             {
3027                 0x0019FFFF, 
3028                 0x02, 
3029                 0x00, 
3030                 0x22
3031             }, 
3032 
3033             Package (0x04)
3034             {
3035                 0x0017FFFF, 
3036                 0x00, 
3037                 0x00, 
3038                 0x10
3039             }, 
3040 
3041             Package (0x04)
3042             {
3043                 0x0016FFFF, 
3044                 0x00, 
3045                 0x00, 
3046                 0x10
3047             }, 
3048 
3049             Package (0x04)
3050             {
3051                 0x0016FFFF, 
3052                 0x01, 
3053                 0x00, 
3054                 0x11
3055             }, 
3056 
3057             Package (0x04)
3058             {
3059                 0x0016FFFF, 
3060                 0x02, 
3061                 0x00, 
3062                 0x12
3063             }, 
3064 
3065             Package (0x04)
3066             {
3067                 0x0016FFFF, 
3068                 0x03, 
3069                 0x00, 
3070                 0x13
3071             }, 
3072 
3073             Package (0x04)
3074             {
3075                 0x0015FFFF, 
3076                 0x00, 
3077                 0x00, 
3078                 0x10
3079             }, 
3080 
3081             Package (0x04)
3082             {
3083                 0x0015FFFF, 
3084                 0x01, 
3085                 0x00, 
3086                 0x11
3087             }, 
3088 
3089             Package (0x04)
3090             {
3091                 0x0015FFFF, 
3092                 0x02, 
3093                 0x00, 
3094                 0x12
3095             }, 
3096 
3097             Package (0x04)
3098             {
3099                 0x0015FFFF, 
3100                 0x03, 
3101                 0x00, 
3102                 0x13
3103             }, 
3104 
3105             Package (0x04)
3106             {
3107                 0x0014FFFF, 
3108                 0x00, 
3109                 0x00, 
3110                 0x10
3111             }, 
3112 
3113             Package (0x04)
3114             {
3115                 0x0014FFFF, 
3116                 0x01, 
3117                 0x00, 
3118                 0x11
3119             }, 
3120 
3121             Package (0x04)
3122             {
3123                 0x0014FFFF, 
3124                 0x02, 
3125                 0x00, 
3126                 0x12
3127             }, 
3128 
3129             Package (0x04)
3130             {
3131                 0x0014FFFF, 
3132                 0x03, 
3133                 0x00, 
3134                 0x13
3135             }, 
3136 
3137             Package (0x04)
3138             {
3139                 0x0013FFFF, 
3140                 0x00, 
3141                 0x00, 
3142                 0x14
3143             }, 
3144 
3145             Package (0x04)
3146             {
3147                 0x0012FFFF, 
3148                 0x00, 
3149                 0x00, 
3150                 0x10
3151             }, 
3152 
3153             Package (0x04)
3154             {
3155                 0x0012FFFF, 
3156                 0x01, 
3157                 0x00, 
3158                 0x18
3159             }, 
3160 
3161             Package (0x04)
3162             {
3163                 0x0012FFFF, 
3164                 0x02, 
3165                 0x00, 
3166                 0x12
3167             }, 
3168 
3169             Package (0x04)
3170             {
3171                 0x0012FFFF, 
3172                 0x03, 
3173                 0x00, 
3174                 0x13
3175             }, 
3176 
3177             Package (0x04)
3178             {
3179                 0x0001FFFF, 
3180                 0x00, 
3181                 0x00, 
3182                 0x10
3183             }, 
3184 
3185             Package (0x04)
3186             {
3187                 0x0001FFFF, 
3188                 0x01, 
3189                 0x00, 
3190                 0x11
3191             }, 
3192 
3193             Package (0x04)
3194             {
3195                 0x0001FFFF, 
3196                 0x02, 
3197                 0x00, 
3198                 0x12
3199             }, 
3200 
3201             Package (0x04)
3202             {
3203                 0x0001FFFF, 
3204                 0x03, 
3205                 0x00, 
3206                 0x13
3207             }, 
3208 
3209             Package (0x04)
3210             {
3211                 0x0002FFFF, 
3212                 0x00, 
3213                 0x00, 
3214                 0x10
3215             }, 
3216 
3217             Package (0x04)
3218             {
3219                 0x0004FFFF, 
3220                 0x00, 
3221                 0x00, 
3222                 0x10
3223             }, 
3224 
3225             Package (0x04)
3226             {
3227                 0x0005FFFF, 
3228                 0x00, 
3229                 0x00, 
3230                 0x10
3231             }, 
3232 
3233             Package (0x04)
3234             {
3235                 0x0008FFFF, 
3236                 0x00, 
3237                 0x00, 
3238                 0x10
3239             }
3240         })
3241         Name (PD04, Package (0x04)
3242         {
3243             Package (0x04)
3244             {
3245                 0xFFFF, 
3246                 0x00, 
3247                 0x00, 
3248                 0x0B
3249             }, 
3250 
3251             Package (0x04)
3252             {
3253                 0xFFFF, 
3254                 0x01, 
3255                 0x00, 
3256                 0x0A
3257             }, 
3258 
3259             Package (0x04)
3260             {
3261                 0xFFFF, 
3262                 0x02, 
3263                 0x00, 
3264                 0x0B
3265             }, 
3266 
3267             Package (0x04)
3268             {
3269                 0xFFFF, 
3270                 0x03, 
3271                 0x00, 
3272                 0x0B
3273             }
3274         })
3275         Name (AR04, Package (0x04)
3276         {
3277             Package (0x04)
3278             {
3279                 0xFFFF, 
3280                 0x00, 
3281                 0x00, 
3282                 0x10
3283             }, 
3284 
3285             Package (0x04)
3286             {
3287                 0xFFFF, 
3288                 0x01, 
3289                 0x00, 
3290                 0x11
3291             }, 
3292 
3293             Package (0x04)
3294             {
3295                 0xFFFF, 
3296                 0x02, 
3297                 0x00, 
3298                 0x12
3299             }, 
3300 
3301             Package (0x04)
3302             {
3303                 0xFFFF, 
3304                 0x03, 
3305                 0x00, 
3306                 0x13
3307             }
3308         })
3309         Name (PD05, Package (0x04)
3310         {
3311             Package (0x04)
3312             {
3313                 0xFFFF, 
3314                 0x00, 
3315                 0x00, 
3316                 0x0A
3317             }, 
3318 
3319             Package (0x04)
3320             {
3321                 0xFFFF, 
3322                 0x01, 
3323                 0x00, 
3324                 0x0B
3325             }, 
3326 
3327             Package (0x04)
3328             {
3329                 0xFFFF, 
3330                 0x02, 
3331                 0x00, 
3332                 0x0B
3333             }, 
3334 
3335             Package (0x04)
3336             {
3337                 0xFFFF, 
3338                 0x03, 
3339                 0x00, 
3340                 0x0B
3341             }
3342         })
3343         Name (AR05, Package (0x04)
3344         {
3345             Package (0x04)
3346             {
3347                 0xFFFF, 
3348                 0x00, 
3349                 0x00, 
3350                 0x11
3351             }, 
3352 
3353             Package (0x04)
3354             {
3355                 0xFFFF, 
3356                 0x01, 
3357                 0x00, 
3358                 0x12
3359             }, 
3360 
3361             Package (0x04)
3362             {
3363                 0xFFFF, 
3364                 0x02, 
3365                 0x00, 
3366                 0x13
3367             }, 
3368 
3369             Package (0x04)
3370             {
3371                 0xFFFF, 
3372                 0x03, 
3373                 0x00, 
3374                 0x10
3375             }
3376         })
3377         Name (PD06, Package (0x04)
3378         {
3379             Package (0x04)
3380             {
3381                 0xFFFF, 
3382                 0x00, 
3383                 0x00, 
3384                 0x0B
3385             }, 
3386 
3387             Package (0x04)
3388             {
3389                 0xFFFF, 
3390                 0x01, 
3391                 0x00, 
3392                 0x0B
3393             }, 
3394 
3395             Package (0x04)
3396             {
3397                 0xFFFF, 
3398                 0x02, 
3399                 0x00, 
3400                 0x0B
3401             }, 
3402 
3403             Package (0x04)
3404             {
3405                 0xFFFF, 
3406                 0x03, 
3407                 0x00, 
3408                 0x0A
3409             }
3410         })
3411         Name (AR06, Package (0x04)
3412         {
3413             Package (0x04)
3414             {
3415                 0xFFFF, 
3416                 0x00, 
3417                 0x00, 
3418                 0x12
3419             }, 
3420 
3421             Package (0x04)
3422             {
3423                 0xFFFF, 
3424                 0x01, 
3425                 0x00, 
3426                 0x13
3427             }, 
3428 
3429             Package (0x04)
3430             {
3431                 0xFFFF, 
3432                 0x02, 
3433                 0x00, 
3434                 0x10
3435             }, 
3436 
3437             Package (0x04)
3438             {
3439                 0xFFFF, 
3440                 0x03, 
3441                 0x00, 
3442                 0x11
3443             }
3444         })
3445         Name (PD07, Package (0x04)
3446         {
3447             Package (0x04)
3448             {
3449                 0xFFFF, 
3450                 0x00, 
3451                 0x00, 
3452                 0x0B
3453             }, 
3454 
3455             Package (0x04)
3456             {
3457                 0xFFFF, 
3458                 0x01, 
3459                 0x00, 
3460                 0x0B
3461             }, 
3462 
3463             Package (0x04)
3464             {
3465                 0xFFFF, 
3466                 0x02, 
3467                 0x00, 
3468                 0x0A
3469             }, 
3470 
3471             Package (0x04)
3472             {
3473                 0xFFFF, 
3474                 0x03, 
3475                 0x00, 
3476                 0x0B
3477             }
3478         })
3479         Name (AR07, Package (0x04)
3480         {
3481             Package (0x04)
3482             {
3483                 0xFFFF, 
3484                 0x00, 
3485                 0x00, 
3486                 0x13
3487             }, 
3488 
3489             Package (0x04)
3490             {
3491                 0xFFFF, 
3492                 0x01, 
3493                 0x00, 
3494                 0x10
3495             }, 
3496 
3497             Package (0x04)
3498             {
3499                 0xFFFF, 
3500                 0x02, 
3501                 0x00, 
3502                 0x11
3503             }, 
3504 
3505             Package (0x04)
3506             {
3507                 0xFFFF, 
3508                 0x03, 
3509                 0x00, 
3510                 0x12
3511             }
3512         })
3513         Name (PD08, Package (0x04)
3514         {
3515             Package (0x04)
3516             {
3517                 0xFFFF, 
3518                 0x00, 
3519                 0x00, 
3520                 0x0B
3521             }, 
3522 
3523             Package (0x04)
3524             {
3525                 0xFFFF, 
3526                 0x01, 
3527                 0x00, 
3528                 0x0A
3529             }, 
3530 
3531             Package (0x04)
3532             {
3533                 0xFFFF, 
3534                 0x02, 
3535                 0x00, 
3536                 0x0B
3537             }, 
3538 
3539             Package (0x04)
3540             {
3541                 0xFFFF, 
3542                 0x03, 
3543                 0x00, 
3544                 0x0B
3545             }
3546         })
3547         Name (AR08, Package (0x04)
3548         {
3549             Package (0x04)
3550             {
3551                 0xFFFF, 
3552                 0x00, 
3553                 0x00, 
3554                 0x10
3555             }, 
3556 
3557             Package (0x04)
3558             {
3559                 0xFFFF, 
3560                 0x01, 
3561                 0x00, 
3562                 0x11
3563             }, 
3564 
3565             Package (0x04)
3566             {
3567                 0xFFFF, 
3568                 0x02, 
3569                 0x00, 
3570                 0x12
3571             }, 
3572 
3573             Package (0x04)
3574             {
3575                 0xFFFF, 
3576                 0x03, 
3577                 0x00, 
3578                 0x13
3579             }
3580         })
3581         Name (PD09, Package (0x04)
3582         {
3583             Package (0x04)
3584             {
3585                 0xFFFF, 
3586                 0x00, 
3587                 0x00, 
3588                 0x0A
3589             }, 
3590 
3591             Package (0x04)
3592             {
3593                 0xFFFF, 
3594                 0x01, 
3595                 0x00, 
3596                 0x0B
3597             }, 
3598 
3599             Package (0x04)
3600             {
3601                 0xFFFF, 
3602                 0x02, 
3603                 0x00, 
3604                 0x0B
3605             }, 
3606 
3607             Package (0x04)
3608             {
3609                 0xFFFF, 
3610                 0x03, 
3611                 0x00, 
3612                 0x0B
3613             }
3614         })
3615         Name (AR09, Package (0x04)
3616         {
3617             Package (0x04)
3618             {
3619                 0xFFFF, 
3620                 0x00, 
3621                 0x00, 
3622                 0x11
3623             }, 
3624 
3625             Package (0x04)
3626             {
3627                 0xFFFF, 
3628                 0x01, 
3629                 0x00, 
3630                 0x12
3631             }, 
3632 
3633             Package (0x04)
3634             {
3635                 0xFFFF, 
3636                 0x02, 
3637                 0x00, 
3638                 0x13
3639             }, 
3640 
3641             Package (0x04)
3642             {
3643                 0xFFFF, 
3644                 0x03, 
3645                 0x00, 
3646                 0x10
3647             }
3648         })
3649         Name (PD0E, Package (0x04)
3650         {
3651             Package (0x04)
3652             {
3653                 0xFFFF, 
3654                 0x00, 
3655                 0x00, 
3656                 0x0B
3657             }, 
3658 
3659             Package (0x04)
3660             {
3661                 0xFFFF, 
3662                 0x01, 
3663                 0x00, 
3664                 0x0B
3665             }, 
3666 
3667             Package (0x04)
3668             {
3669                 0xFFFF, 
3670                 0x02, 
3671                 0x00, 
3672                 0x0B
3673             }, 
3674 
3675             Package (0x04)
3676             {
3677                 0xFFFF, 
3678                 0x03, 
3679                 0x00, 
3680                 0x0A
3681             }
3682         })
3683         Name (AR0E, Package (0x04)
3684         {
3685             Package (0x04)
3686             {
3687                 0xFFFF, 
3688                 0x00, 
3689                 0x00, 
3690                 0x12
3691             }, 
3692 
3693             Package (0x04)
3694             {
3695                 0xFFFF, 
3696                 0x01, 
3697                 0x00, 
3698                 0x13
3699             }, 
3700 
3701             Package (0x04)
3702             {
3703                 0xFFFF, 
3704                 0x02, 
3705                 0x00, 
3706                 0x10
3707             }, 
3708 
3709             Package (0x04)
3710             {
3711                 0xFFFF, 
3712                 0x03, 
3713                 0x00, 
3714                 0x11
3715             }
3716         })
3717         Name (PD0F, Package (0x04)
3718         {
3719             Package (0x04)
3720             {
3721                 0xFFFF, 
3722                 0x00, 
3723                 0x00, 
3724                 0x0B
3725             }, 
3726 
3727             Package (0x04)
3728             {
3729                 0xFFFF, 
3730                 0x01, 
3731                 0x00, 
3732                 0x0B
3733             }, 
3734 
3735             Package (0x04)
3736             {
3737                 0xFFFF, 
3738                 0x02, 
3739                 0x00, 
3740                 0x0A
3741             }, 
3742 
3743             Package (0x04)
3744             {
3745                 0xFFFF, 
3746                 0x03, 
3747                 0x00, 
3748                 0x0B
3749             }
3750         })
3751         Name (AR0F, Package (0x04)
3752         {
3753             Package (0x04)
3754             {
3755                 0xFFFF, 
3756                 0x00, 
3757                 0x00, 
3758                 0x13
3759             }, 
3760 
3761             Package (0x04)
3762             {
3763                 0xFFFF, 
3764                 0x01, 
3765                 0x00, 
3766                 0x10
3767             }, 
3768 
3769             Package (0x04)
3770             {
3771                 0xFFFF, 
3772                 0x02, 
3773                 0x00, 
3774                 0x11
3775             }, 
3776 
3777             Package (0x04)
3778             {
3779                 0xFFFF, 
3780                 0x03, 
3781                 0x00, 
3782                 0x12
3783             }
3784         })
3785         Name (PD02, Package (0x04)
3786         {
3787             Package (0x04)
3788             {
3789                 0xFFFF, 
3790                 0x00, 
3791                 0x00, 
3792                 0x0B
3793             }, 
3794 
3795             Package (0x04)
3796             {
3797                 0xFFFF, 
3798                 0x01, 
3799                 0x00, 
3800                 0x0A
3801             }, 
3802 
3803             Package (0x04)
3804             {
3805                 0xFFFF, 
3806                 0x02, 
3807                 0x00, 
3808                 0x0B
3809             }, 
3810 
3811             Package (0x04)
3812             {
3813                 0xFFFF, 
3814                 0x03, 
3815                 0x00, 
3816                 0x0B
3817             }
3818         })
3819         Name (AR02, Package (0x04)
3820         {
3821             Package (0x04)
3822             {
3823                 0xFFFF, 
3824                 0x00, 
3825                 0x00, 
3826                 0x10
3827             }, 
3828 
3829             Package (0x04)
3830             {
3831                 0xFFFF, 
3832                 0x01, 
3833                 0x00, 
3834                 0x11
3835             }, 
3836 
3837             Package (0x04)
3838             {
3839                 0xFFFF, 
3840                 0x02, 
3841                 0x00, 
3842                 0x12
3843             }, 
3844 
3845             Package (0x04)
3846             {
3847                 0xFFFF, 
3848                 0x03, 
3849                 0x00, 
3850                 0x13
3851             }
3852         })
3853         Name (PD0A, Package (0x04)
3854         {
3855             Package (0x04)
3856             {
3857                 0xFFFF, 
3858                 0x00, 
3859                 0x00, 
3860                 0x0A
3861             }, 
3862 
3863             Package (0x04)
3864             {
3865                 0xFFFF, 
3866                 0x01, 
3867                 0x00, 
3868                 0x0B
3869             }, 
3870 
3871             Package (0x04)
3872             {
3873                 0xFFFF, 
3874                 0x02, 
3875                 0x00, 
3876                 0x0B
3877             }, 
3878 
3879             Package (0x04)
3880             {
3881                 0xFFFF, 
3882                 0x03, 
3883                 0x00, 
3884                 0x0B
3885             }
3886         })
3887         Name (AR0A, Package (0x04)
3888         {
3889             Package (0x04)
3890             {
3891                 0xFFFF, 
3892                 0x00, 
3893                 0x00, 
3894                 0x11
3895             }, 
3896 
3897             Package (0x04)
3898             {
3899                 0xFFFF, 
3900                 0x01, 
3901                 0x00, 
3902                 0x12
3903             }, 
3904 
3905             Package (0x04)
3906             {
3907                 0xFFFF, 
3908                 0x02, 
3909                 0x00, 
3910                 0x13
3911             }, 
3912 
3913             Package (0x04)
3914             {
3915                 0xFFFF, 
3916                 0x03, 
3917                 0x00, 
3918                 0x10
3919             }
3920         })
3921         Name (PD0B, Package (0x04)
3922         {
3923             Package (0x04)
3924             {
3925                 0xFFFF, 
3926                 0x00, 
3927                 0x00, 
3928                 0x0B
3929             }, 
3930 
3931             Package (0x04)
3932             {
3933                 0xFFFF, 
3934                 0x01, 
3935                 0x00, 
3936                 0x0B
3937             }, 
3938 
3939             Package (0x04)
3940             {
3941                 0xFFFF, 
3942                 0x02, 
3943                 0x00, 
3944                 0x0B
3945             }, 
3946 
3947             Package (0x04)
3948             {
3949                 0xFFFF, 
3950                 0x03, 
3951                 0x00, 
3952                 0x0A
3953             }
3954         })
3955         Name (AR0B, Package (0x04)
3956         {
3957             Package (0x04)
3958             {
3959                 0xFFFF, 
3960                 0x00, 
3961                 0x00, 
3962                 0x12
3963             }, 
3964 
3965             Package (0x04)
3966             {
3967                 0xFFFF, 
3968                 0x01, 
3969                 0x00, 
3970                 0x13
3971             }, 
3972 
3973             Package (0x04)
3974             {
3975                 0xFFFF, 
3976                 0x02, 
3977                 0x00, 
3978                 0x10
3979             }, 
3980 
3981             Package (0x04)
3982             {
3983                 0xFFFF, 
3984                 0x03, 
3985                 0x00, 
3986                 0x11
3987             }
3988         })
3989         Device (PCI0)
3990         {
3991             Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */)  // _HID: Hardware ID
3992             Name (_CID, EisaId ("PNP0A03") /* PCI Bus */)  // _CID: Compatible ID
3993             Name (_SEG, 0x00)  // _SEG: PCI Segment
3994             Name (_ADR, 0x00)  // _ADR: Address
3995             Method (^BN00, 0, NotSerialized)
3996             {
3997                 Return (0x00)
3998             }
3999 
4000             Method (_BBN, 0, NotSerialized)  // _BBN: BIOS Bus Number
4001             {
4002                 Return (BN00 ())
4003             }
4004 
4005             Name (_UID, 0x00)  // _UID: Unique ID
4006             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
4007             {
4008                 If (PICM)
4009                 {
4010                     Return (AR00 ())
4011                 }
4012 
4013                 Return (PD00 ())
4014             }
4015 
4016             OperationRegion (HBUS, PCI_Config, 0x00, 0x0100)
4017             Field (HBUS, DWordAcc, NoLock, Preserve)
4018             {
4019                 Offset (0x40), 
4020                 EPEN,   1, 
4021                     ,   11, 
4022                 EPBR,   20, 
4023                 Offset (0x48), 
4024                 MHEN,   1, 
4025                     ,   14, 
4026                 MHBR,   17, 
4027                 Offset (0x50), 
4028                 GCLK,   1, 
4029                 Offset (0x54), 
4030                 D0EN,   1, 
4031                 D1F2,   1, 
4032                 D1F1,   1, 
4033                 D1F0,   1, 
4034                 Offset (0x60), 
4035                 PXEN,   1, 
4036                 PXSZ,   2, 
4037                     ,   23, 
4038                 PXBR,   6, 
4039                 Offset (0x68), 
4040                 DIEN,   1, 
4041                     ,   11, 
4042                 DIBR,   20, 
4043                 Offset (0x70), 
4044                     ,   20, 
4045                 MEBR,   12, 
4046                 Offset (0x80), 
4047                 PMLK,   1, 
4048                     ,   3, 
4049                 PM0H,   2, 
4050                 Offset (0x81), 
4051                 PM1L,   2, 
4052                     ,   2, 
4053                 PM1H,   2, 
4054                 Offset (0x82), 
4055                 PM2L,   2, 
4056                     ,   2, 
4057                 PM2H,   2, 
4058                 Offset (0x83), 
4059                 PM3L,   2, 
4060                     ,   2, 
4061                 PM3H,   2, 
4062                 Offset (0x84), 
4063                 PM4L,   2, 
4064                     ,   2, 
4065                 PM4H,   2, 
4066                 Offset (0x85), 
4067                 PM5L,   2, 
4068                     ,   2, 
4069                 PM5H,   2, 
4070                 Offset (0x86), 
4071                 PM6L,   2, 
4072                     ,   2, 
4073                 PM6H,   2, 
4074                 Offset (0x87), 
4075                 Offset (0xA8), 
4076                     ,   20, 
4077                 TUUD,   19, 
4078                 Offset (0xBC), 
4079                     ,   20, 
4080                 TLUD,   12, 
4081                 Offset (0xC8), 
4082                     ,   7, 
4083                 HTSE,   1
4084             }
4085 
4086             Name (BUF0, ResourceTemplate ()
4087             {
4088                 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
4089                     0x0000,             // Granularity
4090                     0x0000,             // Range Minimum
4091                     0x00FF,             // Range Maximum
4092                     0x0000,             // Translation Offset
4093                     0x0100,             // Length
4094                     ,, _Y00)
4095                 DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
4096                     0x00000000,         // Granularity
4097                     0x00000000,         // Range Minimum
4098                     0x00000CF7,         // Range Maximum
4099                     0x00000000,         // Translation Offset
4100                     0x00000CF8,         // Length
4101                     ,, , TypeStatic, DenseTranslation)
4102                 IO (Decode16,
4103                     0x0CF8,             // Range Minimum
4104                     0x0CF8,             // Range Maximum
4105                     0x01,               // Alignment
4106                     0x08,               // Length
4107                     )
4108                 DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
4109                     0x00000000,         // Granularity
4110                     0x00000D00,         // Range Minimum
4111                     0x0000FFFF,         // Range Maximum
4112                     0x00000000,         // Translation Offset
4113                     0x0000F300,         // Length
4114                     ,, , TypeStatic, DenseTranslation)
4115                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4116                     0x00000000,         // Granularity
4117                     0x000A0000,         // Range Minimum
4118                     0x000BFFFF,         // Range Maximum
4119                     0x00000000,         // Translation Offset
4120                     0x00020000,         // Length
4121                     ,, , AddressRangeMemory, TypeStatic)
4122                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4123                     0x00000000,         // Granularity
4124                     0x000C0000,         // Range Minimum
4125                     0x000C3FFF,         // Range Maximum
4126                     0x00000000,         // Translation Offset
4127                     0x00004000,         // Length
4128                     ,, _Y01, AddressRangeMemory, TypeStatic)
4129                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4130                     0x00000000,         // Granularity
4131                     0x000C4000,         // Range Minimum
4132                     0x000C7FFF,         // Range Maximum
4133                     0x00000000,         // Translation Offset
4134                     0x00004000,         // Length
4135                     ,, _Y02, AddressRangeMemory, TypeStatic)
4136                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4137                     0x00000000,         // Granularity
4138                     0x000C8000,         // Range Minimum
4139                     0x000CBFFF,         // Range Maximum
4140                     0x00000000,         // Translation Offset
4141                     0x00004000,         // Length
4142                     ,, _Y03, AddressRangeMemory, TypeStatic)
4143                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4144                     0x00000000,         // Granularity
4145                     0x000CC000,         // Range Minimum
4146                     0x000CFFFF,         // Range Maximum
4147                     0x00000000,         // Translation Offset
4148                     0x00004000,         // Length
4149                     ,, _Y04, AddressRangeMemory, TypeStatic)
4150                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4151                     0x00000000,         // Granularity
4152                     0x000D0000,         // Range Minimum
4153                     0x000D3FFF,         // Range Maximum
4154                     0x00000000,         // Translation Offset
4155                     0x00004000,         // Length
4156                     ,, _Y05, AddressRangeMemory, TypeStatic)
4157                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4158                     0x00000000,         // Granularity
4159                     0x000D4000,         // Range Minimum
4160                     0x000D7FFF,         // Range Maximum
4161                     0x00000000,         // Translation Offset
4162                     0x00004000,         // Length
4163                     ,, _Y06, AddressRangeMemory, TypeStatic)
4164                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4165                     0x00000000,         // Granularity
4166                     0x000D8000,         // Range Minimum
4167                     0x000DBFFF,         // Range Maximum
4168                     0x00000000,         // Translation Offset
4169                     0x00004000,         // Length
4170                     ,, _Y07, AddressRangeMemory, TypeStatic)
4171                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4172                     0x00000000,         // Granularity
4173                     0x000DC000,         // Range Minimum
4174                     0x000DFFFF,         // Range Maximum
4175                     0x00000000,         // Translation Offset
4176                     0x00004000,         // Length
4177                     ,, _Y08, AddressRangeMemory, TypeStatic)
4178                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4179                     0x00000000,         // Granularity
4180                     0x000E0000,         // Range Minimum
4181                     0x000E3FFF,         // Range Maximum
4182                     0x00000000,         // Translation Offset
4183                     0x00004000,         // Length
4184                     ,, _Y09, AddressRangeMemory, TypeStatic)
4185                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4186                     0x00000000,         // Granularity
4187                     0x000E4000,         // Range Minimum
4188                     0x000E7FFF,         // Range Maximum
4189                     0x00000000,         // Translation Offset
4190                     0x00004000,         // Length
4191                     ,, _Y0A, AddressRangeMemory, TypeStatic)
4192                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4193                     0x00000000,         // Granularity
4194                     0x000E8000,         // Range Minimum
4195                     0x000EBFFF,         // Range Maximum
4196                     0x00000000,         // Translation Offset
4197                     0x00004000,         // Length
4198                     ,, _Y0B, AddressRangeMemory, TypeStatic)
4199                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4200                     0x00000000,         // Granularity
4201                     0x000EC000,         // Range Minimum
4202                     0x000EFFFF,         // Range Maximum
4203                     0x00000000,         // Translation Offset
4204                     0x00004000,         // Length
4205                     ,, _Y0C, AddressRangeMemory, TypeStatic)
4206                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
4207                     0x00000000,         // Granularity
4208                     0x000F0000,         // Range Minimum
4209                     0x000FFFFF,         // Range Maximum
4210                     0x00000000,         // Translation Offset
4211                     0x00010000,         // Length
4212                     ,, _Y0D, AddressRangeMemory, TypeStatic)
4213                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
4214                     0x00000000,         // Granularity
4215                     0x00000000,         // Range Minimum
4216                     0xDFFFFFFF,         // Range Maximum
4217                     0x00000000,         // Translation Offset
4218                     0xE0000000,         // Length
4219                     ,, _Y0E, AddressRangeMemory, TypeStatic)
4220                 QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
4221                     0x0000000000000000, // Granularity
4222                     0x0000000000010000, // Range Minimum
4223                     0x000000000001FFFF, // Range Maximum
4224                     0x0000000000000000, // Translation Offset
4225                     0x0000000000010000, // Length
4226                     ,, _Y0F, AddressRangeMemory, TypeStatic)
4227                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
4228                     0x00000000,         // Granularity
4229                     0xFC800000,         // Range Minimum
4230                     0xFE7FFFFF,         // Range Maximum
4231                     0x00000000,         // Translation Offset
4232                     0x02000000,         // Length
4233                     ,, , AddressRangeMemory, TypeStatic)
4234             })
4235             Device (SRRE)
4236             {
4237                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
4238                 Name (_UID, "SARESV")  // _UID: Unique ID
4239                 Method (_STA, 0, Serialized)  // _STA: Status
4240                 {
4241                     If ((TLUD >= 0x0404))
4242                     {
4243                         Return (0x03)
4244                     }
4245                     Else
4246                     {
4247                         Return (0x00)
4248                     }
4249                 }
4250 
4251                 Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
4252                 {
4253                     Name (BUF0, ResourceTemplate ()
4254                     {
4255                         Memory32Fixed (ReadOnly,
4256                             0x40000000,         // Address Base
4257                             0x00400000,         // Address Length
4258                             )
4259                     })
4260                     If ((TLUD >= 0x0404))
4261                     {
4262                         Return (BUF0) /* \_SB_.PCI0.SRRE._CRS.BUF0 */
4263                     }
4264                     Else
4265                     {
4266                         Return (Buffer (0x00){})
4267                     }
4268                 }
4269             }
4270 
4271             Name (EP_B, 0x00)
4272             Name (MH_B, 0x00)
4273             Name (PC_B, 0x00)
4274             Name (PC_L, 0x00)
4275             Name (DM_B, 0x00)
4276             Method (GEPB, 0, Serialized)
4277             {
4278                 If ((EP_B == 0x00))
4279                 {
4280                     EP_B = (\_SB.PCI0.EPBR << 0x0C)
4281                 }
4282 
4283                 Return (EP_B) /* \_SB_.PCI0.EP_B */
4284             }
4285 
4286             Method (GMHB, 0, Serialized)
4287             {
4288                 If ((MH_B == 0x00))
4289                 {
4290                     MH_B = (\_SB.PCI0.MHBR << 0x0F)
4291                 }
4292 
4293                 Return (MH_B) /* \_SB_.PCI0.MH_B */
4294             }
4295 
4296             Method (GPCB, 0, Serialized)
4297             {
4298                 If ((PC_B == 0x00))
4299                 {
4300                     PC_B = (\_SB.PCI0.PXBR << 0x1A)
4301                 }
4302 
4303                 Return (PC_B) /* \_SB_.PCI0.PC_B */
4304             }
4305 
4306             Method (GPCL, 0, Serialized)
4307             {
4308                 If ((PC_L == 0x00))
4309                 {
4310                     PC_L = (0x10000000 >> \_SB.PCI0.PXSZ)
4311                 }
4312 
4313                 Return (PC_L) /* \_SB_.PCI0.PC_L */
4314             }
4315 
4316             Method (GDMB, 0, Serialized)
4317             {
4318                 If ((DM_B == 0x00))
4319                 {
4320                     DM_B = (\_SB.PCI0.DIBR << 0x0C)
4321                 }
4322 
4323                 Return (DM_B) /* \_SB_.PCI0.DM_B */
4324             }
4325 
4326             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
4327             {
4328                 Local0 = \_SB.PCI0.GPCL ()
4329                 CreateWordField (BUF0, \_SB.PCI0._Y00._MAX, PBMX)  // _MAX: Maximum Base Address
4330                 PBMX = ((Local0 >> 0x14) - 0x02)
4331                 CreateWordField (BUF0, \_SB.PCI0._Y00._LEN, PBLN)  // _LEN: Length
4332                 PBLN = ((Local0 >> 0x14) - 0x01)
4333                 If (PM1L)
4334                 {
4335                     CreateDWordField (BUF0, \_SB.PCI0._Y01._LEN, C0LN)  // _LEN: Length
4336                     C0LN = Zero
4337                 }
4338 
4339                 If ((PM1L == 0x01))
4340                 {
4341                     CreateBitField (BUF0, \_SB.PCI0._Y01._RW, C0RW)  // _RW_: Read-Write Status
4342                     C0RW = Zero
4343                 }
4344 
4345                 If (PM1H)
4346                 {
4347                     CreateDWordField (BUF0, \_SB.PCI0._Y02._LEN, C4LN)  // _LEN: Length
4348                     C4LN = Zero
4349                 }
4350 
4351                 If ((PM1H == 0x01))
4352                 {
4353                     CreateBitField (BUF0, \_SB.PCI0._Y02._RW, C4RW)  // _RW_: Read-Write Status
4354                     C4RW = Zero
4355                 }
4356 
4357                 If (PM2L)
4358                 {
4359                     CreateDWordField (BUF0, \_SB.PCI0._Y03._LEN, C8LN)  // _LEN: Length
4360                     C8LN = Zero
4361                 }
4362 
4363                 If ((PM2L == 0x01))
4364                 {
4365                     CreateBitField (BUF0, \_SB.PCI0._Y03._RW, C8RW)  // _RW_: Read-Write Status
4366                     C8RW = Zero
4367                 }
4368 
4369                 If (PM2H)
4370                 {
4371                     CreateDWordField (BUF0, \_SB.PCI0._Y04._LEN, CCLN)  // _LEN: Length
4372                     CCLN = Zero
4373                 }
4374 
4375                 If ((PM2H == 0x01))
4376                 {
4377                     CreateBitField (BUF0, \_SB.PCI0._Y04._RW, CCRW)  // _RW_: Read-Write Status
4378                     CCRW = Zero
4379                 }
4380 
4381                 If (PM3L)
4382                 {
4383                     CreateDWordField (BUF0, \_SB.PCI0._Y05._LEN, D0LN)  // _LEN: Length
4384                     D0LN = Zero
4385                 }
4386 
4387                 If ((PM3L == 0x01))
4388                 {
4389                     CreateBitField (BUF0, \_SB.PCI0._Y05._RW, D0RW)  // _RW_: Read-Write Status
4390                     D0RW = Zero
4391                 }
4392 
4393                 If (PM3H)
4394                 {
4395                     CreateDWordField (BUF0, \_SB.PCI0._Y06._LEN, D4LN)  // _LEN: Length
4396                     D4LN = Zero
4397                 }
4398 
4399                 If ((PM3H == 0x01))
4400                 {
4401                     CreateBitField (BUF0, \_SB.PCI0._Y06._RW, D4RW)  // _RW_: Read-Write Status
4402                     D4RW = Zero
4403                 }
4404 
4405                 If (PM4L)
4406                 {
4407                     CreateDWordField (BUF0, \_SB.PCI0._Y07._LEN, D8LN)  // _LEN: Length
4408                     D8LN = Zero
4409                 }
4410 
4411                 If ((PM4L == 0x01))
4412                 {
4413                     CreateBitField (BUF0, \_SB.PCI0._Y07._RW, D8RW)  // _RW_: Read-Write Status
4414                     D8RW = Zero
4415                 }
4416 
4417                 If (PM4H)
4418                 {
4419                     CreateDWordField (BUF0, \_SB.PCI0._Y08._LEN, DCLN)  // _LEN: Length
4420                     DCLN = Zero
4421                 }
4422 
4423                 If ((PM4H == 0x01))
4424                 {
4425                     CreateBitField (BUF0, \_SB.PCI0._Y08._RW, DCRW)  // _RW_: Read-Write Status
4426                     DCRW = Zero
4427                 }
4428 
4429                 If (PM5L)
4430                 {
4431                     CreateDWordField (BUF0, \_SB.PCI0._Y09._LEN, E0LN)  // _LEN: Length
4432                     E0LN = Zero
4433                 }
4434 
4435                 If ((PM5L == 0x01))
4436                 {
4437                     CreateBitField (BUF0, \_SB.PCI0._Y09._RW, E0RW)  // _RW_: Read-Write Status
4438                     E0RW = Zero
4439                 }
4440 
4441                 If (PM5H)
4442                 {
4443                     CreateDWordField (BUF0, \_SB.PCI0._Y0A._LEN, E4LN)  // _LEN: Length
4444                     E4LN = Zero
4445                 }
4446 
4447                 If ((PM5H == 0x01))
4448                 {
4449                     CreateBitField (BUF0, \_SB.PCI0._Y0A._RW, E4RW)  // _RW_: Read-Write Status
4450                     E4RW = Zero
4451                 }
4452 
4453                 If (PM6L)
4454                 {
4455                     CreateDWordField (BUF0, \_SB.PCI0._Y0B._LEN, E8LN)  // _LEN: Length
4456                     E8LN = Zero
4457                 }
4458 
4459                 If ((PM6L == 0x01))
4460                 {
4461                     CreateBitField (BUF0, \_SB.PCI0._Y0B._RW, E8RW)  // _RW_: Read-Write Status
4462                     E8RW = Zero
4463                 }
4464 
4465                 If (PM6H)
4466                 {
4467                     CreateDWordField (BUF0, \_SB.PCI0._Y0C._LEN, ECLN)  // _LEN: Length
4468                     ECLN = Zero
4469                 }
4470 
4471                 If ((PM6H == 0x01))
4472                 {
4473                     CreateBitField (BUF0, \_SB.PCI0._Y0C._RW, ECRW)  // _RW_: Read-Write Status
4474                     ECRW = Zero
4475                 }
4476 
4477                 If (PM0H)
4478                 {
4479                     CreateDWordField (BUF0, \_SB.PCI0._Y0D._LEN, F0LN)  // _LEN: Length
4480                     F0LN = Zero
4481                 }
4482 
4483                 If ((PM0H == 0x01))
4484                 {
4485                     CreateBitField (BUF0, \_SB.PCI0._Y0D._RW, F0RW)  // _RW_: Read-Write Status
4486                     F0RW = Zero
4487                 }
4488 
4489                 CreateDWordField (BUF0, \_SB.PCI0._Y0E._MIN, M1MN)  // _MIN: Minimum Base Address
4490                 CreateDWordField (BUF0, \_SB.PCI0._Y0E._MAX, M1MX)  // _MAX: Maximum Base Address
4491                 CreateDWordField (BUF0, \_SB.PCI0._Y0E._LEN, M1LN)  // _LEN: Length
4492                 M1LN = M32L /* \M32L */
4493                 M1MN = M32B /* \M32B */
4494                 M1MX = ((M1MN + M1LN) - 0x01)
4495                 If ((M64L == 0x00))
4496                 {
4497                     CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, MSLN)  // _LEN: Length
4498                     MSLN = 0x00
4499                 }
4500                 Else
4501                 {
4502                     CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, M2LN)  // _LEN: Length
4503                     CreateQWordField (BUF0, \_SB.PCI0._Y0F._MIN, M2MN)  // _MIN: Minimum Base Address
4504                     CreateQWordField (BUF0, \_SB.PCI0._Y0F._MAX, M2MX)  // _MAX: Maximum Base Address
4505                     M2LN = M64L /* \M64L */
4506                     M2MN = M64B /* \M64B */
4507                     M2MX = ((M2MN + M2LN) - 0x01)
4508                 }
4509 
4510                 Return (BUF0) /* \_SB_.PCI0.BUF0 */
4511             }
4512 
4513             Name (GUID, ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */)
4514             Name (SUPP, 0x00)
4515             Name (CTRL, 0x00)
4516             Name (XCNT, 0x00)
4517             Method (_OSC, 4, Serialized)  // _OSC: Operating System Capabilities
4518             {
4519                 Local0 = Arg3
4520                 CreateDWordField (Local0, 0x00, CDW1)
4521                 CreateDWordField (Local0, 0x04, CDW2)
4522                 CreateDWordField (Local0, 0x08, CDW3)
4523                 If ((Arg0 == GUID))
4524                 {
4525                     SUPP = CDW2 /* \_SB_.PCI0._OSC.CDW2 */
4526                     CTRL = CDW3 /* \_SB_.PCI0._OSC.CDW3 */
4527                     If (!NEXP)
4528                     {
4529                         CTRL &= 0xFFFFFFF8
4530                         CTRL &= 0xFFFFFFEF
4531                     }
4532 
4533                     If ((TBTS == 0x01))
4534                     {
4535                         CTRL &= 0xFFFFFFF7
4536                     }
4537 
4538                     If (~(CDW1 & 0x01))
4539                     {
4540                         If ((CTRL & 0x01))
4541                         {
4542                             NHPG ()
4543                         }
4544 
4545                         If ((CTRL & 0x04))
4546                         {
4547                             NPME ()
4548                         }
4549                     }
4550 
4551                     If ((Arg1 != One))
4552                     {
4553                         CDW1 |= 0x08
4554                     }
4555 
4556                     If ((CDW3 != CTRL))
4557                     {
4558                         CDW1 |= 0x10
4559                     }
4560 
4561                     CDW3 = CTRL /* \_SB_.PCI0.CTRL */
4562                     OSCC = CTRL /* \_SB_.PCI0.CTRL */
4563                     Return (Local0)
4564                 }
4565                 Else
4566                 {
4567                     CDW1 |= 0x04
4568                     Return (Local0)
4569                 }
4570             }
4571 
4572             Scope (\_SB.PCI0)
4573             {
4574                 Method (AR00, 0, NotSerialized)
4575                 {
4576                     Return (\_SB.AR00)
4577                 }
4578 
4579                 Method (PD00, 0, NotSerialized)
4580                 {
4581                     Return (\_SB.PD00)
4582                 }
4583 
4584                 Method (AR02, 0, NotSerialized)
4585                 {
4586                     Return (\_SB.AR02)
4587                 }
4588 
4589                 Method (PD02, 0, NotSerialized)
4590                 {
4591                     Return (\_SB.PD02)
4592                 }
4593 
4594                 Method (AR04, 0, NotSerialized)
4595                 {
4596                     Return (\_SB.AR04)
4597                 }
4598 
4599                 Method (PD04, 0, NotSerialized)
4600                 {
4601                     Return (\_SB.PD04)
4602                 }
4603 
4604                 Method (AR05, 0, NotSerialized)
4605                 {
4606                     Return (\_SB.AR05)
4607                 }
4608 
4609                 Method (PD05, 0, NotSerialized)
4610                 {
4611                     Return (\_SB.PD05)
4612                 }
4613 
4614                 Method (AR06, 0, NotSerialized)
4615                 {
4616                     Return (\_SB.AR06)
4617                 }
4618 
4619                 Method (PD06, 0, NotSerialized)
4620                 {
4621                     Return (\_SB.PD06)
4622                 }
4623 
4624                 Method (AR07, 0, NotSerialized)
4625                 {
4626                     Return (\_SB.AR07)
4627                 }
4628 
4629                 Method (PD07, 0, NotSerialized)
4630                 {
4631                     Return (\_SB.PD07)
4632                 }
4633 
4634                 Method (AR08, 0, NotSerialized)
4635                 {
4636                     Return (\_SB.AR08)
4637                 }
4638 
4639                 Method (PD08, 0, NotSerialized)
4640                 {
4641                     Return (\_SB.PD08)
4642                 }
4643 
4644                 Method (AR09, 0, NotSerialized)
4645                 {
4646                     Return (\_SB.AR09)
4647                 }
4648 
4649                 Method (PD09, 0, NotSerialized)
4650                 {
4651                     Return (\_SB.PD09)
4652                 }
4653 
4654                 Method (AR0A, 0, NotSerialized)
4655                 {
4656                     Return (\_SB.AR0A)
4657                 }
4658 
4659                 Method (PD0A, 0, NotSerialized)
4660                 {
4661                     Return (\_SB.PD0A)
4662                 }
4663 
4664                 Method (AR0B, 0, NotSerialized)
4665                 {
4666                     Return (\_SB.AR0B)
4667                 }
4668 
4669                 Method (PD0B, 0, NotSerialized)
4670                 {
4671                     Return (\_SB.PD0B)
4672                 }
4673 
4674                 Device (PEG0)
4675                 {
4676                     Name (_ADR, 0x00010000)  // _ADR: Address
4677                     Device (PEGP)
4678                     {
4679                         Name (_ADR, 0x00)  // _ADR: Address
4680                     }
4681                 }
4682 
4683                 Device (PEG1)
4684                 {
4685                     Name (_ADR, 0x00010001)  // _ADR: Address
4686                     Device (PEGP)
4687                     {
4688                         Name (_ADR, 0x00)  // _ADR: Address
4689                     }
4690                 }
4691 
4692                 Device (PEG2)
4693                 {
4694                     Name (_ADR, 0x00010002)  // _ADR: Address
4695                     Device (PEGP)
4696                     {
4697                         Name (_ADR, 0x00)  // _ADR: Address
4698                     }
4699                 }
4700 
4701                 Device (GFX0)
4702                 {
4703                     Name (_ADR, 0x00020000)  // _ADR: Address
4704                 }
4705 
4706                 Device (B0D4)
4707                 {
4708                     Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
4709                     {
4710                         If (PCIC (Arg0))
4711                         {
4712                             Return (PCID (Arg0, Arg1, Arg2, Arg3))
4713                         }
4714 
4715                         Return (Buffer (0x01)
4716                         {
4717                              0x00                                             // .
4718                         })
4719                     }
4720 
4721                     Name (_ADR, 0x00040000)  // _ADR: Address
4722                 }
4723 
4724                 Device (IPU0)
4725                 {
4726                     Name (_ADR, 0x00050000)  // _ADR: Address
4727                 }
4728             }
4729         }
4730     }
4731 
4732     Scope (\_SB)
4733     {
4734         Device (AWAC)
4735         {
4736             Name (_HID, "ACPI000E" /* Time and Alarm Device */)  // _HID: Hardware ID
4737             Name (WAST, 0x00)
4738             Name (WTTR, 0x00)
4739             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
4740             {
4741                 Return (GPRW (0x72, 0x04))
4742             }
4743 
4744             Method (_STA, 0, NotSerialized)  // _STA: Status
4745             {
4746                 If ((\STAS == 0x00))
4747                 {
4748                     Return (0x0F)
4749                 }
4750                 Else
4751                 {
4752                     Return (0x00)
4753                 }
4754             }
4755 
4756             Method (_GCP, 0, NotSerialized)  // _GCP: Get Capabilities
4757             {
4758                 Return (0xB7)
4759             }
4760 
4761             OperationRegion (RTCM, SystemCMOS, 0x00, 0x3F)
4762             Field (RTCM, ByteAcc, Lock, Preserve)
4763             {
4764                 SEC,    8, 
4765                 Offset (0x02), 
4766                 MIN,    8, 
4767                 Offset (0x04), 
4768                 HOR,    8, 
4769                 Offset (0x07), 
4770                 DAY,    8, 
4771                 MON,    8, 
4772                 YEAR,   8, 
4773                 Offset (0x32), 
4774                 CNTY,   8
4775             }
4776 
4777             Method (_GRT, 0, NotSerialized)  // _GRT: Get Real Time
4778             {
4779                 Local0 = Buffer (0x10){}
4780                 CreateWordField (Local0, 0x00, Y)
4781                 CreateByteField (Local0, 0x02, M)
4782                 CreateByteField (Local0, 0x03, D)
4783                 CreateByteField (Local0, 0x04, H)
4784                 CreateByteField (Local0, 0x05, MIN1)
4785                 CreateByteField (Local0, 0x06, S)
4786                 CreateByteField (Local0, 0x07, V)
4787                 CreateWordField (Local0, 0x0A, TZ)
4788                 CreateByteField (Local0, 0x0C, DL)
4789                 FromBCD (YEAR, Local5)
4790                 FromBCD (CNTY, Local6)
4791                 Y = ((Local6 * 0x64) + Local5)
4792                 FromBCD (MON, M) /* \_SB_.AWAC._GRT.M___ */
4793                 FromBCD (DAY, D) /* \_SB_.AWAC._GRT.D___ */
4794                 FromBCD (HOR, H) /* \_SB_.AWAC._GRT.H___ */
4795                 FromBCD (MIN, MIN1) /* \_SB_.AWAC._GRT.MIN1 */
4796                 FromBCD (SEC, S) /* \_SB_.AWAC._GRT.S___ */
4797                 TZ = 0x07FF
4798                 DL = 0x00
4799                 V = 0x01
4800                 Return (Local0)
4801             }
4802 
4803             Method (_SRT, 1, NotSerialized)  // _SRT: Set Real Time
4804             {
4805                 CreateWordField (Arg0, 0x00, Y)
4806                 CreateByteField (Arg0, 0x02, M)
4807                 CreateByteField (Arg0, 0x03, D)
4808                 CreateByteField (Arg0, 0x04, H)
4809                 CreateByteField (Arg0, 0x05, MIN1)
4810                 CreateByteField (Arg0, 0x06, S)
4811                 Divide (Y, 0x64, Local5, Local4)
4812                 ToBCD (Local4, CNTY) /* \_SB_.AWAC.CNTY */
4813                 ToBCD (Local5, YEAR) /* \_SB_.AWAC.YEAR */
4814                 ToBCD (M, MON) /* \_SB_.AWAC.MON_ */
4815                 ToBCD (D, DAY) /* \_SB_.AWAC.DAY_ */
4816                 ToBCD (H, HOR) /* \_SB_.AWAC.HOR_ */
4817                 ToBCD (MIN1, MIN) /* \_SB_.AWAC.MIN_ */
4818                 ToBCD (S, SEC) /* \_SB_.AWAC.SEC_ */
4819                 Return (0x00)
4820             }
4821 
4822             Method (_GWS, 1, Serialized)  // _GWS: Get Wake Status
4823             {
4824                 Local0 = 0x00
4825                 If ((Arg0 == 0x00))
4826                 {
4827                     If (((\ACWA == 0xFFFFFFFF) && (0x01 & WTTR)))
4828                     {
4829                         Local0 |= 0x01
4830                         WTTR ^= 0x01 /* \_SB_.AWAC.WTTR */
4831                     }
4832                 }
4833                 ElseIf (((\DCWA == 0xFFFFFFFF) && (0x02 & WTTR)))
4834                 {
4835                     Local0 |= 0x01
4836                     WTTR ^= 0x02 /* \_SB_.AWAC.WTTR */
4837                 }
4838 
4839                 If (WAST)
4840                 {
4841                     Local0 |= 0x02
4842                     WAST = 0x00
4843                 }
4844 
4845                 Return (Local0)
4846             }
4847 
4848             Method (_CWS, 1, NotSerialized)  // _CWS: Clear Wake Alarm Status
4849             {
4850                 Return (0x00)
4851             }
4852 
4853             Method (_STP, 2, NotSerialized)  // _STP: Set Expired Timer Wake Policy
4854             {
4855                 If ((Arg0 == 0x00))
4856                 {
4857                     \ACET = Arg1
4858                 }
4859                 Else
4860                 {
4861                     \DCET = Arg1
4862                 }
4863 
4864                 Return (0x00)
4865             }
4866 
4867             Method (_STV, 2, Serialized)  // _STV: Set Timer Value
4868             {
4869                 If ((Arg0 == 0x00))
4870                 {
4871                     \ACWA = Arg1
4872                     WTTR |= 0x01 /* \_SB_.AWAC.WTTR */
4873                 }
4874                 Else
4875                 {
4876                     \DCWA = Arg1
4877                     WTTR |= 0x02 /* \_SB_.AWAC.WTTR */
4878                 }
4879 
4880                 Return (0x00)
4881             }
4882 
4883             Method (_TIP, 1, NotSerialized)  // _TIP: Expired Timer Wake Policy
4884             {
4885                 If ((Arg0 == 0x00))
4886                 {
4887                     Return (\ACET)
4888                 }
4889                 Else
4890                 {
4891                     Return (\DCET)
4892                 }
4893             }
4894 
4895             Method (_TIV, 1, NotSerialized)  // _TIV: Timer Values
4896             {
4897                 If ((Arg0 == 0x00))
4898                 {
4899                     Return (\ACWA)
4900                 }
4901                 Else
4902                 {
4903                     Return (\DCWA)
4904                 }
4905             }
4906         }
4907     }
4908 
4909     If ((ECR1 == 0x01))
4910     {
4911         Scope (\_SB.PCI0)
4912         {
4913             Name (PCIG, ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */)
4914             Method (PCID, 4, Serialized)
4915             {
4916                 If ((Arg0 == PCIG))
4917                 {
4918                     If ((Arg1 >= 0x03))
4919                     {
4920                         If ((Arg2 == 0x00))
4921                         {
4922                             Return (Buffer (0x02)
4923                             {
4924                                  0x01, 0x03                                       // ..
4925                             })
4926                         }
4927 
4928                         If ((Arg2 == 0x08))
4929                         {
4930                             Return (0x01)
4931                         }
4932 
4933                         If ((Arg2 == 0x09))
4934                         {
4935                             Return (Package (0x05)
4936                             {
4937                                 0xC350, 
4938                                 Ones, 
4939                                 Ones, 
4940                                 0xC350, 
4941                                 Ones
4942                             })
4943                         }
4944                     }
4945                 }
4946 
4947                 Return (Buffer (0x01)
4948                 {
4949                      0x00                                             // .
4950                 })
4951             }
4952         }
4953     }
4954 
4955     Scope (\_SB.PCI0)
4956     {
4957         Method (PCIC, 1, Serialized)
4958         {
4959             If ((ECR1 == 0x01))
4960             {
4961                 If ((Arg0 == PCIG))
4962                 {
4963                     Return (0x01)
4964                 }
4965             }
4966 
4967             Return (0x00)
4968         }
4969 
4970         Method (IICB, 2, Serialized)
4971         {
4972             Switch (ToInteger (Arg1))
4973             {
4974                 Case (0x00)
4975                 {
4976                     Name (IIC0, ResourceTemplate ()
4977                     {
4978                         I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
4979                             AddressingMode7Bit, "\\_SB.PCI0.I2C0",
4980                             0x00, ResourceConsumer, _Y10, Exclusive,
4981                             )
4982                     })
4983                     CreateWordField (IIC0, \_SB.PCI0.IICB._Y10._ADR, DAD0)  // _ADR: Address
4984                     DAD0 = Arg0
4985                     Return (IIC0) /* \_SB_.PCI0.IICB.IIC0 */
4986                 }
4987                 Case (0x01)
4988                 {
4989                     Name (IIC1, ResourceTemplate ()
4990                     {
4991                         I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
4992                             AddressingMode7Bit, "\\_SB.PCI0.I2C1",
4993                             0x00, ResourceConsumer, _Y11, Exclusive,
4994                             )
4995                     })
4996                     CreateWordField (IIC1, \_SB.PCI0.IICB._Y11._ADR, DAD1)  // _ADR: Address
4997                     DAD1 = Arg0
4998                     Return (IIC1) /* \_SB_.PCI0.IICB.IIC1 */
4999                 }
5000                 Case (0x02)
5001                 {
5002                     Name (IIC2, ResourceTemplate ()
5003                     {
5004                         I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
5005                             AddressingMode7Bit, "\\_SB.PCI0.I2C2",
5006                             0x00, ResourceConsumer, _Y12, Exclusive,
5007                             )
5008                     })
5009                     CreateWordField (IIC2, \_SB.PCI0.IICB._Y12._ADR, DAD2)  // _ADR: Address
5010                     DAD2 = Arg0
5011                     Return (IIC2) /* \_SB_.PCI0.IICB.IIC2 */
5012                 }
5013                 Case (0x03)
5014                 {
5015                     Name (IIC3, ResourceTemplate ()
5016                     {
5017                         I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
5018                             AddressingMode7Bit, "\\_SB.PCI0.I2C3",
5019                             0x00, ResourceConsumer, _Y13, Exclusive,
5020                             )
5021                     })
5022                     CreateWordField (IIC3, \_SB.PCI0.IICB._Y13._ADR, DAD3)  // _ADR: Address
5023                     DAD3 = Arg0
5024                     Return (IIC3) /* \_SB_.PCI0.IICB.IIC3 */
5025                 }
5026                 Case (0x04)
5027                 {
5028                     Name (IIC4, ResourceTemplate ()
5029                     {
5030                         I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
5031                             AddressingMode7Bit, "\\_SB.PCI0.I2C4",
5032                             0x00, ResourceConsumer, _Y14, Exclusive,
5033                             )
5034                     })
5035                     CreateWordField (IIC4, \_SB.PCI0.IICB._Y14._ADR, DAD4)  // _ADR: Address
5036                     DAD4 = Arg0
5037                     Return (IIC4) /* \_SB_.PCI0.IICB.IIC4 */
5038                 }
5039                 Case (0x05)
5040                 {
5041                     Name (IIC5, ResourceTemplate ()
5042                     {
5043                         I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
5044                             AddressingMode7Bit, "\\_SB.PCI0.I2C5",
5045                             0x00, ResourceConsumer, _Y15, Exclusive,
5046                             )
5047                     })
5048                     CreateWordField (IIC5, \_SB.PCI0.IICB._Y15._ADR, DAD5)  // _ADR: Address
5049                     DAD5 = Arg0
5050                     Return (IIC5) /* \_SB_.PCI0.IICB.IIC5 */
5051                 }
5052                 Default
5053                 {
5054                     Return (0x00)
5055                 }
5056 
5057             }
5058         }
5059 
5060         Method (INTB, 3, Serialized)
5061         {
5062             Name (INTR, ResourceTemplate ()
5063             {
5064                 Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y16)
5065                 {
5066                     0x00000000,
5067                 }
5068             })
5069             CreateDWordField (INTR, \_SB.PCI0.INTB._Y16._INT, NUMI)  // _INT: Interrupts
5070             NUMI = INUM (Arg0)
5071             CreateBitField (INTR, \_SB.PCI0.INTB._Y16._HE, LEVI)  // _HE_: High-Edge
5072             LEVI = Arg1
5073             CreateBitField (INTR, \_SB.PCI0.INTB._Y16._LL, ACTI)  // _LL_: Low Level
5074             ACTI = Arg2
5075             Return (INTR) /* \_SB_.PCI0.INTB.INTR */
5076         }
5077     }
5078 
5079     Name (PNVB, 0x5FB31298)
5080     Name (PNVL, 0x028F)
5081     OperationRegion (PNVA, SystemMemory, PNVB, PNVL)
5082     Field (PNVA, AnyAcc, Lock, Preserve)
5083     {
5084         PCHS,   16, 
5085         PCHG,   16, 
5086         PSTP,   16, 
5087         RPA1,   32, 
5088         RPA2,   32, 
5089         RPA3,   32, 
5090         RPA4,   32, 
5091         RPA5,   32, 
5092         RPA6,   32, 
5093         RPA7,   32, 
5094         RPA8,   32, 
5095         RPA9,   32, 
5096         RPAA,   32, 
5097         RPAB,   32, 
5098         RPAC,   32, 
5099         RPAD,   32, 
5100         RPAE,   32, 
5101         RPAF,   32, 
5102         RPAG,   32, 
5103         RPAH,   32, 
5104         RPAI,   32, 
5105         RPAJ,   32, 
5106         RPAK,   32, 
5107         RPAL,   32, 
5108         RPAM,   32, 
5109         RPAN,   32, 
5110         RPAO,   32, 
5111         NHLA,   64, 
5112         NHLL,   32, 
5113         ADFM,   32, 
5114         SWQ0,   8, 
5115         SWQ1,   8, 
5116         SWQ2,   8, 
5117         SWQ3,   8, 
5118         DSPM,   32, 
5119         SBRG,   32, 
5120         GEI0,   8, 
5121         GEI1,   8, 
5122         GEI2,   8, 
5123         GED0,   8, 
5124         GED1,   8, 
5125         GED2,   8, 
5126         PML1,   16, 
5127         PML2,   16, 
5128         PML3,   16, 
5129         PML4,   16, 
5130         PML5,   16, 
5131         PML6,   16, 
5132         PML7,   16, 
5133         PML8,   16, 
5134         PML9,   16, 
5135         PMLA,   16, 
5136         PMLB,   16, 
5137         PMLC,   16, 
5138         PMLD,   16, 
5139         PMLE,   16, 
5140         PMLF,   16, 
5141         PMLG,   16, 
5142         PMLH,   16, 
5143         PMLI,   16, 
5144         PMLJ,   16, 
5145         PMLK,   16, 
5146         PMLL,   16, 
5147         PMLM,   16, 
5148         PMLN,   16, 
5149         PMLO,   16, 
5150         PNL1,   16, 
5151         PNL2,   16, 
5152         PNL3,   16, 
5153         PNL4,   16, 
5154         PNL5,   16, 
5155         PNL6,   16, 
5156         PNL7,   16, 
5157         PNL8,   16, 
5158         PNL9,   16, 
5159         PNLA,   16, 
5160         PNLB,   16, 
5161         PNLC,   16, 
5162         PNLD,   16, 
5163         PNLE,   16, 
5164         PNLF,   16, 
5165         PNLG,   16, 
5166         PNLH,   16, 
5167         PNLI,   16, 
5168         PNLJ,   16, 
5169         PNLK,   16, 
5170         PNLL,   16, 
5171         PNLM,   16, 
5172         PNLN,   16, 
5173         PNLO,   16, 
5174         XHPC,   8, 
5175         XRPC,   8, 
5176         XSPC,   8, 
5177         XSPA,   8, 
5178         HPTB,   32, 
5179         HPTE,   8, 
5180         SMD0,   8, 
5181         SMD1,   8, 
5182         SMD2,   8, 
5183         SMD3,   8, 
5184         SMD4,   8, 
5185         SMD5,   8, 
5186         SMD6,   8, 
5187         SMD7,   8, 
5188         SMD8,   8, 
5189         SMD9,   8, 
5190         SMDA,   8, 
5191         SMDB,   8, 
5192         SIR0,   8, 
5193         SIR1,   8, 
5194         SIR2,   8, 
5195         SIR3,   8, 
5196         SIR4,   8, 
5197         SIR5,   8, 
5198         SIR6,   8, 
5199         SIR7,   8, 
5200         SIR8,   8, 
5201         SIR9,   8, 
5202         SIRA,   8, 
5203         SIRB,   8, 
5204         SB00,   64, 
5205         SB01,   64, 
5206         SB02,   64, 
5207         SB03,   64, 
5208         SB04,   64, 
5209         SB05,   64, 
5210         SB06,   64, 
5211         SB07,   64, 
5212         SB08,   64, 
5213         SB09,   64, 
5214         SB0A,   64, 
5215         SB0B,   64, 
5216         SB10,   64, 
5217         SB11,   64, 
5218         SB12,   64, 
5219         SB13,   64, 
5220         SB14,   64, 
5221         SB15,   64, 
5222         SB16,   64, 
5223         SB17,   64, 
5224         SB18,   64, 
5225         SB19,   64, 
5226         SB1A,   64, 
5227         SB1B,   64, 
5228         SGIR,   8, 
5229         GPHD,   8, 
5230         NIT1,   8, 
5231         NIT2,   8, 
5232         NIT3,   8, 
5233         NPM1,   8, 
5234         NPM2,   8, 
5235         NPM3,   8, 
5236         NPC1,   8, 
5237         NPC2,   8, 
5238         NPC3,   8, 
5239         NL11,   16, 
5240         NL12,   16, 
5241         NL13,   16, 
5242         ND21,   8, 
5243         ND22,   8, 
5244         ND23,   8, 
5245         ND11,   32, 
5246         ND12,   32, 
5247         ND13,   32, 
5248         NLR1,   16, 
5249         NLR2,   16, 
5250         NLR3,   16, 
5251         NLD1,   32, 
5252         NLD2,   32, 
5253         NLD3,   32, 
5254         NEA1,   16, 
5255         NEA2,   16, 
5256         NEA3,   16, 
5257         NEB1,   16, 
5258         NEB2,   16, 
5259         NEB3,   16, 
5260         NEC1,   16, 
5261         NEC2,   16, 
5262         NEC3,   16, 
5263         NRA1,   16, 
5264         NRA2,   16, 
5265         NRA3,   16, 
5266         NMB1,   32, 
5267         NMB2,   32, 
5268         NMB3,   32, 
5269         NMV1,   32, 
5270         NMV2,   32, 
5271         NMV3,   32, 
5272         NPB1,   32, 
5273         NPB2,   32, 
5274         NPB3,   32, 
5275         NPV1,   32, 
5276         NPV2,   32, 
5277         NPV3,   32, 
5278         NRP1,   32, 
5279         NRP2,   32, 
5280         NRP3,   32, 
5281         EMH4,   8, 
5282         EMDS,   8, 
5283         CSKU,   8, 
5284         ITA0,   16, 
5285         ITA1,   16, 
5286         ITA2,   16, 
5287         ITA3,   16, 
5288         ITS0,   8, 
5289         ITS1,   8, 
5290         ITS2,   8, 
5291         ITS3,   8, 
5292         PMBS,   16, 
5293         PWRM,   32, 
5294         CNVI,   8, 
5295         RMRC,   32, 
5296         VMRC,   8, 
5297         VM70,   8, 
5298         VM75,   8, 
5299         PTHM,   8, 
5300         PSON,   8, 
5301         TWMB,   32, 
5302         LTR1,   8, 
5303         LTR2,   8, 
5304         LTR3,   8, 
5305         LTR4,   8, 
5306         LTR5,   8, 
5307         LTR6,   8, 
5308         LTR7,   8, 
5309         LTR8,   8, 
5310         LTR9,   8, 
5311         LTRA,   8, 
5312         LTRB,   8, 
5313         LTRC,   8, 
5314         LTRD,   8, 
5315         LTRE,   8, 
5316         LTRF,   8, 
5317         LTRG,   8, 
5318         LTRH,   8, 
5319         LTRI,   8, 
5320         LTRJ,   8, 
5321         LTRK,   8, 
5322         LTRL,   8, 
5323         LTRM,   8, 
5324         LTRN,   8, 
5325         LTRO,   8, 
5326         GBES,   8, 
5327         SPPR,   8, 
5328         SDPH,   8, 
5329         EMCE,   8, 
5330         SDCE,   8
5331     }
5332 
5333     Scope (\_SB)
5334     {
5335         OperationRegion (ICLK, SystemMemory, (SBRG + ((0xAD << 0x10) + 0x8000)), 0x82)
5336         Field (ICLK, AnyAcc, Lock, Preserve)
5337         {
5338             CLK1,   8, 
5339             Offset (0x80), 
5340             CLK2,   8
5341         }
5342 
5343         Method (NCLK, 0, NotSerialized)
5344         {
5345             Return (0x02)
5346         }
5347 
5348         Method (CLKC, 2, Serialized)
5349         {
5350             Switch (Arg0)
5351             {
5352                 Case (0x00)
5353                 {
5354                     Local0 = CLK1 /* \_SB_.CLK1 */
5355                     CLK1 = ((Local0 & ~0x02) | (Arg1 << 0x01
5356                         ))
5357                 }
5358                 Case (0x01)
5359                 {
5360                     Local0 = CLK2 /* \_SB_.CLK2 */
5361                     CLK2 = ((Local0 & ~0x02) | (Arg1 << 0x01
5362                         ))
5363                 }
5364 
5365             }
5366         }
5367 
5368         Method (CLKF, 2, Serialized)
5369         {
5370             Switch (Arg0)
5371             {
5372                 Case (0x00)
5373                 {
5374                     Local0 = CLK1 /* \_SB_.CLK1 */
5375                     CLK1 = ((Local0 & ~0x01) | Arg1)
5376                 }
5377                 Case (0x01)
5378                 {
5379                     Local0 = CLK2 /* \_SB_.CLK2 */
5380                     CLK2 = ((Local0 & ~0x01) | Arg1)
5381                 }
5382 
5383             }
5384         }
5385     }
5386 
5387     Scope (\_SB)
5388     {
5389         Name (GPCL, Package (0x0F)
5390         {
5391             Package (0x07)
5392             {
5393                 0x006E0000, 
5394                 0x19, 
5395                 0x0600, 
5396                 0xB0, 
5397                 0x20, 
5398                 0x0140, 
5399                 0x00
5400             }, 
5401 
5402             Package (0x07)
5403             {
5404                 0x006E0000, 
5405                 0x1A, 
5406                 0x0790, 
5407                 0xB4, 
5408                 0x30, 
5409                 0x0144, 
5410                 0x20
5411             }, 
5412 
5413             Package (0x07)
5414             {
5415                 0x006A0000, 
5416                 0x18, 
5417                 0x0600, 
5418                 0xB0, 
5419                 0x20, 
5420                 0x0140, 
5421                 0x0100
5422             }, 
5423 
5424             Package (0x07)
5425             {
5426                 0x006D0000, 
5427                 0x18, 
5428                 0x0600, 
5429                 0xB0, 
5430                 0x20, 
5431                 0x0140, 
5432                 0x60
5433             }, 
5434 
5435             Package (0x07)
5436             {
5437                 0x006A0000, 
5438                 0x18, 
5439                 0x0780, 
5440                 0xB4, 
5441                 0x2C, 
5442                 0x0144, 
5443                 0x0120
5444             }, 
5445 
5446             Package (0x07)
5447             {
5448                 0x006D0000, 
5449                 0x18, 
5450                 0x0790, 
5451                 0xB4, 
5452                 0x30, 
5453                 0x0144, 
5454                 0x80
5455             }, 
5456 
5457             Package (0x07)
5458             {
5459                 0x006E0000, 
5460                 0x08, 
5461                 0x0930, 
5462                 0xB8, 
5463                 0x40, 
5464                 0x0148, 
5465                 0x40
5466             }, 
5467 
5468             Package (0x07)
5469             {
5470                 0x006D0000, 
5471                 0x18, 
5472                 0x0910, 
5473                 0xB8, 
5474                 0x3C, 
5475                 0x0148, 
5476                 0xA0
5477             }, 
5478 
5479             Package (0x07)
5480             {
5481                 0x006C0000, 
5482                 0x10, 
5483                 0x0600, 
5484                 0xB0, 
5485                 0x20, 
5486                 0x0140, 
5487                 0xFFFF
5488             }, 
5489 
5490             Package (0x07)
5491             {
5492                 0x006D0000, 
5493                 0x28, 
5494                 0x0A90, 
5495                 0xBC, 
5496                 0x48, 
5497                 0x014C, 
5498                 0xC0
5499             }, 
5500 
5501             Package (0x07)
5502             {
5503                 0x006E0000, 
5504                 0x09, 
5505                 0x09B0, 
5506                 0xBC, 
5507                 0x44, 
5508                 0x014C, 
5509                 0xFFFF
5510             }, 
5511 
5512             Package (0x07)
5513             {
5514                 0x006B0000, 
5515                 0x08, 
5516                 0x0600, 
5517                 0xB0, 
5518                 0x20, 
5519                 0x0140, 
5520                 0xFFFF
5521             }, 
5522 
5523             Package (0x07)
5524             {
5525                 0x006B0000, 
5526                 0x0B, 
5527                 0x0680, 
5528                 0xB4, 
5529                 0x24, 
5530                 0xFFFF, 
5531                 0xFFFF
5532             }, 
5533 
5534             Package (0x07)
5535             {
5536                 0x006A0000, 
5537                 0x09, 
5538                 0x0900, 
5539                 0xB8, 
5540                 0x38, 
5541                 0xFFFF, 
5542                 0xFFFF
5543             }, 
5544 
5545             Package (0x07)
5546             {
5547                 0x006A0000, 
5548                 0x06, 
5549                 0x0990, 
5550                 0xBC, 
5551                 0x40, 
5552                 0x014C, 
5553                 0xFFFF
5554             }
5555         })
5556         Name (GPCH, Package (0x11)
5557         {
5558             Package (0x07)
5559             {
5560                 0x006E0000, 
5561                 0x19, 
5562                 0x0600, 
5563                 0xC0, 
5564                 0x20, 
5565                 0x0140, 
5566                 0x00
5567             }, 
5568 
5569             Package (0x07)
5570             {
5571                 0x006E0000, 
5572                 0x1A, 
5573                 0x0790, 
5574                 0xC4, 
5575                 0x30, 
5576                 0x0144, 
5577                 0x20
5578             }, 
5579 
5580             Package (0x07)
5581             {
5582                 0x006D0000, 
5583                 0x18, 
5584                 0x0600, 
5585                 0xC0, 
5586                 0x20, 
5587                 0x0140, 
5588                 0x40
5589             }, 
5590 
5591             Package (0x07)
5592             {
5593                 0x006D0000, 
5594                 0x18, 
5595                 0x0780, 
5596                 0xC4, 
5597                 0x2C, 
5598                 0x0144, 
5599                 0x60
5600             }, 
5601 
5602             Package (0x07)
5603             {
5604                 0x006B0000, 
5605                 0x0D, 
5606                 0x0900, 
5607                 0xC8, 
5608                 0x38, 
5609                 0x0148, 
5610                 0x0100
5611             }, 
5612 
5613             Package (0x07)
5614             {
5615                 0x006B0000, 
5616                 0x18, 
5617                 0x09D0, 
5618                 0xCC, 
5619                 0x40, 
5620                 0x014C, 
5621                 0x0120
5622             }, 
5623 
5624             Package (0x07)
5625             {
5626                 0x006D0000, 
5627                 0x08, 
5628                 0x0900, 
5629                 0xC8, 
5630                 0x38, 
5631                 0x0148, 
5632                 0x80
5633             }, 
5634 
5635             Package (0x07)
5636             {
5637                 0x006B0000, 
5638                 0x18, 
5639                 0x0780, 
5640                 0xC4, 
5641                 0x2C, 
5642                 0x0144, 
5643                 0xE0
5644             }, 
5645 
5646             Package (0x07)
5647             {
5648                 0x006A0000, 
5649                 0x12, 
5650                 0x0740, 
5651                 0xC8, 
5652                 0x30, 
5653                 0x0148, 
5654                 0x0140
5655             }, 
5656 
5657             Package (0x07)
5658             {
5659                 0x006A0000, 
5660                 0x0C, 
5661                 0x0860, 
5662                 0xCC, 
5663                 0x3C, 
5664                 0x014C, 
5665                 0x0160
5666             }, 
5667 
5668             Package (0x07)
5669             {
5670                 0x006B0000, 
5671                 0x18, 
5672                 0x0600, 
5673                 0xC0, 
5674                 0x20, 
5675                 0x0140, 
5676                 0xC0
5677             }, 
5678 
5679             Package (0x07)
5680             {
5681                 0x006C0000, 
5682                 0x10, 
5683                 0x0600, 
5684                 0xB0, 
5685                 0x20, 
5686                 0x0140, 
5687                 0xFFFF
5688             }, 
5689 
5690             Package (0x07)
5691             {
5692                 0x006D0000, 
5693                 0x28, 
5694                 0x0A00, 
5695                 0xD0, 
5696                 0x40, 
5697                 0xFFFF, 
5698                 0xA0
5699             }, 
5700 
5701             Package (0x07)
5702             {
5703                 0x006B0000, 
5704                 0x09, 
5705                 0x0B50, 
5706                 0xD0, 
5707                 0x4C, 
5708                 0xFFFF, 
5709                 0xFFFF
5710             }, 
5711 
5712             Package (0x07)
5713             {
5714                 0x006D0000, 
5715                 0x08, 
5716                 0x0980, 
5717                 0xCC, 
5718                 0x3C, 
5719                 0xFFFF, 
5720                 0xFFFF
5721             }, 
5722 
5723             Package (0x07)
5724             {
5725                 0x006A0000, 
5726                 0x0B, 
5727                 0x0600, 
5728                 0xC0, 
5729                 0x20, 
5730                 0xFFFF, 
5731                 0xFFFF
5732             }, 
5733 
5734             Package (0x07)
5735             {
5736                 0x006A0000, 
5737                 0x09, 
5738                 0x06B0, 
5739                 0xC4, 
5740                 0x28, 
5741                 0xFFFF, 
5742                 0xFFFF
5743             }
5744         })
5745         Name (RXEV, Package (0x0D)
5746         {
5747             Buffer (0x19){}, 
5748             Buffer (0x1A){}, 
5749             Buffer (0x18){}, 
5750             Buffer (0x18){}, 
5751             Buffer (0x18){}, 
5752             Buffer (0x18){}, 
5753             Buffer (0x08){}, 
5754             Buffer (0x18){}, 
5755             Buffer (0x12){}, 
5756             Buffer (0x28){}, 
5757             Buffer (0x18){}, 
5758             Buffer (0x10){}, 
5759             Buffer (0x28){}
5760         })
5761     }
5762 
5763     Scope (\_SB)
5764     {
5765         Method (GINF, 2, NotSerialized)
5766         {
5767             If ((PCHS == PCHL))
5768             {
5769                 Return (DerefOf (DerefOf (GPCL [Arg0]) [Arg1]))
5770             }
5771             Else
5772             {
5773                 Return (DerefOf (DerefOf (GPCH [Arg0]) [Arg1]))
5774             }
5775         }
5776 
5777         Method (GMXG, 0, NotSerialized)
5778         {
5779             If ((PCHS == PCHL))
5780             {
5781                 Return (0x0F)
5782             }
5783             Else
5784             {
5785                 Return (0x11)
5786             }
5787         }
5788 
5789         Method (GADR, 2, NotSerialized)
5790         {
5791             Local0 = (GINF (Arg0, 0x00) + SBRG)
5792             Local1 = GINF (Arg0, Arg1)
5793             Return ((Local0 + Local1))
5794         }
5795 
5796         Method (GNUM, 1, NotSerialized)
5797         {
5798             Local0 = GNMB (Arg0)
5799             Local1 = GGRP (Arg0)
5800             Return ((GINF (Local1, 0x06) + Local0))
5801         }
5802 
5803         Method (INUM, 1, NotSerialized)
5804         {
5805             Return ((GPC1 (Arg0) & 0x7F))
5806         }
5807 
5808         Method (GGRP, 1, Serialized)
5809         {
5810             Local0 = ((Arg0 & 0x00FF0000) >> 0x10)
5811             Return (Local0)
5812         }
5813 
5814         Method (GNMB, 1, Serialized)
5815         {
5816             Return ((Arg0 & 0xFFFF))
5817         }
5818 
5819         Method (GGPE, 1, NotSerialized)
5820         {
5821             Local0 = GGRP (Arg0)
5822             Local1 = GNMB (Arg0)
5823             Local2 = (Local1 >> 0x05)
5824             If (!((((GEI0 == Local0) && (GED0 == Local2)) | (
5825                 (GEI1 == Local0) && (GED1 == Local2))) | ((GEI2 == Local0) && (GED2 == 
5826                 Local2))))
5827             {
5828                 Return (0x6F)
5829             }
5830             Else
5831             {
5832                 If (((GEI0 == Local0) && (GED0 == Local2)))
5833                 {
5834                     Local3 = 0x00
5835                 }
5836                 ElseIf (((GEI1 == Local0) && (GED1 == Local2)))
5837                 {
5838                     Local3 = 0x01
5839                 }
5840                 ElseIf (((GEI2 == Local0) && (GED2 == Local2)))
5841                 {
5842                     Local3 = 0x02
5843                 }
5844                 Else
5845                 {
5846                     BreakPoint
5847                     Return (0x00)
5848                 }
5849 
5850                 Return ((((Local3 - Local2) * 0x20) + Local1))
5851             }
5852         }
5853 
5854         Method (GPC0, 1, Serialized)
5855         {
5856             Local0 = GGRP (Arg0)
5857             Local1 = GNMB (Arg0)
5858             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
5859             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
5860             Field (PDW0, AnyAcc, NoLock, Preserve)
5861             {
5862                 TEMP,   32
5863             }
5864 
5865             Return (TEMP) /* \_SB_.GPC0.TEMP */
5866         }
5867 
5868         Method (SPC0, 2, Serialized)
5869         {
5870             Local0 = GGRP (Arg0)
5871             Local1 = GNMB (Arg0)
5872             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
5873             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
5874             Field (PDW0, AnyAcc, NoLock, Preserve)
5875             {
5876                 TEMP,   32
5877             }
5878 
5879             TEMP = Arg1
5880         }
5881 
5882         Method (GPC1, 1, Serialized)
5883         {
5884             Local0 = GGRP (Arg0)
5885             Local1 = GNMB (Arg0)
5886             Local2 = ((GADR (Local0, 0x02) + (Local1 * 0x10)) + 
5887                 0x04)
5888             OperationRegion (PDW1, SystemMemory, Local2, 0x04)
5889             Field (PDW1, AnyAcc, NoLock, Preserve)
5890             {
5891                 TEMP,   32
5892             }
5893 
5894             Return (TEMP) /* \_SB_.GPC1.TEMP */
5895         }
5896 
5897         Method (SPC1, 2, Serialized)
5898         {
5899             Local0 = GGRP (Arg0)
5900             Local1 = GNMB (Arg0)
5901             Local2 = ((GADR (Local0, 0x02) + (Local1 * 0x10)) + 
5902                 0x04)
5903             OperationRegion (PDW1, SystemMemory, Local2, 0x04)
5904             Field (PDW1, AnyAcc, NoLock, Preserve)
5905             {
5906                 TEMP,   32
5907             }
5908 
5909             TEMP = Arg1
5910         }
5911 
5912         Method (STXD, 2, Serialized)
5913         {
5914             Local0 = GGRP (Arg0)
5915             Local1 = GNMB (Arg0)
5916             Local2 = ((GADR (Local0, 0x02) + (Local1 * 0x10)) + 
5917                 0x04)
5918             OperationRegion (PDW1, SystemMemory, Local2, 0x04)
5919             Field (PDW1, AnyAcc, NoLock, Preserve)
5920             {
5921                 Offset (0x01), 
5922                 TEMP,   1
5923             }
5924 
5925             TEMP = Arg1
5926         }
5927 
5928         Method (SRXO, 2, Serialized)
5929         {
5930             Local0 = GGRP (Arg0)
5931             Local1 = GNMB (Arg0)
5932             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
5933             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
5934             Field (PDW0, AnyAcc, NoLock, Preserve)
5935             {
5936                     ,   28, 
5937                 TEMP,   1, 
5938                 Offset (0x04)
5939             }
5940 
5941             TEMP = Arg1
5942         }
5943 
5944         Method (GGIV, 1, Serialized)
5945         {
5946             Local0 = GGRP (Arg0)
5947             Local1 = GNMB (Arg0)
5948             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
5949             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
5950             Field (PDW0, AnyAcc, NoLock, Preserve)
5951             {
5952                     ,   1, 
5953                 TEMP,   1, 
5954                 Offset (0x04)
5955             }
5956 
5957             Return (TEMP) /* \_SB_.GGIV.TEMP */
5958         }
5959 
5960         Method (GGOV, 1, Serialized)
5961         {
5962             Local0 = GGRP (Arg0)
5963             Local1 = GNMB (Arg0)
5964             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
5965             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
5966             Field (PDW0, AnyAcc, NoLock, Preserve)
5967             {
5968                 TEMP,   1, 
5969                 Offset (0x04)
5970             }
5971 
5972             Return (TEMP) /* \_SB_.GGOV.TEMP */
5973         }
5974 
5975         Method (SGOV, 2, Serialized)
5976         {
5977             Local0 = GGRP (Arg0)
5978             Local1 = GNMB (Arg0)
5979             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
5980             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
5981             Field (PDW0, AnyAcc, NoLock, Preserve)
5982             {
5983                 TEMP,   1, 
5984                 Offset (0x04)
5985             }
5986 
5987             TEMP = Arg1
5988         }
5989 
5990         Method (GGII, 1, Serialized)
5991         {
5992             Local0 = GGRP (Arg0)
5993             Local1 = GNMB (Arg0)
5994             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
5995             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
5996             Field (PDW0, AnyAcc, NoLock, Preserve)
5997             {
5998                     ,   23, 
5999                 TEMP,   1, 
6000                 Offset (0x04)
6001             }
6002 
6003             Return (TEMP) /* \_SB_.GGII.TEMP */
6004         }
6005 
6006         Method (SGII, 2, Serialized)
6007         {
6008             Local0 = GGRP (Arg0)
6009             Local1 = GNMB (Arg0)
6010             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
6011             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
6012             Field (PDW0, AnyAcc, NoLock, Preserve)
6013             {
6014                     ,   23, 
6015                 TEMP,   1, 
6016                 Offset (0x04)
6017             }
6018 
6019             TEMP = Arg1
6020         }
6021 
6022         Method (GPMV, 1, Serialized)
6023         {
6024             Local0 = GGRP (Arg0)
6025             Local1 = GNMB (Arg0)
6026             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
6027             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
6028             Field (PDW0, AnyAcc, NoLock, Preserve)
6029             {
6030                     ,   10, 
6031                 TEMP,   3, 
6032                 Offset (0x04)
6033             }
6034 
6035             Return (TEMP) /* \_SB_.GPMV.TEMP */
6036         }
6037 
6038         Method (SPMV, 2, Serialized)
6039         {
6040             Local0 = GGRP (Arg0)
6041             Local1 = GNMB (Arg0)
6042             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
6043             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
6044             Field (PDW0, AnyAcc, NoLock, Preserve)
6045             {
6046                     ,   10, 
6047                 TEMP,   3, 
6048                 Offset (0x04)
6049             }
6050 
6051             TEMP = Arg1
6052         }
6053 
6054         Method (GHPO, 1, Serialized)
6055         {
6056             Local0 = GGRP (Arg0)
6057             Local1 = GNMB (Arg0)
6058             Local3 = (GADR (Local0, 0x03) + ((Local1 >> 0x05) * 0x04))
6059             Local4 = (Local1 & 0x1F)
6060             OperationRegion (PREG, SystemMemory, Local3, 0x04)
6061             Field (PREG, AnyAcc, NoLock, Preserve)
6062             {
6063                 TEMP,   32
6064             }
6065 
6066             Return (((TEMP >> Local4) & 0x01))
6067         }
6068 
6069         Method (SHPO, 2, Serialized)
6070         {
6071             Local0 = GGRP (Arg0)
6072             Local1 = GNMB (Arg0)
6073             Local3 = (GADR (Local0, 0x03) + ((Local1 >> 0x05) * 0x04))
6074             Local4 = (Local1 & 0x1F)
6075             OperationRegion (PREG, SystemMemory, Local3, 0x04)
6076             Field (PREG, AnyAcc, NoLock, Preserve)
6077             {
6078                 TEMP,   32
6079             }
6080 
6081             If (Arg1)
6082             {
6083                 TEMP |= (0x01 << Local4)
6084             }
6085             Else
6086             {
6087                 TEMP &= ~(0x01 << Local4)
6088             }
6089         }
6090 
6091         Method (GGPO, 1, Serialized)
6092         {
6093             Local0 = GGRP (Arg0)
6094             Local1 = GNMB (Arg0)
6095             Local2 = (GADR (Local0, 0x04) + ((Local1 >> 0x03) * 0x04
6096                 ))
6097             OperationRegion (PREG, SystemMemory, Local2, 0x04)
6098             Field (PREG, AnyAcc, NoLock, Preserve)
6099             {
6100                 TEMP,   32
6101             }
6102 
6103             Return (((TEMP >> ((Local1 & 0x07) * 0x04)) & 
6104                 0x03))
6105         }
6106 
6107         Method (SGRA, 2, Serialized)
6108         {
6109             Local0 = GGRP (Arg0)
6110             Local1 = GNMB (Arg0)
6111             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
6112             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
6113             Field (PDW0, AnyAcc, NoLock, Preserve)
6114             {
6115                     ,   20, 
6116                 TEMP,   1, 
6117                 Offset (0x04)
6118             }
6119 
6120             TEMP = Arg1
6121         }
6122 
6123         Method (SGWP, 2, Serialized)
6124         {
6125             Local0 = GGRP (Arg0)
6126             Local1 = GNMB (Arg0)
6127             Local2 = ((GADR (Local0, 0x02) + (Local1 * 0x10)) + 
6128                 0x04)
6129             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
6130             Field (PDW0, AnyAcc, NoLock, Preserve)
6131             {
6132                     ,   10, 
6133                 TEMP,   4, 
6134                 Offset (0x04)
6135             }
6136 
6137             TEMP = Arg1
6138         }
6139 
6140         Method (CAGS, 1, Serialized)
6141         {
6142             Local0 = GGRP (Arg0)
6143             Local1 = GNMB (Arg0)
6144             Local4 = (Local1 >> 0x05)
6145             If (!((((GEI0 == Local0) && (GED0 == Local4)) | (
6146                 (GEI1 == Local0) && (GED1 == Local4))) | ((GEI2 == Local0) && (GED2 == 
6147                 Local4))))
6148             {
6149                 Local3 = GADR (Local0, 0x05)
6150                 If (((Local3 & 0xFFFF) != 0xFFFF))
6151                 {
6152                     OperationRegion (GPPX, SystemMemory, (Local3 + (Local4 * 0x04)), 0x04)
6153                     Field (GPPX, AnyAcc, NoLock, Preserve)
6154                     {
6155                         STSX,   32
6156                     }
6157 
6158                     Local2 = (0x01 << (Local1 % 0x20))
6159                     STSX = Local2
6160                 }
6161             }
6162         }
6163 
6164         Method (ISME, 1, Serialized)
6165         {
6166             Local0 = GGRP (Arg0)
6167             Local1 = GNMB (Arg0)
6168             Local4 = (Local1 >> 0x05)
6169             If (!!((((GEI0 == Local0) && (GED0 == Local4)) | 
6170                 ((GEI1 == Local0) && (GED1 == Local4))) | ((GEI2 == Local0) && (
6171                 GED2 == Local4))))
6172             {
6173                 Return (0x00)
6174             }
6175 
6176             If (((GADR (Local0, 0x05) & 0xFFFF) == 0xFFFF))
6177             {
6178                 Return (0x00)
6179             }
6180 
6181             Local2 = (GADR (Local0, 0x05) + (Local4 * 0x04))
6182             Local3 = (Local1 & 0x1F)
6183             OperationRegion (GPPX, SystemMemory, Local2, 0x24)
6184             Field (GPPX, AnyAcc, NoLock, Preserve)
6185             {
6186                 STSX,   32, 
6187                 Offset (0x20), 
6188                 GENX,   32
6189             }
6190 
6191             Return ((((STSX & GENX) >> Local3) & 0x01))
6192         }
6193 
6194         Method (DIPI, 1, Serialized)
6195         {
6196             Local0 = GGRP (Arg0)
6197             Local1 = GNMB (Arg0)
6198             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
6199             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
6200             Field (PDW0, AnyAcc, NoLock, Preserve)
6201             {
6202                     ,   9, 
6203                 RDIS,   1, 
6204                     ,   15, 
6205                 RCFG,   2, 
6206                 Offset (0x04)
6207             }
6208 
6209             If ((RCFG != 0x02))
6210             {
6211                 DerefOf (RXEV [Local0]) [Local1] = RCFG /* \_SB_.DIPI.RCFG */
6212                 RCFG = 0x02
6213                 RDIS = 0x01
6214             }
6215         }
6216 
6217         Method (UIPI, 1, Serialized)
6218         {
6219             Local0 = GGRP (Arg0)
6220             Local1 = GNMB (Arg0)
6221             Local2 = (GADR (Local0, 0x02) + (Local1 * 0x10))
6222             OperationRegion (PDW0, SystemMemory, Local2, 0x04)
6223             Field (PDW0, AnyAcc, NoLock, Preserve)
6224             {
6225                     ,   9, 
6226                 RDIS,   1, 
6227                     ,   15, 
6228                 RCFG,   2, 
6229                 Offset (0x04)
6230             }
6231 
6232             Local3 = DerefOf (DerefOf (RXEV [Local0]) [Local1])
6233             If ((Local3 != 0x02))
6234             {
6235                 RDIS = 0x00
6236                 RCFG = Local3
6237             }
6238         }
6239     }
6240 
6241     Scope (\_SB)
6242     {
6243         Method (PSD3, 1, Serialized)
6244         {
6245             Switch ((0x00 + Arg0--))
6246             {
6247                 Case (0x00)
6248                 {
6249                     RAA0 = 0x01
6250                     While ((APA0 == 0x00))
6251                     {
6252                         Stall (0x0A)
6253                     }
6254                 }
6255                 Case (0x01)
6256                 {
6257                     RAA1 = 0x01
6258                     While ((APA1 == 0x00))
6259                     {
6260                         Stall (0x0A)
6261                     }
6262                 }
6263                 Case (0x02)
6264                 {
6265                     RAA2 = 0x01
6266                     While ((APA2 == 0x00))
6267                     {
6268                         Stall (0x0A)
6269                     }
6270                 }
6271                 Case (0x03)
6272                 {
6273                     RAA3 = 0x01
6274                     While ((APA3 == 0x00))
6275                     {
6276                         Stall (0x0A)
6277                     }
6278                 }
6279                 Case (0x04)
6280                 {
6281                     RPB0 = 0x01
6282                     While ((APB0 == 0x00))
6283                     {
6284                         Stall (0x0A)
6285                     }
6286                 }
6287                 Case (0x05)
6288                 {
6289                     RPB1 = 0x01
6290                     While ((APB1 == 0x00))
6291                     {
6292                         Stall (0x0A)
6293                     }
6294                 }
6295                 Case (0x06)
6296                 {
6297                     RPB2 = 0x01
6298                     While ((APB2 == 0x00))
6299                     {
6300                         Stall (0x0A)
6301                     }
6302                 }
6303                 Case (0x07)
6304                 {
6305                     RPB3 = 0x01
6306                     While ((APB3 == 0x00))
6307                     {
6308                         Stall (0x0A)
6309                     }
6310                 }
6311                 Case (0x08)
6312                 {
6313                     RPC0 = 0x01
6314                     While ((APC0 == 0x00))
6315                     {
6316                         Stall (0x0A)
6317                     }
6318                 }
6319                 Case (0x09)
6320                 {
6321                     RPC1 = 0x01
6322                     While ((APC1 == 0x00))
6323                     {
6324                         Stall (0x0A)
6325                     }
6326                 }
6327                 Case (0x0A)
6328                 {
6329                     RPC2 = 0x01
6330                     While ((APC2 == 0x00))
6331                     {
6332                         Stall (0x0A)
6333                     }
6334                 }
6335                 Case (0x0B)
6336                 {
6337                     RPC3 = 0x01
6338                     While ((APC3 == 0x00))
6339                     {
6340                         Stall (0x0A)
6341                     }
6342                 }
6343                 Case (0x0C)
6344                 {
6345                     RPD0 = 0x01
6346                     While ((APD0 == 0x00))
6347                     {
6348                         Stall (0x0A)
6349                     }
6350                 }
6351                 Case (0x0D)
6352                 {
6353                     RPD1 = 0x01
6354                     While ((APD1 == 0x00))
6355                     {
6356                         Stall (0x0A)
6357                     }
6358                 }
6359                 Case (0x0E)
6360                 {
6361                     RPD2 = 0x01
6362                     While ((APD2 == 0x00))
6363                     {
6364                         Stall (0x0A)
6365                     }
6366                 }
6367                 Case (0x0F)
6368                 {
6369                     RPD3 = 0x01
6370                     While ((APD3 == 0x00))
6371                     {
6372                         Stall (0x0A)
6373                     }
6374                 }
6375                 Case (0x10)
6376                 {
6377                     RPE0 = 0x01
6378                     While ((APE0 == 0x00))
6379                     {
6380                         Stall (0x0A)
6381                     }
6382                 }
6383                 Case (0x11)
6384                 {
6385                     RPE1 = 0x01
6386                     While ((APE1 == 0x00))
6387                     {
6388                         Stall (0x0A)
6389                     }
6390                 }
6391                 Case (0x12)
6392                 {
6393                     RPE2 = 0x01
6394                     While ((APE2 == 0x00))
6395                     {
6396                         Stall (0x0A)
6397                     }
6398                 }
6399                 Case (0x13)
6400                 {
6401                     RPE3 = 0x01
6402                     While ((APE3 == 0x00))
6403                     {
6404                         Stall (0x0A)
6405                     }
6406                 }
6407 
6408             }
6409         }
6410 
6411         Method (PSD0, 1, Serialized)
6412         {
6413             Switch ((0x00 + Arg0--))
6414             {
6415                 Case (0x00)
6416                 {
6417                     RAA0 = 0x00
6418                     While ((APA0 == 0x01))
6419                     {
6420                         Stall (0x0A)
6421                     }
6422                 }
6423                 Case (0x01)
6424                 {
6425                     RAA1 = 0x00
6426                     While ((APA1 == 0x01))
6427                     {
6428                         Stall (0x0A)
6429                     }
6430                 }
6431                 Case (0x02)
6432                 {
6433                     RAA2 = 0x00
6434                     While ((APA2 == 0x01))
6435                     {
6436                         Stall (0x0A)
6437                     }
6438                 }
6439                 Case (0x03)
6440                 {
6441                     RAA3 = 0x00
6442                     While ((APA3 == 0x01))
6443                     {
6444                         Stall (0x0A)
6445                     }
6446                 }
6447                 Case (0x04)
6448                 {
6449                     RPB0 = 0x00
6450                     While ((APB0 == 0x01))
6451                     {
6452                         Stall (0x0A)
6453                     }
6454                 }
6455                 Case (0x05)
6456                 {
6457                     RPB1 = 0x00
6458                     While ((APB1 == 0x01))
6459                     {
6460                         Stall (0x0A)
6461                     }
6462                 }
6463                 Case (0x06)
6464                 {
6465                     RPB2 = 0x00
6466                     While ((APB2 == 0x01))
6467                     {
6468                         Stall (0x0A)
6469                     }
6470                 }
6471                 Case (0x07)
6472                 {
6473                     RPB3 = 0x00
6474                     While ((APB3 == 0x01))
6475                     {
6476                         Stall (0x0A)
6477                     }
6478                 }
6479                 Case (0x08)
6480                 {
6481                     RPC0 = 0x00
6482                     While ((APC0 == 0x01))
6483                     {
6484                         Stall (0x0A)
6485                     }
6486                 }
6487                 Case (0x09)
6488                 {
6489                     RPC1 = 0x00
6490                     While ((APC1 == 0x01))
6491                     {
6492                         Stall (0x0A)
6493                     }
6494                 }
6495                 Case (0x0A)
6496                 {
6497                     RPC2 = 0x00
6498                     While ((APC2 == 0x01))
6499                     {
6500                         Stall (0x0A)
6501                     }
6502                 }
6503                 Case (0x0B)
6504                 {
6505                     RPC3 = 0x00
6506                     While ((APC3 == 0x01))
6507                     {
6508                         Stall (0x0A)
6509                     }
6510                 }
6511                 Case (0x0C)
6512                 {
6513                     RPD0 = 0x00
6514                     While ((APD0 == 0x01))
6515                     {
6516                         Stall (0x0A)
6517                     }
6518                 }
6519                 Case (0x0D)
6520                 {
6521                     RPD1 = 0x00
6522                     While ((APD1 == 0x01))
6523                     {
6524                         Stall (0x0A)
6525                     }
6526                 }
6527                 Case (0x0E)
6528                 {
6529                     RPD2 = 0x00
6530                     While ((APD2 == 0x01))
6531                     {
6532                         Stall (0x0A)
6533                     }
6534                 }
6535                 Case (0x0F)
6536                 {
6537                     RPD3 = 0x00
6538                     While ((APD3 == 0x01))
6539                     {
6540                         Stall (0x0A)
6541                     }
6542                 }
6543                 Case (0x10)
6544                 {
6545                     RPE0 = 0x00
6546                     While ((APE0 == 0x01))
6547                     {
6548                         Stall (0x0A)
6549                     }
6550                 }
6551                 Case (0x11)
6552                 {
6553                     RPE1 = 0x00
6554                     While ((APE1 == 0x01))
6555                     {
6556                         Stall (0x0A)
6557                     }
6558                 }
6559                 Case (0x12)
6560                 {
6561                     RPE2 = 0x00
6562                     While ((APE2 == 0x01))
6563                     {
6564                         Stall (0x0A)
6565                     }
6566                 }
6567                 Case (0x13)
6568                 {
6569                     RPE3 = 0x00
6570                     While ((APE3 == 0x01))
6571                     {
6572                         Stall (0x0A)
6573                     }
6574                 }
6575 
6576             }
6577         }
6578 
6579         Method (CSD3, 1, Serialized)
6580         {
6581             Switch (ToInteger (Arg0))
6582             {
6583                 Case (0x14)
6584                 {
6585                     RSAT = 0x01
6586                     While ((ASAT == 0x00))
6587                     {
6588                         Stall (0x0A)
6589                     }
6590                 }
6591                 Case (0x15)
6592                 {
6593                     RGBE = 0x01
6594                     While ((AGBE == 0x00))
6595                     {
6596                         Stall (0x0A)
6597                     }
6598                 }
6599                 Case (0x16)
6600                 {
6601                     RXHC = 0x01
6602                     While ((AXHC == 0x00))
6603                     {
6604                         Stall (0x0A)
6605                     }
6606                 }
6607                 Case (0x17)
6608                 {
6609                     RXDC = 0x01
6610                     While ((AXDC == 0x00))
6611                     {
6612                         Stall (0x0A)
6613                     }
6614                 }
6615                 Case (0x18)
6616                 {
6617                     RUFS = 0x01
6618                     While ((AUFS == 0x00))
6619                     {
6620                         Stall (0x0A)
6621                     }
6622                 }
6623 
6624             }
6625         }
6626 
6627         Method (CSD0, 1, Serialized)
6628         {
6629             Switch (ToInteger (Arg0))
6630             {
6631                 Case (0x14)
6632                 {
6633                     RSAT = 0x00
6634                     While ((ASAT == 0x01))
6635                     {
6636                         Stall (0x0A)
6637                     }
6638                 }
6639                 Case (0x15)
6640                 {
6641                     RGBE = 0x00
6642                     While ((AGBE == 0x01))
6643                     {
6644                         Stall (0x0A)
6645                     }
6646                 }
6647                 Case (0x16)
6648                 {
6649                     RXHC = 0x00
6650                     While ((AXHC == 0x01))
6651                     {
6652                         Stall (0x0A)
6653                     }
6654                 }
6655                 Case (0x17)
6656                 {
6657                     RXDC = 0x00
6658                     While ((AXDC == 0x01))
6659                     {
6660                         Stall (0x0A)
6661                     }
6662                 }
6663                 Case (0x18)
6664                 {
6665                     RUFS = 0x00
6666                     While ((AUFS == 0x01))
6667                     {
6668                         Stall (0x0A)
6669                     }
6670                 }
6671 
6672             }
6673         }
6674     }
6675 
6676     Scope (\)
6677     {
6678         Method (THEN, 0, Serialized)
6679         {
6680             OperationRegion (THBA, SystemMemory, 0xFE200000, 0x10)
6681             Field (THBA, DWordAcc, NoLock, Preserve)
6682             {
6683                 DO00,   32
6684             }
6685 
6686             Return ((DO00 != 0xFFFFFFFF))
6687         }
6688 
6689         Method (THDA, 2, Serialized)
6690         {
6691             Local0 = 0xFE200000
6692             Local0 += (0x40 * (0x80 * (Arg0 - 0x10)))
6693             Local0 += (0x40 * Arg1)
6694             Return (Local0)
6695         }
6696 
6697         Method (STRD, 3, Serialized)
6698         {
6699             If (((Arg1 + Arg2) > SizeOf (Arg0)))
6700             {
6701                 Return (0x00)
6702             }
6703 
6704             ToBuffer (Arg0, Local3)
6705             Local0 = 0x00
6706             Local1 = 0x00
6707             While ((Local1 < Arg2))
6708             {
6709                 Local2 = DerefOf (Local3 [(Arg1 + Local1)])
6710                 Local0 += (Local2 << (0x08 * Local1))
6711                 Local1++
6712             }
6713 
6714             Return (Local0)
6715         }
6716 
6717         Method (THDS, 1, Serialized)
6718         {
6719             If (!THEN ())
6720             {
6721                 Return (Zero)
6722             }
6723 
6724             Concatenate (Arg0, "\n", Local2)
6725             Local0 = SizeOf (Local2)
6726             Local1 = THDA (0x48, 0x0E)
6727             OperationRegion (THBA, SystemMemory, Local1, 0x40)
6728             Field (THBA, QWordAcc, NoLock, Preserve)
6729             {
6730                 QO00,   64
6731             }
6732 
6733             Field (THBA, DWordAcc, NoLock, Preserve)
6734             {
6735                 DO00,   32, 
6736                 Offset (0x10), 
6737                 DO10,   32, 
6738                 Offset (0x30), 
6739                 DO30,   32
6740             }
6741 
6742             Field (THBA, WordAcc, NoLock, Preserve)
6743             {
6744                 WO00,   16
6745             }
6746 
6747             Field (THBA, ByteAcc, NoLock, Preserve)
6748             {
6749                 BO00,   8
6750             }
6751 
6752             DO10 = 0x01000242
6753             WO00 = Local0
6754             Local6 = 0x00
6755             Local7 = Local0
6756             While ((Local7 >= 0x08))
6757             {
6758                 QO00 = STRD (Local2, Local6, 0x08)
6759                 Local6 += 0x08
6760                 Local7 -= 0x08
6761             }
6762 
6763             If ((Local7 >= 0x04))
6764             {
6765                 DO00 = STRD (Local2, Local6, 0x04)
6766                 Local6 += 0x04
6767                 Local7 -= 0x04
6768             }
6769 
6770             If ((Local7 >= 0x02))
6771             {
6772                 WO00 = STRD (Local2, Local6, 0x02)
6773                 Local6 += 0x02
6774                 Local7 -= 0x02
6775             }
6776 
6777             If ((Local7 >= 0x01))
6778             {
6779                 BO00 = STRD (Local2, Local6, 0x01)
6780                 Local6 += 0x01
6781                 Local7 -= 0x01
6782             }
6783 
6784             DO30 = 0x00
6785         }
6786 
6787         Method (THDH, 1, Serialized)
6788         {
6789             THDS (ToHexString (Arg0))
6790         }
6791 
6792         Method (THDD, 1, Serialized)
6793         {
6794             THDS (ToDecimalString (Arg0))
6795         }
6796     }
6797 
6798     Name (PCHH, 0x01)
6799     Name (PCHL, 0x02)
6800     Scope (\_SB.PCI0)
6801     {
6802         Name (TEMP, 0x00)
6803         Device (PRRE)
6804         {
6805             Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
6806             Name (_UID, "PCHRESV")  // _UID: Unique ID
6807             Name (_STA, 0x03)  // _STA: Status
6808             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
6809             {
6810                 Name (BUF0, ResourceTemplate ()
6811                 {
6812                     Memory32Fixed (ReadWrite,
6813                         0xFD000000,         // Address Base
6814                         0x006A0000,         // Address Length
6815                         )
6816                     Memory32Fixed (ReadWrite,
6817                         0x00000000,         // Address Base
6818                         0x00000000,         // Address Length
6819                         _Y18)
6820                     Memory32Fixed (ReadWrite,
6821                         0xFD6F0000,         // Address Base
6822                         0x00910000,         // Address Length
6823                         )
6824                     Memory32Fixed (ReadWrite,
6825                         0xFE000000,         // Address Base
6826                         0x00020000,         // Address Length
6827                         )
6828                     Memory32Fixed (ReadWrite,
6829                         0xFE200000,         // Address Base
6830                         0x00600000,         // Address Length
6831                         )
6832                     Memory32Fixed (ReadOnly,
6833                         0xFF000000,         // Address Base
6834                         0x01000000,         // Address Length
6835                         )
6836                     IO (Decode16,
6837                         0x0000,             // Range Minimum
6838                         0x0000,             // Range Maximum
6839                         0x01,               // Alignment
6840                         0xFF,               // Length
6841                         _Y17)
6842                 })
6843                 CreateWordField (BUF0, \_SB.PCI0.PRRE._CRS._Y17._MIN, AMIN)  // _MIN: Minimum Base Address
6844                 CreateWordField (BUF0, \_SB.PCI0.PRRE._CRS._Y17._MAX, AMAX)  // _MAX: Maximum Base Address
6845                 AMIN = PMBS /* \PMBS */
6846                 AMAX = PMBS /* \PMBS */
6847                 CreateDWordField (BUF0, \_SB.PCI0.PRRE._CRS._Y18._BAS, GBAS)  // _BAS: Base Address
6848                 CreateDWordField (BUF0, \_SB.PCI0.PRRE._CRS._Y18._LEN, GLEN)  // _LEN: Length
6849                 If ((PCHS == PCHH))
6850                 {
6851                     GBAS = (SBRG + 0x006C0000)
6852                     GLEN = 0x00010000
6853                 }
6854                 Else
6855                 {
6856                     GBAS = (SBRG + 0x006B0000)
6857                     GLEN = 0x00020000
6858                 }
6859 
6860                 Name (BUF1, ResourceTemplate ()
6861                 {
6862                     Memory32Fixed (ReadWrite,
6863                         0x00000000,         // Address Base
6864                         0x00400000,         // Address Length
6865                         _Y19)
6866                 })
6867                 CreateDWordField (BUF1, \_SB.PCI0.PRRE._CRS._Y19._BAS, HDBA)  // _BAS: Base Address
6868                 HDBA = DSPM /* \DSPM */
6869                 If (((PCHS == PCHL) && (PSTP < 0x10)))
6870                 {
6871                     Return (ConcatenateResTemplate (BUF0, BUF1))
6872                 }
6873 
6874                 Return (BUF0) /* \_SB_.PCI0.PRRE._CRS.BUF0 */
6875             }
6876         }
6877 
6878         Device (IOTR)
6879         {
6880             Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
6881             Name (_UID, "IoTraps")  // _UID: Unique ID
6882             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
6883             {
6884                 Local0 = Buffer (0x02)
6885                     {
6886                          0x79, 0x00                                       // y.
6887                     }
6888                 Name (BUF0, ResourceTemplate ()
6889                 {
6890                     IO (Decode16,
6891                         0x0000,             // Range Minimum
6892                         0x0000,             // Range Maximum
6893                         0x01,               // Alignment
6894                         0xFF,               // Length
6895                         _Y1A)
6896                 })
6897                 Name (BUF1, ResourceTemplate ()
6898                 {
6899                     IO (Decode16,
6900                         0x0000,             // Range Minimum
6901                         0x0000,             // Range Maximum
6902                         0x01,               // Alignment
6903                         0xFF,               // Length
6904                         _Y1B)
6905                 })
6906                 Name (BUF2, ResourceTemplate ()
6907                 {
6908                     IO (Decode16,
6909                         0x0000,             // Range Minimum
6910                         0x0000,             // Range Maximum
6911                         0x01,               // Alignment
6912                         0xFF,               // Length
6913                         _Y1C)
6914                 })
6915                 Name (BUF3, ResourceTemplate ()
6916                 {
6917                     IO (Decode16,
6918                         0x0000,             // Range Minimum
6919                         0x0000,             // Range Maximum
6920                         0x01,               // Alignment
6921                         0xFF,               // Length
6922                         _Y1D)
6923                 })
6924                 CreateWordField (BUF0, \_SB.PCI0.IOTR._CRS._Y1A._MIN, AMI0)  // _MIN: Minimum Base Address
6925                 CreateWordField (BUF0, \_SB.PCI0.IOTR._CRS._Y1A._MAX, AMA0)  // _MAX: Maximum Base Address
6926                 CreateWordField (BUF1, \_SB.PCI0.IOTR._CRS._Y1B._MIN, AMI1)  // _MIN: Minimum Base Address
6927                 CreateWordField (BUF1, \_SB.PCI0.IOTR._CRS._Y1B._MAX, AMA1)  // _MAX: Maximum Base Address
6928                 CreateWordField (BUF2, \_SB.PCI0.IOTR._CRS._Y1C._MIN, AMI2)  // _MIN: Minimum Base Address
6929                 CreateWordField (BUF2, \_SB.PCI0.IOTR._CRS._Y1C._MAX, AMA2)  // _MAX: Maximum Base Address
6930                 CreateWordField (BUF3, \_SB.PCI0.IOTR._CRS._Y1D._MIN, AMI3)  // _MIN: Minimum Base Address
6931                 CreateWordField (BUF3, \_SB.PCI0.IOTR._CRS._Y1D._MAX, AMA3)  // _MAX: Maximum Base Address
6932                 AMI0 = ITA0 /* \ITA0 */
6933                 AMA0 = ITA0 /* \ITA0 */
6934                 AMI1 = ITA1 /* \ITA1 */
6935                 AMA1 = ITA1 /* \ITA1 */
6936                 AMI2 = ITA2 /* \ITA2 */
6937                 AMA2 = ITA2 /* \ITA2 */
6938                 AMI3 = ITA3 /* \ITA3 */
6939                 AMA3 = ITA3 /* \ITA3 */
6940                 If ((ITS0 == 0x01))
6941                 {
6942                     ConcatenateResTemplate (Local0, BUF0, Local1)
6943                     Local0 = Local1
6944                 }
6945 
6946                 If ((ITS1 == 0x01))
6947                 {
6948                     ConcatenateResTemplate (Local0, BUF1, Local1)
6949                     Local0 = Local1
6950                 }
6951 
6952                 If ((ITS2 == 0x01))
6953                 {
6954                     ConcatenateResTemplate (Local0, BUF2, Local1)
6955                     Local0 = Local1
6956                 }
6957 
6958                 If ((ITS3 == 0x01))
6959                 {
6960                     ConcatenateResTemplate (Local0, BUF3, Local1)
6961                     Local0 = Local1
6962                 }
6963 
6964                 Return (Local0)
6965             }
6966         }
6967 
6968         Device (LPCB)
6969         {
6970             Name (_ADR, 0x001F0000)  // _ADR: Address
6971             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
6972             {
6973                 If (PCIC (Arg0))
6974                 {
6975                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
6976                 }
6977 
6978                 Return (Buffer (0x01)
6979                 {
6980                      0x00                                             // .
6981                 })
6982             }
6983 
6984             OperationRegion (LPC, PCI_Config, 0x00, 0x0100)
6985             Field (LPC, AnyAcc, NoLock, Preserve)
6986             {
6987                 Offset (0x02), 
6988                 CDID,   16, 
6989                 Offset (0x08), 
6990                 CRID,   8, 
6991                 Offset (0x80), 
6992                 IOD0,   8, 
6993                 IOD1,   8, 
6994                 Offset (0xA0), 
6995                     ,   9, 
6996                 PRBL,   1, 
6997                 Offset (0xDC), 
6998                     ,   2, 
6999                 ESPI,   1
7000             }
7001         }
7002 
7003         Device (SBUS)
7004         {
7005             Name (_ADR, 0x001F0004)  // _ADR: Address
7006             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
7007             {
7008                 If (PCIC (Arg0))
7009                 {
7010                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
7011                 }
7012 
7013                 Return (Buffer (0x01)
7014                 {
7015                      0x00                                             // .
7016                 })
7017             }
7018         }
7019     }
7020 
7021     Scope (\)
7022     {
7023         Method (IPCW, 7, Serialized)
7024         {
7025             IBF0 = Arg3
7026             IBF1 = Arg4
7027             IBF2 = Arg5
7028             IBF3 = Arg6
7029             Local0 = Arg0
7030             Local0 += (Arg1 << 0x0C)
7031             Local0 += (Arg2 << 0x10)
7032             CMDR = Local0
7033             Local0 = 0x00
7034             While (0x01)
7035             {
7036                 If ((!IBSY || (IERR == 0x01)))
7037                 {
7038                     Break
7039                 }
7040 
7041                 If ((Local0 > 0x0A))
7042                 {
7043                     ADBG ("IPC Busy TO")
7044                     Break
7045                 }
7046 
7047                 Sleep (0x01)
7048                 Local0++
7049             }
7050 
7051             If ((IERR == 0x01))
7052             {
7053                 ADBG ("IPC Error:")
7054                 ADBG (IERC)
7055                 ADBG (Arg0)
7056                 ADBG (Arg1)
7057                 ADBG (Arg2)
7058                 ADBG (Arg3)
7059                 ADBG (Arg4)
7060                 ADBG (Arg5)
7061                 ADBG (Arg6)
7062             }
7063         }
7064 
7065         Method (SPCO, 2, Serialized)
7066         {
7067             Local0 = (0x01 << Arg0)
7068             Local1 = (Arg1 << Arg0)
7069             IPCW (0xA8, 0x00, 0x08, Local0, Local1, 0x00, 0x00)
7070         }
7071 
7072         Method (PCRR, 2, Serialized)
7073         {
7074             Local0 = ((Arg0 << 0x10) + Arg1)
7075             Local0 += SBRG
7076             OperationRegion (PCR0, SystemMemory, Local0, 0x04)
7077             Field (PCR0, DWordAcc, Lock, Preserve)
7078             {
7079                 DAT0,   32
7080             }
7081 
7082             Return (DAT0) /* \PCRR.DAT0 */
7083         }
7084 
7085         Method (PCRW, 3, Serialized)
7086         {
7087             Local0 = ((Arg0 << 0x10) + Arg1)
7088             Local0 += SBRG
7089             OperationRegion (PCR0, SystemMemory, Local0, 0x04)
7090             Field (PCR0, DWordAcc, Lock, Preserve)
7091             {
7092                 DAT0,   32
7093             }
7094 
7095             DAT0 = Arg2
7096         }
7097 
7098         Method (PCRO, 3, Serialized)
7099         {
7100             Local0 = PCRR (Arg0, Arg1)
7101             Local1 = (Local0 | Arg2)
7102             PCRW (Arg0, Arg1, Local1)
7103         }
7104 
7105         Method (PCRA, 3, Serialized)
7106         {
7107             Local0 = PCRR (Arg0, Arg1)
7108             Local1 = (Local0 & Arg2)
7109             PCRW (Arg0, Arg1, Local1)
7110         }
7111 
7112         Method (PCAO, 4, Serialized)
7113         {
7114             Local0 = PCRR (Arg0, Arg1)
7115             Local1 = ((Local0 & Arg2) | Arg3)
7116             PCRW (Arg0, Arg1, Local1)
7117         }
7118 
7119         Name (TCBV, 0x00)
7120         Method (TCBS, 0, NotSerialized)
7121         {
7122             If ((TCBV == 0x00))
7123             {
7124                 Local0 = PCRR (0x88, 0x2778)
7125                 TCBV = (Local0 & 0xFFE0)
7126             }
7127 
7128             Return (TCBV) /* \TCBV */
7129         }
7130 
7131         OperationRegion (PMIO, SystemIO, PMBS, 0x60)
7132         Field (PMIO, ByteAcc, NoLock, Preserve)
7133         {
7134             Offset (0x01), 
7135             PBSS,   1, 
7136             Offset (0x40), 
7137                 ,   17, 
7138             GPEC,   1
7139         }
7140 
7141         OperationRegion (TCBA, SystemIO, TCBS (), 0x10)
7142         Field (TCBA, ByteAcc, NoLock, Preserve)
7143         {
7144             Offset (0x04), 
7145                 ,   9, 
7146             CPSC,   1
7147         }
7148 
7149         OperationRegion (PWMR, SystemMemory, PWRM, 0x1E30)
7150         Field (PWMR, DWordAcc, NoLock, Preserve)
7151         {
7152             CMDR,   32, 
7153             IBSY,   1, 
7154             IERR,   1, 
7155                 ,   1, 
7156                 ,   1, 
7157             Offset (0x05), 
7158             Offset (0x06), 
7159             IERC,   8, 
7160             Offset (0x08), 
7161             Offset (0x80), 
7162             IBF0,   32, 
7163             IBF1,   32, 
7164             IBF2,   32, 
7165             IBF3,   32, 
7166             IRBF,   32, 
7167             Offset (0x10D0), 
7168             RAA0,   1, 
7169             RAA1,   1, 
7170             RAA2,   1, 
7171             RAA3,   1, 
7172             RPB0,   1, 
7173             RPB1,   1, 
7174             RPB2,   1, 
7175             RPB3,   1, 
7176             RPC0,   1, 
7177             RPC1,   1, 
7178             RPC2,   1, 
7179             RPC3,   1, 
7180             RSAT,   1, 
7181             RGBE,   1, 
7182             RXHC,   1, 
7183             RXDC,   1, 
7184             RUFS,   1, 
7185             RPD0,   1, 
7186             RPD1,   1, 
7187             RPD2,   1, 
7188             RPD3,   1, 
7189             RPE0,   1, 
7190             RPE1,   1, 
7191             RPE2,   1, 
7192             RPE3,   1, 
7193             RDMI,   1, 
7194             Offset (0x10D4), 
7195             APA0,   1, 
7196             APA1,   1, 
7197             APA2,   1, 
7198             APA3,   1, 
7199             APB0,   1, 
7200             APB1,   1, 
7201             APB2,   1, 
7202             APB3,   1, 
7203             APC0,   1, 
7204             APC1,   1, 
7205             APC2,   1, 
7206             APC3,   1, 
7207             ASAT,   1, 
7208             AGBE,   1, 
7209             AXHC,   1, 
7210             AXDC,   1, 
7211             AUFS,   1, 
7212             APD0,   1, 
7213             APD1,   1, 
7214             APD2,   1, 
7215             APD3,   1, 
7216             APE0,   1, 
7217             APE1,   1, 
7218             APE2,   1, 
7219             APE3,   1, 
7220             ADMI,   1, 
7221             Offset (0x1800), 
7222             ACWA,   32, 
7223             DCWA,   32, 
7224             ACET,   32, 
7225             DCET,   32, 
7226             Offset (0x18E8), 
7227             PMC4,   31, 
7228             CECE,   1, 
7229             Offset (0x1B1C), 
7230                 ,   22, 
7231             XSQD,   1, 
7232             Offset (0x1E20), 
7233             GBED,   1, 
7234             Offset (0x1E28), 
7235                 ,   22, 
7236             SCFD,   1
7237         }
7238 
7239         Method (PSOC, 1, Serialized)
7240         {
7241             If (PSON)
7242             {
7243                 If (Arg0)
7244                 {
7245                     ADBG ("PS_ON Enable")
7246                     CECE = 0x01
7247                 }
7248                 Else
7249                 {
7250                     ADBG ("PS_ON Disable")
7251                     CECE = 0x00
7252                 }
7253             }
7254         }
7255 
7256         Method (PSOS, 0, NotSerialized)
7257         {
7258             If (CECE)
7259             {
7260                 Return (0x01)
7261             }
7262             Else
7263             {
7264                 Return (0x00)
7265             }
7266         }
7267     }
7268 
7269     If ((GBES != 0x00))
7270     {
7271         Scope (\_SB.PCI0)
7272         {
7273             Device (GLAN)
7274             {
7275                 Name (_ADR, 0x001F0006)  // _ADR: Address
7276                 Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
7277                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
7278                 {
7279                     Return (GPRW (0x6D, 0x04))
7280                 }
7281 
7282                 Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
7283                 {
7284                 }
7285             }
7286         }
7287     }
7288 
7289     Scope (\_SB.PCI0)
7290     {
7291         Device (XHC)
7292         {
7293             Name (_ADR, 0x00140000)  // _ADR: Address
7294             OperationRegion (XPRT, PCI_Config, 0x00, 0x0100)
7295             Field (XPRT, AnyAcc, NoLock, Preserve)
7296             {
7297                 DVID,   16, 
7298                 Offset (0x10), 
7299                 XADL,   32, 
7300                 XADH,   32, 
7301                 Offset (0xA2), 
7302                     ,   2, 
7303                 D3HE,   1
7304             }
7305 
7306             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
7307             {
7308                 ADBG ("XHCI _DSM")
7309                 If (PCIC (Arg0))
7310                 {
7311                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
7312                 }
7313 
7314                 Return (Buffer (0x01)
7315                 {
7316                      0x00                                             // .
7317                 })
7318             }
7319 
7320             Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
7321             {
7322                 Return (0x03)
7323             }
7324 
7325             Method (_S4D, 0, NotSerialized)  // _S4D: S4 Device State
7326             {
7327                 Return (0x03)
7328             }
7329 
7330             Method (_S3W, 0, NotSerialized)  // _S3W: S3 Device Wake State
7331             {
7332                 Return (0x03)
7333             }
7334 
7335             Method (_S4W, 0, NotSerialized)  // _S4W: S4 Device Wake State
7336             {
7337                 Return (0x03)
7338             }
7339 
7340             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
7341             {
7342                 Return (0x03)
7343             }
7344 
7345             Name (USPS, 0x00)
7346             PowerResource (PUBS, 0x03, 0x0000)
7347             {
7348                 Method (_STA, 0, NotSerialized)  // _STA: Status
7349                 {
7350                     ADBG ("XHCI _STA Start")
7351                     If (\H8DR)
7352                     {
7353                         Local0 = \_SB.PCI0.LPCB.EC.HUBS
7354                     }
7355                     Else
7356                     {
7357                         Local0 = (\RBEC (0x3B) & 0x10)
7358                     }
7359 
7360                     If (Local0)
7361                     {
7362                         ADBG ("XHCI _STA ON")
7363                         Return (0x01)
7364                     }
7365                     Else
7366                     {
7367                         ADBG ("XHCI _STA OFF")
7368                         Return (0x00)
7369                     }
7370                 }
7371 
7372                 Method (_ON, 0, NotSerialized)  // _ON_: Power On
7373                 {
7374                     ADBG ("XHCI ON Start")
7375                     Local0 = 0x64
7376                     While ((USPS && Local0))
7377                     {
7378                         Sleep (0x01)
7379                         Local0--
7380                     }
7381 
7382                     If (\H8DR)
7383                     {
7384                         \_SB.PCI0.LPCB.EC.HUBS = 0x01
7385                     }
7386                     Else
7387                     {
7388                         \MBEC (0x3B, 0xFF, 0x10)
7389                     }
7390 
7391                     ADBG ("XHCI ON End")
7392                 }
7393 
7394                 Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
7395                 {
7396                     ADBG ("XHCI OFF Start")
7397                     USPS = 0x01
7398                     If (\H8DR)
7399                     {
7400                         \_SB.PCI0.LPCB.EC.HUBS = 0x00
7401                     }
7402                     Else
7403                     {
7404                         \MBEC (0x3B, 0xEF, 0x00)
7405                     }
7406 
7407                     Sleep (0x14)
7408                     USPS = 0x00
7409                     ADBG ("XHCI OFF End")
7410                 }
7411             }
7412 
7413             Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
7414             {
7415                 PUBS
7416             })
7417             Name (_PR1, Package (0x01)  // _PR1: Power Resources for D1
7418             {
7419                 PUBS
7420             })
7421             Name (_PR2, Package (0x01)  // _PR2: Power Resources for D2
7422             {
7423                 PUBS
7424             })
7425             Name (_PRW, Package (0x03)  // _PRW: Power Resources for Wake
7426             {
7427                 0x6D, 
7428                 0x03, 
7429                 PUBS
7430             })
7431             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
7432             {
7433             }
7434 
7435             Method (_INI, 0, NotSerialized)  // _INI: Initialize
7436             {
7437                 If (CondRefOf (\_SB.PCI0.XHC.RHUB.INIR))
7438                 {
7439                     \_SB.PCI0.XHC.RHUB.INIR ()
7440                 }
7441             }
7442 
7443             OperationRegion (XHCP, SystemMemory, (\_SB.PCI0.GPCB () + 0x000A0000), 0x0100)
7444             Field (XHCP, AnyAcc, Lock, Preserve)
7445             {
7446                 Offset (0x04), 
7447                 PDBM,   16, 
7448                 Offset (0x10), 
7449                 MEMB,   64
7450             }
7451 
7452             Method (USRA, 0, Serialized)
7453             {
7454                 If ((PCHS == PCHH))
7455                 {
7456                     Return (0x0F)
7457                 }
7458                 Else
7459                 {
7460                     Return (0x0B)
7461                 }
7462             }
7463 
7464             Method (SSPA, 0, Serialized)
7465             {
7466                 If ((PCHS == PCHH))
7467                 {
7468                     Return (0x11)
7469                 }
7470                 Else
7471                 {
7472                     Return (0x0D)
7473                 }
7474             }
7475 
7476             Method (_PS0, 0, Serialized)  // _PS0: Power State 0
7477             {
7478                 If ((^DVID == 0xFFFF))
7479                 {
7480                     Return (Zero)
7481                 }
7482 
7483                 If (CondRefOf (\_SB.PCI0.XHC.PS0X))
7484                 {
7485                     \_SB.PCI0.XHC.PS0X ()
7486                 }
7487             }
7488 
7489             Method (_PS3, 0, Serialized)  // _PS3: Power State 3
7490             {
7491                 If ((^DVID == 0xFFFF))
7492                 {
7493                     Return (Zero)
7494                 }
7495 
7496                 If (CondRefOf (\_SB.PCI0.XHC.PS3X))
7497                 {
7498                     \_SB.PCI0.XHC.PS3X ()
7499                 }
7500             }
7501 
7502             Method (CUID, 1, Serialized)
7503             {
7504                 If ((Arg0 == ToUUID ("7c9512a9-1705-4cb4-af7d-506a2423ab71")))
7505                 {
7506                     Return (0x01)
7507                 }
7508 
7509                 Return (0x00)
7510             }
7511 
7512             Device (RHUB)
7513             {
7514                 Name (_ADR, Zero)  // _ADR: Address
7515                 Method (_PS0, 0, Serialized)  // _PS0: Power State 0
7516                 {
7517                     If ((\_SB.PCI0.XHC.DVID == 0xFFFF))
7518                     {
7519                         Return (Zero)
7520                     }
7521 
7522                     If (CondRefOf (\_SB.PCI0.XHC.RHUB.PS0X))
7523                     {
7524                         \_SB.CSD0 (0x16)
7525                         \_SB.PCI0.XHC.RHUB.PS0X ()
7526                     }
7527                 }
7528 
7529                 Method (_PS2, 0, Serialized)  // _PS2: Power State 2
7530                 {
7531                     If ((\_SB.PCI0.XHC.DVID == 0xFFFF))
7532                     {
7533                         Return (Zero)
7534                     }
7535 
7536                     If (CondRefOf (\_SB.PCI0.XHC.RHUB.PS2X))
7537                     {
7538                         \_SB.PCI0.XHC.RHUB.PS2X ()
7539                         \_SB.CSD3 (0x16)
7540                     }
7541                 }
7542 
7543                 Method (_PS3, 0, Serialized)  // _PS3: Power State 3
7544                 {
7545                     If ((\_SB.PCI0.XHC.DVID == 0xFFFF))
7546                     {
7547                         Return (Zero)
7548                     }
7549 
7550                     If (CondRefOf (\_SB.PCI0.XHC.RHUB.PS3X))
7551                     {
7552                         \_SB.PCI0.XHC.RHUB.PS3X ()
7553                         \_SB.CSD3 (0x16)
7554                     }
7555                 }
7556 
7557                 Device (HS01)
7558                 {
7559                     Name (_ADR, 0x01)  // _ADR: Address
7560                 }
7561 
7562                 Device (HS02)
7563                 {
7564                     Name (_ADR, 0x02)  // _ADR: Address
7565                 }
7566 
7567                 Device (HS03)
7568                 {
7569                     Name (_ADR, 0x03)  // _ADR: Address
7570                 }
7571 
7572                 Device (HS04)
7573                 {
7574                     Name (_ADR, 0x04)  // _ADR: Address
7575                 }
7576 
7577                 Device (HS05)
7578                 {
7579                     Name (_ADR, 0x05)  // _ADR: Address
7580                 }
7581 
7582                 Device (HS06)
7583                 {
7584                     Name (_ADR, 0x06)  // _ADR: Address
7585                 }
7586 
7587                 Device (HS07)
7588                 {
7589                     Name (_ADR, 0x07)  // _ADR: Address
7590                 }
7591 
7592                 Device (HS08)
7593                 {
7594                     Name (_ADR, 0x08)  // _ADR: Address
7595                 }
7596 
7597                 Device (HS09)
7598                 {
7599                     Name (_ADR, 0x09)  // _ADR: Address
7600                 }
7601 
7602                 Device (HS10)
7603                 {
7604                     Name (_ADR, 0x0A)  // _ADR: Address
7605                 }
7606 
7607                 Device (USR1)
7608                 {
7609                     Method (_ADR, 0, NotSerialized)  // _ADR: Address
7610                     {
7611                         Return ((USRA () + 0x00))
7612                     }
7613                 }
7614 
7615                 Device (USR2)
7616                 {
7617                     Method (_ADR, 0, NotSerialized)  // _ADR: Address
7618                     {
7619                         Return ((USRA () + 0x01))
7620                     }
7621                 }
7622 
7623                 Device (SS01)
7624                 {
7625                     Method (_ADR, 0, NotSerialized)  // _ADR: Address
7626                     {
7627                         Return ((SSPA () + 0x00))
7628                     }
7629                 }
7630 
7631                 Device (SS02)
7632                 {
7633                     Method (_ADR, 0, NotSerialized)  // _ADR: Address
7634                     {
7635                         Return ((SSPA () + 0x01))
7636                     }
7637                 }
7638 
7639                 Device (SS03)
7640                 {
7641                     Method (_ADR, 0, NotSerialized)  // _ADR: Address
7642                     {
7643                         Return ((SSPA () + 0x02))
7644                     }
7645                 }
7646 
7647                 Device (SS04)
7648                 {
7649                     Method (_ADR, 0, NotSerialized)  // _ADR: Address
7650                     {
7651                         Return ((SSPA () + 0x03))
7652                     }
7653                 }
7654 
7655                 Device (SS05)
7656                 {
7657                     Method (_ADR, 0, NotSerialized)  // _ADR: Address
7658                     {
7659                         Return ((SSPA () + 0x04))
7660                     }
7661                 }
7662 
7663                 Device (SS06)
7664                 {
7665                     Method (_ADR, 0, NotSerialized)  // _ADR: Address
7666                     {
7667                         Return ((SSPA () + 0x05))
7668                     }
7669                 }
7670             }
7671         }
7672     }
7673 
7674     If ((PCHS == PCHH))
7675     {
7676         Scope (\_SB.PCI0.XHC.RHUB)
7677         {
7678             Device (HS11)
7679             {
7680                 Name (_ADR, 0x0B)  // _ADR: Address
7681             }
7682 
7683             Device (HS12)
7684             {
7685                 Name (_ADR, 0x0C)  // _ADR: Address
7686             }
7687 
7688             Device (HS13)
7689             {
7690                 Name (_ADR, 0x0D)  // _ADR: Address
7691             }
7692 
7693             Device (HS14)
7694             {
7695                 Name (_ADR, 0x0E)  // _ADR: Address
7696             }
7697 
7698             Device (SS07)
7699             {
7700                 Method (_ADR, 0, NotSerialized)  // _ADR: Address
7701                 {
7702                     Return ((SSPA () + 0x06))
7703                 }
7704             }
7705 
7706             Device (SS08)
7707             {
7708                 Method (_ADR, 0, NotSerialized)  // _ADR: Address
7709                 {
7710                     Return ((SSPA () + 0x07))
7711                 }
7712             }
7713 
7714             Device (SS09)
7715             {
7716                 Method (_ADR, 0, NotSerialized)  // _ADR: Address
7717                 {
7718                     Return ((SSPA () + 0x08))
7719                 }
7720             }
7721 
7722             Device (SS10)
7723             {
7724                 Method (_ADR, 0, NotSerialized)  // _ADR: Address
7725                 {
7726                     Return ((SSPA () + 0x09))
7727                 }
7728             }
7729         }
7730     }
7731 
7732     Scope (\_SB.PCI0)
7733     {
7734         Device (XDCI)
7735         {
7736             Name (_ADR, 0x00140001)  // _ADR: Address
7737             PowerResource (USBC, 0x00, 0x0000)
7738             {
7739                 Method (_STA, 0, NotSerialized)  // _STA: Status
7740                 {
7741                     Return (0x0F)
7742                 }
7743 
7744                 Method (_ON, 0, NotSerialized)  // _ON_: Power On
7745                 {
7746                 }
7747 
7748                 Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
7749                 {
7750                 }
7751             }
7752 
7753             OperationRegion (OTGD, SystemMemory, (\_SB.PCI0.GPCB () + 0x000A1000), 0x0100)
7754             Field (OTGD, DWordAcc, NoLock, Preserve)
7755             {
7756                 DVID,   16, 
7757                 Offset (0x04), 
7758                 PDBM,   16, 
7759                 Offset (0x10), 
7760                 XDCB,   64
7761             }
7762 
7763             Field (OTGD, ByteAcc, NoLock, Preserve)
7764             {
7765                 Offset (0x84), 
7766                 D0I3,   2
7767             }
7768 
7769             Method (XDBA, 0, NotSerialized)
7770             {
7771                 Return ((^XDCB & 0xFFFFFFFFFFFFFF00))
7772             }
7773 
7774             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
7775             {
7776                 If (PCIC (Arg0))
7777                 {
7778                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
7779                 }
7780 
7781                 If ((Arg0 == ToUUID ("732b85d5-b7a7-4a1b-9ba0-4bbd00ffd511")))
7782                 {
7783                     If ((Arg1 == 0x01))
7784                     {
7785                         Method (SPPS, 2, Serialized)
7786                         {
7787                             OperationRegion (XDBW, SystemMemory, XDBA (), 0x00110000)
7788                             Field (XDBW, WordAcc, NoLock, Preserve)
7789                             {
7790                                 Offset (0x10F810), 
7791                                 Offset (0x10F811), 
7792                                 U2CP,   2, 
7793                                 U3CP,   2, 
7794                                 Offset (0x10F818), 
7795                                 PUPS,   2, 
7796                                     ,   1, 
7797                                 PURC,   1, 
7798                                 Offset (0x10F81A), 
7799                                 Offset (0x10F81C), 
7800                                     ,   3, 
7801                                 UXPE,   2, 
7802                                 Offset (0x10F81E)
7803                             }
7804 
7805                             Local1 = Arg0
7806                             Local2 = Arg1
7807                             If ((Local1 == 0x00))
7808                             {
7809                                 UXPE = 0x00
7810                                 Local0 = 0x00
7811                                 While ((Local0 < 0x0A))
7812                                 {
7813                                     Stall (0x64)
7814                                     Local0++
7815                                 }
7816 
7817                                 PUPS = 0x00
7818                                 Local0 = 0x00
7819                                 While ((Local0 < 0x07D0))
7820                                 {
7821                                     Stall (0x64)
7822                                     If (((U2CP == 0x00) && (U3CP == 0x00)))
7823                                     {
7824                                         Break
7825                                     }
7826 
7827                                     Local0++
7828                                 }
7829 
7830                                 If ((U2CP != 0x00)){}
7831                                 If ((U3CP != 0x00)){}
7832                                 Return (0x00)
7833                             }
7834 
7835                             If ((Local1 == 0x03))
7836                             {
7837                                 If ((U2CP != 0x00)){}
7838                                 If ((U3CP != 0x00)){}
7839                                 PUPS = 0x03
7840                                 Local0 = 0x00
7841                                 While ((Local0 < 0x07D0))
7842                                 {
7843                                     Stall (0x64)
7844                                     If (((U2CP == 0x03) && (U3CP == 0x03)))
7845                                     {
7846                                         Break
7847                                     }
7848 
7849                                     Local0++
7850                                 }
7851 
7852                                 If ((U2CP != 0x03)){}
7853                                 If ((U3CP != 0x03)){}
7854                                 UXPE = Local2
7855                                 Return (0x00)
7856                             }
7857 
7858                             Return (0x00)
7859                         }
7860 
7861                         Switch (ToInteger (Arg2))
7862                         {
7863                             Case (0x00)
7864                             {
7865                                 Return (Buffer (0x01)
7866                                 {
7867                                      0xB3                                             // .
7868                                 })
7869                             }
7870                             Case (0x01)
7871                             {
7872                                 Return (0x01)
7873                             }
7874                             Case (0x04)
7875                             {
7876                                 Local1 = DerefOf (Arg3 [0x00])
7877                                 SPPS (Local1, 0x00)
7878                             }
7879                             Case (0x05)
7880                             {
7881                                 If (CondRefOf (\_SB.PCI0.LPCB.H_EC.XDAT))
7882                                 {
7883                                     If ((\_SB.PCI0.LPCB.H_EC.XDAT () == 0x01))
7884                                     {
7885                                         Notify (\_SB.PCI0.XDCI, 0x80) // Status Change
7886                                     }
7887                                     Else
7888                                     {
7889                                         Notify (\_SB.PCI0.XDCI, 0x81) // Information Change
7890                                     }
7891                                 }
7892 
7893                                 Return (0x00)
7894                             }
7895                             Case (0x07)
7896                             {
7897                                 OperationRegion (XD22, SystemMemory, XDBA (), 0x00110000)
7898                                 Field (XD22, WordAcc, NoLock, Preserve)
7899                                 {
7900                                     Offset (0x10F818), 
7901                                     P2PS,   2, 
7902                                     Offset (0x10F81A)
7903                                 }
7904 
7905                                 Local0 = P2PS /* \_SB_.PCI0.XDCI._DSM.P2PS */
7906                                 Return (Local0)
7907                             }
7908 
7909                         }
7910                     }
7911                 }
7912 
7913                 Return (Buffer (0x01)
7914                 {
7915                      0x00                                             // .
7916                 })
7917             }
7918 
7919             Name (_DDN, "CNL PCH XDCI controller")  // _DDN: DOS Device Name
7920             Name (_STR, Unicode ("CNL PCH XDCI controller"))  // _STR: Description String
7921             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
7922             {
7923                 Return (0x03)
7924             }
7925 
7926             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
7927             {
7928                 Return (GPRW (0x6D, 0x04))
7929             }
7930 
7931             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
7932             {
7933             }
7934 
7935             Method (_PS3, 0, Serialized)  // _PS3: Power State 3
7936             {
7937                 If ((DVID == 0xFFFF))
7938                 {
7939                     Return (Zero)
7940                 }
7941 
7942                 If (CondRefOf (\_SB.PCI0.XDCI.PS3X))
7943                 {
7944                     Local2 = ^XDCB /* External reference */
7945                     Local1 = ^PDBM /* \_SB_.PCI0.XDCI.PDBM */
7946                     ^PDBM &= ~0x06
7947                     ^XDCB = \TWMB
7948                     ^PDBM = (Local1 | 0x02)
7949                     OperationRegion (GENR, SystemMemory, (\TWMB + 0x0010F81C), 0x04)
7950                     Field (GENR, WordAcc, NoLock, Preserve)
7951                     {
7952                             ,   2, 
7953                         CPME,   1, 
7954                         U3EN,   1, 
7955                         U2EN,   1
7956                     }
7957 
7958                     CPME = One
7959                     U2EN = One
7960                     U3EN = One
7961                     ^PDBM &= ~0x02
7962                     ^XDCB = Local2
7963                     ^PDBM = Local1
7964                     \_SB.PCI0.XDCI.PS3X ()
7965                     \_SB.CSD3 (0x17)
7966                 }
7967             }
7968 
7969             Method (_PS0, 0, Serialized)  // _PS0: Power State 0
7970             {
7971                 If ((DVID == 0xFFFF))
7972                 {
7973                     Return (Zero)
7974                 }
7975 
7976                 If (CondRefOf (\_SB.PCI0.XDCI.PS0X))
7977                 {
7978                     Local2 = ^XDCB /* External reference */
7979                     Local1 = ^PDBM /* \_SB_.PCI0.XDCI.PDBM */
7980                     ^PDBM &= ~0x06
7981                     ^XDCB = \TWMB
7982                     ^PDBM = (Local1 | 0x02)
7983                     OperationRegion (GENR, SystemMemory, (\TWMB + 0x0010F81C), 0x04)
7984                     Field (GENR, WordAcc, NoLock, Preserve)
7985                     {
7986                             ,   2, 
7987                         CPME,   1, 
7988                         U3EN,   1, 
7989                         U2EN,   1
7990                     }
7991 
7992                     CPME = 0x00
7993                     U2EN = 0x00
7994                     U3EN = 0x00
7995                     ^PDBM &= ~0x02
7996                     ^XDCB = Local2
7997                     ^PDBM = Local1
7998                     \_SB.PCI0.XDCI.PS0X ()
7999                     \_SB.CSD0 (0x17)
8000                 }
8001             }
8002 
8003             Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
8004             {
8005                 Return (Zero)
8006             }
8007 
8008             Method (_PR3, 0, NotSerialized)  // _PR3: Power Resources for D3hot
8009             {
8010                 Return (Package (0x01)
8011                 {
8012                     USBC
8013                 })
8014             }
8015         }
8016     }
8017 
8018     Scope (\_SB.PCI0)
8019     {
8020         Device (HDAS)
8021         {
8022             Name (_ADR, 0x001F0003)  // _ADR: Address
8023             OperationRegion (HDAR, PCI_Config, 0x00, 0x0100)
8024             Field (HDAR, WordAcc, NoLock, Preserve)
8025             {
8026                 VDID,   32
8027             }
8028 
8029             Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
8030             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
8031             {
8032             }
8033 
8034             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
8035             {
8036                 Return (GPRW (0x6D, 0x04))
8037             }
8038 
8039             Method (_PS0, 0, Serialized)  // _PS0: Power State 0
8040             {
8041                 If (VMRC)
8042                 {
8043                     If (CondRefOf (\_SB.VMOF))
8044                     {
8045                         \_SB.VMOF ()
8046                         XSQD = 0x01
8047                     }
8048                 }
8049 
8050                 If (CondRefOf (\_SB.PCI0.HDAS.PS0X))
8051                 {
8052                     \_SB.PCI0.HDAS.PS0X ()
8053                 }
8054             }
8055 
8056             Method (_PS3, 0, Serialized)  // _PS3: Power State 3
8057             {
8058                 If (VMRC)
8059                 {
8060                     If (CondRefOf (\_SB.VMON))
8061                     {
8062                         \_SB.VMON ()
8063                         XSQD = 0x00
8064                     }
8065                 }
8066 
8067                 If (CondRefOf (\_SB.PCI0.HDAS.PS3X))
8068                 {
8069                     \_SB.PCI0.HDAS.PS3X ()
8070                 }
8071             }
8072 
8073             Name (NBUF, ResourceTemplate ()
8074             {
8075                 QWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadOnly,
8076                     0x0000000000000001, // Granularity
8077                     0x0000000000000000, // Range Minimum
8078                     0x0000000000000000, // Range Maximum
8079                     0x0000000000000000, // Translation Offset
8080                     0x0000000000000000, // Length
8081                     ,, _Y1E, AddressRangeACPI, TypeStatic)
8082             })
8083             Name (DBUF, ResourceTemplate ()
8084             {
8085                 Memory32Fixed (ReadWrite,
8086                     0x00000000,         // Address Base
8087                     0x00400000,         // Address Length
8088                     _Y1F)
8089             })
8090             Method (_INI, 0, NotSerialized)  // _INI: Initialize
8091             {
8092                 ADBG ("HDAS _INI")
8093                 CreateQWordField (NBUF, \_SB.PCI0.HDAS._Y1E._MIN, NBAS)  // _MIN: Minimum Base Address
8094                 CreateQWordField (NBUF, \_SB.PCI0.HDAS._Y1E._MAX, NMAS)  // _MAX: Maximum Base Address
8095                 CreateQWordField (NBUF, \_SB.PCI0.HDAS._Y1E._LEN, NLEN)  // _LEN: Length
8096                 NBAS = NHLA /* \NHLA */
8097                 NMAS = (NHLA + (NHLL - 0x01))
8098                 NLEN = NHLL /* \NHLL */
8099                 CreateDWordField (DBUF, \_SB.PCI0.HDAS._Y1F._BAS, HDBA)  // _BAS: Base Address
8100                 HDBA = DSPM /* \DSPM */
8101             }
8102 
8103             Name (_DSD, Package (0x02)  // _DSD: Device-Specific Data
8104             {
8105                 ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301") /* Device Properties for _DSD */, 
8106                 Package (0x01)
8107                 {
8108                     Package (0x02)
8109                     {
8110                         "nhlt-version", 
8111                         "1.8-0"
8112                     }
8113                 }
8114             })
8115             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
8116             {
8117                 ADBG ("HDAS _DSM")
8118                 If (PCIC (Arg0))
8119                 {
8120                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
8121                 }
8122 
8123                 If ((Arg0 == ToUUID ("a69f886e-6ceb-4594-a41f-7b5dce24c553")))
8124                 {
8125                     Switch (ToInteger (Arg2))
8126                     {
8127                         Case (0x00)
8128                         {
8129                             If (((PCHS == PCHL) && (PSTP < 0x10)))
8130                             {
8131                                 Return (Buffer (One)
8132                                 {
8133                                      0x1F                                             // .
8134                                 })
8135                             }
8136 
8137                             Return (Buffer (One)
8138                             {
8139                                  0x0F                                             // .
8140                             })
8141                         }
8142                         Case (0x01)
8143                         {
8144                             ADBG ("_DSM Fun 1 NHLT")
8145                             Return (NBUF) /* \_SB_.PCI0.HDAS.NBUF */
8146                         }
8147                         Case (0x02)
8148                         {
8149                             ADBG ("_DSM Fun 2 FMSK")
8150                             Return (ADFM) /* \ADFM */
8151                         }
8152                         Case (0x03)
8153                         {
8154                             ADBG ("_DSM Fun 3 PPMS")
8155                             If (CondRefOf (\_SB.PCI0.HDAS.PPMS))
8156                             {
8157                                 Return (\_SB.PCI0.HDAS.PPMS (Arg3))
8158                             }
8159 
8160                             Return (0x00)
8161                         }
8162                         Case (0x04)
8163                         {
8164                             ADBG ("_DSM Fun 4 DBUF")
8165                             Return (DBUF) /* \_SB_.PCI0.HDAS.DBUF */
8166                         }
8167                         Default
8168                         {
8169                             ADBG ("_DSM Fun NOK")
8170                             Return (Buffer (One)
8171                             {
8172                                  0x00                                             // .
8173                             })
8174                         }
8175 
8176                     }
8177                 }
8178 
8179                 If (CondRefOf (HIWC))
8180                 {
8181                     If (HIWC (Arg0))
8182                     {
8183                         If (CondRefOf (HIDW))
8184                         {
8185                             Return (HIDW (Arg0, Arg1, Arg2, Arg3))
8186                         }
8187                     }
8188                 }
8189 
8190                 ADBG ("_DSM UUID NOK")
8191                 Return (Buffer (0x01)
8192                 {
8193                      0x00                                             // .
8194                 })
8195             }
8196         }
8197 
8198         Scope (HDAS)
8199         {
8200             Device (SNDW)
8201             {
8202                 Name (_ADR, 0x40000000)  // _ADR: Address
8203                 Name (_CID, Package (0x02)  // _CID: Compatible ID
8204                 {
8205                     "PRP00001", 
8206                     "PNP0A05" /* Generic Container Device */
8207                 })
8208                 Method (_STA, 0, NotSerialized)  // _STA: Status
8209                 {
8210                     Return (0x0B)
8211                 }
8212 
8213                 Method (QCFG, 2, NotSerialized)
8214                 {
8215                     DerefOf (DerefOf (Arg0 [0x01]) [0x00]) [0x01]
8216                          = Arg1
8217                 }
8218 
8219                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
8220                 {
8221                     ADBG ("SNDW _INI")
8222                     QCFG (LNK0, \SWQ0)
8223                     QCFG (LNK1, \SWQ1)
8224                     QCFG (LNK2, \SWQ2)
8225                     QCFG (LNK3, \SWQ3)
8226                 }
8227 
8228                 Name (_DSD, Package (0x04)  // _DSD: Device-Specific Data
8229                 {
8230                     ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301") /* Device Properties for _DSD */, 
8231                     Package (0x02)
8232                     {
8233                         Package (0x02)
8234                         {
8235                             "mipi-sdw-sw-interface-revision", 
8236                             0x00010000
8237                         }, 
8238 
8239                         Package (0x02)
8240                         {
8241                             "mipi-sdw-master-count", 
8242                             0x04
8243                         }
8244                     }, 
8245 
8246                     ToUUID ("dbb8e3e6-5886-4ba6-8795-1319f52a966b"), 
8247                     Package (0x04)
8248                     {
8249                         Package (0x02)
8250                         {
8251                             "mipi-sdw-link-0-subproperties", 
8252                             "LNK0"
8253                         }, 
8254 
8255                         Package (0x02)
8256                         {
8257                             "mipi-sdw-link-1-subproperties", 
8258                             "LNK1"
8259                         }, 
8260 
8261                         Package (0x02)
8262                         {
8263                             "mipi-sdw-link-2-subproperties", 
8264                             "LNK2"
8265                         }, 
8266 
8267                         Package (0x02)
8268                         {
8269                             "mipi-sdw-link-3-subproperties", 
8270                             "LNK3"
8271                         }
8272                     }
8273                 })
8274                 Name (LNK0, Package (0x02)
8275                 {
8276                     ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301") /* Device Properties for _DSD */, 
8277                     Package (0x0A)
8278                     {
8279                         Package (0x02)
8280                         {
8281                             "intel-quirk-mask", 
8282                             0x00
8283                         }, 
8284 
8285                         Package (0x02)
8286                         {
8287                             "intel-sdw-ip-clock", 
8288                             0x016E3600
8289                         }, 
8290 
8291                         Package (0x02)
8292                         {
8293                             "mipi-sdw-clock-stop-mode0-supported", 
8294                             0x01
8295                         }, 
8296 
8297                         Package (0x02)
8298                         {
8299                             "mipi-sdw-clock-stop-mode1-supported", 
8300                             0x01
8301                         }, 
8302 
8303                         Package (0x02)
8304                         {
8305                             "mipi-sdw-clock-frequencies-supported", 
8306                             Package (0x01)
8307                             {
8308                                 0x005B8D80
8309                             }
8310                         }, 
8311 
8312                         Package (0x02)
8313                         {
8314                             "mipi-sdw-default-frame-rate", 
8315                             0xBB80
8316                         }, 
8317 
8318                         Package (0x02)
8319                         {
8320                             "mipi-sdw-default-frame-row-size", 
8321                             0x7D
8322                         }, 
8323 
8324                         Package (0x02)
8325                         {
8326                             "mipi-sdw-default-frame-col-size", 
8327                             0x02
8328                         }, 
8329 
8330                         Package (0x02)
8331                         {
8332                             "mipi-sdw-dynamic-frame-shape", 
8333                             0x01
8334                         }, 
8335 
8336                         Package (0x02)
8337                         {
8338                             "mipi-sdw-command-error-threshold", 
8339                             0x10
8340                         }
8341                     }
8342                 })
8343                 Name (LNK1, Package (0x02)
8344                 {
8345                     ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301") /* Device Properties for _DSD */, 
8346                     Package (0x0A)
8347                     {
8348                         Package (0x02)
8349                         {
8350                             "intel-quirk-mask", 
8351                             0x00
8352                         }, 
8353 
8354                         Package (0x02)
8355                         {
8356                             "intel-sdw-ip-clock", 
8357                             0x016E3600
8358                         }, 
8359 
8360                         Package (0x02)
8361                         {
8362                             "mipi-sdw-clock-stop-mode0-supported", 
8363                             0x01
8364                         }, 
8365 
8366                         Package (0x02)
8367                         {
8368                             "mipi-sdw-clock-stop-mode1-supported", 
8369                             0x01
8370                         }, 
8371 
8372                         Package (0x02)
8373                         {
8374                             "mipi-sdw-clock-frequencies-supported", 
8375                             Package (0x01)
8376                             {
8377                                 0x005B8D80
8378                             }
8379                         }, 
8380 
8381                         Package (0x02)
8382                         {
8383                             "mipi-sdw-default-frame-rate", 
8384                             0xBB80
8385                         }, 
8386 
8387                         Package (0x02)
8388                         {
8389                             "mipi-sdw-default-frame-row-size", 
8390                             0x7D
8391                         }, 
8392 
8393                         Package (0x02)
8394                         {
8395                             "mipi-sdw-default-frame-col-size", 
8396                             0x02
8397                         }, 
8398 
8399                         Package (0x02)
8400                         {
8401                             "mipi-sdw-dynamic-frame-shape", 
8402                             0x01
8403                         }, 
8404 
8405                         Package (0x02)
8406                         {
8407                             "mipi-sdw-command-error-threshold", 
8408                             0x10
8409                         }
8410                     }
8411                 })
8412                 Name (LNK2, Package (0x02)
8413                 {
8414                     ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301") /* Device Properties for _DSD */, 
8415                     Package (0x0A)
8416                     {
8417                         Package (0x02)
8418                         {
8419                             "intel-quirk-mask", 
8420                             0x00
8421                         }, 
8422 
8423                         Package (0x02)
8424                         {
8425                             "intel-sdw-ip-clock", 
8426                             0x016E3600
8427                         }, 
8428 
8429                         Package (0x02)
8430                         {
8431                             "mipi-sdw-clock-stop-mode0-supported", 
8432                             0x01
8433                         }, 
8434 
8435                         Package (0x02)
8436                         {
8437                             "mipi-sdw-clock-stop-mode1-supported", 
8438                             0x01
8439                         }, 
8440 
8441                         Package (0x02)
8442                         {
8443                             "mipi-sdw-clock-frequencies-supported", 
8444                             Package (0x01)
8445                             {
8446                                 0x005B8D80
8447                             }
8448                         }, 
8449 
8450                         Package (0x02)
8451                         {
8452                             "mipi-sdw-default-frame-rate", 
8453                             0xBB80
8454                         }, 
8455 
8456                         Package (0x02)
8457                         {
8458                             "mipi-sdw-default-frame-row-size", 
8459                             0x7D
8460                         }, 
8461 
8462                         Package (0x02)
8463                         {
8464                             "mipi-sdw-default-frame-col-size", 
8465                             0x02
8466                         }, 
8467 
8468                         Package (0x02)
8469                         {
8470                             "mipi-sdw-dynamic-frame-shape", 
8471                             0x01
8472                         }, 
8473 
8474                         Package (0x02)
8475                         {
8476                             "mipi-sdw-command-error-threshold", 
8477                             0x10
8478                         }
8479                     }
8480                 })
8481                 Name (LNK3, Package (0x02)
8482                 {
8483                     ToUUID ("daffd814-6eba-4d8c-8a91-bc9bbf4aa301") /* Device Properties for _DSD */, 
8484                     Package (0x0A)
8485                     {
8486                         Package (0x02)
8487                         {
8488                             "intel-quirk-mask", 
8489                             0x00
8490                         }, 
8491 
8492                         Package (0x02)
8493                         {
8494                             "intel-sdw-ip-clock", 
8495                             0x016E3600
8496                         }, 
8497 
8498                         Package (0x02)
8499                         {
8500                             "mipi-sdw-clock-stop-mode0-supported", 
8501                             0x01
8502                         }, 
8503 
8504                         Package (0x02)
8505                         {
8506                             "mipi-sdw-clock-stop-mode1-supported", 
8507                             0x01
8508                         }, 
8509 
8510                         Package (0x02)
8511                         {
8512                             "mipi-sdw-clock-frequencies-supported", 
8513                             Package (0x01)
8514                             {
8515                                 0x005B8D80
8516                             }
8517                         }, 
8518 
8519                         Package (0x02)
8520                         {
8521                             "mipi-sdw-default-frame-rate", 
8522                             0xBB80
8523                         }, 
8524 
8525                         Package (0x02)
8526                         {
8527                             "mipi-sdw-default-frame-row-size", 
8528                             0x7D
8529                         }, 
8530 
8531                         Package (0x02)
8532                         {
8533                             "mipi-sdw-default-frame-col-size", 
8534                             0x02
8535                         }, 
8536 
8537                         Package (0x02)
8538                         {
8539                             "mipi-sdw-dynamic-frame-shape", 
8540                             0x01
8541                         }, 
8542 
8543                         Package (0x02)
8544                         {
8545                             "mipi-sdw-command-error-threshold", 
8546                             0x10
8547                         }
8548                     }
8549                 })
8550             }
8551         }
8552 
8553         Device (RP01)
8554         {
8555             Name (LTRZ, 0x00)
8556             Name (LMSL, 0x00)
8557             Name (LNSL, 0x00)
8558             Name (RID, 0x00)
8559             Method (_ADR, 0, NotSerialized)  // _ADR: Address
8560             {
8561                 If ((RPA1 != 0x00))
8562                 {
8563                     Return (RPA1) /* \RPA1 */
8564                 }
8565                 Else
8566                 {
8567                     Return (0x001C0000)
8568                 }
8569             }
8570 
8571             Name (SLOT, 0x01)
8572             Method (_INI, 0, NotSerialized)  // _INI: Initialize
8573             {
8574                 If (PRES ())
8575                 {
8576                     LTRZ = LTR1 /* \LTR1 */
8577                     LMSL = PML1 /* \PML1 */
8578                     LNSL = PNL1 /* \PNL1 */
8579                     If (CondRefOf (PINI))
8580                     {
8581                         PINI ()
8582                     }
8583                 }
8584             }
8585 
8586             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
8587             Field (PXCS, AnyAcc, NoLock, Preserve)
8588             {
8589                 VDID,   32, 
8590                 Offset (0x50), 
8591                 L0SE,   1, 
8592                 Offset (0x52), 
8593                     ,   13, 
8594                 LASX,   1, 
8595                 Offset (0x5A), 
8596                     ,   3, 
8597                 PDCX,   1, 
8598                     ,   2, 
8599                 PDSX,   1, 
8600                 Offset (0x5B), 
8601                 Offset (0x60), 
8602                 Offset (0x62), 
8603                 PSPX,   1, 
8604                 Offset (0xD8), 
8605                     ,   30, 
8606                 HPEX,   1, 
8607                 PMEX,   1, 
8608                 Offset (0xE0), 
8609                     ,   7, 
8610                 NCB7,   1, 
8611                 Offset (0xE2), 
8612                     ,   2, 
8613                 L23E,   1, 
8614                 L23R,   1, 
8615                 Offset (0x420), 
8616                     ,   30, 
8617                 DPGE,   1
8618             }
8619 
8620             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
8621             {
8622                 Offset (0xDC), 
8623                     ,   30, 
8624                 HPSX,   1, 
8625                 PMSX,   1
8626             }
8627 
8628             Method (L23D, 0, Serialized)
8629             {
8630                 If ((NCB7 != 0x01))
8631                 {
8632                     Return (Zero)
8633                 }
8634 
8635                 DPGE = 0x00
8636                 L23R = 0x01
8637                 Local0 = 0x00
8638                 While (L23R)
8639                 {
8640                     If ((Local0 > 0x04))
8641                     {
8642                         Break
8643                     }
8644 
8645                     Sleep (0x10)
8646                     Local0++
8647                 }
8648 
8649                 NCB7 = 0x00
8650                 DPGE = 0x01
8651                 Local0 = 0x00
8652                 While ((LASX == 0x00))
8653                 {
8654                     If ((Local0 > 0x08))
8655                     {
8656                         Break
8657                     }
8658 
8659                     Sleep (0x10)
8660                     Local0++
8661                 }
8662             }
8663 
8664             Method (DL23, 0, Serialized)
8665             {
8666                 L23E = 0x01
8667                 Sleep (0x10)
8668                 Local0 = 0x00
8669                 While (L23E)
8670                 {
8671                     If ((Local0 > 0x04))
8672                     {
8673                         Break
8674                     }
8675 
8676                     Sleep (0x10)
8677                     Local0++
8678                 }
8679 
8680                 NCB7 = 0x01
8681             }
8682 
8683             Name (LTRV, Package (0x04)
8684             {
8685                 0x00, 
8686                 0x00, 
8687                 0x00, 
8688                 0x00
8689             })
8690             Method (PRES, 0, NotSerialized)
8691             {
8692                 If ((VDID == 0xFFFFFFFF))
8693                 {
8694                     Return (0x00)
8695                 }
8696                 Else
8697                 {
8698                     Return (0x01)
8699                 }
8700             }
8701 
8702             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
8703             {
8704                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
8705                 {
8706                     Switch (ToInteger (Arg2))
8707                     {
8708                         Case (0x00)
8709                         {
8710                             Name (OPTS, Buffer (0x02)
8711                             {
8712                                  0x00, 0x00                                       // ..
8713                             })
8714                             CreateBitField (OPTS, 0x00, FUN0)
8715                             CreateBitField (OPTS, 0x04, FUN4)
8716                             CreateBitField (OPTS, 0x06, FUN6)
8717                             CreateBitField (OPTS, 0x08, FUN8)
8718                             CreateBitField (OPTS, 0x09, FUN9)
8719                             CreateBitField (OPTS, 0x0A, FUNA)
8720                             CreateBitField (OPTS, 0x0B, FUNB)
8721                             If ((Arg1 >= 0x02))
8722                             {
8723                                 FUN0 = 0x01
8724                                 If (LTRE)
8725                                 {
8726                                     FUN6 = 0x01
8727                                 }
8728 
8729                                 If (CondRefOf (ECR1))
8730                                 {
8731                                     If ((ECR1 == 0x01))
8732                                     {
8733                                         If ((Arg1 >= 0x03))
8734                                         {
8735                                             FUN8 = 0x01
8736                                             FUN9 = 0x01
8737                                         }
8738                                     }
8739                                 }
8740                             }
8741 
8742                             If ((Arg1 >= 0x04))
8743                             {
8744                                 If (CondRefOf (PPBA))
8745                                 {
8746                                     FUNA = 0x01
8747                                 }
8748 
8749                                 If (CondRefOf (UPRD))
8750                                 {
8751                                     FUNB = 0x01
8752                                 }
8753                             }
8754 
8755                             Return (OPTS) /* \_SB_.PCI0.RP01._DSM.OPTS */
8756                         }
8757                         Case (0x06)
8758                         {
8759                             If ((Arg1 >= 0x02))
8760                             {
8761                                 If (LTRZ)
8762                                 {
8763                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
8764                                     LTRV [0x01] = (LMSL & 0x03FF)
8765                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
8766                                     LTRV [0x03] = (LNSL & 0x03FF)
8767                                     Return (LTRV) /* \_SB_.PCI0.RP01.LTRV */
8768                                 }
8769                                 Else
8770                                 {
8771                                     Return (0x00)
8772                                 }
8773                             }
8774                         }
8775                         Case (0x08)
8776                         {
8777                             If (CondRefOf (ECR1))
8778                             {
8779                                 If ((ECR1 == 0x01))
8780                                 {
8781                                     If ((Arg1 >= 0x03))
8782                                     {
8783                                         Return (0x01)
8784                                     }
8785                                 }
8786                             }
8787                         }
8788                         Case (0x09)
8789                         {
8790                             If (CondRefOf (ECR1))
8791                             {
8792                                 If ((ECR1 == 0x01))
8793                                 {
8794                                     If ((Arg1 >= 0x03))
8795                                     {
8796                                         Return (Package (0x05)
8797                                         {
8798                                             0xC350, 
8799                                             Ones, 
8800                                             Ones, 
8801                                             0xC350, 
8802                                             Ones
8803                                         })
8804                                     }
8805                                 }
8806                             }
8807                         }
8808                         Case (0x0A)
8809                         {
8810                             If (CondRefOf (PPBA))
8811                             {
8812                                 Return (PPBA (Arg3))
8813                             }
8814                         }
8815                         Case (0x0B)
8816                         {
8817                             If (CondRefOf (UPRD))
8818                             {
8819                                 Return (UPRD (Arg3))
8820                             }
8821                         }
8822 
8823                     }
8824                 }
8825 
8826                 Return (Buffer (0x01)
8827                 {
8828                      0x00                                             // .
8829                 })
8830             }
8831 
8832             Device (PXSX)
8833             {
8834                 Name (_ADR, 0x00)  // _ADR: Address
8835                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
8836                 {
8837                     Return (GPRW (0x69, 0x04))
8838                 }
8839             }
8840 
8841             Method (HPME, 0, Serialized)
8842             {
8843                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
8844                 {
8845                     Notify (PXSX, 0x02) // Device Wake
8846                     PMSX = 0x01
8847                     PSPX = 0x01
8848                 }
8849             }
8850 
8851             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
8852             {
8853                 If (CondRefOf (\_SB.PCI0.RP01.PPRW))
8854                 {
8855                     Return (\_SB.PCI0.RP01.PPRW ())
8856                 }
8857 
8858                 Return (GPRW (0x69, 0x04))
8859             }
8860 
8861             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
8862             {
8863                 If (CondRefOf (PICM))
8864                 {
8865                     If (PICM)
8866                     {
8867                         Return (AR04 ())
8868                     }
8869                 }
8870 
8871                 Return (PD04 ())
8872             }
8873         }
8874 
8875         Device (RP02)
8876         {
8877             Name (LTRZ, 0x00)
8878             Name (LMSL, 0x00)
8879             Name (LNSL, 0x00)
8880             Name (RID, 0x00)
8881             Method (_ADR, 0, NotSerialized)  // _ADR: Address
8882             {
8883                 If ((RPA2 != 0x00))
8884                 {
8885                     Return (RPA2) /* \RPA2 */
8886                 }
8887                 Else
8888                 {
8889                     Return (0x001C0001)
8890                 }
8891             }
8892 
8893             Name (SLOT, 0x02)
8894             Method (_INI, 0, NotSerialized)  // _INI: Initialize
8895             {
8896                 If (PRES ())
8897                 {
8898                     LTRZ = LTR2 /* \LTR2 */
8899                     LMSL = PML2 /* \PML2 */
8900                     LNSL = PNL2 /* \PNL2 */
8901                     If (CondRefOf (PINI))
8902                     {
8903                         PINI ()
8904                     }
8905                 }
8906             }
8907 
8908             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
8909             Field (PXCS, AnyAcc, NoLock, Preserve)
8910             {
8911                 VDID,   32, 
8912                 Offset (0x50), 
8913                 L0SE,   1, 
8914                 Offset (0x52), 
8915                     ,   13, 
8916                 LASX,   1, 
8917                 Offset (0x5A), 
8918                     ,   3, 
8919                 PDCX,   1, 
8920                     ,   2, 
8921                 PDSX,   1, 
8922                 Offset (0x5B), 
8923                 Offset (0x60), 
8924                 Offset (0x62), 
8925                 PSPX,   1, 
8926                 Offset (0xD8), 
8927                     ,   30, 
8928                 HPEX,   1, 
8929                 PMEX,   1, 
8930                 Offset (0xE0), 
8931                     ,   7, 
8932                 NCB7,   1, 
8933                 Offset (0xE2), 
8934                     ,   2, 
8935                 L23E,   1, 
8936                 L23R,   1, 
8937                 Offset (0x420), 
8938                     ,   30, 
8939                 DPGE,   1
8940             }
8941 
8942             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
8943             {
8944                 Offset (0xDC), 
8945                     ,   30, 
8946                 HPSX,   1, 
8947                 PMSX,   1
8948             }
8949 
8950             Method (L23D, 0, Serialized)
8951             {
8952                 If ((NCB7 != 0x01))
8953                 {
8954                     Return (Zero)
8955                 }
8956 
8957                 DPGE = 0x00
8958                 L23R = 0x01
8959                 Local0 = 0x00
8960                 While (L23R)
8961                 {
8962                     If ((Local0 > 0x04))
8963                     {
8964                         Break
8965                     }
8966 
8967                     Sleep (0x10)
8968                     Local0++
8969                 }
8970 
8971                 NCB7 = 0x00
8972                 DPGE = 0x01
8973                 Local0 = 0x00
8974                 While ((LASX == 0x00))
8975                 {
8976                     If ((Local0 > 0x08))
8977                     {
8978                         Break
8979                     }
8980 
8981                     Sleep (0x10)
8982                     Local0++
8983                 }
8984             }
8985 
8986             Method (DL23, 0, Serialized)
8987             {
8988                 L23E = 0x01
8989                 Sleep (0x10)
8990                 Local0 = 0x00
8991                 While (L23E)
8992                 {
8993                     If ((Local0 > 0x04))
8994                     {
8995                         Break
8996                     }
8997 
8998                     Sleep (0x10)
8999                     Local0++
9000                 }
9001 
9002                 NCB7 = 0x01
9003             }
9004 
9005             Name (LTRV, Package (0x04)
9006             {
9007                 0x00, 
9008                 0x00, 
9009                 0x00, 
9010                 0x00
9011             })
9012             Method (PRES, 0, NotSerialized)
9013             {
9014                 If ((VDID == 0xFFFFFFFF))
9015                 {
9016                     Return (0x00)
9017                 }
9018                 Else
9019                 {
9020                     Return (0x01)
9021                 }
9022             }
9023 
9024             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9025             {
9026                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
9027                 {
9028                     Switch (ToInteger (Arg2))
9029                     {
9030                         Case (0x00)
9031                         {
9032                             Name (OPTS, Buffer (0x02)
9033                             {
9034                                  0x00, 0x00                                       // ..
9035                             })
9036                             CreateBitField (OPTS, 0x00, FUN0)
9037                             CreateBitField (OPTS, 0x04, FUN4)
9038                             CreateBitField (OPTS, 0x06, FUN6)
9039                             CreateBitField (OPTS, 0x08, FUN8)
9040                             CreateBitField (OPTS, 0x09, FUN9)
9041                             CreateBitField (OPTS, 0x0A, FUNA)
9042                             CreateBitField (OPTS, 0x0B, FUNB)
9043                             If ((Arg1 >= 0x02))
9044                             {
9045                                 FUN0 = 0x01
9046                                 If (LTRE)
9047                                 {
9048                                     FUN6 = 0x01
9049                                 }
9050 
9051                                 If (CondRefOf (ECR1))
9052                                 {
9053                                     If ((ECR1 == 0x01))
9054                                     {
9055                                         If ((Arg1 >= 0x03))
9056                                         {
9057                                             FUN8 = 0x01
9058                                             FUN9 = 0x01
9059                                         }
9060                                     }
9061                                 }
9062                             }
9063 
9064                             If ((Arg1 >= 0x04))
9065                             {
9066                                 If (CondRefOf (PPBA))
9067                                 {
9068                                     FUNA = 0x01
9069                                 }
9070 
9071                                 If (CondRefOf (UPRD))
9072                                 {
9073                                     FUNB = 0x01
9074                                 }
9075                             }
9076 
9077                             Return (OPTS) /* \_SB_.PCI0.RP02._DSM.OPTS */
9078                         }
9079                         Case (0x06)
9080                         {
9081                             If ((Arg1 >= 0x02))
9082                             {
9083                                 If (LTRZ)
9084                                 {
9085                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
9086                                     LTRV [0x01] = (LMSL & 0x03FF)
9087                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
9088                                     LTRV [0x03] = (LNSL & 0x03FF)
9089                                     Return (LTRV) /* \_SB_.PCI0.RP02.LTRV */
9090                                 }
9091                                 Else
9092                                 {
9093                                     Return (0x00)
9094                                 }
9095                             }
9096                         }
9097                         Case (0x08)
9098                         {
9099                             If (CondRefOf (ECR1))
9100                             {
9101                                 If ((ECR1 == 0x01))
9102                                 {
9103                                     If ((Arg1 >= 0x03))
9104                                     {
9105                                         Return (0x01)
9106                                     }
9107                                 }
9108                             }
9109                         }
9110                         Case (0x09)
9111                         {
9112                             If (CondRefOf (ECR1))
9113                             {
9114                                 If ((ECR1 == 0x01))
9115                                 {
9116                                     If ((Arg1 >= 0x03))
9117                                     {
9118                                         Return (Package (0x05)
9119                                         {
9120                                             0xC350, 
9121                                             Ones, 
9122                                             Ones, 
9123                                             0xC350, 
9124                                             Ones
9125                                         })
9126                                     }
9127                                 }
9128                             }
9129                         }
9130                         Case (0x0A)
9131                         {
9132                             If (CondRefOf (PPBA))
9133                             {
9134                                 Return (PPBA (Arg3))
9135                             }
9136                         }
9137                         Case (0x0B)
9138                         {
9139                             If (CondRefOf (UPRD))
9140                             {
9141                                 Return (UPRD (Arg3))
9142                             }
9143                         }
9144 
9145                     }
9146                 }
9147 
9148                 Return (Buffer (0x01)
9149                 {
9150                      0x00                                             // .
9151                 })
9152             }
9153 
9154             Device (PXSX)
9155             {
9156                 Name (_ADR, 0x00)  // _ADR: Address
9157                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
9158                 {
9159                     Return (GPRW (0x69, 0x04))
9160                 }
9161             }
9162 
9163             Method (HPME, 0, Serialized)
9164             {
9165                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
9166                 {
9167                     Notify (PXSX, 0x02) // Device Wake
9168                     PMSX = 0x01
9169                     PSPX = 0x01
9170                 }
9171             }
9172 
9173             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
9174             {
9175                 If (CondRefOf (\_SB.PCI0.RP02.PPRW))
9176                 {
9177                     Return (\_SB.PCI0.RP02.PPRW ())
9178                 }
9179 
9180                 Return (GPRW (0x69, 0x04))
9181             }
9182 
9183             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
9184             {
9185                 If (CondRefOf (PICM))
9186                 {
9187                     If (PICM)
9188                     {
9189                         Return (AR05 ())
9190                     }
9191                 }
9192 
9193                 Return (PD05 ())
9194             }
9195         }
9196 
9197         Device (RP03)
9198         {
9199             Name (LTRZ, 0x00)
9200             Name (LMSL, 0x00)
9201             Name (LNSL, 0x00)
9202             Name (RID, 0x00)
9203             Method (_ADR, 0, NotSerialized)  // _ADR: Address
9204             {
9205                 If ((RPA3 != 0x00))
9206                 {
9207                     Return (RPA3) /* \RPA3 */
9208                 }
9209                 Else
9210                 {
9211                     Return (0x001C0002)
9212                 }
9213             }
9214 
9215             Name (SLOT, 0x03)
9216             Method (_INI, 0, NotSerialized)  // _INI: Initialize
9217             {
9218                 If (PRES ())
9219                 {
9220                     LTRZ = LTR3 /* \LTR3 */
9221                     LMSL = PML3 /* \PML3 */
9222                     LNSL = PNL3 /* \PNL3 */
9223                     If (CondRefOf (PINI))
9224                     {
9225                         PINI ()
9226                     }
9227                 }
9228             }
9229 
9230             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
9231             Field (PXCS, AnyAcc, NoLock, Preserve)
9232             {
9233                 VDID,   32, 
9234                 Offset (0x50), 
9235                 L0SE,   1, 
9236                 Offset (0x52), 
9237                     ,   13, 
9238                 LASX,   1, 
9239                 Offset (0x5A), 
9240                     ,   3, 
9241                 PDCX,   1, 
9242                     ,   2, 
9243                 PDSX,   1, 
9244                 Offset (0x5B), 
9245                 Offset (0x60), 
9246                 Offset (0x62), 
9247                 PSPX,   1, 
9248                 Offset (0xD8), 
9249                     ,   30, 
9250                 HPEX,   1, 
9251                 PMEX,   1, 
9252                 Offset (0xE0), 
9253                     ,   7, 
9254                 NCB7,   1, 
9255                 Offset (0xE2), 
9256                     ,   2, 
9257                 L23E,   1, 
9258                 L23R,   1, 
9259                 Offset (0x420), 
9260                     ,   30, 
9261                 DPGE,   1
9262             }
9263 
9264             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
9265             {
9266                 Offset (0xDC), 
9267                     ,   30, 
9268                 HPSX,   1, 
9269                 PMSX,   1
9270             }
9271 
9272             Method (L23D, 0, Serialized)
9273             {
9274                 If ((NCB7 != 0x01))
9275                 {
9276                     Return (Zero)
9277                 }
9278 
9279                 DPGE = 0x00
9280                 L23R = 0x01
9281                 Local0 = 0x00
9282                 While (L23R)
9283                 {
9284                     If ((Local0 > 0x04))
9285                     {
9286                         Break
9287                     }
9288 
9289                     Sleep (0x10)
9290                     Local0++
9291                 }
9292 
9293                 NCB7 = 0x00
9294                 DPGE = 0x01
9295                 Local0 = 0x00
9296                 While ((LASX == 0x00))
9297                 {
9298                     If ((Local0 > 0x08))
9299                     {
9300                         Break
9301                     }
9302 
9303                     Sleep (0x10)
9304                     Local0++
9305                 }
9306             }
9307 
9308             Method (DL23, 0, Serialized)
9309             {
9310                 L23E = 0x01
9311                 Sleep (0x10)
9312                 Local0 = 0x00
9313                 While (L23E)
9314                 {
9315                     If ((Local0 > 0x04))
9316                     {
9317                         Break
9318                     }
9319 
9320                     Sleep (0x10)
9321                     Local0++
9322                 }
9323 
9324                 NCB7 = 0x01
9325             }
9326 
9327             Name (LTRV, Package (0x04)
9328             {
9329                 0x00, 
9330                 0x00, 
9331                 0x00, 
9332                 0x00
9333             })
9334             Method (PRES, 0, NotSerialized)
9335             {
9336                 If ((VDID == 0xFFFFFFFF))
9337                 {
9338                     Return (0x00)
9339                 }
9340                 Else
9341                 {
9342                     Return (0x01)
9343                 }
9344             }
9345 
9346             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9347             {
9348                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
9349                 {
9350                     Switch (ToInteger (Arg2))
9351                     {
9352                         Case (0x00)
9353                         {
9354                             Name (OPTS, Buffer (0x02)
9355                             {
9356                                  0x00, 0x00                                       // ..
9357                             })
9358                             CreateBitField (OPTS, 0x00, FUN0)
9359                             CreateBitField (OPTS, 0x04, FUN4)
9360                             CreateBitField (OPTS, 0x06, FUN6)
9361                             CreateBitField (OPTS, 0x08, FUN8)
9362                             CreateBitField (OPTS, 0x09, FUN9)
9363                             CreateBitField (OPTS, 0x0A, FUNA)
9364                             CreateBitField (OPTS, 0x0B, FUNB)
9365                             If ((Arg1 >= 0x02))
9366                             {
9367                                 FUN0 = 0x01
9368                                 If (LTRE)
9369                                 {
9370                                     FUN6 = 0x01
9371                                 }
9372 
9373                                 If (CondRefOf (ECR1))
9374                                 {
9375                                     If ((ECR1 == 0x01))
9376                                     {
9377                                         If ((Arg1 >= 0x03))
9378                                         {
9379                                             FUN8 = 0x01
9380                                             FUN9 = 0x01
9381                                         }
9382                                     }
9383                                 }
9384                             }
9385 
9386                             If ((Arg1 >= 0x04))
9387                             {
9388                                 If (CondRefOf (PPBA))
9389                                 {
9390                                     FUNA = 0x01
9391                                 }
9392 
9393                                 If (CondRefOf (UPRD))
9394                                 {
9395                                     FUNB = 0x01
9396                                 }
9397                             }
9398 
9399                             Return (OPTS) /* \_SB_.PCI0.RP03._DSM.OPTS */
9400                         }
9401                         Case (0x06)
9402                         {
9403                             If ((Arg1 >= 0x02))
9404                             {
9405                                 If (LTRZ)
9406                                 {
9407                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
9408                                     LTRV [0x01] = (LMSL & 0x03FF)
9409                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
9410                                     LTRV [0x03] = (LNSL & 0x03FF)
9411                                     Return (LTRV) /* \_SB_.PCI0.RP03.LTRV */
9412                                 }
9413                                 Else
9414                                 {
9415                                     Return (0x00)
9416                                 }
9417                             }
9418                         }
9419                         Case (0x08)
9420                         {
9421                             If (CondRefOf (ECR1))
9422                             {
9423                                 If ((ECR1 == 0x01))
9424                                 {
9425                                     If ((Arg1 >= 0x03))
9426                                     {
9427                                         Return (0x01)
9428                                     }
9429                                 }
9430                             }
9431                         }
9432                         Case (0x09)
9433                         {
9434                             If (CondRefOf (ECR1))
9435                             {
9436                                 If ((ECR1 == 0x01))
9437                                 {
9438                                     If ((Arg1 >= 0x03))
9439                                     {
9440                                         Return (Package (0x05)
9441                                         {
9442                                             0xC350, 
9443                                             Ones, 
9444                                             Ones, 
9445                                             0xC350, 
9446                                             Ones
9447                                         })
9448                                     }
9449                                 }
9450                             }
9451                         }
9452                         Case (0x0A)
9453                         {
9454                             If (CondRefOf (PPBA))
9455                             {
9456                                 Return (PPBA (Arg3))
9457                             }
9458                         }
9459                         Case (0x0B)
9460                         {
9461                             If (CondRefOf (UPRD))
9462                             {
9463                                 Return (UPRD (Arg3))
9464                             }
9465                         }
9466 
9467                     }
9468                 }
9469 
9470                 Return (Buffer (0x01)
9471                 {
9472                      0x00                                             // .
9473                 })
9474             }
9475 
9476             Device (PXSX)
9477             {
9478                 Name (_ADR, 0x00)  // _ADR: Address
9479                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
9480                 {
9481                     Return (GPRW (0x69, 0x04))
9482                 }
9483             }
9484 
9485             Method (HPME, 0, Serialized)
9486             {
9487                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
9488                 {
9489                     Notify (PXSX, 0x02) // Device Wake
9490                     PMSX = 0x01
9491                     PSPX = 0x01
9492                 }
9493             }
9494 
9495             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
9496             {
9497                 If (CondRefOf (\_SB.PCI0.RP03.PPRW))
9498                 {
9499                     Return (\_SB.PCI0.RP03.PPRW ())
9500                 }
9501 
9502                 Return (GPRW (0x69, 0x04))
9503             }
9504 
9505             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
9506             {
9507                 If (CondRefOf (PICM))
9508                 {
9509                     If (PICM)
9510                     {
9511                         Return (AR06 ())
9512                     }
9513                 }
9514 
9515                 Return (PD06 ())
9516             }
9517         }
9518 
9519         Device (RP04)
9520         {
9521             Name (LTRZ, 0x00)
9522             Name (LMSL, 0x00)
9523             Name (LNSL, 0x00)
9524             Name (RID, 0x00)
9525             Method (_ADR, 0, NotSerialized)  // _ADR: Address
9526             {
9527                 If ((RPA4 != 0x00))
9528                 {
9529                     Return (RPA4) /* \RPA4 */
9530                 }
9531                 Else
9532                 {
9533                     Return (0x001C0003)
9534                 }
9535             }
9536 
9537             Name (SLOT, 0x04)
9538             Method (_INI, 0, NotSerialized)  // _INI: Initialize
9539             {
9540                 If (PRES ())
9541                 {
9542                     LTRZ = LTR4 /* \LTR4 */
9543                     LMSL = PML4 /* \PML4 */
9544                     LNSL = PNL4 /* \PNL4 */
9545                     If (CondRefOf (PINI))
9546                     {
9547                         PINI ()
9548                     }
9549                 }
9550             }
9551 
9552             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
9553             Field (PXCS, AnyAcc, NoLock, Preserve)
9554             {
9555                 VDID,   32, 
9556                 Offset (0x50), 
9557                 L0SE,   1, 
9558                 Offset (0x52), 
9559                     ,   13, 
9560                 LASX,   1, 
9561                 Offset (0x5A), 
9562                     ,   3, 
9563                 PDCX,   1, 
9564                     ,   2, 
9565                 PDSX,   1, 
9566                 Offset (0x5B), 
9567                 Offset (0x60), 
9568                 Offset (0x62), 
9569                 PSPX,   1, 
9570                 Offset (0xD8), 
9571                     ,   30, 
9572                 HPEX,   1, 
9573                 PMEX,   1, 
9574                 Offset (0xE0), 
9575                     ,   7, 
9576                 NCB7,   1, 
9577                 Offset (0xE2), 
9578                     ,   2, 
9579                 L23E,   1, 
9580                 L23R,   1, 
9581                 Offset (0x420), 
9582                     ,   30, 
9583                 DPGE,   1
9584             }
9585 
9586             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
9587             {
9588                 Offset (0xDC), 
9589                     ,   30, 
9590                 HPSX,   1, 
9591                 PMSX,   1
9592             }
9593 
9594             Method (L23D, 0, Serialized)
9595             {
9596                 If ((NCB7 != 0x01))
9597                 {
9598                     Return (Zero)
9599                 }
9600 
9601                 DPGE = 0x00
9602                 L23R = 0x01
9603                 Local0 = 0x00
9604                 While (L23R)
9605                 {
9606                     If ((Local0 > 0x04))
9607                     {
9608                         Break
9609                     }
9610 
9611                     Sleep (0x10)
9612                     Local0++
9613                 }
9614 
9615                 NCB7 = 0x00
9616                 DPGE = 0x01
9617                 Local0 = 0x00
9618                 While ((LASX == 0x00))
9619                 {
9620                     If ((Local0 > 0x08))
9621                     {
9622                         Break
9623                     }
9624 
9625                     Sleep (0x10)
9626                     Local0++
9627                 }
9628             }
9629 
9630             Method (DL23, 0, Serialized)
9631             {
9632                 L23E = 0x01
9633                 Sleep (0x10)
9634                 Local0 = 0x00
9635                 While (L23E)
9636                 {
9637                     If ((Local0 > 0x04))
9638                     {
9639                         Break
9640                     }
9641 
9642                     Sleep (0x10)
9643                     Local0++
9644                 }
9645 
9646                 NCB7 = 0x01
9647             }
9648 
9649             Name (LTRV, Package (0x04)
9650             {
9651                 0x00, 
9652                 0x00, 
9653                 0x00, 
9654                 0x00
9655             })
9656             Method (PRES, 0, NotSerialized)
9657             {
9658                 If ((VDID == 0xFFFFFFFF))
9659                 {
9660                     Return (0x00)
9661                 }
9662                 Else
9663                 {
9664                     Return (0x01)
9665                 }
9666             }
9667 
9668             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9669             {
9670                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
9671                 {
9672                     Switch (ToInteger (Arg2))
9673                     {
9674                         Case (0x00)
9675                         {
9676                             Name (OPTS, Buffer (0x02)
9677                             {
9678                                  0x00, 0x00                                       // ..
9679                             })
9680                             CreateBitField (OPTS, 0x00, FUN0)
9681                             CreateBitField (OPTS, 0x04, FUN4)
9682                             CreateBitField (OPTS, 0x06, FUN6)
9683                             CreateBitField (OPTS, 0x08, FUN8)
9684                             CreateBitField (OPTS, 0x09, FUN9)
9685                             CreateBitField (OPTS, 0x0A, FUNA)
9686                             CreateBitField (OPTS, 0x0B, FUNB)
9687                             If ((Arg1 >= 0x02))
9688                             {
9689                                 FUN0 = 0x01
9690                                 If (LTRE)
9691                                 {
9692                                     FUN6 = 0x01
9693                                 }
9694 
9695                                 If (CondRefOf (ECR1))
9696                                 {
9697                                     If ((ECR1 == 0x01))
9698                                     {
9699                                         If ((Arg1 >= 0x03))
9700                                         {
9701                                             FUN8 = 0x01
9702                                             FUN9 = 0x01
9703                                         }
9704                                     }
9705                                 }
9706                             }
9707 
9708                             If ((Arg1 >= 0x04))
9709                             {
9710                                 If (CondRefOf (PPBA))
9711                                 {
9712                                     FUNA = 0x01
9713                                 }
9714 
9715                                 If (CondRefOf (UPRD))
9716                                 {
9717                                     FUNB = 0x01
9718                                 }
9719                             }
9720 
9721                             Return (OPTS) /* \_SB_.PCI0.RP04._DSM.OPTS */
9722                         }
9723                         Case (0x06)
9724                         {
9725                             If ((Arg1 >= 0x02))
9726                             {
9727                                 If (LTRZ)
9728                                 {
9729                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
9730                                     LTRV [0x01] = (LMSL & 0x03FF)
9731                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
9732                                     LTRV [0x03] = (LNSL & 0x03FF)
9733                                     Return (LTRV) /* \_SB_.PCI0.RP04.LTRV */
9734                                 }
9735                                 Else
9736                                 {
9737                                     Return (0x00)
9738                                 }
9739                             }
9740                         }
9741                         Case (0x08)
9742                         {
9743                             If (CondRefOf (ECR1))
9744                             {
9745                                 If ((ECR1 == 0x01))
9746                                 {
9747                                     If ((Arg1 >= 0x03))
9748                                     {
9749                                         Return (0x01)
9750                                     }
9751                                 }
9752                             }
9753                         }
9754                         Case (0x09)
9755                         {
9756                             If (CondRefOf (ECR1))
9757                             {
9758                                 If ((ECR1 == 0x01))
9759                                 {
9760                                     If ((Arg1 >= 0x03))
9761                                     {
9762                                         Return (Package (0x05)
9763                                         {
9764                                             0xC350, 
9765                                             Ones, 
9766                                             Ones, 
9767                                             0xC350, 
9768                                             Ones
9769                                         })
9770                                     }
9771                                 }
9772                             }
9773                         }
9774                         Case (0x0A)
9775                         {
9776                             If (CondRefOf (PPBA))
9777                             {
9778                                 Return (PPBA (Arg3))
9779                             }
9780                         }
9781                         Case (0x0B)
9782                         {
9783                             If (CondRefOf (UPRD))
9784                             {
9785                                 Return (UPRD (Arg3))
9786                             }
9787                         }
9788 
9789                     }
9790                 }
9791 
9792                 Return (Buffer (0x01)
9793                 {
9794                      0x00                                             // .
9795                 })
9796             }
9797 
9798             Device (PXSX)
9799             {
9800                 Name (_ADR, 0x00)  // _ADR: Address
9801                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
9802                 {
9803                     Return (GPRW (0x69, 0x04))
9804                 }
9805             }
9806 
9807             Method (HPME, 0, Serialized)
9808             {
9809                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
9810                 {
9811                     Notify (PXSX, 0x02) // Device Wake
9812                     PMSX = 0x01
9813                     PSPX = 0x01
9814                 }
9815             }
9816 
9817             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
9818             {
9819                 If (CondRefOf (\_SB.PCI0.RP04.PPRW))
9820                 {
9821                     Return (\_SB.PCI0.RP04.PPRW ())
9822                 }
9823 
9824                 Return (GPRW (0x69, 0x04))
9825             }
9826 
9827             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
9828             {
9829                 If (CondRefOf (PICM))
9830                 {
9831                     If (PICM)
9832                     {
9833                         Return (AR07 ())
9834                     }
9835                 }
9836 
9837                 Return (PD07 ())
9838             }
9839         }
9840 
9841         Device (RP05)
9842         {
9843             Name (LTRZ, 0x00)
9844             Name (LMSL, 0x00)
9845             Name (LNSL, 0x00)
9846             Name (RID, 0x00)
9847             Name (PDSF, 0x00)
9848             Method (_ADR, 0, NotSerialized)  // _ADR: Address
9849             {
9850                 If ((RPA5 != 0x00))
9851                 {
9852                     Return (RPA5) /* \RPA5 */
9853                 }
9854                 Else
9855                 {
9856                     Return (0x001C0004)
9857                 }
9858             }
9859 
9860             Name (SLOT, 0x05)
9861             Method (_INI, 0, NotSerialized)  // _INI: Initialize
9862             {
9863                 If (PRES ())
9864                 {
9865                     LTRZ = LTR5 /* \LTR5 */
9866                     LMSL = PML5 /* \PML5 */
9867                     LNSL = PNL5 /* \PNL5 */
9868                     PDSF = PDSX /* \_SB_.PCI0.RP05.PDSX */
9869                     If (CondRefOf (PINI))
9870                     {
9871                         PINI ()
9872                     }
9873                 }
9874             }
9875 
9876             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
9877             Field (PXCS, AnyAcc, NoLock, Preserve)
9878             {
9879                 VDID,   32, 
9880                 Offset (0x50), 
9881                 L0SE,   1, 
9882                 Offset (0x52), 
9883                     ,   13, 
9884                 LASX,   1, 
9885                 Offset (0x5A), 
9886                     ,   3, 
9887                 PDCX,   1, 
9888                     ,   2, 
9889                 PDSX,   1, 
9890                 Offset (0x5B), 
9891                 Offset (0x60), 
9892                 Offset (0x62), 
9893                 PSPX,   1, 
9894                 Offset (0xD8), 
9895                     ,   30, 
9896                 HPEX,   1, 
9897                 PMEX,   1, 
9898                 Offset (0xE0), 
9899                     ,   7, 
9900                 NCB7,   1, 
9901                 Offset (0xE2), 
9902                     ,   2, 
9903                 L23E,   1, 
9904                 L23R,   1, 
9905                 Offset (0x420), 
9906                     ,   30, 
9907                 DPGE,   1
9908             }
9909 
9910             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
9911             {
9912                 Offset (0xDC), 
9913                     ,   30, 
9914                 HPSX,   1, 
9915                 PMSX,   1
9916             }
9917 
9918             Method (L23D, 0, Serialized)
9919             {
9920                 If ((NCB7 != 0x01))
9921                 {
9922                     Return (Zero)
9923                 }
9924 
9925                 DPGE = 0x00
9926                 L23R = 0x01
9927                 Local0 = 0x00
9928                 While (L23R)
9929                 {
9930                     If ((Local0 > 0x04))
9931                     {
9932                         Break
9933                     }
9934 
9935                     Sleep (0x10)
9936                     Local0++
9937                 }
9938 
9939                 NCB7 = 0x00
9940                 DPGE = 0x01
9941                 Local0 = 0x00
9942                 While ((LASX == 0x00))
9943                 {
9944                     If ((Local0 > 0x08))
9945                     {
9946                         Break
9947                     }
9948 
9949                     Sleep (0x10)
9950                     Local0++
9951                 }
9952             }
9953 
9954             Method (DL23, 0, Serialized)
9955             {
9956                 L23E = 0x01
9957                 Sleep (0x10)
9958                 Local0 = 0x00
9959                 While (L23E)
9960                 {
9961                     If ((Local0 > 0x04))
9962                     {
9963                         Break
9964                     }
9965 
9966                     Sleep (0x10)
9967                     Local0++
9968                 }
9969 
9970                 NCB7 = 0x01
9971             }
9972 
9973             Name (LTRV, Package (0x04)
9974             {
9975                 0x00, 
9976                 0x00, 
9977                 0x00, 
9978                 0x00
9979             })
9980             Method (PRES, 0, NotSerialized)
9981             {
9982                 If ((VDID == 0xFFFFFFFF))
9983                 {
9984                     Return (0x00)
9985                 }
9986                 Else
9987                 {
9988                     Return (0x01)
9989                 }
9990             }
9991 
9992             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9993             {
9994                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
9995                 {
9996                     Switch (ToInteger (Arg2))
9997                     {
9998                         Case (0x00)
9999                         {
10000                             Name (OPTS, Buffer (0x02)
10001                             {
10002                                  0x00, 0x00                                       // ..
10003                             })
10004                             CreateBitField (OPTS, 0x00, FUN0)
10005                             CreateBitField (OPTS, 0x04, FUN4)
10006                             CreateBitField (OPTS, 0x06, FUN6)
10007                             CreateBitField (OPTS, 0x08, FUN8)
10008                             CreateBitField (OPTS, 0x09, FUN9)
10009                             CreateBitField (OPTS, 0x0A, FUNA)
10010                             CreateBitField (OPTS, 0x0B, FUNB)
10011                             If ((Arg1 >= 0x02))
10012                             {
10013                                 FUN0 = 0x01
10014                                 If (LTRE)
10015                                 {
10016                                     FUN6 = 0x01
10017                                 }
10018 
10019                                 If (CondRefOf (ECR1))
10020                                 {
10021                                     If ((ECR1 == 0x01))
10022                                     {
10023                                         If ((Arg1 >= 0x03))
10024                                         {
10025                                             FUN8 = 0x01
10026                                             FUN9 = 0x01
10027                                         }
10028                                     }
10029                                 }
10030                             }
10031 
10032                             If ((Arg1 >= 0x04))
10033                             {
10034                                 If (CondRefOf (PPBA))
10035                                 {
10036                                     FUNA = 0x01
10037                                 }
10038 
10039                                 If (CondRefOf (UPRD))
10040                                 {
10041                                     FUNB = 0x01
10042                                 }
10043                             }
10044 
10045                             Return (OPTS) /* \_SB_.PCI0.RP05._DSM.OPTS */
10046                         }
10047                         Case (0x06)
10048                         {
10049                             If ((Arg1 >= 0x02))
10050                             {
10051                                 If (LTRZ)
10052                                 {
10053                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
10054                                     LTRV [0x01] = (LMSL & 0x03FF)
10055                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
10056                                     LTRV [0x03] = (LNSL & 0x03FF)
10057                                     Return (LTRV) /* \_SB_.PCI0.RP05.LTRV */
10058                                 }
10059                                 Else
10060                                 {
10061                                     Return (0x00)
10062                                 }
10063                             }
10064                         }
10065                         Case (0x08)
10066                         {
10067                             If (CondRefOf (ECR1))
10068                             {
10069                                 If ((ECR1 == 0x01))
10070                                 {
10071                                     If ((Arg1 >= 0x03))
10072                                     {
10073                                         Return (0x01)
10074                                     }
10075                                 }
10076                             }
10077                         }
10078                         Case (0x09)
10079                         {
10080                             If (CondRefOf (ECR1))
10081                             {
10082                                 If ((ECR1 == 0x01))
10083                                 {
10084                                     If ((Arg1 >= 0x03))
10085                                     {
10086                                         Return (Package (0x05)
10087                                         {
10088                                             0xC350, 
10089                                             Ones, 
10090                                             Ones, 
10091                                             0xC350, 
10092                                             Ones
10093                                         })
10094                                     }
10095                                 }
10096                             }
10097                         }
10098                         Case (0x0A)
10099                         {
10100                             If (CondRefOf (PPBA))
10101                             {
10102                                 Return (PPBA (Arg3))
10103                             }
10104                         }
10105                         Case (0x0B)
10106                         {
10107                             If (CondRefOf (UPRD))
10108                             {
10109                                 Return (UPRD (Arg3))
10110                             }
10111                         }
10112 
10113                     }
10114                 }
10115 
10116                 Return (Buffer (0x01)
10117                 {
10118                      0x00                                             // .
10119                 })
10120             }
10121 
10122             Device (PXSX)
10123             {
10124                 Name (_ADR, 0x00)  // _ADR: Address
10125                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
10126                 {
10127                     Return (GPRW (0x69, 0x04))
10128                 }
10129             }
10130 
10131             Method (HPME, 0, Serialized)
10132             {
10133                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
10134                 {
10135                     Notify (PXSX, 0x02) // Device Wake
10136                     PMSX = 0x01
10137                     PSPX = 0x01
10138                 }
10139             }
10140 
10141             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
10142             {
10143                 Return (GPRW (0x47, 0x04))
10144             }
10145 
10146             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
10147             {
10148                 If (CondRefOf (PICM))
10149                 {
10150                     If (PICM)
10151                     {
10152                         Return (AR04 ())
10153                     }
10154                 }
10155 
10156                 Return (PD04 ())
10157             }
10158         }
10159 
10160         Device (RP06)
10161         {
10162             Name (LTRZ, 0x00)
10163             Name (LMSL, 0x00)
10164             Name (LNSL, 0x00)
10165             Name (RID, 0x00)
10166             Method (_ADR, 0, NotSerialized)  // _ADR: Address
10167             {
10168                 If ((RPA6 != 0x00))
10169                 {
10170                     Return (RPA6) /* \RPA6 */
10171                 }
10172                 Else
10173                 {
10174                     Return (0x001C0005)
10175                 }
10176             }
10177 
10178             Name (SLOT, 0x06)
10179             Method (_INI, 0, NotSerialized)  // _INI: Initialize
10180             {
10181                 If (PRES ())
10182                 {
10183                     LTRZ = LTR6 /* \LTR6 */
10184                     LMSL = PML6 /* \PML6 */
10185                     LNSL = PNL6 /* \PNL6 */
10186                     If (CondRefOf (PINI))
10187                     {
10188                         PINI ()
10189                     }
10190                 }
10191             }
10192 
10193             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
10194             Field (PXCS, AnyAcc, NoLock, Preserve)
10195             {
10196                 VDID,   32, 
10197                 Offset (0x50), 
10198                 L0SE,   1, 
10199                 Offset (0x52), 
10200                     ,   13, 
10201                 LASX,   1, 
10202                 Offset (0x5A), 
10203                     ,   3, 
10204                 PDCX,   1, 
10205                     ,   2, 
10206                 PDSX,   1, 
10207                 Offset (0x5B), 
10208                 Offset (0x60), 
10209                 Offset (0x62), 
10210                 PSPX,   1, 
10211                 Offset (0xD8), 
10212                     ,   30, 
10213                 HPEX,   1, 
10214                 PMEX,   1, 
10215                 Offset (0xE0), 
10216                     ,   7, 
10217                 NCB7,   1, 
10218                 Offset (0xE2), 
10219                     ,   2, 
10220                 L23E,   1, 
10221                 L23R,   1, 
10222                 Offset (0x420), 
10223                     ,   30, 
10224                 DPGE,   1
10225             }
10226 
10227             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
10228             {
10229                 Offset (0xDC), 
10230                     ,   30, 
10231                 HPSX,   1, 
10232                 PMSX,   1
10233             }
10234 
10235             Method (L23D, 0, Serialized)
10236             {
10237                 If ((NCB7 != 0x01))
10238                 {
10239                     Return (Zero)
10240                 }
10241 
10242                 DPGE = 0x00
10243                 L23R = 0x01
10244                 Local0 = 0x00
10245                 While (L23R)
10246                 {
10247                     If ((Local0 > 0x04))
10248                     {
10249                         Break
10250                     }
10251 
10252                     Sleep (0x10)
10253                     Local0++
10254                 }
10255 
10256                 NCB7 = 0x00
10257                 DPGE = 0x01
10258                 Local0 = 0x00
10259                 While ((LASX == 0x00))
10260                 {
10261                     If ((Local0 > 0x08))
10262                     {
10263                         Break
10264                     }
10265 
10266                     Sleep (0x10)
10267                     Local0++
10268                 }
10269             }
10270 
10271             Method (DL23, 0, Serialized)
10272             {
10273                 L23E = 0x01
10274                 Sleep (0x10)
10275                 Local0 = 0x00
10276                 While (L23E)
10277                 {
10278                     If ((Local0 > 0x04))
10279                     {
10280                         Break
10281                     }
10282 
10283                     Sleep (0x10)
10284                     Local0++
10285                 }
10286 
10287                 NCB7 = 0x01
10288             }
10289 
10290             Name (LTRV, Package (0x04)
10291             {
10292                 0x00, 
10293                 0x00, 
10294                 0x00, 
10295                 0x00
10296             })
10297             Method (PRES, 0, NotSerialized)
10298             {
10299                 If ((VDID == 0xFFFFFFFF))
10300                 {
10301                     Return (0x00)
10302                 }
10303                 Else
10304                 {
10305                     Return (0x01)
10306                 }
10307             }
10308 
10309             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
10310             {
10311                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
10312                 {
10313                     Switch (ToInteger (Arg2))
10314                     {
10315                         Case (0x00)
10316                         {
10317                             Name (OPTS, Buffer (0x02)
10318                             {
10319                                  0x00, 0x00                                       // ..
10320                             })
10321                             CreateBitField (OPTS, 0x00, FUN0)
10322                             CreateBitField (OPTS, 0x04, FUN4)
10323                             CreateBitField (OPTS, 0x06, FUN6)
10324                             CreateBitField (OPTS, 0x08, FUN8)
10325                             CreateBitField (OPTS, 0x09, FUN9)
10326                             CreateBitField (OPTS, 0x0A, FUNA)
10327                             CreateBitField (OPTS, 0x0B, FUNB)
10328                             If ((Arg1 >= 0x02))
10329                             {
10330                                 FUN0 = 0x01
10331                                 If (LTRE)
10332                                 {
10333                                     FUN6 = 0x01
10334                                 }
10335 
10336                                 If (CondRefOf (ECR1))
10337                                 {
10338                                     If ((ECR1 == 0x01))
10339                                     {
10340                                         If ((Arg1 >= 0x03))
10341                                         {
10342                                             FUN8 = 0x01
10343                                             FUN9 = 0x01
10344                                         }
10345                                     }
10346                                 }
10347                             }
10348 
10349                             If ((Arg1 >= 0x04))
10350                             {
10351                                 If (CondRefOf (PPBA))
10352                                 {
10353                                     FUNA = 0x01
10354                                 }
10355 
10356                                 If (CondRefOf (UPRD))
10357                                 {
10358                                     FUNB = 0x01
10359                                 }
10360                             }
10361 
10362                             Return (OPTS) /* \_SB_.PCI0.RP06._DSM.OPTS */
10363                         }
10364                         Case (0x06)
10365                         {
10366                             If ((Arg1 >= 0x02))
10367                             {
10368                                 If (LTRZ)
10369                                 {
10370                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
10371                                     LTRV [0x01] = (LMSL & 0x03FF)
10372                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
10373                                     LTRV [0x03] = (LNSL & 0x03FF)
10374                                     Return (LTRV) /* \_SB_.PCI0.RP06.LTRV */
10375                                 }
10376                                 Else
10377                                 {
10378                                     Return (0x00)
10379                                 }
10380                             }
10381                         }
10382                         Case (0x08)
10383                         {
10384                             If (CondRefOf (ECR1))
10385                             {
10386                                 If ((ECR1 == 0x01))
10387                                 {
10388                                     If ((Arg1 >= 0x03))
10389                                     {
10390                                         Return (0x01)
10391                                     }
10392                                 }
10393                             }
10394                         }
10395                         Case (0x09)
10396                         {
10397                             If (CondRefOf (ECR1))
10398                             {
10399                                 If ((ECR1 == 0x01))
10400                                 {
10401                                     If ((Arg1 >= 0x03))
10402                                     {
10403                                         Return (Package (0x05)
10404                                         {
10405                                             0xC350, 
10406                                             Ones, 
10407                                             Ones, 
10408                                             0xC350, 
10409                                             Ones
10410                                         })
10411                                     }
10412                                 }
10413                             }
10414                         }
10415                         Case (0x0A)
10416                         {
10417                             If (CondRefOf (PPBA))
10418                             {
10419                                 Return (PPBA (Arg3))
10420                             }
10421                         }
10422                         Case (0x0B)
10423                         {
10424                             If (CondRefOf (UPRD))
10425                             {
10426                                 Return (UPRD (Arg3))
10427                             }
10428                         }
10429 
10430                     }
10431                 }
10432 
10433                 Return (Buffer (0x01)
10434                 {
10435                      0x00                                             // .
10436                 })
10437             }
10438 
10439             Device (PXSX)
10440             {
10441                 Name (_ADR, 0x00)  // _ADR: Address
10442                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
10443                 {
10444                     Return (GPRW (0x69, 0x04))
10445                 }
10446             }
10447 
10448             Method (HPME, 0, Serialized)
10449             {
10450                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
10451                 {
10452                     Notify (PXSX, 0x02) // Device Wake
10453                     PMSX = 0x01
10454                     PSPX = 0x01
10455                 }
10456             }
10457 
10458             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
10459             {
10460                 If (CondRefOf (\_SB.PCI0.RP06.PPRW))
10461                 {
10462                     Return (\_SB.PCI0.RP06.PPRW ())
10463                 }
10464 
10465                 Return (GPRW (0x69, 0x04))
10466             }
10467 
10468             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
10469             {
10470                 If (CondRefOf (PICM))
10471                 {
10472                     If (PICM)
10473                     {
10474                         Return (AR05 ())
10475                     }
10476                 }
10477 
10478                 Return (PD05 ())
10479             }
10480         }
10481 
10482         Device (RP07)
10483         {
10484             Name (LTRZ, 0x00)
10485             Name (LMSL, 0x00)
10486             Name (LNSL, 0x00)
10487             Name (RID, 0x00)
10488             Method (_ADR, 0, NotSerialized)  // _ADR: Address
10489             {
10490                 If ((RPA7 != 0x00))
10491                 {
10492                     Return (RPA7) /* \RPA7 */
10493                 }
10494                 Else
10495                 {
10496                     Return (0x001C0006)
10497                 }
10498             }
10499 
10500             Name (SLOT, 0x07)
10501             Method (_INI, 0, NotSerialized)  // _INI: Initialize
10502             {
10503                 If (PRES ())
10504                 {
10505                     LTRZ = LTR7 /* \LTR7 */
10506                     LMSL = PML7 /* \PML7 */
10507                     LNSL = PNL7 /* \PNL7 */
10508                     If (CondRefOf (PINI))
10509                     {
10510                         PINI ()
10511                     }
10512                 }
10513             }
10514 
10515             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
10516             Field (PXCS, AnyAcc, NoLock, Preserve)
10517             {
10518                 VDID,   32, 
10519                 Offset (0x50), 
10520                 L0SE,   1, 
10521                 Offset (0x52), 
10522                     ,   13, 
10523                 LASX,   1, 
10524                 Offset (0x5A), 
10525                     ,   3, 
10526                 PDCX,   1, 
10527                     ,   2, 
10528                 PDSX,   1, 
10529                 Offset (0x5B), 
10530                 Offset (0x60), 
10531                 Offset (0x62), 
10532                 PSPX,   1, 
10533                 Offset (0xD8), 
10534                     ,   30, 
10535                 HPEX,   1, 
10536                 PMEX,   1, 
10537                 Offset (0xE0), 
10538                     ,   7, 
10539                 NCB7,   1, 
10540                 Offset (0xE2), 
10541                     ,   2, 
10542                 L23E,   1, 
10543                 L23R,   1, 
10544                 Offset (0x420), 
10545                     ,   30, 
10546                 DPGE,   1
10547             }
10548 
10549             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
10550             {
10551                 Offset (0xDC), 
10552                     ,   30, 
10553                 HPSX,   1, 
10554                 PMSX,   1
10555             }
10556 
10557             Method (L23D, 0, Serialized)
10558             {
10559                 If ((NCB7 != 0x01))
10560                 {
10561                     Return (Zero)
10562                 }
10563 
10564                 DPGE = 0x00
10565                 L23R = 0x01
10566                 Local0 = 0x00
10567                 While (L23R)
10568                 {
10569                     If ((Local0 > 0x04))
10570                     {
10571                         Break
10572                     }
10573 
10574                     Sleep (0x10)
10575                     Local0++
10576                 }
10577 
10578                 NCB7 = 0x00
10579                 DPGE = 0x01
10580                 Local0 = 0x00
10581                 While ((LASX == 0x00))
10582                 {
10583                     If ((Local0 > 0x08))
10584                     {
10585                         Break
10586                     }
10587 
10588                     Sleep (0x10)
10589                     Local0++
10590                 }
10591             }
10592 
10593             Method (DL23, 0, Serialized)
10594             {
10595                 L23E = 0x01
10596                 Sleep (0x10)
10597                 Local0 = 0x00
10598                 While (L23E)
10599                 {
10600                     If ((Local0 > 0x04))
10601                     {
10602                         Break
10603                     }
10604 
10605                     Sleep (0x10)
10606                     Local0++
10607                 }
10608 
10609                 NCB7 = 0x01
10610             }
10611 
10612             Name (LTRV, Package (0x04)
10613             {
10614                 0x00, 
10615                 0x00, 
10616                 0x00, 
10617                 0x00
10618             })
10619             Method (PRES, 0, NotSerialized)
10620             {
10621                 If ((VDID == 0xFFFFFFFF))
10622                 {
10623                     Return (0x00)
10624                 }
10625                 Else
10626                 {
10627                     Return (0x01)
10628                 }
10629             }
10630 
10631             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
10632             {
10633                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
10634                 {
10635                     Switch (ToInteger (Arg2))
10636                     {
10637                         Case (0x00)
10638                         {
10639                             Name (OPTS, Buffer (0x02)
10640                             {
10641                                  0x00, 0x00                                       // ..
10642                             })
10643                             CreateBitField (OPTS, 0x00, FUN0)
10644                             CreateBitField (OPTS, 0x04, FUN4)
10645                             CreateBitField (OPTS, 0x06, FUN6)
10646                             CreateBitField (OPTS, 0x08, FUN8)
10647                             CreateBitField (OPTS, 0x09, FUN9)
10648                             CreateBitField (OPTS, 0x0A, FUNA)
10649                             CreateBitField (OPTS, 0x0B, FUNB)
10650                             If ((Arg1 >= 0x02))
10651                             {
10652                                 FUN0 = 0x01
10653                                 If (LTRE)
10654                                 {
10655                                     FUN6 = 0x01
10656                                 }
10657 
10658                                 If (CondRefOf (ECR1))
10659                                 {
10660                                     If ((ECR1 == 0x01))
10661                                     {
10662                                         If ((Arg1 >= 0x03))
10663                                         {
10664                                             FUN8 = 0x01
10665                                             FUN9 = 0x01
10666                                         }
10667                                     }
10668                                 }
10669                             }
10670 
10671                             If ((Arg1 >= 0x04))
10672                             {
10673                                 If (CondRefOf (PPBA))
10674                                 {
10675                                     FUNA = 0x01
10676                                 }
10677 
10678                                 If (CondRefOf (UPRD))
10679                                 {
10680                                     FUNB = 0x01
10681                                 }
10682                             }
10683 
10684                             Return (OPTS) /* \_SB_.PCI0.RP07._DSM.OPTS */
10685                         }
10686                         Case (0x06)
10687                         {
10688                             If ((Arg1 >= 0x02))
10689                             {
10690                                 If (LTRZ)
10691                                 {
10692                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
10693                                     LTRV [0x01] = (LMSL & 0x03FF)
10694                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
10695                                     LTRV [0x03] = (LNSL & 0x03FF)
10696                                     Return (LTRV) /* \_SB_.PCI0.RP07.LTRV */
10697                                 }
10698                                 Else
10699                                 {
10700                                     Return (0x00)
10701                                 }
10702                             }
10703                         }
10704                         Case (0x08)
10705                         {
10706                             If (CondRefOf (ECR1))
10707                             {
10708                                 If ((ECR1 == 0x01))
10709                                 {
10710                                     If ((Arg1 >= 0x03))
10711                                     {
10712                                         Return (0x01)
10713                                     }
10714                                 }
10715                             }
10716                         }
10717                         Case (0x09)
10718                         {
10719                             If (CondRefOf (ECR1))
10720                             {
10721                                 If ((ECR1 == 0x01))
10722                                 {
10723                                     If ((Arg1 >= 0x03))
10724                                     {
10725                                         Return (Package (0x05)
10726                                         {
10727                                             0xC350, 
10728                                             Ones, 
10729                                             Ones, 
10730                                             0xC350, 
10731                                             Ones
10732                                         })
10733                                     }
10734                                 }
10735                             }
10736                         }
10737                         Case (0x0A)
10738                         {
10739                             If (CondRefOf (PPBA))
10740                             {
10741                                 Return (PPBA (Arg3))
10742                             }
10743                         }
10744                         Case (0x0B)
10745                         {
10746                             If (CondRefOf (UPRD))
10747                             {
10748                                 Return (UPRD (Arg3))
10749                             }
10750                         }
10751 
10752                     }
10753                 }
10754 
10755                 Return (Buffer (0x01)
10756                 {
10757                      0x00                                             // .
10758                 })
10759             }
10760 
10761             Device (PXSX)
10762             {
10763                 Name (_ADR, 0x00)  // _ADR: Address
10764                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
10765                 {
10766                     Return (GPRW (0x69, 0x04))
10767                 }
10768             }
10769 
10770             Method (HPME, 0, Serialized)
10771             {
10772                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
10773                 {
10774                     Notify (PXSX, 0x02) // Device Wake
10775                     PMSX = 0x01
10776                     PSPX = 0x01
10777                 }
10778             }
10779 
10780             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
10781             {
10782                 If (CondRefOf (\_SB.PCI0.RP07.PPRW))
10783                 {
10784                     Return (\_SB.PCI0.RP07.PPRW ())
10785                 }
10786 
10787                 Return (GPRW (0x69, 0x04))
10788             }
10789 
10790             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
10791             {
10792                 If (CondRefOf (PICM))
10793                 {
10794                     If (PICM)
10795                     {
10796                         Return (AR06 ())
10797                     }
10798                 }
10799 
10800                 Return (PD06 ())
10801             }
10802         }
10803 
10804         Device (RP08)
10805         {
10806             Name (LTRZ, 0x00)
10807             Name (LMSL, 0x00)
10808             Name (LNSL, 0x00)
10809             Name (RID, 0x00)
10810             Method (_ADR, 0, NotSerialized)  // _ADR: Address
10811             {
10812                 If ((RPA8 != 0x00))
10813                 {
10814                     Return (RPA8) /* \RPA8 */
10815                 }
10816                 Else
10817                 {
10818                     Return (0x001C0007)
10819                 }
10820             }
10821 
10822             Name (SLOT, 0x08)
10823             Method (_INI, 0, NotSerialized)  // _INI: Initialize
10824             {
10825                 If (PRES ())
10826                 {
10827                     LTRZ = LTR8 /* \LTR8 */
10828                     LMSL = PML8 /* \PML8 */
10829                     LNSL = PNL8 /* \PNL8 */
10830                     If (CondRefOf (PINI))
10831                     {
10832                         PINI ()
10833                     }
10834                 }
10835             }
10836 
10837             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
10838             Field (PXCS, AnyAcc, NoLock, Preserve)
10839             {
10840                 VDID,   32, 
10841                 Offset (0x50), 
10842                 L0SE,   1, 
10843                 Offset (0x52), 
10844                     ,   13, 
10845                 LASX,   1, 
10846                 Offset (0x5A), 
10847                     ,   3, 
10848                 PDCX,   1, 
10849                     ,   2, 
10850                 PDSX,   1, 
10851                 Offset (0x5B), 
10852                 Offset (0x60), 
10853                 Offset (0x62), 
10854                 PSPX,   1, 
10855                 Offset (0xD8), 
10856                     ,   30, 
10857                 HPEX,   1, 
10858                 PMEX,   1, 
10859                 Offset (0xE0), 
10860                     ,   7, 
10861                 NCB7,   1, 
10862                 Offset (0xE2), 
10863                     ,   2, 
10864                 L23E,   1, 
10865                 L23R,   1, 
10866                 Offset (0x420), 
10867                     ,   30, 
10868                 DPGE,   1
10869             }
10870 
10871             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
10872             {
10873                 Offset (0xDC), 
10874                     ,   30, 
10875                 HPSX,   1, 
10876                 PMSX,   1
10877             }
10878 
10879             Method (L23D, 0, Serialized)
10880             {
10881                 If ((NCB7 != 0x01))
10882                 {
10883                     Return (Zero)
10884                 }
10885 
10886                 DPGE = 0x00
10887                 L23R = 0x01
10888                 Local0 = 0x00
10889                 While (L23R)
10890                 {
10891                     If ((Local0 > 0x04))
10892                     {
10893                         Break
10894                     }
10895 
10896                     Sleep (0x10)
10897                     Local0++
10898                 }
10899 
10900                 NCB7 = 0x00
10901                 DPGE = 0x01
10902                 Local0 = 0x00
10903                 While ((LASX == 0x00))
10904                 {
10905                     If ((Local0 > 0x08))
10906                     {
10907                         Break
10908                     }
10909 
10910                     Sleep (0x10)
10911                     Local0++
10912                 }
10913             }
10914 
10915             Method (DL23, 0, Serialized)
10916             {
10917                 L23E = 0x01
10918                 Sleep (0x10)
10919                 Local0 = 0x00
10920                 While (L23E)
10921                 {
10922                     If ((Local0 > 0x04))
10923                     {
10924                         Break
10925                     }
10926 
10927                     Sleep (0x10)
10928                     Local0++
10929                 }
10930 
10931                 NCB7 = 0x01
10932             }
10933 
10934             Name (LTRV, Package (0x04)
10935             {
10936                 0x00, 
10937                 0x00, 
10938                 0x00, 
10939                 0x00
10940             })
10941             Method (PRES, 0, NotSerialized)
10942             {
10943                 If ((VDID == 0xFFFFFFFF))
10944                 {
10945                     Return (0x00)
10946                 }
10947                 Else
10948                 {
10949                     Return (0x01)
10950                 }
10951             }
10952 
10953             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
10954             {
10955                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
10956                 {
10957                     Switch (ToInteger (Arg2))
10958                     {
10959                         Case (0x00)
10960                         {
10961                             Name (OPTS, Buffer (0x02)
10962                             {
10963                                  0x00, 0x00                                       // ..
10964                             })
10965                             CreateBitField (OPTS, 0x00, FUN0)
10966                             CreateBitField (OPTS, 0x04, FUN4)
10967                             CreateBitField (OPTS, 0x06, FUN6)
10968                             CreateBitField (OPTS, 0x08, FUN8)
10969                             CreateBitField (OPTS, 0x09, FUN9)
10970                             CreateBitField (OPTS, 0x0A, FUNA)
10971                             CreateBitField (OPTS, 0x0B, FUNB)
10972                             If ((Arg1 >= 0x02))
10973                             {
10974                                 FUN0 = 0x01
10975                                 If (LTRE)
10976                                 {
10977                                     FUN6 = 0x01
10978                                 }
10979 
10980                                 If (CondRefOf (ECR1))
10981                                 {
10982                                     If ((ECR1 == 0x01))
10983                                     {
10984                                         If ((Arg1 >= 0x03))
10985                                         {
10986                                             FUN8 = 0x01
10987                                             FUN9 = 0x01
10988                                         }
10989                                     }
10990                                 }
10991                             }
10992 
10993                             If ((Arg1 >= 0x04))
10994                             {
10995                                 If (CondRefOf (PPBA))
10996                                 {
10997                                     FUNA = 0x01
10998                                 }
10999 
11000                                 If (CondRefOf (UPRD))
11001                                 {
11002                                     FUNB = 0x01
11003                                 }
11004                             }
11005 
11006                             Return (OPTS) /* \_SB_.PCI0.RP08._DSM.OPTS */
11007                         }
11008                         Case (0x06)
11009                         {
11010                             If ((Arg1 >= 0x02))
11011                             {
11012                                 If (LTRZ)
11013                                 {
11014                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
11015                                     LTRV [0x01] = (LMSL & 0x03FF)
11016                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
11017                                     LTRV [0x03] = (LNSL & 0x03FF)
11018                                     Return (LTRV) /* \_SB_.PCI0.RP08.LTRV */
11019                                 }
11020                                 Else
11021                                 {
11022                                     Return (0x00)
11023                                 }
11024                             }
11025                         }
11026                         Case (0x08)
11027                         {
11028                             If (CondRefOf (ECR1))
11029                             {
11030                                 If ((ECR1 == 0x01))
11031                                 {
11032                                     If ((Arg1 >= 0x03))
11033                                     {
11034                                         Return (0x01)
11035                                     }
11036                                 }
11037                             }
11038                         }
11039                         Case (0x09)
11040                         {
11041                             If (CondRefOf (ECR1))
11042                             {
11043                                 If ((ECR1 == 0x01))
11044                                 {
11045                                     If ((Arg1 >= 0x03))
11046                                     {
11047                                         Return (Package (0x05)
11048                                         {
11049                                             0xC350, 
11050                                             Ones, 
11051                                             Ones, 
11052                                             0xC350, 
11053                                             Ones
11054                                         })
11055                                     }
11056                                 }
11057                             }
11058                         }
11059                         Case (0x0A)
11060                         {
11061                             If (CondRefOf (PPBA))
11062                             {
11063                                 Return (PPBA (Arg3))
11064                             }
11065                         }
11066                         Case (0x0B)
11067                         {
11068                             If (CondRefOf (UPRD))
11069                             {
11070                                 Return (UPRD (Arg3))
11071                             }
11072                         }
11073 
11074                     }
11075                 }
11076 
11077                 Return (Buffer (0x01)
11078                 {
11079                      0x00                                             // .
11080                 })
11081             }
11082 
11083             Device (PXSX)
11084             {
11085                 Name (_ADR, 0x00)  // _ADR: Address
11086                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
11087                 {
11088                     Return (GPRW (0x69, 0x04))
11089                 }
11090             }
11091 
11092             Method (HPME, 0, Serialized)
11093             {
11094                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
11095                 {
11096                     Notify (PXSX, 0x02) // Device Wake
11097                     PMSX = 0x01
11098                     PSPX = 0x01
11099                 }
11100             }
11101 
11102             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
11103             {
11104                 If (CondRefOf (\_SB.PCI0.RP08.PPRW))
11105                 {
11106                     Return (\_SB.PCI0.RP08.PPRW ())
11107                 }
11108 
11109                 Return (GPRW (0x69, 0x04))
11110             }
11111 
11112             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
11113             {
11114                 If (CondRefOf (PICM))
11115                 {
11116                     If (PICM)
11117                     {
11118                         Return (AR07 ())
11119                     }
11120                 }
11121 
11122                 Return (PD07 ())
11123             }
11124         }
11125 
11126         Device (RP09)
11127         {
11128             Name (LTRZ, 0x00)
11129             Name (LMSL, 0x00)
11130             Name (LNSL, 0x00)
11131             Name (RID, 0x00)
11132             Method (_ADR, 0, NotSerialized)  // _ADR: Address
11133             {
11134                 If ((RPA9 != 0x00))
11135                 {
11136                     Return (RPA9) /* \RPA9 */
11137                 }
11138                 Else
11139                 {
11140                     Return (0x001D0000)
11141                 }
11142             }
11143 
11144             Name (SLOT, 0x09)
11145             Method (_INI, 0, NotSerialized)  // _INI: Initialize
11146             {
11147                 If (PRES ())
11148                 {
11149                     LTRZ = LTR9 /* \LTR9 */
11150                     LMSL = PML9 /* \PML9 */
11151                     LNSL = PNL9 /* \PNL9 */
11152                     If (CondRefOf (PINI))
11153                     {
11154                         PINI ()
11155                     }
11156                 }
11157             }
11158 
11159             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
11160             Field (PXCS, AnyAcc, NoLock, Preserve)
11161             {
11162                 VDID,   32, 
11163                 Offset (0x50), 
11164                 L0SE,   1, 
11165                 Offset (0x52), 
11166                     ,   13, 
11167                 LASX,   1, 
11168                 Offset (0x5A), 
11169                     ,   3, 
11170                 PDCX,   1, 
11171                     ,   2, 
11172                 PDSX,   1, 
11173                 Offset (0x5B), 
11174                 Offset (0x60), 
11175                 Offset (0x62), 
11176                 PSPX,   1, 
11177                 Offset (0xD8), 
11178                     ,   30, 
11179                 HPEX,   1, 
11180                 PMEX,   1, 
11181                 Offset (0xE0), 
11182                     ,   7, 
11183                 NCB7,   1, 
11184                 Offset (0xE2), 
11185                     ,   2, 
11186                 L23E,   1, 
11187                 L23R,   1, 
11188                 Offset (0x420), 
11189                     ,   30, 
11190                 DPGE,   1
11191             }
11192 
11193             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
11194             {
11195                 Offset (0xDC), 
11196                     ,   30, 
11197                 HPSX,   1, 
11198                 PMSX,   1
11199             }
11200 
11201             Method (L23D, 0, Serialized)
11202             {
11203                 If ((NCB7 != 0x01))
11204                 {
11205                     Return (Zero)
11206                 }
11207 
11208                 DPGE = 0x00
11209                 L23R = 0x01
11210                 Local0 = 0x00
11211                 While (L23R)
11212                 {
11213                     If ((Local0 > 0x04))
11214                     {
11215                         Break
11216                     }
11217 
11218                     Sleep (0x10)
11219                     Local0++
11220                 }
11221 
11222                 NCB7 = 0x00
11223                 DPGE = 0x01
11224                 Local0 = 0x00
11225                 While ((LASX == 0x00))
11226                 {
11227                     If ((Local0 > 0x08))
11228                     {
11229                         Break
11230                     }
11231 
11232                     Sleep (0x10)
11233                     Local0++
11234                 }
11235             }
11236 
11237             Method (DL23, 0, Serialized)
11238             {
11239                 L23E = 0x01
11240                 Sleep (0x10)
11241                 Local0 = 0x00
11242                 While (L23E)
11243                 {
11244                     If ((Local0 > 0x04))
11245                     {
11246                         Break
11247                     }
11248 
11249                     Sleep (0x10)
11250                     Local0++
11251                 }
11252 
11253                 NCB7 = 0x01
11254             }
11255 
11256             Name (LTRV, Package (0x04)
11257             {
11258                 0x00, 
11259                 0x00, 
11260                 0x00, 
11261                 0x00
11262             })
11263             Method (PRES, 0, NotSerialized)
11264             {
11265                 If ((VDID == 0xFFFFFFFF))
11266                 {
11267                     Return (0x00)
11268                 }
11269                 Else
11270                 {
11271                     Return (0x01)
11272                 }
11273             }
11274 
11275             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
11276             {
11277                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
11278                 {
11279                     Switch (ToInteger (Arg2))
11280                     {
11281                         Case (0x00)
11282                         {
11283                             Name (OPTS, Buffer (0x02)
11284                             {
11285                                  0x00, 0x00                                       // ..
11286                             })
11287                             CreateBitField (OPTS, 0x00, FUN0)
11288                             CreateBitField (OPTS, 0x04, FUN4)
11289                             CreateBitField (OPTS, 0x06, FUN6)
11290                             CreateBitField (OPTS, 0x08, FUN8)
11291                             CreateBitField (OPTS, 0x09, FUN9)
11292                             CreateBitField (OPTS, 0x0A, FUNA)
11293                             CreateBitField (OPTS, 0x0B, FUNB)
11294                             If ((Arg1 >= 0x02))
11295                             {
11296                                 FUN0 = 0x01
11297                                 If (LTRE)
11298                                 {
11299                                     FUN6 = 0x01
11300                                 }
11301 
11302                                 If (CondRefOf (ECR1))
11303                                 {
11304                                     If ((ECR1 == 0x01))
11305                                     {
11306                                         If ((Arg1 >= 0x03))
11307                                         {
11308                                             FUN8 = 0x01
11309                                             FUN9 = 0x01
11310                                         }
11311                                     }
11312                                 }
11313                             }
11314 
11315                             If ((Arg1 >= 0x04))
11316                             {
11317                                 If (CondRefOf (PPBA))
11318                                 {
11319                                     FUNA = 0x01
11320                                 }
11321 
11322                                 If (CondRefOf (UPRD))
11323                                 {
11324                                     FUNB = 0x01
11325                                 }
11326                             }
11327 
11328                             Return (OPTS) /* \_SB_.PCI0.RP09._DSM.OPTS */
11329                         }
11330                         Case (0x06)
11331                         {
11332                             If ((Arg1 >= 0x02))
11333                             {
11334                                 If (LTRZ)
11335                                 {
11336                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
11337                                     LTRV [0x01] = (LMSL & 0x03FF)
11338                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
11339                                     LTRV [0x03] = (LNSL & 0x03FF)
11340                                     Return (LTRV) /* \_SB_.PCI0.RP09.LTRV */
11341                                 }
11342                                 Else
11343                                 {
11344                                     Return (0x00)
11345                                 }
11346                             }
11347                         }
11348                         Case (0x08)
11349                         {
11350                             If (CondRefOf (ECR1))
11351                             {
11352                                 If ((ECR1 == 0x01))
11353                                 {
11354                                     If ((Arg1 >= 0x03))
11355                                     {
11356                                         Return (0x01)
11357                                     }
11358                                 }
11359                             }
11360                         }
11361                         Case (0x09)
11362                         {
11363                             If (CondRefOf (ECR1))
11364                             {
11365                                 If ((ECR1 == 0x01))
11366                                 {
11367                                     If ((Arg1 >= 0x03))
11368                                     {
11369                                         Return (Package (0x05)
11370                                         {
11371                                             0xC350, 
11372                                             Ones, 
11373                                             Ones, 
11374                                             0xC350, 
11375                                             Ones
11376                                         })
11377                                     }
11378                                 }
11379                             }
11380                         }
11381                         Case (0x0A)
11382                         {
11383                             If (CondRefOf (PPBA))
11384                             {
11385                                 Return (PPBA (Arg3))
11386                             }
11387                         }
11388                         Case (0x0B)
11389                         {
11390                             If (CondRefOf (UPRD))
11391                             {
11392                                 Return (UPRD (Arg3))
11393                             }
11394                         }
11395 
11396                     }
11397                 }
11398 
11399                 Return (Buffer (0x01)
11400                 {
11401                      0x00                                             // .
11402                 })
11403             }
11404 
11405             Device (PXSX)
11406             {
11407                 Name (_ADR, 0x00)  // _ADR: Address
11408                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
11409                 {
11410                     Return (GPRW (0x69, 0x04))
11411                 }
11412             }
11413 
11414             Method (HPME, 0, Serialized)
11415             {
11416                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
11417                 {
11418                     Notify (PXSX, 0x02) // Device Wake
11419                     PMSX = 0x01
11420                     PSPX = 0x01
11421                 }
11422             }
11423 
11424             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
11425             {
11426                 If (CondRefOf (\_SB.PCI0.RP09.PPRW))
11427                 {
11428                     Return (\_SB.PCI0.RP09.PPRW ())
11429                 }
11430 
11431                 Return (GPRW (0x69, 0x04))
11432             }
11433 
11434             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
11435             {
11436                 If (CondRefOf (PICM))
11437                 {
11438                     If (PICM)
11439                     {
11440                         Return (AR04 ())
11441                     }
11442                 }
11443 
11444                 Return (PD04 ())
11445             }
11446         }
11447 
11448         Device (RP10)
11449         {
11450             Name (LTRZ, 0x00)
11451             Name (LMSL, 0x00)
11452             Name (LNSL, 0x00)
11453             Name (RID, 0x00)
11454             Method (_ADR, 0, NotSerialized)  // _ADR: Address
11455             {
11456                 If ((RPAA != 0x00))
11457                 {
11458                     Return (RPAA) /* \RPAA */
11459                 }
11460                 Else
11461                 {
11462                     Return (0x001D0001)
11463                 }
11464             }
11465 
11466             Name (SLOT, 0x0A)
11467             Method (_INI, 0, NotSerialized)  // _INI: Initialize
11468             {
11469                 If (PRES ())
11470                 {
11471                     LTRZ = LTRA /* \LTRA */
11472                     LMSL = PMLA /* \PMLA */
11473                     LNSL = PNLA /* \PNLA */
11474                     If (CondRefOf (PINI))
11475                     {
11476                         PINI ()
11477                     }
11478                 }
11479             }
11480 
11481             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
11482             Field (PXCS, AnyAcc, NoLock, Preserve)
11483             {
11484                 VDID,   32, 
11485                 Offset (0x50), 
11486                 L0SE,   1, 
11487                 Offset (0x52), 
11488                     ,   13, 
11489                 LASX,   1, 
11490                 Offset (0x5A), 
11491                     ,   3, 
11492                 PDCX,   1, 
11493                     ,   2, 
11494                 PDSX,   1, 
11495                 Offset (0x5B), 
11496                 Offset (0x60), 
11497                 Offset (0x62), 
11498                 PSPX,   1, 
11499                 Offset (0xD8), 
11500                     ,   30, 
11501                 HPEX,   1, 
11502                 PMEX,   1, 
11503                 Offset (0xE0), 
11504                     ,   7, 
11505                 NCB7,   1, 
11506                 Offset (0xE2), 
11507                     ,   2, 
11508                 L23E,   1, 
11509                 L23R,   1, 
11510                 Offset (0x420), 
11511                     ,   30, 
11512                 DPGE,   1
11513             }
11514 
11515             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
11516             {
11517                 Offset (0xDC), 
11518                     ,   30, 
11519                 HPSX,   1, 
11520                 PMSX,   1
11521             }
11522 
11523             Method (L23D, 0, Serialized)
11524             {
11525                 If ((NCB7 != 0x01))
11526                 {
11527                     Return (Zero)
11528                 }
11529 
11530                 DPGE = 0x00
11531                 L23R = 0x01
11532                 Local0 = 0x00
11533                 While (L23R)
11534                 {
11535                     If ((Local0 > 0x04))
11536                     {
11537                         Break
11538                     }
11539 
11540                     Sleep (0x10)
11541                     Local0++
11542                 }
11543 
11544                 NCB7 = 0x00
11545                 DPGE = 0x01
11546                 Local0 = 0x00
11547                 While ((LASX == 0x00))
11548                 {
11549                     If ((Local0 > 0x08))
11550                     {
11551                         Break
11552                     }
11553 
11554                     Sleep (0x10)
11555                     Local0++
11556                 }
11557             }
11558 
11559             Method (DL23, 0, Serialized)
11560             {
11561                 L23E = 0x01
11562                 Sleep (0x10)
11563                 Local0 = 0x00
11564                 While (L23E)
11565                 {
11566                     If ((Local0 > 0x04))
11567                     {
11568                         Break
11569                     }
11570 
11571                     Sleep (0x10)
11572                     Local0++
11573                 }
11574 
11575                 NCB7 = 0x01
11576             }
11577 
11578             Name (LTRV, Package (0x04)
11579             {
11580                 0x00, 
11581                 0x00, 
11582                 0x00, 
11583                 0x00
11584             })
11585             Method (PRES, 0, NotSerialized)
11586             {
11587                 If ((VDID == 0xFFFFFFFF))
11588                 {
11589                     Return (0x00)
11590                 }
11591                 Else
11592                 {
11593                     Return (0x01)
11594                 }
11595             }
11596 
11597             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
11598             {
11599                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
11600                 {
11601                     Switch (ToInteger (Arg2))
11602                     {
11603                         Case (0x00)
11604                         {
11605                             Name (OPTS, Buffer (0x02)
11606                             {
11607                                  0x00, 0x00                                       // ..
11608                             })
11609                             CreateBitField (OPTS, 0x00, FUN0)
11610                             CreateBitField (OPTS, 0x04, FUN4)
11611                             CreateBitField (OPTS, 0x06, FUN6)
11612                             CreateBitField (OPTS, 0x08, FUN8)
11613                             CreateBitField (OPTS, 0x09, FUN9)
11614                             CreateBitField (OPTS, 0x0A, FUNA)
11615                             CreateBitField (OPTS, 0x0B, FUNB)
11616                             If ((Arg1 >= 0x02))
11617                             {
11618                                 FUN0 = 0x01
11619                                 If (LTRE)
11620                                 {
11621                                     FUN6 = 0x01
11622                                 }
11623 
11624                                 If (CondRefOf (ECR1))
11625                                 {
11626                                     If ((ECR1 == 0x01))
11627                                     {
11628                                         If ((Arg1 >= 0x03))
11629                                         {
11630                                             FUN8 = 0x01
11631                                             FUN9 = 0x01
11632                                         }
11633                                     }
11634                                 }
11635                             }
11636 
11637                             If ((Arg1 >= 0x04))
11638                             {
11639                                 If (CondRefOf (PPBA))
11640                                 {
11641                                     FUNA = 0x01
11642                                 }
11643 
11644                                 If (CondRefOf (UPRD))
11645                                 {
11646                                     FUNB = 0x01
11647                                 }
11648                             }
11649 
11650                             Return (OPTS) /* \_SB_.PCI0.RP10._DSM.OPTS */
11651                         }
11652                         Case (0x06)
11653                         {
11654                             If ((Arg1 >= 0x02))
11655                             {
11656                                 If (LTRZ)
11657                                 {
11658                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
11659                                     LTRV [0x01] = (LMSL & 0x03FF)
11660                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
11661                                     LTRV [0x03] = (LNSL & 0x03FF)
11662                                     Return (LTRV) /* \_SB_.PCI0.RP10.LTRV */
11663                                 }
11664                                 Else
11665                                 {
11666                                     Return (0x00)
11667                                 }
11668                             }
11669                         }
11670                         Case (0x08)
11671                         {
11672                             If (CondRefOf (ECR1))
11673                             {
11674                                 If ((ECR1 == 0x01))
11675                                 {
11676                                     If ((Arg1 >= 0x03))
11677                                     {
11678                                         Return (0x01)
11679                                     }
11680                                 }
11681                             }
11682                         }
11683                         Case (0x09)
11684                         {
11685                             If (CondRefOf (ECR1))
11686                             {
11687                                 If ((ECR1 == 0x01))
11688                                 {
11689                                     If ((Arg1 >= 0x03))
11690                                     {
11691                                         Return (Package (0x05)
11692                                         {
11693                                             0xC350, 
11694                                             Ones, 
11695                                             Ones, 
11696                                             0xC350, 
11697                                             Ones
11698                                         })
11699                                     }
11700                                 }
11701                             }
11702                         }
11703                         Case (0x0A)
11704                         {
11705                             If (CondRefOf (PPBA))
11706                             {
11707                                 Return (PPBA (Arg3))
11708                             }
11709                         }
11710                         Case (0x0B)
11711                         {
11712                             If (CondRefOf (UPRD))
11713                             {
11714                                 Return (UPRD (Arg3))
11715                             }
11716                         }
11717 
11718                     }
11719                 }
11720 
11721                 Return (Buffer (0x01)
11722                 {
11723                      0x00                                             // .
11724                 })
11725             }
11726 
11727             Device (PXSX)
11728             {
11729                 Name (_ADR, 0x00)  // _ADR: Address
11730                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
11731                 {
11732                     Return (GPRW (0x69, 0x04))
11733                 }
11734             }
11735 
11736             Method (HPME, 0, Serialized)
11737             {
11738                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
11739                 {
11740                     Notify (PXSX, 0x02) // Device Wake
11741                     PMSX = 0x01
11742                     PSPX = 0x01
11743                 }
11744             }
11745 
11746             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
11747             {
11748                 If (CondRefOf (\_SB.PCI0.RP10.PPRW))
11749                 {
11750                     Return (\_SB.PCI0.RP10.PPRW ())
11751                 }
11752 
11753                 Return (GPRW (0x69, 0x04))
11754             }
11755 
11756             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
11757             {
11758                 If (CondRefOf (PICM))
11759                 {
11760                     If (PICM)
11761                     {
11762                         Return (AR05 ())
11763                     }
11764                 }
11765 
11766                 Return (PD05 ())
11767             }
11768         }
11769 
11770         Device (RP11)
11771         {
11772             Name (LTRZ, 0x00)
11773             Name (LMSL, 0x00)
11774             Name (LNSL, 0x00)
11775             Name (RID, 0x00)
11776             Method (_ADR, 0, NotSerialized)  // _ADR: Address
11777             {
11778                 If ((RPAB != 0x00))
11779                 {
11780                     Return (RPAB) /* \RPAB */
11781                 }
11782                 Else
11783                 {
11784                     Return (0x001D0002)
11785                 }
11786             }
11787 
11788             Name (SLOT, 0x0B)
11789             Method (_INI, 0, NotSerialized)  // _INI: Initialize
11790             {
11791                 If (PRES ())
11792                 {
11793                     LTRZ = LTRB /* \LTRB */
11794                     LMSL = PMLB /* \PMLB */
11795                     LNSL = PNLB /* \PNLB */
11796                     If (CondRefOf (PINI))
11797                     {
11798                         PINI ()
11799                     }
11800                 }
11801             }
11802 
11803             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
11804             Field (PXCS, AnyAcc, NoLock, Preserve)
11805             {
11806                 VDID,   32, 
11807                 Offset (0x50), 
11808                 L0SE,   1, 
11809                 Offset (0x52), 
11810                     ,   13, 
11811                 LASX,   1, 
11812                 Offset (0x5A), 
11813                     ,   3, 
11814                 PDCX,   1, 
11815                     ,   2, 
11816                 PDSX,   1, 
11817                 Offset (0x5B), 
11818                 Offset (0x60), 
11819                 Offset (0x62), 
11820                 PSPX,   1, 
11821                 Offset (0xD8), 
11822                     ,   30, 
11823                 HPEX,   1, 
11824                 PMEX,   1, 
11825                 Offset (0xE0), 
11826                     ,   7, 
11827                 NCB7,   1, 
11828                 Offset (0xE2), 
11829                     ,   2, 
11830                 L23E,   1, 
11831                 L23R,   1, 
11832                 Offset (0x420), 
11833                     ,   30, 
11834                 DPGE,   1
11835             }
11836 
11837             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
11838             {
11839                 Offset (0xDC), 
11840                     ,   30, 
11841                 HPSX,   1, 
11842                 PMSX,   1
11843             }
11844 
11845             Method (L23D, 0, Serialized)
11846             {
11847                 If ((NCB7 != 0x01))
11848                 {
11849                     Return (Zero)
11850                 }
11851 
11852                 DPGE = 0x00
11853                 L23R = 0x01
11854                 Local0 = 0x00
11855                 While (L23R)
11856                 {
11857                     If ((Local0 > 0x04))
11858                     {
11859                         Break
11860                     }
11861 
11862                     Sleep (0x10)
11863                     Local0++
11864                 }
11865 
11866                 NCB7 = 0x00
11867                 DPGE = 0x01
11868                 Local0 = 0x00
11869                 While ((LASX == 0x00))
11870                 {
11871                     If ((Local0 > 0x08))
11872                     {
11873                         Break
11874                     }
11875 
11876                     Sleep (0x10)
11877                     Local0++
11878                 }
11879             }
11880 
11881             Method (DL23, 0, Serialized)
11882             {
11883                 L23E = 0x01
11884                 Sleep (0x10)
11885                 Local0 = 0x00
11886                 While (L23E)
11887                 {
11888                     If ((Local0 > 0x04))
11889                     {
11890                         Break
11891                     }
11892 
11893                     Sleep (0x10)
11894                     Local0++
11895                 }
11896 
11897                 NCB7 = 0x01
11898             }
11899 
11900             Name (LTRV, Package (0x04)
11901             {
11902                 0x00, 
11903                 0x00, 
11904                 0x00, 
11905                 0x00
11906             })
11907             Method (PRES, 0, NotSerialized)
11908             {
11909                 If ((VDID == 0xFFFFFFFF))
11910                 {
11911                     Return (0x00)
11912                 }
11913                 Else
11914                 {
11915                     Return (0x01)
11916                 }
11917             }
11918 
11919             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
11920             {
11921                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
11922                 {
11923                     Switch (ToInteger (Arg2))
11924                     {
11925                         Case (0x00)
11926                         {
11927                             Name (OPTS, Buffer (0x02)
11928                             {
11929                                  0x00, 0x00                                       // ..
11930                             })
11931                             CreateBitField (OPTS, 0x00, FUN0)
11932                             CreateBitField (OPTS, 0x04, FUN4)
11933                             CreateBitField (OPTS, 0x06, FUN6)
11934                             CreateBitField (OPTS, 0x08, FUN8)
11935                             CreateBitField (OPTS, 0x09, FUN9)
11936                             CreateBitField (OPTS, 0x0A, FUNA)
11937                             CreateBitField (OPTS, 0x0B, FUNB)
11938                             If ((Arg1 >= 0x02))
11939                             {
11940                                 FUN0 = 0x01
11941                                 If (LTRE)
11942                                 {
11943                                     FUN6 = 0x01
11944                                 }
11945 
11946                                 If (CondRefOf (ECR1))
11947                                 {
11948                                     If ((ECR1 == 0x01))
11949                                     {
11950                                         If ((Arg1 >= 0x03))
11951                                         {
11952                                             FUN8 = 0x01
11953                                             FUN9 = 0x01
11954                                         }
11955                                     }
11956                                 }
11957                             }
11958 
11959                             If ((Arg1 >= 0x04))
11960                             {
11961                                 If (CondRefOf (PPBA))
11962                                 {
11963                                     FUNA = 0x01
11964                                 }
11965 
11966                                 If (CondRefOf (UPRD))
11967                                 {
11968                                     FUNB = 0x01
11969                                 }
11970                             }
11971 
11972                             Return (OPTS) /* \_SB_.PCI0.RP11._DSM.OPTS */
11973                         }
11974                         Case (0x06)
11975                         {
11976                             If ((Arg1 >= 0x02))
11977                             {
11978                                 If (LTRZ)
11979                                 {
11980                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
11981                                     LTRV [0x01] = (LMSL & 0x03FF)
11982                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
11983                                     LTRV [0x03] = (LNSL & 0x03FF)
11984                                     Return (LTRV) /* \_SB_.PCI0.RP11.LTRV */
11985                                 }
11986                                 Else
11987                                 {
11988                                     Return (0x00)
11989                                 }
11990                             }
11991                         }
11992                         Case (0x08)
11993                         {
11994                             If (CondRefOf (ECR1))
11995                             {
11996                                 If ((ECR1 == 0x01))
11997                                 {
11998                                     If ((Arg1 >= 0x03))
11999                                     {
12000                                         Return (0x01)
12001                                     }
12002                                 }
12003                             }
12004                         }
12005                         Case (0x09)
12006                         {
12007                             If (CondRefOf (ECR1))
12008                             {
12009                                 If ((ECR1 == 0x01))
12010                                 {
12011                                     If ((Arg1 >= 0x03))
12012                                     {
12013                                         Return (Package (0x05)
12014                                         {
12015                                             0xC350, 
12016                                             Ones, 
12017                                             Ones, 
12018                                             0xC350, 
12019                                             Ones
12020                                         })
12021                                     }
12022                                 }
12023                             }
12024                         }
12025                         Case (0x0A)
12026                         {
12027                             If (CondRefOf (PPBA))
12028                             {
12029                                 Return (PPBA (Arg3))
12030                             }
12031                         }
12032                         Case (0x0B)
12033                         {
12034                             If (CondRefOf (UPRD))
12035                             {
12036                                 Return (UPRD (Arg3))
12037                             }
12038                         }
12039 
12040                     }
12041                 }
12042 
12043                 Return (Buffer (0x01)
12044                 {
12045                      0x00                                             // .
12046                 })
12047             }
12048 
12049             Device (PXSX)
12050             {
12051                 Name (_ADR, 0x00)  // _ADR: Address
12052                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
12053                 {
12054                     Return (GPRW (0x69, 0x04))
12055                 }
12056             }
12057 
12058             Method (HPME, 0, Serialized)
12059             {
12060                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
12061                 {
12062                     Notify (PXSX, 0x02) // Device Wake
12063                     PMSX = 0x01
12064                     PSPX = 0x01
12065                 }
12066             }
12067 
12068             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
12069             {
12070                 If (CondRefOf (\_SB.PCI0.RP11.PPRW))
12071                 {
12072                     Return (\_SB.PCI0.RP11.PPRW ())
12073                 }
12074 
12075                 Return (GPRW (0x69, 0x04))
12076             }
12077 
12078             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
12079             {
12080                 If (CondRefOf (PICM))
12081                 {
12082                     If (PICM)
12083                     {
12084                         Return (AR06 ())
12085                     }
12086                 }
12087 
12088                 Return (PD06 ())
12089             }
12090         }
12091 
12092         Device (RP12)
12093         {
12094             Name (LTRZ, 0x00)
12095             Name (LMSL, 0x00)
12096             Name (LNSL, 0x00)
12097             Name (RID, 0x00)
12098             Method (_ADR, 0, NotSerialized)  // _ADR: Address
12099             {
12100                 If ((RPAC != 0x00))
12101                 {
12102                     Return (RPAC) /* \RPAC */
12103                 }
12104                 Else
12105                 {
12106                     Return (0x001D0003)
12107                 }
12108             }
12109 
12110             Name (SLOT, 0x0C)
12111             Method (_INI, 0, NotSerialized)  // _INI: Initialize
12112             {
12113                 If (PRES ())
12114                 {
12115                     LTRZ = LTRC /* \LTRC */
12116                     LMSL = PMLC /* \PMLC */
12117                     LNSL = PNLC /* \PNLC */
12118                     If (CondRefOf (PINI))
12119                     {
12120                         PINI ()
12121                     }
12122                 }
12123             }
12124 
12125             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
12126             Field (PXCS, AnyAcc, NoLock, Preserve)
12127             {
12128                 VDID,   32, 
12129                 Offset (0x50), 
12130                 L0SE,   1, 
12131                 Offset (0x52), 
12132                     ,   13, 
12133                 LASX,   1, 
12134                 Offset (0x5A), 
12135                     ,   3, 
12136                 PDCX,   1, 
12137                     ,   2, 
12138                 PDSX,   1, 
12139                 Offset (0x5B), 
12140                 Offset (0x60), 
12141                 Offset (0x62), 
12142                 PSPX,   1, 
12143                 Offset (0xD8), 
12144                     ,   30, 
12145                 HPEX,   1, 
12146                 PMEX,   1, 
12147                 Offset (0xE0), 
12148                     ,   7, 
12149                 NCB7,   1, 
12150                 Offset (0xE2), 
12151                     ,   2, 
12152                 L23E,   1, 
12153                 L23R,   1, 
12154                 Offset (0x420), 
12155                     ,   30, 
12156                 DPGE,   1
12157             }
12158 
12159             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
12160             {
12161                 Offset (0xDC), 
12162                     ,   30, 
12163                 HPSX,   1, 
12164                 PMSX,   1
12165             }
12166 
12167             Method (L23D, 0, Serialized)
12168             {
12169                 If ((NCB7 != 0x01))
12170                 {
12171                     Return (Zero)
12172                 }
12173 
12174                 DPGE = 0x00
12175                 L23R = 0x01
12176                 Local0 = 0x00
12177                 While (L23R)
12178                 {
12179                     If ((Local0 > 0x04))
12180                     {
12181                         Break
12182                     }
12183 
12184                     Sleep (0x10)
12185                     Local0++
12186                 }
12187 
12188                 NCB7 = 0x00
12189                 DPGE = 0x01
12190                 Local0 = 0x00
12191                 While ((LASX == 0x00))
12192                 {
12193                     If ((Local0 > 0x08))
12194                     {
12195                         Break
12196                     }
12197 
12198                     Sleep (0x10)
12199                     Local0++
12200                 }
12201             }
12202 
12203             Method (DL23, 0, Serialized)
12204             {
12205                 L23E = 0x01
12206                 Sleep (0x10)
12207                 Local0 = 0x00
12208                 While (L23E)
12209                 {
12210                     If ((Local0 > 0x04))
12211                     {
12212                         Break
12213                     }
12214 
12215                     Sleep (0x10)
12216                     Local0++
12217                 }
12218 
12219                 NCB7 = 0x01
12220             }
12221 
12222             Name (LTRV, Package (0x04)
12223             {
12224                 0x00, 
12225                 0x00, 
12226                 0x00, 
12227                 0x00
12228             })
12229             Method (PRES, 0, NotSerialized)
12230             {
12231                 If ((VDID == 0xFFFFFFFF))
12232                 {
12233                     Return (0x00)
12234                 }
12235                 Else
12236                 {
12237                     Return (0x01)
12238                 }
12239             }
12240 
12241             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
12242             {
12243                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
12244                 {
12245                     Switch (ToInteger (Arg2))
12246                     {
12247                         Case (0x00)
12248                         {
12249                             Name (OPTS, Buffer (0x02)
12250                             {
12251                                  0x00, 0x00                                       // ..
12252                             })
12253                             CreateBitField (OPTS, 0x00, FUN0)
12254                             CreateBitField (OPTS, 0x04, FUN4)
12255                             CreateBitField (OPTS, 0x06, FUN6)
12256                             CreateBitField (OPTS, 0x08, FUN8)
12257                             CreateBitField (OPTS, 0x09, FUN9)
12258                             CreateBitField (OPTS, 0x0A, FUNA)
12259                             CreateBitField (OPTS, 0x0B, FUNB)
12260                             If ((Arg1 >= 0x02))
12261                             {
12262                                 FUN0 = 0x01
12263                                 If (LTRE)
12264                                 {
12265                                     FUN6 = 0x01
12266                                 }
12267 
12268                                 If (CondRefOf (ECR1))
12269                                 {
12270                                     If ((ECR1 == 0x01))
12271                                     {
12272                                         If ((Arg1 >= 0x03))
12273                                         {
12274                                             FUN8 = 0x01
12275                                             FUN9 = 0x01
12276                                         }
12277                                     }
12278                                 }
12279                             }
12280 
12281                             If ((Arg1 >= 0x04))
12282                             {
12283                                 If (CondRefOf (PPBA))
12284                                 {
12285                                     FUNA = 0x01
12286                                 }
12287 
12288                                 If (CondRefOf (UPRD))
12289                                 {
12290                                     FUNB = 0x01
12291                                 }
12292                             }
12293 
12294                             Return (OPTS) /* \_SB_.PCI0.RP12._DSM.OPTS */
12295                         }
12296                         Case (0x06)
12297                         {
12298                             If ((Arg1 >= 0x02))
12299                             {
12300                                 If (LTRZ)
12301                                 {
12302                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
12303                                     LTRV [0x01] = (LMSL & 0x03FF)
12304                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
12305                                     LTRV [0x03] = (LNSL & 0x03FF)
12306                                     Return (LTRV) /* \_SB_.PCI0.RP12.LTRV */
12307                                 }
12308                                 Else
12309                                 {
12310                                     Return (0x00)
12311                                 }
12312                             }
12313                         }
12314                         Case (0x08)
12315                         {
12316                             If (CondRefOf (ECR1))
12317                             {
12318                                 If ((ECR1 == 0x01))
12319                                 {
12320                                     If ((Arg1 >= 0x03))
12321                                     {
12322                                         Return (0x01)
12323                                     }
12324                                 }
12325                             }
12326                         }
12327                         Case (0x09)
12328                         {
12329                             If (CondRefOf (ECR1))
12330                             {
12331                                 If ((ECR1 == 0x01))
12332                                 {
12333                                     If ((Arg1 >= 0x03))
12334                                     {
12335                                         Return (Package (0x05)
12336                                         {
12337                                             0xC350, 
12338                                             Ones, 
12339                                             Ones, 
12340                                             0xC350, 
12341                                             Ones
12342                                         })
12343                                     }
12344                                 }
12345                             }
12346                         }
12347                         Case (0x0A)
12348                         {
12349                             If (CondRefOf (PPBA))
12350                             {
12351                                 Return (PPBA (Arg3))
12352                             }
12353                         }
12354                         Case (0x0B)
12355                         {
12356                             If (CondRefOf (UPRD))
12357                             {
12358                                 Return (UPRD (Arg3))
12359                             }
12360                         }
12361 
12362                     }
12363                 }
12364 
12365                 Return (Buffer (0x01)
12366                 {
12367                      0x00                                             // .
12368                 })
12369             }
12370 
12371             Device (PXSX)
12372             {
12373                 Name (_ADR, 0x00)  // _ADR: Address
12374                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
12375                 {
12376                     Return (GPRW (0x69, 0x04))
12377                 }
12378             }
12379 
12380             Method (HPME, 0, Serialized)
12381             {
12382                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
12383                 {
12384                     Notify (PXSX, 0x02) // Device Wake
12385                     PMSX = 0x01
12386                     PSPX = 0x01
12387                 }
12388             }
12389 
12390             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
12391             {
12392                 If (CondRefOf (\_SB.PCI0.RP12.PPRW))
12393                 {
12394                     Return (\_SB.PCI0.RP12.PPRW ())
12395                 }
12396 
12397                 Return (GPRW (0x69, 0x04))
12398             }
12399 
12400             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
12401             {
12402                 If (CondRefOf (PICM))
12403                 {
12404                     If (PICM)
12405                     {
12406                         Return (AR07 ())
12407                     }
12408                 }
12409 
12410                 Return (PD07 ())
12411             }
12412         }
12413 
12414         Device (RP13)
12415         {
12416             Name (LTRZ, 0x00)
12417             Name (LMSL, 0x00)
12418             Name (LNSL, 0x00)
12419             Name (RID, 0x00)
12420             Method (_ADR, 0, NotSerialized)  // _ADR: Address
12421             {
12422                 If ((RPAD != 0x00))
12423                 {
12424                     Return (RPAD) /* \RPAD */
12425                 }
12426                 Else
12427                 {
12428                     Return (0x001D0004)
12429                 }
12430             }
12431 
12432             Name (SLOT, 0x0D)
12433             Method (_INI, 0, NotSerialized)  // _INI: Initialize
12434             {
12435                 If (PRES ())
12436                 {
12437                     LTRZ = LTRD /* \LTRD */
12438                     LMSL = PMLD /* \PMLD */
12439                     LNSL = PNLD /* \PNLD */
12440                     If (CondRefOf (PINI))
12441                     {
12442                         PINI ()
12443                     }
12444                 }
12445             }
12446 
12447             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
12448             Field (PXCS, AnyAcc, NoLock, Preserve)
12449             {
12450                 VDID,   32, 
12451                 Offset (0x50), 
12452                 L0SE,   1, 
12453                 Offset (0x52), 
12454                     ,   13, 
12455                 LASX,   1, 
12456                 Offset (0x5A), 
12457                     ,   3, 
12458                 PDCX,   1, 
12459                     ,   2, 
12460                 PDSX,   1, 
12461                 Offset (0x5B), 
12462                 Offset (0x60), 
12463                 Offset (0x62), 
12464                 PSPX,   1, 
12465                 Offset (0xD8), 
12466                     ,   30, 
12467                 HPEX,   1, 
12468                 PMEX,   1, 
12469                 Offset (0xE0), 
12470                     ,   7, 
12471                 NCB7,   1, 
12472                 Offset (0xE2), 
12473                     ,   2, 
12474                 L23E,   1, 
12475                 L23R,   1, 
12476                 Offset (0x420), 
12477                     ,   30, 
12478                 DPGE,   1
12479             }
12480 
12481             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
12482             {
12483                 Offset (0xDC), 
12484                     ,   30, 
12485                 HPSX,   1, 
12486                 PMSX,   1
12487             }
12488 
12489             Method (L23D, 0, Serialized)
12490             {
12491                 If ((NCB7 != 0x01))
12492                 {
12493                     Return (Zero)
12494                 }
12495 
12496                 DPGE = 0x00
12497                 L23R = 0x01
12498                 Local0 = 0x00
12499                 While (L23R)
12500                 {
12501                     If ((Local0 > 0x04))
12502                     {
12503                         Break
12504                     }
12505 
12506                     Sleep (0x10)
12507                     Local0++
12508                 }
12509 
12510                 NCB7 = 0x00
12511                 DPGE = 0x01
12512                 Local0 = 0x00
12513                 While ((LASX == 0x00))
12514                 {
12515                     If ((Local0 > 0x08))
12516                     {
12517                         Break
12518                     }
12519 
12520                     Sleep (0x10)
12521                     Local0++
12522                 }
12523             }
12524 
12525             Method (DL23, 0, Serialized)
12526             {
12527                 L23E = 0x01
12528                 Sleep (0x10)
12529                 Local0 = 0x00
12530                 While (L23E)
12531                 {
12532                     If ((Local0 > 0x04))
12533                     {
12534                         Break
12535                     }
12536 
12537                     Sleep (0x10)
12538                     Local0++
12539                 }
12540 
12541                 NCB7 = 0x01
12542             }
12543 
12544             Name (LTRV, Package (0x04)
12545             {
12546                 0x00, 
12547                 0x00, 
12548                 0x00, 
12549                 0x00
12550             })
12551             Method (PRES, 0, NotSerialized)
12552             {
12553                 If ((VDID == 0xFFFFFFFF))
12554                 {
12555                     Return (0x00)
12556                 }
12557                 Else
12558                 {
12559                     Return (0x01)
12560                 }
12561             }
12562 
12563             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
12564             {
12565                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
12566                 {
12567                     Switch (ToInteger (Arg2))
12568                     {
12569                         Case (0x00)
12570                         {
12571                             Name (OPTS, Buffer (0x02)
12572                             {
12573                                  0x00, 0x00                                       // ..
12574                             })
12575                             CreateBitField (OPTS, 0x00, FUN0)
12576                             CreateBitField (OPTS, 0x04, FUN4)
12577                             CreateBitField (OPTS, 0x06, FUN6)
12578                             CreateBitField (OPTS, 0x08, FUN8)
12579                             CreateBitField (OPTS, 0x09, FUN9)
12580                             CreateBitField (OPTS, 0x0A, FUNA)
12581                             CreateBitField (OPTS, 0x0B, FUNB)
12582                             If ((Arg1 >= 0x02))
12583                             {
12584                                 FUN0 = 0x01
12585                                 If (LTRE)
12586                                 {
12587                                     FUN6 = 0x01
12588                                 }
12589 
12590                                 If (CondRefOf (ECR1))
12591                                 {
12592                                     If ((ECR1 == 0x01))
12593                                     {
12594                                         If ((Arg1 >= 0x03))
12595                                         {
12596                                             FUN8 = 0x01
12597                                             FUN9 = 0x01
12598                                         }
12599                                     }
12600                                 }
12601                             }
12602 
12603                             If ((Arg1 >= 0x04))
12604                             {
12605                                 If (CondRefOf (PPBA))
12606                                 {
12607                                     FUNA = 0x01
12608                                 }
12609 
12610                                 If (CondRefOf (UPRD))
12611                                 {
12612                                     FUNB = 0x01
12613                                 }
12614                             }
12615 
12616                             Return (OPTS) /* \_SB_.PCI0.RP13._DSM.OPTS */
12617                         }
12618                         Case (0x06)
12619                         {
12620                             If ((Arg1 >= 0x02))
12621                             {
12622                                 If (LTRZ)
12623                                 {
12624                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
12625                                     LTRV [0x01] = (LMSL & 0x03FF)
12626                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
12627                                     LTRV [0x03] = (LNSL & 0x03FF)
12628                                     Return (LTRV) /* \_SB_.PCI0.RP13.LTRV */
12629                                 }
12630                                 Else
12631                                 {
12632                                     Return (0x00)
12633                                 }
12634                             }
12635                         }
12636                         Case (0x08)
12637                         {
12638                             If (CondRefOf (ECR1))
12639                             {
12640                                 If ((ECR1 == 0x01))
12641                                 {
12642                                     If ((Arg1 >= 0x03))
12643                                     {
12644                                         Return (0x01)
12645                                     }
12646                                 }
12647                             }
12648                         }
12649                         Case (0x09)
12650                         {
12651                             If (CondRefOf (ECR1))
12652                             {
12653                                 If ((ECR1 == 0x01))
12654                                 {
12655                                     If ((Arg1 >= 0x03))
12656                                     {
12657                                         Return (Package (0x05)
12658                                         {
12659                                             0xC350, 
12660                                             Ones, 
12661                                             Ones, 
12662                                             0xC350, 
12663                                             Ones
12664                                         })
12665                                     }
12666                                 }
12667                             }
12668                         }
12669                         Case (0x0A)
12670                         {
12671                             If (CondRefOf (PPBA))
12672                             {
12673                                 Return (PPBA (Arg3))
12674                             }
12675                         }
12676                         Case (0x0B)
12677                         {
12678                             If (CondRefOf (UPRD))
12679                             {
12680                                 Return (UPRD (Arg3))
12681                             }
12682                         }
12683 
12684                     }
12685                 }
12686 
12687                 Return (Buffer (0x01)
12688                 {
12689                      0x00                                             // .
12690                 })
12691             }
12692 
12693             Device (PXSX)
12694             {
12695                 Name (_ADR, 0x00)  // _ADR: Address
12696                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
12697                 {
12698                     Return (GPRW (0x69, 0x04))
12699                 }
12700             }
12701 
12702             Method (HPME, 0, Serialized)
12703             {
12704                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
12705                 {
12706                     Notify (PXSX, 0x02) // Device Wake
12707                     PMSX = 0x01
12708                     PSPX = 0x01
12709                 }
12710             }
12711 
12712             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
12713             {
12714                 If (CondRefOf (\_SB.PCI0.RP13.PPRW))
12715                 {
12716                     Return (\_SB.PCI0.RP13.PPRW ())
12717                 }
12718 
12719                 Return (GPRW (0x69, 0x04))
12720             }
12721 
12722             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
12723             {
12724                 If (CondRefOf (PICM))
12725                 {
12726                     If (PICM)
12727                     {
12728                         Return (AR04 ())
12729                     }
12730                 }
12731 
12732                 Return (PD04 ())
12733             }
12734         }
12735 
12736         Device (RP14)
12737         {
12738             Name (LTRZ, 0x00)
12739             Name (LMSL, 0x00)
12740             Name (LNSL, 0x00)
12741             Name (RID, 0x00)
12742             Method (_ADR, 0, NotSerialized)  // _ADR: Address
12743             {
12744                 If ((RPAE != 0x00))
12745                 {
12746                     Return (RPAE) /* \RPAE */
12747                 }
12748                 Else
12749                 {
12750                     Return (0x001D0005)
12751                 }
12752             }
12753 
12754             Name (SLOT, 0x0E)
12755             Method (_INI, 0, NotSerialized)  // _INI: Initialize
12756             {
12757                 If (PRES ())
12758                 {
12759                     LTRZ = LTRE /* \LTRE */
12760                     LMSL = PMLE /* \PMLE */
12761                     LNSL = PNLE /* \PNLE */
12762                     If (CondRefOf (PINI))
12763                     {
12764                         PINI ()
12765                     }
12766                 }
12767             }
12768 
12769             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
12770             Field (PXCS, AnyAcc, NoLock, Preserve)
12771             {
12772                 VDID,   32, 
12773                 Offset (0x50), 
12774                 L0SE,   1, 
12775                 Offset (0x52), 
12776                     ,   13, 
12777                 LASX,   1, 
12778                 Offset (0x5A), 
12779                     ,   3, 
12780                 PDCX,   1, 
12781                     ,   2, 
12782                 PDSX,   1, 
12783                 Offset (0x5B), 
12784                 Offset (0x60), 
12785                 Offset (0x62), 
12786                 PSPX,   1, 
12787                 Offset (0xD8), 
12788                     ,   30, 
12789                 HPEX,   1, 
12790                 PMEX,   1, 
12791                 Offset (0xE0), 
12792                     ,   7, 
12793                 NCB7,   1, 
12794                 Offset (0xE2), 
12795                     ,   2, 
12796                 L23E,   1, 
12797                 L23R,   1, 
12798                 Offset (0x420), 
12799                     ,   30, 
12800                 DPGE,   1
12801             }
12802 
12803             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
12804             {
12805                 Offset (0xDC), 
12806                     ,   30, 
12807                 HPSX,   1, 
12808                 PMSX,   1
12809             }
12810 
12811             Method (L23D, 0, Serialized)
12812             {
12813                 If ((NCB7 != 0x01))
12814                 {
12815                     Return (Zero)
12816                 }
12817 
12818                 DPGE = 0x00
12819                 L23R = 0x01
12820                 Local0 = 0x00
12821                 While (L23R)
12822                 {
12823                     If ((Local0 > 0x04))
12824                     {
12825                         Break
12826                     }
12827 
12828                     Sleep (0x10)
12829                     Local0++
12830                 }
12831 
12832                 NCB7 = 0x00
12833                 DPGE = 0x01
12834                 Local0 = 0x00
12835                 While ((LASX == 0x00))
12836                 {
12837                     If ((Local0 > 0x08))
12838                     {
12839                         Break
12840                     }
12841 
12842                     Sleep (0x10)
12843                     Local0++
12844                 }
12845             }
12846 
12847             Method (DL23, 0, Serialized)
12848             {
12849                 L23E = 0x01
12850                 Sleep (0x10)
12851                 Local0 = 0x00
12852                 While (L23E)
12853                 {
12854                     If ((Local0 > 0x04))
12855                     {
12856                         Break
12857                     }
12858 
12859                     Sleep (0x10)
12860                     Local0++
12861                 }
12862 
12863                 NCB7 = 0x01
12864             }
12865 
12866             Name (LTRV, Package (0x04)
12867             {
12868                 0x00, 
12869                 0x00, 
12870                 0x00, 
12871                 0x00
12872             })
12873             Method (PRES, 0, NotSerialized)
12874             {
12875                 If ((VDID == 0xFFFFFFFF))
12876                 {
12877                     Return (0x00)
12878                 }
12879                 Else
12880                 {
12881                     Return (0x01)
12882                 }
12883             }
12884 
12885             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
12886             {
12887                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
12888                 {
12889                     Switch (ToInteger (Arg2))
12890                     {
12891                         Case (0x00)
12892                         {
12893                             Name (OPTS, Buffer (0x02)
12894                             {
12895                                  0x00, 0x00                                       // ..
12896                             })
12897                             CreateBitField (OPTS, 0x00, FUN0)
12898                             CreateBitField (OPTS, 0x04, FUN4)
12899                             CreateBitField (OPTS, 0x06, FUN6)
12900                             CreateBitField (OPTS, 0x08, FUN8)
12901                             CreateBitField (OPTS, 0x09, FUN9)
12902                             CreateBitField (OPTS, 0x0A, FUNA)
12903                             CreateBitField (OPTS, 0x0B, FUNB)
12904                             If ((Arg1 >= 0x02))
12905                             {
12906                                 FUN0 = 0x01
12907                                 If (LTRE)
12908                                 {
12909                                     FUN6 = 0x01
12910                                 }
12911 
12912                                 If (CondRefOf (ECR1))
12913                                 {
12914                                     If ((ECR1 == 0x01))
12915                                     {
12916                                         If ((Arg1 >= 0x03))
12917                                         {
12918                                             FUN8 = 0x01
12919                                             FUN9 = 0x01
12920                                         }
12921                                     }
12922                                 }
12923                             }
12924 
12925                             If ((Arg1 >= 0x04))
12926                             {
12927                                 If (CondRefOf (PPBA))
12928                                 {
12929                                     FUNA = 0x01
12930                                 }
12931 
12932                                 If (CondRefOf (UPRD))
12933                                 {
12934                                     FUNB = 0x01
12935                                 }
12936                             }
12937 
12938                             Return (OPTS) /* \_SB_.PCI0.RP14._DSM.OPTS */
12939                         }
12940                         Case (0x06)
12941                         {
12942                             If ((Arg1 >= 0x02))
12943                             {
12944                                 If (LTRZ)
12945                                 {
12946                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
12947                                     LTRV [0x01] = (LMSL & 0x03FF)
12948                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
12949                                     LTRV [0x03] = (LNSL & 0x03FF)
12950                                     Return (LTRV) /* \_SB_.PCI0.RP14.LTRV */
12951                                 }
12952                                 Else
12953                                 {
12954                                     Return (0x00)
12955                                 }
12956                             }
12957                         }
12958                         Case (0x08)
12959                         {
12960                             If (CondRefOf (ECR1))
12961                             {
12962                                 If ((ECR1 == 0x01))
12963                                 {
12964                                     If ((Arg1 >= 0x03))
12965                                     {
12966                                         Return (0x01)
12967                                     }
12968                                 }
12969                             }
12970                         }
12971                         Case (0x09)
12972                         {
12973                             If (CondRefOf (ECR1))
12974                             {
12975                                 If ((ECR1 == 0x01))
12976                                 {
12977                                     If ((Arg1 >= 0x03))
12978                                     {
12979                                         Return (Package (0x05)
12980                                         {
12981                                             0xC350, 
12982                                             Ones, 
12983                                             Ones, 
12984                                             0xC350, 
12985                                             Ones
12986                                         })
12987                                     }
12988                                 }
12989                             }
12990                         }
12991                         Case (0x0A)
12992                         {
12993                             If (CondRefOf (PPBA))
12994                             {
12995                                 Return (PPBA (Arg3))
12996                             }
12997                         }
12998                         Case (0x0B)
12999                         {
13000                             If (CondRefOf (UPRD))
13001                             {
13002                                 Return (UPRD (Arg3))
13003                             }
13004                         }
13005 
13006                     }
13007                 }
13008 
13009                 Return (Buffer (0x01)
13010                 {
13011                      0x00                                             // .
13012                 })
13013             }
13014 
13015             Device (PXSX)
13016             {
13017                 Name (_ADR, 0x00)  // _ADR: Address
13018                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
13019                 {
13020                     Return (GPRW (0x69, 0x04))
13021                 }
13022             }
13023 
13024             Method (HPME, 0, Serialized)
13025             {
13026                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
13027                 {
13028                     Notify (PXSX, 0x02) // Device Wake
13029                     PMSX = 0x01
13030                     PSPX = 0x01
13031                 }
13032             }
13033 
13034             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
13035             {
13036                 If (CondRefOf (\_SB.PCI0.RP14.PPRW))
13037                 {
13038                     Return (\_SB.PCI0.RP14.PPRW ())
13039                 }
13040 
13041                 Return (GPRW (0x69, 0x04))
13042             }
13043 
13044             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
13045             {
13046                 If (CondRefOf (PICM))
13047                 {
13048                     If (PICM)
13049                     {
13050                         Return (AR05 ())
13051                     }
13052                 }
13053 
13054                 Return (PD05 ())
13055             }
13056         }
13057 
13058         Device (RP15)
13059         {
13060             Name (LTRZ, 0x00)
13061             Name (LMSL, 0x00)
13062             Name (LNSL, 0x00)
13063             Name (RID, 0x00)
13064             Method (_ADR, 0, NotSerialized)  // _ADR: Address
13065             {
13066                 If ((RPAF != 0x00))
13067                 {
13068                     Return (RPAF) /* \RPAF */
13069                 }
13070                 Else
13071                 {
13072                     Return (0x001D0006)
13073                 }
13074             }
13075 
13076             Name (SLOT, 0x0F)
13077             Method (_INI, 0, NotSerialized)  // _INI: Initialize
13078             {
13079                 If (PRES ())
13080                 {
13081                     LTRZ = LTRF /* \LTRF */
13082                     LMSL = PMLF /* \PMLF */
13083                     LNSL = PNLF /* \PNLF */
13084                     If (CondRefOf (PINI))
13085                     {
13086                         PINI ()
13087                     }
13088                 }
13089             }
13090 
13091             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
13092             Field (PXCS, AnyAcc, NoLock, Preserve)
13093             {
13094                 VDID,   32, 
13095                 Offset (0x50), 
13096                 L0SE,   1, 
13097                 Offset (0x52), 
13098                     ,   13, 
13099                 LASX,   1, 
13100                 Offset (0x5A), 
13101                     ,   3, 
13102                 PDCX,   1, 
13103                     ,   2, 
13104                 PDSX,   1, 
13105                 Offset (0x5B), 
13106                 Offset (0x60), 
13107                 Offset (0x62), 
13108                 PSPX,   1, 
13109                 Offset (0xD8), 
13110                     ,   30, 
13111                 HPEX,   1, 
13112                 PMEX,   1, 
13113                 Offset (0xE0), 
13114                     ,   7, 
13115                 NCB7,   1, 
13116                 Offset (0xE2), 
13117                     ,   2, 
13118                 L23E,   1, 
13119                 L23R,   1, 
13120                 Offset (0x420), 
13121                     ,   30, 
13122                 DPGE,   1
13123             }
13124 
13125             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
13126             {
13127                 Offset (0xDC), 
13128                     ,   30, 
13129                 HPSX,   1, 
13130                 PMSX,   1
13131             }
13132 
13133             Method (L23D, 0, Serialized)
13134             {
13135                 If ((NCB7 != 0x01))
13136                 {
13137                     Return (Zero)
13138                 }
13139 
13140                 DPGE = 0x00
13141                 L23R = 0x01
13142                 Local0 = 0x00
13143                 While (L23R)
13144                 {
13145                     If ((Local0 > 0x04))
13146                     {
13147                         Break
13148                     }
13149 
13150                     Sleep (0x10)
13151                     Local0++
13152                 }
13153 
13154                 NCB7 = 0x00
13155                 DPGE = 0x01
13156                 Local0 = 0x00
13157                 While ((LASX == 0x00))
13158                 {
13159                     If ((Local0 > 0x08))
13160                     {
13161                         Break
13162                     }
13163 
13164                     Sleep (0x10)
13165                     Local0++
13166                 }
13167             }
13168 
13169             Method (DL23, 0, Serialized)
13170             {
13171                 L23E = 0x01
13172                 Sleep (0x10)
13173                 Local0 = 0x00
13174                 While (L23E)
13175                 {
13176                     If ((Local0 > 0x04))
13177                     {
13178                         Break
13179                     }
13180 
13181                     Sleep (0x10)
13182                     Local0++
13183                 }
13184 
13185                 NCB7 = 0x01
13186             }
13187 
13188             Name (LTRV, Package (0x04)
13189             {
13190                 0x00, 
13191                 0x00, 
13192                 0x00, 
13193                 0x00
13194             })
13195             Method (PRES, 0, NotSerialized)
13196             {
13197                 If ((VDID == 0xFFFFFFFF))
13198                 {
13199                     Return (0x00)
13200                 }
13201                 Else
13202                 {
13203                     Return (0x01)
13204                 }
13205             }
13206 
13207             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
13208             {
13209                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
13210                 {
13211                     Switch (ToInteger (Arg2))
13212                     {
13213                         Case (0x00)
13214                         {
13215                             Name (OPTS, Buffer (0x02)
13216                             {
13217                                  0x00, 0x00                                       // ..
13218                             })
13219                             CreateBitField (OPTS, 0x00, FUN0)
13220                             CreateBitField (OPTS, 0x04, FUN4)
13221                             CreateBitField (OPTS, 0x06, FUN6)
13222                             CreateBitField (OPTS, 0x08, FUN8)
13223                             CreateBitField (OPTS, 0x09, FUN9)
13224                             CreateBitField (OPTS, 0x0A, FUNA)
13225                             CreateBitField (OPTS, 0x0B, FUNB)
13226                             If ((Arg1 >= 0x02))
13227                             {
13228                                 FUN0 = 0x01
13229                                 If (LTRE)
13230                                 {
13231                                     FUN6 = 0x01
13232                                 }
13233 
13234                                 If (CondRefOf (ECR1))
13235                                 {
13236                                     If ((ECR1 == 0x01))
13237                                     {
13238                                         If ((Arg1 >= 0x03))
13239                                         {
13240                                             FUN8 = 0x01
13241                                             FUN9 = 0x01
13242                                         }
13243                                     }
13244                                 }
13245                             }
13246 
13247                             If ((Arg1 >= 0x04))
13248                             {
13249                                 If (CondRefOf (PPBA))
13250                                 {
13251                                     FUNA = 0x01
13252                                 }
13253 
13254                                 If (CondRefOf (UPRD))
13255                                 {
13256                                     FUNB = 0x01
13257                                 }
13258                             }
13259 
13260                             Return (OPTS) /* \_SB_.PCI0.RP15._DSM.OPTS */
13261                         }
13262                         Case (0x06)
13263                         {
13264                             If ((Arg1 >= 0x02))
13265                             {
13266                                 If (LTRZ)
13267                                 {
13268                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
13269                                     LTRV [0x01] = (LMSL & 0x03FF)
13270                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
13271                                     LTRV [0x03] = (LNSL & 0x03FF)
13272                                     Return (LTRV) /* \_SB_.PCI0.RP15.LTRV */
13273                                 }
13274                                 Else
13275                                 {
13276                                     Return (0x00)
13277                                 }
13278                             }
13279                         }
13280                         Case (0x08)
13281                         {
13282                             If (CondRefOf (ECR1))
13283                             {
13284                                 If ((ECR1 == 0x01))
13285                                 {
13286                                     If ((Arg1 >= 0x03))
13287                                     {
13288                                         Return (0x01)
13289                                     }
13290                                 }
13291                             }
13292                         }
13293                         Case (0x09)
13294                         {
13295                             If (CondRefOf (ECR1))
13296                             {
13297                                 If ((ECR1 == 0x01))
13298                                 {
13299                                     If ((Arg1 >= 0x03))
13300                                     {
13301                                         Return (Package (0x05)
13302                                         {
13303                                             0xC350, 
13304                                             Ones, 
13305                                             Ones, 
13306                                             0xC350, 
13307                                             Ones
13308                                         })
13309                                     }
13310                                 }
13311                             }
13312                         }
13313                         Case (0x0A)
13314                         {
13315                             If (CondRefOf (PPBA))
13316                             {
13317                                 Return (PPBA (Arg3))
13318                             }
13319                         }
13320                         Case (0x0B)
13321                         {
13322                             If (CondRefOf (UPRD))
13323                             {
13324                                 Return (UPRD (Arg3))
13325                             }
13326                         }
13327 
13328                     }
13329                 }
13330 
13331                 Return (Buffer (0x01)
13332                 {
13333                      0x00                                             // .
13334                 })
13335             }
13336 
13337             Device (PXSX)
13338             {
13339                 Name (_ADR, 0x00)  // _ADR: Address
13340                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
13341                 {
13342                     Return (GPRW (0x69, 0x04))
13343                 }
13344             }
13345 
13346             Method (HPME, 0, Serialized)
13347             {
13348                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
13349                 {
13350                     Notify (PXSX, 0x02) // Device Wake
13351                     PMSX = 0x01
13352                     PSPX = 0x01
13353                 }
13354             }
13355 
13356             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
13357             {
13358                 If (CondRefOf (\_SB.PCI0.RP15.PPRW))
13359                 {
13360                     Return (\_SB.PCI0.RP15.PPRW ())
13361                 }
13362 
13363                 Return (GPRW (0x69, 0x04))
13364             }
13365 
13366             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
13367             {
13368                 If (CondRefOf (PICM))
13369                 {
13370                     If (PICM)
13371                     {
13372                         Return (AR06 ())
13373                     }
13374                 }
13375 
13376                 Return (PD06 ())
13377             }
13378         }
13379 
13380         Device (RP16)
13381         {
13382             Name (LTRZ, 0x00)
13383             Name (LMSL, 0x00)
13384             Name (LNSL, 0x00)
13385             Name (RID, 0x00)
13386             Method (_ADR, 0, NotSerialized)  // _ADR: Address
13387             {
13388                 If ((RPAG != 0x00))
13389                 {
13390                     Return (RPAG) /* \RPAG */
13391                 }
13392                 Else
13393                 {
13394                     Return (0x001D0007)
13395                 }
13396             }
13397 
13398             Name (SLOT, 0x10)
13399             Method (_INI, 0, NotSerialized)  // _INI: Initialize
13400             {
13401                 If (PRES ())
13402                 {
13403                     LTRZ = LTRG /* \LTRG */
13404                     LMSL = PMLG /* \PMLG */
13405                     LNSL = PNLG /* \PNLG */
13406                     If (CondRefOf (PINI))
13407                     {
13408                         PINI ()
13409                     }
13410                 }
13411             }
13412 
13413             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
13414             Field (PXCS, AnyAcc, NoLock, Preserve)
13415             {
13416                 VDID,   32, 
13417                 Offset (0x50), 
13418                 L0SE,   1, 
13419                 Offset (0x52), 
13420                     ,   13, 
13421                 LASX,   1, 
13422                 Offset (0x5A), 
13423                     ,   3, 
13424                 PDCX,   1, 
13425                     ,   2, 
13426                 PDSX,   1, 
13427                 Offset (0x5B), 
13428                 Offset (0x60), 
13429                 Offset (0x62), 
13430                 PSPX,   1, 
13431                 Offset (0xD8), 
13432                     ,   30, 
13433                 HPEX,   1, 
13434                 PMEX,   1, 
13435                 Offset (0xE0), 
13436                     ,   7, 
13437                 NCB7,   1, 
13438                 Offset (0xE2), 
13439                     ,   2, 
13440                 L23E,   1, 
13441                 L23R,   1, 
13442                 Offset (0x420), 
13443                     ,   30, 
13444                 DPGE,   1
13445             }
13446 
13447             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
13448             {
13449                 Offset (0xDC), 
13450                     ,   30, 
13451                 HPSX,   1, 
13452                 PMSX,   1
13453             }
13454 
13455             Method (L23D, 0, Serialized)
13456             {
13457                 If ((NCB7 != 0x01))
13458                 {
13459                     Return (Zero)
13460                 }
13461 
13462                 DPGE = 0x00
13463                 L23R = 0x01
13464                 Local0 = 0x00
13465                 While (L23R)
13466                 {
13467                     If ((Local0 > 0x04))
13468                     {
13469                         Break
13470                     }
13471 
13472                     Sleep (0x10)
13473                     Local0++
13474                 }
13475 
13476                 NCB7 = 0x00
13477                 DPGE = 0x01
13478                 Local0 = 0x00
13479                 While ((LASX == 0x00))
13480                 {
13481                     If ((Local0 > 0x08))
13482                     {
13483                         Break
13484                     }
13485 
13486                     Sleep (0x10)
13487                     Local0++
13488                 }
13489             }
13490 
13491             Method (DL23, 0, Serialized)
13492             {
13493                 L23E = 0x01
13494                 Sleep (0x10)
13495                 Local0 = 0x00
13496                 While (L23E)
13497                 {
13498                     If ((Local0 > 0x04))
13499                     {
13500                         Break
13501                     }
13502 
13503                     Sleep (0x10)
13504                     Local0++
13505                 }
13506 
13507                 NCB7 = 0x01
13508             }
13509 
13510             Name (LTRV, Package (0x04)
13511             {
13512                 0x00, 
13513                 0x00, 
13514                 0x00, 
13515                 0x00
13516             })
13517             Method (PRES, 0, NotSerialized)
13518             {
13519                 If ((VDID == 0xFFFFFFFF))
13520                 {
13521                     Return (0x00)
13522                 }
13523                 Else
13524                 {
13525                     Return (0x01)
13526                 }
13527             }
13528 
13529             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
13530             {
13531                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
13532                 {
13533                     Switch (ToInteger (Arg2))
13534                     {
13535                         Case (0x00)
13536                         {
13537                             Name (OPTS, Buffer (0x02)
13538                             {
13539                                  0x00, 0x00                                       // ..
13540                             })
13541                             CreateBitField (OPTS, 0x00, FUN0)
13542                             CreateBitField (OPTS, 0x04, FUN4)
13543                             CreateBitField (OPTS, 0x06, FUN6)
13544                             CreateBitField (OPTS, 0x08, FUN8)
13545                             CreateBitField (OPTS, 0x09, FUN9)
13546                             CreateBitField (OPTS, 0x0A, FUNA)
13547                             CreateBitField (OPTS, 0x0B, FUNB)
13548                             If ((Arg1 >= 0x02))
13549                             {
13550                                 FUN0 = 0x01
13551                                 If (LTRE)
13552                                 {
13553                                     FUN6 = 0x01
13554                                 }
13555 
13556                                 If (CondRefOf (ECR1))
13557                                 {
13558                                     If ((ECR1 == 0x01))
13559                                     {
13560                                         If ((Arg1 >= 0x03))
13561                                         {
13562                                             FUN8 = 0x01
13563                                             FUN9 = 0x01
13564                                         }
13565                                     }
13566                                 }
13567                             }
13568 
13569                             If ((Arg1 >= 0x04))
13570                             {
13571                                 If (CondRefOf (PPBA))
13572                                 {
13573                                     FUNA = 0x01
13574                                 }
13575 
13576                                 If (CondRefOf (UPRD))
13577                                 {
13578                                     FUNB = 0x01
13579                                 }
13580                             }
13581 
13582                             Return (OPTS) /* \_SB_.PCI0.RP16._DSM.OPTS */
13583                         }
13584                         Case (0x06)
13585                         {
13586                             If ((Arg1 >= 0x02))
13587                             {
13588                                 If (LTRZ)
13589                                 {
13590                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
13591                                     LTRV [0x01] = (LMSL & 0x03FF)
13592                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
13593                                     LTRV [0x03] = (LNSL & 0x03FF)
13594                                     Return (LTRV) /* \_SB_.PCI0.RP16.LTRV */
13595                                 }
13596                                 Else
13597                                 {
13598                                     Return (0x00)
13599                                 }
13600                             }
13601                         }
13602                         Case (0x08)
13603                         {
13604                             If (CondRefOf (ECR1))
13605                             {
13606                                 If ((ECR1 == 0x01))
13607                                 {
13608                                     If ((Arg1 >= 0x03))
13609                                     {
13610                                         Return (0x01)
13611                                     }
13612                                 }
13613                             }
13614                         }
13615                         Case (0x09)
13616                         {
13617                             If (CondRefOf (ECR1))
13618                             {
13619                                 If ((ECR1 == 0x01))
13620                                 {
13621                                     If ((Arg1 >= 0x03))
13622                                     {
13623                                         Return (Package (0x05)
13624                                         {
13625                                             0xC350, 
13626                                             Ones, 
13627                                             Ones, 
13628                                             0xC350, 
13629                                             Ones
13630                                         })
13631                                     }
13632                                 }
13633                             }
13634                         }
13635                         Case (0x0A)
13636                         {
13637                             If (CondRefOf (PPBA))
13638                             {
13639                                 Return (PPBA (Arg3))
13640                             }
13641                         }
13642                         Case (0x0B)
13643                         {
13644                             If (CondRefOf (UPRD))
13645                             {
13646                                 Return (UPRD (Arg3))
13647                             }
13648                         }
13649 
13650                     }
13651                 }
13652 
13653                 Return (Buffer (0x01)
13654                 {
13655                      0x00                                             // .
13656                 })
13657             }
13658 
13659             Device (PXSX)
13660             {
13661                 Name (_ADR, 0x00)  // _ADR: Address
13662                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
13663                 {
13664                     Return (GPRW (0x69, 0x04))
13665                 }
13666             }
13667 
13668             Method (HPME, 0, Serialized)
13669             {
13670                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
13671                 {
13672                     Notify (PXSX, 0x02) // Device Wake
13673                     PMSX = 0x01
13674                     PSPX = 0x01
13675                 }
13676             }
13677 
13678             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
13679             {
13680                 If (CondRefOf (\_SB.PCI0.RP16.PPRW))
13681                 {
13682                     Return (\_SB.PCI0.RP16.PPRW ())
13683                 }
13684 
13685                 Return (GPRW (0x69, 0x04))
13686             }
13687 
13688             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
13689             {
13690                 If (CondRefOf (PICM))
13691                 {
13692                     If (PICM)
13693                     {
13694                         Return (AR07 ())
13695                     }
13696                 }
13697 
13698                 Return (PD07 ())
13699             }
13700         }
13701 
13702         Device (RP17)
13703         {
13704             Name (LTRZ, 0x00)
13705             Name (LMSL, 0x00)
13706             Name (LNSL, 0x00)
13707             Name (RID, 0x00)
13708             Method (_ADR, 0, NotSerialized)  // _ADR: Address
13709             {
13710                 If ((RPAH != 0x00))
13711                 {
13712                     Return (RPAH) /* \RPAH */
13713                 }
13714                 Else
13715                 {
13716                     Return (0x001B0000)
13717                 }
13718             }
13719 
13720             Name (SLOT, 0x11)
13721             Method (_INI, 0, NotSerialized)  // _INI: Initialize
13722             {
13723                 If (PRES ())
13724                 {
13725                     LTRZ = LTRH /* \LTRH */
13726                     LMSL = PMLH /* \PMLH */
13727                     LNSL = PNLH /* \PNLH */
13728                     If (CondRefOf (PINI))
13729                     {
13730                         PINI ()
13731                     }
13732                 }
13733             }
13734 
13735             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
13736             Field (PXCS, AnyAcc, NoLock, Preserve)
13737             {
13738                 VDID,   32, 
13739                 Offset (0x50), 
13740                 L0SE,   1, 
13741                 Offset (0x52), 
13742                     ,   13, 
13743                 LASX,   1, 
13744                 Offset (0x5A), 
13745                     ,   3, 
13746                 PDCX,   1, 
13747                     ,   2, 
13748                 PDSX,   1, 
13749                 Offset (0x5B), 
13750                 Offset (0x60), 
13751                 Offset (0x62), 
13752                 PSPX,   1, 
13753                 Offset (0xD8), 
13754                     ,   30, 
13755                 HPEX,   1, 
13756                 PMEX,   1, 
13757                 Offset (0xE0), 
13758                     ,   7, 
13759                 NCB7,   1, 
13760                 Offset (0xE2), 
13761                     ,   2, 
13762                 L23E,   1, 
13763                 L23R,   1, 
13764                 Offset (0x420), 
13765                     ,   30, 
13766                 DPGE,   1
13767             }
13768 
13769             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
13770             {
13771                 Offset (0xDC), 
13772                     ,   30, 
13773                 HPSX,   1, 
13774                 PMSX,   1
13775             }
13776 
13777             Method (L23D, 0, Serialized)
13778             {
13779                 If ((NCB7 != 0x01))
13780                 {
13781                     Return (Zero)
13782                 }
13783 
13784                 DPGE = 0x00
13785                 L23R = 0x01
13786                 Local0 = 0x00
13787                 While (L23R)
13788                 {
13789                     If ((Local0 > 0x04))
13790                     {
13791                         Break
13792                     }
13793 
13794                     Sleep (0x10)
13795                     Local0++
13796                 }
13797 
13798                 NCB7 = 0x00
13799                 DPGE = 0x01
13800                 Local0 = 0x00
13801                 While ((LASX == 0x00))
13802                 {
13803                     If ((Local0 > 0x08))
13804                     {
13805                         Break
13806                     }
13807 
13808                     Sleep (0x10)
13809                     Local0++
13810                 }
13811             }
13812 
13813             Method (DL23, 0, Serialized)
13814             {
13815                 L23E = 0x01
13816                 Sleep (0x10)
13817                 Local0 = 0x00
13818                 While (L23E)
13819                 {
13820                     If ((Local0 > 0x04))
13821                     {
13822                         Break
13823                     }
13824 
13825                     Sleep (0x10)
13826                     Local0++
13827                 }
13828 
13829                 NCB7 = 0x01
13830             }
13831 
13832             Name (LTRV, Package (0x04)
13833             {
13834                 0x00, 
13835                 0x00, 
13836                 0x00, 
13837                 0x00
13838             })
13839             Method (PRES, 0, NotSerialized)
13840             {
13841                 If ((VDID == 0xFFFFFFFF))
13842                 {
13843                     Return (0x00)
13844                 }
13845                 Else
13846                 {
13847                     Return (0x01)
13848                 }
13849             }
13850 
13851             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
13852             {
13853                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
13854                 {
13855                     Switch (ToInteger (Arg2))
13856                     {
13857                         Case (0x00)
13858                         {
13859                             Name (OPTS, Buffer (0x02)
13860                             {
13861                                  0x00, 0x00                                       // ..
13862                             })
13863                             CreateBitField (OPTS, 0x00, FUN0)
13864                             CreateBitField (OPTS, 0x04, FUN4)
13865                             CreateBitField (OPTS, 0x06, FUN6)
13866                             CreateBitField (OPTS, 0x08, FUN8)
13867                             CreateBitField (OPTS, 0x09, FUN9)
13868                             CreateBitField (OPTS, 0x0A, FUNA)
13869                             CreateBitField (OPTS, 0x0B, FUNB)
13870                             If ((Arg1 >= 0x02))
13871                             {
13872                                 FUN0 = 0x01
13873                                 If (LTRE)
13874                                 {
13875                                     FUN6 = 0x01
13876                                 }
13877 
13878                                 If (CondRefOf (ECR1))
13879                                 {
13880                                     If ((ECR1 == 0x01))
13881                                     {
13882                                         If ((Arg1 >= 0x03))
13883                                         {
13884                                             FUN8 = 0x01
13885                                             FUN9 = 0x01
13886                                         }
13887                                     }
13888                                 }
13889                             }
13890 
13891                             If ((Arg1 >= 0x04))
13892                             {
13893                                 If (CondRefOf (PPBA))
13894                                 {
13895                                     FUNA = 0x01
13896                                 }
13897 
13898                                 If (CondRefOf (UPRD))
13899                                 {
13900                                     FUNB = 0x01
13901                                 }
13902                             }
13903 
13904                             Return (OPTS) /* \_SB_.PCI0.RP17._DSM.OPTS */
13905                         }
13906                         Case (0x06)
13907                         {
13908                             If ((Arg1 >= 0x02))
13909                             {
13910                                 If (LTRZ)
13911                                 {
13912                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
13913                                     LTRV [0x01] = (LMSL & 0x03FF)
13914                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
13915                                     LTRV [0x03] = (LNSL & 0x03FF)
13916                                     Return (LTRV) /* \_SB_.PCI0.RP17.LTRV */
13917                                 }
13918                                 Else
13919                                 {
13920                                     Return (0x00)
13921                                 }
13922                             }
13923                         }
13924                         Case (0x08)
13925                         {
13926                             If (CondRefOf (ECR1))
13927                             {
13928                                 If ((ECR1 == 0x01))
13929                                 {
13930                                     If ((Arg1 >= 0x03))
13931                                     {
13932                                         Return (0x01)
13933                                     }
13934                                 }
13935                             }
13936                         }
13937                         Case (0x09)
13938                         {
13939                             If (CondRefOf (ECR1))
13940                             {
13941                                 If ((ECR1 == 0x01))
13942                                 {
13943                                     If ((Arg1 >= 0x03))
13944                                     {
13945                                         Return (Package (0x05)
13946                                         {
13947                                             0xC350, 
13948                                             Ones, 
13949                                             Ones, 
13950                                             0xC350, 
13951                                             Ones
13952                                         })
13953                                     }
13954                                 }
13955                             }
13956                         }
13957                         Case (0x0A)
13958                         {
13959                             If (CondRefOf (PPBA))
13960                             {
13961                                 Return (PPBA (Arg3))
13962                             }
13963                         }
13964                         Case (0x0B)
13965                         {
13966                             If (CondRefOf (UPRD))
13967                             {
13968                                 Return (UPRD (Arg3))
13969                             }
13970                         }
13971 
13972                     }
13973                 }
13974 
13975                 Return (Buffer (0x01)
13976                 {
13977                      0x00                                             // .
13978                 })
13979             }
13980 
13981             Device (PXSX)
13982             {
13983                 Name (_ADR, 0x00)  // _ADR: Address
13984                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
13985                 {
13986                     Return (GPRW (0x69, 0x04))
13987                 }
13988             }
13989 
13990             Method (HPME, 0, Serialized)
13991             {
13992                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
13993                 {
13994                     Notify (PXSX, 0x02) // Device Wake
13995                     PMSX = 0x01
13996                     PSPX = 0x01
13997                 }
13998             }
13999 
14000             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
14001             {
14002                 If (CondRefOf (\_SB.PCI0.RP17.PPRW))
14003                 {
14004                     Return (\_SB.PCI0.RP17.PPRW ())
14005                 }
14006 
14007                 Return (GPRW (0x69, 0x04))
14008             }
14009 
14010             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
14011             {
14012                 If (CondRefOf (PICM))
14013                 {
14014                     If (PICM)
14015                     {
14016                         Return (AR04 ())
14017                     }
14018                 }
14019 
14020                 Return (PD04 ())
14021             }
14022         }
14023 
14024         Device (RP18)
14025         {
14026             Name (LTRZ, 0x00)
14027             Name (LMSL, 0x00)
14028             Name (LNSL, 0x00)
14029             Name (RID, 0x00)
14030             Method (_ADR, 0, NotSerialized)  // _ADR: Address
14031             {
14032                 If ((RPAI != 0x00))
14033                 {
14034                     Return (RPAI) /* \RPAI */
14035                 }
14036                 Else
14037                 {
14038                     Return (0x001B0001)
14039                 }
14040             }
14041 
14042             Name (SLOT, 0x12)
14043             Method (_INI, 0, NotSerialized)  // _INI: Initialize
14044             {
14045                 If (PRES ())
14046                 {
14047                     LTRZ = LTRI /* \LTRI */
14048                     LMSL = PMLI /* \PMLI */
14049                     LNSL = PNLI /* \PNLI */
14050                     If (CondRefOf (PINI))
14051                     {
14052                         PINI ()
14053                     }
14054                 }
14055             }
14056 
14057             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
14058             Field (PXCS, AnyAcc, NoLock, Preserve)
14059             {
14060                 VDID,   32, 
14061                 Offset (0x50), 
14062                 L0SE,   1, 
14063                 Offset (0x52), 
14064                     ,   13, 
14065                 LASX,   1, 
14066                 Offset (0x5A), 
14067                     ,   3, 
14068                 PDCX,   1, 
14069                     ,   2, 
14070                 PDSX,   1, 
14071                 Offset (0x5B), 
14072                 Offset (0x60), 
14073                 Offset (0x62), 
14074                 PSPX,   1, 
14075                 Offset (0xD8), 
14076                     ,   30, 
14077                 HPEX,   1, 
14078                 PMEX,   1, 
14079                 Offset (0xE0), 
14080                     ,   7, 
14081                 NCB7,   1, 
14082                 Offset (0xE2), 
14083                     ,   2, 
14084                 L23E,   1, 
14085                 L23R,   1, 
14086                 Offset (0x420), 
14087                     ,   30, 
14088                 DPGE,   1
14089             }
14090 
14091             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
14092             {
14093                 Offset (0xDC), 
14094                     ,   30, 
14095                 HPSX,   1, 
14096                 PMSX,   1
14097             }
14098 
14099             Method (L23D, 0, Serialized)
14100             {
14101                 If ((NCB7 != 0x01))
14102                 {
14103                     Return (Zero)
14104                 }
14105 
14106                 DPGE = 0x00
14107                 L23R = 0x01
14108                 Local0 = 0x00
14109                 While (L23R)
14110                 {
14111                     If ((Local0 > 0x04))
14112                     {
14113                         Break
14114                     }
14115 
14116                     Sleep (0x10)
14117                     Local0++
14118                 }
14119 
14120                 NCB7 = 0x00
14121                 DPGE = 0x01
14122                 Local0 = 0x00
14123                 While ((LASX == 0x00))
14124                 {
14125                     If ((Local0 > 0x08))
14126                     {
14127                         Break
14128                     }
14129 
14130                     Sleep (0x10)
14131                     Local0++
14132                 }
14133             }
14134 
14135             Method (DL23, 0, Serialized)
14136             {
14137                 L23E = 0x01
14138                 Sleep (0x10)
14139                 Local0 = 0x00
14140                 While (L23E)
14141                 {
14142                     If ((Local0 > 0x04))
14143                     {
14144                         Break
14145                     }
14146 
14147                     Sleep (0x10)
14148                     Local0++
14149                 }
14150 
14151                 NCB7 = 0x01
14152             }
14153 
14154             Name (LTRV, Package (0x04)
14155             {
14156                 0x00, 
14157                 0x00, 
14158                 0x00, 
14159                 0x00
14160             })
14161             Method (PRES, 0, NotSerialized)
14162             {
14163                 If ((VDID == 0xFFFFFFFF))
14164                 {
14165                     Return (0x00)
14166                 }
14167                 Else
14168                 {
14169                     Return (0x01)
14170                 }
14171             }
14172 
14173             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
14174             {
14175                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
14176                 {
14177                     Switch (ToInteger (Arg2))
14178                     {
14179                         Case (0x00)
14180                         {
14181                             Name (OPTS, Buffer (0x02)
14182                             {
14183                                  0x00, 0x00                                       // ..
14184                             })
14185                             CreateBitField (OPTS, 0x00, FUN0)
14186                             CreateBitField (OPTS, 0x04, FUN4)
14187                             CreateBitField (OPTS, 0x06, FUN6)
14188                             CreateBitField (OPTS, 0x08, FUN8)
14189                             CreateBitField (OPTS, 0x09, FUN9)
14190                             CreateBitField (OPTS, 0x0A, FUNA)
14191                             CreateBitField (OPTS, 0x0B, FUNB)
14192                             If ((Arg1 >= 0x02))
14193                             {
14194                                 FUN0 = 0x01
14195                                 If (LTRE)
14196                                 {
14197                                     FUN6 = 0x01
14198                                 }
14199 
14200                                 If (CondRefOf (ECR1))
14201                                 {
14202                                     If ((ECR1 == 0x01))
14203                                     {
14204                                         If ((Arg1 >= 0x03))
14205                                         {
14206                                             FUN8 = 0x01
14207                                             FUN9 = 0x01
14208                                         }
14209                                     }
14210                                 }
14211                             }
14212 
14213                             If ((Arg1 >= 0x04))
14214                             {
14215                                 If (CondRefOf (PPBA))
14216                                 {
14217                                     FUNA = 0x01
14218                                 }
14219 
14220                                 If (CondRefOf (UPRD))
14221                                 {
14222                                     FUNB = 0x01
14223                                 }
14224                             }
14225 
14226                             Return (OPTS) /* \_SB_.PCI0.RP18._DSM.OPTS */
14227                         }
14228                         Case (0x06)
14229                         {
14230                             If ((Arg1 >= 0x02))
14231                             {
14232                                 If (LTRZ)
14233                                 {
14234                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
14235                                     LTRV [0x01] = (LMSL & 0x03FF)
14236                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
14237                                     LTRV [0x03] = (LNSL & 0x03FF)
14238                                     Return (LTRV) /* \_SB_.PCI0.RP18.LTRV */
14239                                 }
14240                                 Else
14241                                 {
14242                                     Return (0x00)
14243                                 }
14244                             }
14245                         }
14246                         Case (0x08)
14247                         {
14248                             If (CondRefOf (ECR1))
14249                             {
14250                                 If ((ECR1 == 0x01))
14251                                 {
14252                                     If ((Arg1 >= 0x03))
14253                                     {
14254                                         Return (0x01)
14255                                     }
14256                                 }
14257                             }
14258                         }
14259                         Case (0x09)
14260                         {
14261                             If (CondRefOf (ECR1))
14262                             {
14263                                 If ((ECR1 == 0x01))
14264                                 {
14265                                     If ((Arg1 >= 0x03))
14266                                     {
14267                                         Return (Package (0x05)
14268                                         {
14269                                             0xC350, 
14270                                             Ones, 
14271                                             Ones, 
14272                                             0xC350, 
14273                                             Ones
14274                                         })
14275                                     }
14276                                 }
14277                             }
14278                         }
14279                         Case (0x0A)
14280                         {
14281                             If (CondRefOf (PPBA))
14282                             {
14283                                 Return (PPBA (Arg3))
14284                             }
14285                         }
14286                         Case (0x0B)
14287                         {
14288                             If (CondRefOf (UPRD))
14289                             {
14290                                 Return (UPRD (Arg3))
14291                             }
14292                         }
14293 
14294                     }
14295                 }
14296 
14297                 Return (Buffer (0x01)
14298                 {
14299                      0x00                                             // .
14300                 })
14301             }
14302 
14303             Device (PXSX)
14304             {
14305                 Name (_ADR, 0x00)  // _ADR: Address
14306                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
14307                 {
14308                     Return (GPRW (0x69, 0x04))
14309                 }
14310             }
14311 
14312             Method (HPME, 0, Serialized)
14313             {
14314                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
14315                 {
14316                     Notify (PXSX, 0x02) // Device Wake
14317                     PMSX = 0x01
14318                     PSPX = 0x01
14319                 }
14320             }
14321 
14322             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
14323             {
14324                 If (CondRefOf (\_SB.PCI0.RP18.PPRW))
14325                 {
14326                     Return (\_SB.PCI0.RP18.PPRW ())
14327                 }
14328 
14329                 Return (GPRW (0x69, 0x04))
14330             }
14331 
14332             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
14333             {
14334                 If (CondRefOf (PICM))
14335                 {
14336                     If (PICM)
14337                     {
14338                         Return (AR05 ())
14339                     }
14340                 }
14341 
14342                 Return (PD05 ())
14343             }
14344         }
14345 
14346         Device (RP19)
14347         {
14348             Name (LTRZ, 0x00)
14349             Name (LMSL, 0x00)
14350             Name (LNSL, 0x00)
14351             Name (RID, 0x00)
14352             Method (_ADR, 0, NotSerialized)  // _ADR: Address
14353             {
14354                 If ((RPAJ != 0x00))
14355                 {
14356                     Return (RPAJ) /* \RPAJ */
14357                 }
14358                 Else
14359                 {
14360                     Return (0x001B0002)
14361                 }
14362             }
14363 
14364             Name (SLOT, 0x13)
14365             Method (_INI, 0, NotSerialized)  // _INI: Initialize
14366             {
14367                 If (PRES ())
14368                 {
14369                     LTRZ = LTRJ /* \LTRJ */
14370                     LMSL = PMLJ /* \PMLJ */
14371                     LNSL = PNLJ /* \PNLJ */
14372                     If (CondRefOf (PINI))
14373                     {
14374                         PINI ()
14375                     }
14376                 }
14377             }
14378 
14379             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
14380             Field (PXCS, AnyAcc, NoLock, Preserve)
14381             {
14382                 VDID,   32, 
14383                 Offset (0x50), 
14384                 L0SE,   1, 
14385                 Offset (0x52), 
14386                     ,   13, 
14387                 LASX,   1, 
14388                 Offset (0x5A), 
14389                     ,   3, 
14390                 PDCX,   1, 
14391                     ,   2, 
14392                 PDSX,   1, 
14393                 Offset (0x5B), 
14394                 Offset (0x60), 
14395                 Offset (0x62), 
14396                 PSPX,   1, 
14397                 Offset (0xD8), 
14398                     ,   30, 
14399                 HPEX,   1, 
14400                 PMEX,   1, 
14401                 Offset (0xE0), 
14402                     ,   7, 
14403                 NCB7,   1, 
14404                 Offset (0xE2), 
14405                     ,   2, 
14406                 L23E,   1, 
14407                 L23R,   1, 
14408                 Offset (0x420), 
14409                     ,   30, 
14410                 DPGE,   1
14411             }
14412 
14413             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
14414             {
14415                 Offset (0xDC), 
14416                     ,   30, 
14417                 HPSX,   1, 
14418                 PMSX,   1
14419             }
14420 
14421             Method (L23D, 0, Serialized)
14422             {
14423                 If ((NCB7 != 0x01))
14424                 {
14425                     Return (Zero)
14426                 }
14427 
14428                 DPGE = 0x00
14429                 L23R = 0x01
14430                 Local0 = 0x00
14431                 While (L23R)
14432                 {
14433                     If ((Local0 > 0x04))
14434                     {
14435                         Break
14436                     }
14437 
14438                     Sleep (0x10)
14439                     Local0++
14440                 }
14441 
14442                 NCB7 = 0x00
14443                 DPGE = 0x01
14444                 Local0 = 0x00
14445                 While ((LASX == 0x00))
14446                 {
14447                     If ((Local0 > 0x08))
14448                     {
14449                         Break
14450                     }
14451 
14452                     Sleep (0x10)
14453                     Local0++
14454                 }
14455             }
14456 
14457             Method (DL23, 0, Serialized)
14458             {
14459                 L23E = 0x01
14460                 Sleep (0x10)
14461                 Local0 = 0x00
14462                 While (L23E)
14463                 {
14464                     If ((Local0 > 0x04))
14465                     {
14466                         Break
14467                     }
14468 
14469                     Sleep (0x10)
14470                     Local0++
14471                 }
14472 
14473                 NCB7 = 0x01
14474             }
14475 
14476             Name (LTRV, Package (0x04)
14477             {
14478                 0x00, 
14479                 0x00, 
14480                 0x00, 
14481                 0x00
14482             })
14483             Method (PRES, 0, NotSerialized)
14484             {
14485                 If ((VDID == 0xFFFFFFFF))
14486                 {
14487                     Return (0x00)
14488                 }
14489                 Else
14490                 {
14491                     Return (0x01)
14492                 }
14493             }
14494 
14495             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
14496             {
14497                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
14498                 {
14499                     Switch (ToInteger (Arg2))
14500                     {
14501                         Case (0x00)
14502                         {
14503                             Name (OPTS, Buffer (0x02)
14504                             {
14505                                  0x00, 0x00                                       // ..
14506                             })
14507                             CreateBitField (OPTS, 0x00, FUN0)
14508                             CreateBitField (OPTS, 0x04, FUN4)
14509                             CreateBitField (OPTS, 0x06, FUN6)
14510                             CreateBitField (OPTS, 0x08, FUN8)
14511                             CreateBitField (OPTS, 0x09, FUN9)
14512                             CreateBitField (OPTS, 0x0A, FUNA)
14513                             CreateBitField (OPTS, 0x0B, FUNB)
14514                             If ((Arg1 >= 0x02))
14515                             {
14516                                 FUN0 = 0x01
14517                                 If (LTRE)
14518                                 {
14519                                     FUN6 = 0x01
14520                                 }
14521 
14522                                 If (CondRefOf (ECR1))
14523                                 {
14524                                     If ((ECR1 == 0x01))
14525                                     {
14526                                         If ((Arg1 >= 0x03))
14527                                         {
14528                                             FUN8 = 0x01
14529                                             FUN9 = 0x01
14530                                         }
14531                                     }
14532                                 }
14533                             }
14534 
14535                             If ((Arg1 >= 0x04))
14536                             {
14537                                 If (CondRefOf (PPBA))
14538                                 {
14539                                     FUNA = 0x01
14540                                 }
14541 
14542                                 If (CondRefOf (UPRD))
14543                                 {
14544                                     FUNB = 0x01
14545                                 }
14546                             }
14547 
14548                             Return (OPTS) /* \_SB_.PCI0.RP19._DSM.OPTS */
14549                         }
14550                         Case (0x06)
14551                         {
14552                             If ((Arg1 >= 0x02))
14553                             {
14554                                 If (LTRZ)
14555                                 {
14556                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
14557                                     LTRV [0x01] = (LMSL & 0x03FF)
14558                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
14559                                     LTRV [0x03] = (LNSL & 0x03FF)
14560                                     Return (LTRV) /* \_SB_.PCI0.RP19.LTRV */
14561                                 }
14562                                 Else
14563                                 {
14564                                     Return (0x00)
14565                                 }
14566                             }
14567                         }
14568                         Case (0x08)
14569                         {
14570                             If (CondRefOf (ECR1))
14571                             {
14572                                 If ((ECR1 == 0x01))
14573                                 {
14574                                     If ((Arg1 >= 0x03))
14575                                     {
14576                                         Return (0x01)
14577                                     }
14578                                 }
14579                             }
14580                         }
14581                         Case (0x09)
14582                         {
14583                             If (CondRefOf (ECR1))
14584                             {
14585                                 If ((ECR1 == 0x01))
14586                                 {
14587                                     If ((Arg1 >= 0x03))
14588                                     {
14589                                         Return (Package (0x05)
14590                                         {
14591                                             0xC350, 
14592                                             Ones, 
14593                                             Ones, 
14594                                             0xC350, 
14595                                             Ones
14596                                         })
14597                                     }
14598                                 }
14599                             }
14600                         }
14601                         Case (0x0A)
14602                         {
14603                             If (CondRefOf (PPBA))
14604                             {
14605                                 Return (PPBA (Arg3))
14606                             }
14607                         }
14608                         Case (0x0B)
14609                         {
14610                             If (CondRefOf (UPRD))
14611                             {
14612                                 Return (UPRD (Arg3))
14613                             }
14614                         }
14615 
14616                     }
14617                 }
14618 
14619                 Return (Buffer (0x01)
14620                 {
14621                      0x00                                             // .
14622                 })
14623             }
14624 
14625             Device (PXSX)
14626             {
14627                 Name (_ADR, 0x00)  // _ADR: Address
14628                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
14629                 {
14630                     Return (GPRW (0x69, 0x04))
14631                 }
14632             }
14633 
14634             Method (HPME, 0, Serialized)
14635             {
14636                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
14637                 {
14638                     Notify (PXSX, 0x02) // Device Wake
14639                     PMSX = 0x01
14640                     PSPX = 0x01
14641                 }
14642             }
14643 
14644             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
14645             {
14646                 If (CondRefOf (\_SB.PCI0.RP19.PPRW))
14647                 {
14648                     Return (\_SB.PCI0.RP19.PPRW ())
14649                 }
14650 
14651                 Return (GPRW (0x69, 0x04))
14652             }
14653 
14654             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
14655             {
14656                 If (CondRefOf (PICM))
14657                 {
14658                     If (PICM)
14659                     {
14660                         Return (AR06 ())
14661                     }
14662                 }
14663 
14664                 Return (PD06 ())
14665             }
14666         }
14667 
14668         Device (RP20)
14669         {
14670             Name (LTRZ, 0x00)
14671             Name (LMSL, 0x00)
14672             Name (LNSL, 0x00)
14673             Name (RID, 0x00)
14674             Method (_ADR, 0, NotSerialized)  // _ADR: Address
14675             {
14676                 If ((RPAK != 0x00))
14677                 {
14678                     Return (RPAK) /* \RPAK */
14679                 }
14680                 Else
14681                 {
14682                     Return (0x001B0003)
14683                 }
14684             }
14685 
14686             Name (SLOT, 0x14)
14687             Method (_INI, 0, NotSerialized)  // _INI: Initialize
14688             {
14689                 If (PRES ())
14690                 {
14691                     LTRZ = LTRK /* \LTRK */
14692                     LMSL = PMLK /* \_SB_.PCI0.PMLK */
14693                     LNSL = PNLK /* \PNLK */
14694                     If (CondRefOf (PINI))
14695                     {
14696                         PINI ()
14697                     }
14698                 }
14699             }
14700 
14701             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
14702             Field (PXCS, AnyAcc, NoLock, Preserve)
14703             {
14704                 VDID,   32, 
14705                 Offset (0x50), 
14706                 L0SE,   1, 
14707                 Offset (0x52), 
14708                     ,   13, 
14709                 LASX,   1, 
14710                 Offset (0x5A), 
14711                     ,   3, 
14712                 PDCX,   1, 
14713                     ,   2, 
14714                 PDSX,   1, 
14715                 Offset (0x5B), 
14716                 Offset (0x60), 
14717                 Offset (0x62), 
14718                 PSPX,   1, 
14719                 Offset (0xD8), 
14720                     ,   30, 
14721                 HPEX,   1, 
14722                 PMEX,   1, 
14723                 Offset (0xE0), 
14724                     ,   7, 
14725                 NCB7,   1, 
14726                 Offset (0xE2), 
14727                     ,   2, 
14728                 L23E,   1, 
14729                 L23R,   1, 
14730                 Offset (0x420), 
14731                     ,   30, 
14732                 DPGE,   1
14733             }
14734 
14735             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
14736             {
14737                 Offset (0xDC), 
14738                     ,   30, 
14739                 HPSX,   1, 
14740                 PMSX,   1
14741             }
14742 
14743             Method (L23D, 0, Serialized)
14744             {
14745                 If ((NCB7 != 0x01))
14746                 {
14747                     Return (Zero)
14748                 }
14749 
14750                 DPGE = 0x00
14751                 L23R = 0x01
14752                 Local0 = 0x00
14753                 While (L23R)
14754                 {
14755                     If ((Local0 > 0x04))
14756                     {
14757                         Break
14758                     }
14759 
14760                     Sleep (0x10)
14761                     Local0++
14762                 }
14763 
14764                 NCB7 = 0x00
14765                 DPGE = 0x01
14766                 Local0 = 0x00
14767                 While ((LASX == 0x00))
14768                 {
14769                     If ((Local0 > 0x08))
14770                     {
14771                         Break
14772                     }
14773 
14774                     Sleep (0x10)
14775                     Local0++
14776                 }
14777             }
14778 
14779             Method (DL23, 0, Serialized)
14780             {
14781                 L23E = 0x01
14782                 Sleep (0x10)
14783                 Local0 = 0x00
14784                 While (L23E)
14785                 {
14786                     If ((Local0 > 0x04))
14787                     {
14788                         Break
14789                     }
14790 
14791                     Sleep (0x10)
14792                     Local0++
14793                 }
14794 
14795                 NCB7 = 0x01
14796             }
14797 
14798             Name (LTRV, Package (0x04)
14799             {
14800                 0x00, 
14801                 0x00, 
14802                 0x00, 
14803                 0x00
14804             })
14805             Method (PRES, 0, NotSerialized)
14806             {
14807                 If ((VDID == 0xFFFFFFFF))
14808                 {
14809                     Return (0x00)
14810                 }
14811                 Else
14812                 {
14813                     Return (0x01)
14814                 }
14815             }
14816 
14817             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
14818             {
14819                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
14820                 {
14821                     Switch (ToInteger (Arg2))
14822                     {
14823                         Case (0x00)
14824                         {
14825                             Name (OPTS, Buffer (0x02)
14826                             {
14827                                  0x00, 0x00                                       // ..
14828                             })
14829                             CreateBitField (OPTS, 0x00, FUN0)
14830                             CreateBitField (OPTS, 0x04, FUN4)
14831                             CreateBitField (OPTS, 0x06, FUN6)
14832                             CreateBitField (OPTS, 0x08, FUN8)
14833                             CreateBitField (OPTS, 0x09, FUN9)
14834                             CreateBitField (OPTS, 0x0A, FUNA)
14835                             CreateBitField (OPTS, 0x0B, FUNB)
14836                             If ((Arg1 >= 0x02))
14837                             {
14838                                 FUN0 = 0x01
14839                                 If (LTRE)
14840                                 {
14841                                     FUN6 = 0x01
14842                                 }
14843 
14844                                 If (CondRefOf (ECR1))
14845                                 {
14846                                     If ((ECR1 == 0x01))
14847                                     {
14848                                         If ((Arg1 >= 0x03))
14849                                         {
14850                                             FUN8 = 0x01
14851                                             FUN9 = 0x01
14852                                         }
14853                                     }
14854                                 }
14855                             }
14856 
14857                             If ((Arg1 >= 0x04))
14858                             {
14859                                 If (CondRefOf (PPBA))
14860                                 {
14861                                     FUNA = 0x01
14862                                 }
14863 
14864                                 If (CondRefOf (UPRD))
14865                                 {
14866                                     FUNB = 0x01
14867                                 }
14868                             }
14869 
14870                             Return (OPTS) /* \_SB_.PCI0.RP20._DSM.OPTS */
14871                         }
14872                         Case (0x06)
14873                         {
14874                             If ((Arg1 >= 0x02))
14875                             {
14876                                 If (LTRZ)
14877                                 {
14878                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
14879                                     LTRV [0x01] = (LMSL & 0x03FF)
14880                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
14881                                     LTRV [0x03] = (LNSL & 0x03FF)
14882                                     Return (LTRV) /* \_SB_.PCI0.RP20.LTRV */
14883                                 }
14884                                 Else
14885                                 {
14886                                     Return (0x00)
14887                                 }
14888                             }
14889                         }
14890                         Case (0x08)
14891                         {
14892                             If (CondRefOf (ECR1))
14893                             {
14894                                 If ((ECR1 == 0x01))
14895                                 {
14896                                     If ((Arg1 >= 0x03))
14897                                     {
14898                                         Return (0x01)
14899                                     }
14900                                 }
14901                             }
14902                         }
14903                         Case (0x09)
14904                         {
14905                             If (CondRefOf (ECR1))
14906                             {
14907                                 If ((ECR1 == 0x01))
14908                                 {
14909                                     If ((Arg1 >= 0x03))
14910                                     {
14911                                         Return (Package (0x05)
14912                                         {
14913                                             0xC350, 
14914                                             Ones, 
14915                                             Ones, 
14916                                             0xC350, 
14917                                             Ones
14918                                         })
14919                                     }
14920                                 }
14921                             }
14922                         }
14923                         Case (0x0A)
14924                         {
14925                             If (CondRefOf (PPBA))
14926                             {
14927                                 Return (PPBA (Arg3))
14928                             }
14929                         }
14930                         Case (0x0B)
14931                         {
14932                             If (CondRefOf (UPRD))
14933                             {
14934                                 Return (UPRD (Arg3))
14935                             }
14936                         }
14937 
14938                     }
14939                 }
14940 
14941                 Return (Buffer (0x01)
14942                 {
14943                      0x00                                             // .
14944                 })
14945             }
14946 
14947             Device (PXSX)
14948             {
14949                 Name (_ADR, 0x00)  // _ADR: Address
14950                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
14951                 {
14952                     Return (GPRW (0x69, 0x04))
14953                 }
14954             }
14955 
14956             Method (HPME, 0, Serialized)
14957             {
14958                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
14959                 {
14960                     Notify (PXSX, 0x02) // Device Wake
14961                     PMSX = 0x01
14962                     PSPX = 0x01
14963                 }
14964             }
14965 
14966             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
14967             {
14968                 If (CondRefOf (\_SB.PCI0.RP20.PPRW))
14969                 {
14970                     Return (\_SB.PCI0.RP20.PPRW ())
14971                 }
14972 
14973                 Return (GPRW (0x69, 0x04))
14974             }
14975 
14976             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
14977             {
14978                 If (CondRefOf (PICM))
14979                 {
14980                     If (PICM)
14981                     {
14982                         Return (AR07 ())
14983                     }
14984                 }
14985 
14986                 Return (PD07 ())
14987             }
14988         }
14989 
14990         Device (RP21)
14991         {
14992             Name (LTRZ, 0x00)
14993             Name (LMSL, 0x00)
14994             Name (LNSL, 0x00)
14995             Name (RID, 0x00)
14996             Method (_ADR, 0, NotSerialized)  // _ADR: Address
14997             {
14998                 If ((RPAL != 0x00))
14999                 {
15000                     Return (RPAL) /* \RPAL */
15001                 }
15002                 Else
15003                 {
15004                     Return (0x001B0004)
15005                 }
15006             }
15007 
15008             Name (SLOT, 0x15)
15009             Method (_INI, 0, NotSerialized)  // _INI: Initialize
15010             {
15011                 If (PRES ())
15012                 {
15013                     LTRZ = LTRL /* \LTRL */
15014                     LMSL = PMLL /* \PMLL */
15015                     LNSL = PNLL /* \PNLL */
15016                     If (CondRefOf (PINI))
15017                     {
15018                         PINI ()
15019                     }
15020                 }
15021             }
15022 
15023             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
15024             Field (PXCS, AnyAcc, NoLock, Preserve)
15025             {
15026                 VDID,   32, 
15027                 Offset (0x50), 
15028                 L0SE,   1, 
15029                 Offset (0x52), 
15030                     ,   13, 
15031                 LASX,   1, 
15032                 Offset (0x5A), 
15033                     ,   3, 
15034                 PDCX,   1, 
15035                     ,   2, 
15036                 PDSX,   1, 
15037                 Offset (0x5B), 
15038                 Offset (0x60), 
15039                 Offset (0x62), 
15040                 PSPX,   1, 
15041                 Offset (0xD8), 
15042                     ,   30, 
15043                 HPEX,   1, 
15044                 PMEX,   1, 
15045                 Offset (0xE0), 
15046                     ,   7, 
15047                 NCB7,   1, 
15048                 Offset (0xE2), 
15049                     ,   2, 
15050                 L23E,   1, 
15051                 L23R,   1, 
15052                 Offset (0x420), 
15053                     ,   30, 
15054                 DPGE,   1
15055             }
15056 
15057             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
15058             {
15059                 Offset (0xDC), 
15060                     ,   30, 
15061                 HPSX,   1, 
15062                 PMSX,   1
15063             }
15064 
15065             Method (L23D, 0, Serialized)
15066             {
15067                 If ((NCB7 != 0x01))
15068                 {
15069                     Return (Zero)
15070                 }
15071 
15072                 DPGE = 0x00
15073                 L23R = 0x01
15074                 Local0 = 0x00
15075                 While (L23R)
15076                 {
15077                     If ((Local0 > 0x04))
15078                     {
15079                         Break
15080                     }
15081 
15082                     Sleep (0x10)
15083                     Local0++
15084                 }
15085 
15086                 NCB7 = 0x00
15087                 DPGE = 0x01
15088                 Local0 = 0x00
15089                 While ((LASX == 0x00))
15090                 {
15091                     If ((Local0 > 0x08))
15092                     {
15093                         Break
15094                     }
15095 
15096                     Sleep (0x10)
15097                     Local0++
15098                 }
15099             }
15100 
15101             Method (DL23, 0, Serialized)
15102             {
15103                 L23E = 0x01
15104                 Sleep (0x10)
15105                 Local0 = 0x00
15106                 While (L23E)
15107                 {
15108                     If ((Local0 > 0x04))
15109                     {
15110                         Break
15111                     }
15112 
15113                     Sleep (0x10)
15114                     Local0++
15115                 }
15116 
15117                 NCB7 = 0x01
15118             }
15119 
15120             Name (LTRV, Package (0x04)
15121             {
15122                 0x00, 
15123                 0x00, 
15124                 0x00, 
15125                 0x00
15126             })
15127             Method (PRES, 0, NotSerialized)
15128             {
15129                 If ((VDID == 0xFFFFFFFF))
15130                 {
15131                     Return (0x00)
15132                 }
15133                 Else
15134                 {
15135                     Return (0x01)
15136                 }
15137             }
15138 
15139             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
15140             {
15141                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
15142                 {
15143                     Switch (ToInteger (Arg2))
15144                     {
15145                         Case (0x00)
15146                         {
15147                             Name (OPTS, Buffer (0x02)
15148                             {
15149                                  0x00, 0x00                                       // ..
15150                             })
15151                             CreateBitField (OPTS, 0x00, FUN0)
15152                             CreateBitField (OPTS, 0x04, FUN4)
15153                             CreateBitField (OPTS, 0x06, FUN6)
15154                             CreateBitField (OPTS, 0x08, FUN8)
15155                             CreateBitField (OPTS, 0x09, FUN9)
15156                             CreateBitField (OPTS, 0x0A, FUNA)
15157                             CreateBitField (OPTS, 0x0B, FUNB)
15158                             If ((Arg1 >= 0x02))
15159                             {
15160                                 FUN0 = 0x01
15161                                 If (LTRE)
15162                                 {
15163                                     FUN6 = 0x01
15164                                 }
15165 
15166                                 If (CondRefOf (ECR1))
15167                                 {
15168                                     If ((ECR1 == 0x01))
15169                                     {
15170                                         If ((Arg1 >= 0x03))
15171                                         {
15172                                             FUN8 = 0x01
15173                                             FUN9 = 0x01
15174                                         }
15175                                     }
15176                                 }
15177                             }
15178 
15179                             If ((Arg1 >= 0x04))
15180                             {
15181                                 If (CondRefOf (PPBA))
15182                                 {
15183                                     FUNA = 0x01
15184                                 }
15185 
15186                                 If (CondRefOf (UPRD))
15187                                 {
15188                                     FUNB = 0x01
15189                                 }
15190                             }
15191 
15192                             Return (OPTS) /* \_SB_.PCI0.RP21._DSM.OPTS */
15193                         }
15194                         Case (0x06)
15195                         {
15196                             If ((Arg1 >= 0x02))
15197                             {
15198                                 If (LTRZ)
15199                                 {
15200                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
15201                                     LTRV [0x01] = (LMSL & 0x03FF)
15202                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
15203                                     LTRV [0x03] = (LNSL & 0x03FF)
15204                                     Return (LTRV) /* \_SB_.PCI0.RP21.LTRV */
15205                                 }
15206                                 Else
15207                                 {
15208                                     Return (0x00)
15209                                 }
15210                             }
15211                         }
15212                         Case (0x08)
15213                         {
15214                             If (CondRefOf (ECR1))
15215                             {
15216                                 If ((ECR1 == 0x01))
15217                                 {
15218                                     If ((Arg1 >= 0x03))
15219                                     {
15220                                         Return (0x01)
15221                                     }
15222                                 }
15223                             }
15224                         }
15225                         Case (0x09)
15226                         {
15227                             If (CondRefOf (ECR1))
15228                             {
15229                                 If ((ECR1 == 0x01))
15230                                 {
15231                                     If ((Arg1 >= 0x03))
15232                                     {
15233                                         Return (Package (0x05)
15234                                         {
15235                                             0xC350, 
15236                                             Ones, 
15237                                             Ones, 
15238                                             0xC350, 
15239                                             Ones
15240                                         })
15241                                     }
15242                                 }
15243                             }
15244                         }
15245                         Case (0x0A)
15246                         {
15247                             If (CondRefOf (PPBA))
15248                             {
15249                                 Return (PPBA (Arg3))
15250                             }
15251                         }
15252                         Case (0x0B)
15253                         {
15254                             If (CondRefOf (UPRD))
15255                             {
15256                                 Return (UPRD (Arg3))
15257                             }
15258                         }
15259 
15260                     }
15261                 }
15262 
15263                 Return (Buffer (0x01)
15264                 {
15265                      0x00                                             // .
15266                 })
15267             }
15268 
15269             Device (PXSX)
15270             {
15271                 Name (_ADR, 0x00)  // _ADR: Address
15272                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
15273                 {
15274                     Return (GPRW (0x69, 0x04))
15275                 }
15276             }
15277 
15278             Method (HPME, 0, Serialized)
15279             {
15280                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
15281                 {
15282                     Notify (PXSX, 0x02) // Device Wake
15283                     PMSX = 0x01
15284                     PSPX = 0x01
15285                 }
15286             }
15287 
15288             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
15289             {
15290                 If (CondRefOf (\_SB.PCI0.RP21.PPRW))
15291                 {
15292                     Return (\_SB.PCI0.RP21.PPRW ())
15293                 }
15294 
15295                 Return (GPRW (0x69, 0x04))
15296             }
15297 
15298             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
15299             {
15300                 If (CondRefOf (PICM))
15301                 {
15302                     If (PICM)
15303                     {
15304                         Return (AR04 ())
15305                     }
15306                 }
15307 
15308                 Return (PD04 ())
15309             }
15310         }
15311 
15312         Device (RP22)
15313         {
15314             Name (LTRZ, 0x00)
15315             Name (LMSL, 0x00)
15316             Name (LNSL, 0x00)
15317             Name (RID, 0x00)
15318             Method (_ADR, 0, NotSerialized)  // _ADR: Address
15319             {
15320                 If ((RPAM != 0x00))
15321                 {
15322                     Return (RPAM) /* \RPAM */
15323                 }
15324                 Else
15325                 {
15326                     Return (0x001B0005)
15327                 }
15328             }
15329 
15330             Name (SLOT, 0x16)
15331             Method (_INI, 0, NotSerialized)  // _INI: Initialize
15332             {
15333                 If (PRES ())
15334                 {
15335                     LTRZ = LTRM /* \LTRM */
15336                     LMSL = PMLM /* \PMLM */
15337                     LNSL = PNLM /* \PNLM */
15338                     If (CondRefOf (PINI))
15339                     {
15340                         PINI ()
15341                     }
15342                 }
15343             }
15344 
15345             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
15346             Field (PXCS, AnyAcc, NoLock, Preserve)
15347             {
15348                 VDID,   32, 
15349                 Offset (0x50), 
15350                 L0SE,   1, 
15351                 Offset (0x52), 
15352                     ,   13, 
15353                 LASX,   1, 
15354                 Offset (0x5A), 
15355                     ,   3, 
15356                 PDCX,   1, 
15357                     ,   2, 
15358                 PDSX,   1, 
15359                 Offset (0x5B), 
15360                 Offset (0x60), 
15361                 Offset (0x62), 
15362                 PSPX,   1, 
15363                 Offset (0xD8), 
15364                     ,   30, 
15365                 HPEX,   1, 
15366                 PMEX,   1, 
15367                 Offset (0xE0), 
15368                     ,   7, 
15369                 NCB7,   1, 
15370                 Offset (0xE2), 
15371                     ,   2, 
15372                 L23E,   1, 
15373                 L23R,   1, 
15374                 Offset (0x420), 
15375                     ,   30, 
15376                 DPGE,   1
15377             }
15378 
15379             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
15380             {
15381                 Offset (0xDC), 
15382                     ,   30, 
15383                 HPSX,   1, 
15384                 PMSX,   1
15385             }
15386 
15387             Method (L23D, 0, Serialized)
15388             {
15389                 If ((NCB7 != 0x01))
15390                 {
15391                     Return (Zero)
15392                 }
15393 
15394                 DPGE = 0x00
15395                 L23R = 0x01
15396                 Local0 = 0x00
15397                 While (L23R)
15398                 {
15399                     If ((Local0 > 0x04))
15400                     {
15401                         Break
15402                     }
15403 
15404                     Sleep (0x10)
15405                     Local0++
15406                 }
15407 
15408                 NCB7 = 0x00
15409                 DPGE = 0x01
15410                 Local0 = 0x00
15411                 While ((LASX == 0x00))
15412                 {
15413                     If ((Local0 > 0x08))
15414                     {
15415                         Break
15416                     }
15417 
15418                     Sleep (0x10)
15419                     Local0++
15420                 }
15421             }
15422 
15423             Method (DL23, 0, Serialized)
15424             {
15425                 L23E = 0x01
15426                 Sleep (0x10)
15427                 Local0 = 0x00
15428                 While (L23E)
15429                 {
15430                     If ((Local0 > 0x04))
15431                     {
15432                         Break
15433                     }
15434 
15435                     Sleep (0x10)
15436                     Local0++
15437                 }
15438 
15439                 NCB7 = 0x01
15440             }
15441 
15442             Name (LTRV, Package (0x04)
15443             {
15444                 0x00, 
15445                 0x00, 
15446                 0x00, 
15447                 0x00
15448             })
15449             Method (PRES, 0, NotSerialized)
15450             {
15451                 If ((VDID == 0xFFFFFFFF))
15452                 {
15453                     Return (0x00)
15454                 }
15455                 Else
15456                 {
15457                     Return (0x01)
15458                 }
15459             }
15460 
15461             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
15462             {
15463                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
15464                 {
15465                     Switch (ToInteger (Arg2))
15466                     {
15467                         Case (0x00)
15468                         {
15469                             Name (OPTS, Buffer (0x02)
15470                             {
15471                                  0x00, 0x00                                       // ..
15472                             })
15473                             CreateBitField (OPTS, 0x00, FUN0)
15474                             CreateBitField (OPTS, 0x04, FUN4)
15475                             CreateBitField (OPTS, 0x06, FUN6)
15476                             CreateBitField (OPTS, 0x08, FUN8)
15477                             CreateBitField (OPTS, 0x09, FUN9)
15478                             CreateBitField (OPTS, 0x0A, FUNA)
15479                             CreateBitField (OPTS, 0x0B, FUNB)
15480                             If ((Arg1 >= 0x02))
15481                             {
15482                                 FUN0 = 0x01
15483                                 If (LTRE)
15484                                 {
15485                                     FUN6 = 0x01
15486                                 }
15487 
15488                                 If (CondRefOf (ECR1))
15489                                 {
15490                                     If ((ECR1 == 0x01))
15491                                     {
15492                                         If ((Arg1 >= 0x03))
15493                                         {
15494                                             FUN8 = 0x01
15495                                             FUN9 = 0x01
15496                                         }
15497                                     }
15498                                 }
15499                             }
15500 
15501                             If ((Arg1 >= 0x04))
15502                             {
15503                                 If (CondRefOf (PPBA))
15504                                 {
15505                                     FUNA = 0x01
15506                                 }
15507 
15508                                 If (CondRefOf (UPRD))
15509                                 {
15510                                     FUNB = 0x01
15511                                 }
15512                             }
15513 
15514                             Return (OPTS) /* \_SB_.PCI0.RP22._DSM.OPTS */
15515                         }
15516                         Case (0x06)
15517                         {
15518                             If ((Arg1 >= 0x02))
15519                             {
15520                                 If (LTRZ)
15521                                 {
15522                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
15523                                     LTRV [0x01] = (LMSL & 0x03FF)
15524                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
15525                                     LTRV [0x03] = (LNSL & 0x03FF)
15526                                     Return (LTRV) /* \_SB_.PCI0.RP22.LTRV */
15527                                 }
15528                                 Else
15529                                 {
15530                                     Return (0x00)
15531                                 }
15532                             }
15533                         }
15534                         Case (0x08)
15535                         {
15536                             If (CondRefOf (ECR1))
15537                             {
15538                                 If ((ECR1 == 0x01))
15539                                 {
15540                                     If ((Arg1 >= 0x03))
15541                                     {
15542                                         Return (0x01)
15543                                     }
15544                                 }
15545                             }
15546                         }
15547                         Case (0x09)
15548                         {
15549                             If (CondRefOf (ECR1))
15550                             {
15551                                 If ((ECR1 == 0x01))
15552                                 {
15553                                     If ((Arg1 >= 0x03))
15554                                     {
15555                                         Return (Package (0x05)
15556                                         {
15557                                             0xC350, 
15558                                             Ones, 
15559                                             Ones, 
15560                                             0xC350, 
15561                                             Ones
15562                                         })
15563                                     }
15564                                 }
15565                             }
15566                         }
15567                         Case (0x0A)
15568                         {
15569                             If (CondRefOf (PPBA))
15570                             {
15571                                 Return (PPBA (Arg3))
15572                             }
15573                         }
15574                         Case (0x0B)
15575                         {
15576                             If (CondRefOf (UPRD))
15577                             {
15578                                 Return (UPRD (Arg3))
15579                             }
15580                         }
15581 
15582                     }
15583                 }
15584 
15585                 Return (Buffer (0x01)
15586                 {
15587                      0x00                                             // .
15588                 })
15589             }
15590 
15591             Device (PXSX)
15592             {
15593                 Name (_ADR, 0x00)  // _ADR: Address
15594                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
15595                 {
15596                     Return (GPRW (0x69, 0x04))
15597                 }
15598             }
15599 
15600             Method (HPME, 0, Serialized)
15601             {
15602                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
15603                 {
15604                     Notify (PXSX, 0x02) // Device Wake
15605                     PMSX = 0x01
15606                     PSPX = 0x01
15607                 }
15608             }
15609 
15610             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
15611             {
15612                 If (CondRefOf (\_SB.PCI0.RP22.PPRW))
15613                 {
15614                     Return (\_SB.PCI0.RP22.PPRW ())
15615                 }
15616 
15617                 Return (GPRW (0x69, 0x04))
15618             }
15619 
15620             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
15621             {
15622                 If (CondRefOf (PICM))
15623                 {
15624                     If (PICM)
15625                     {
15626                         Return (AR05 ())
15627                     }
15628                 }
15629 
15630                 Return (PD05 ())
15631             }
15632         }
15633 
15634         Device (RP23)
15635         {
15636             Name (LTRZ, 0x00)
15637             Name (LMSL, 0x00)
15638             Name (LNSL, 0x00)
15639             Name (RID, 0x00)
15640             Method (_ADR, 0, NotSerialized)  // _ADR: Address
15641             {
15642                 If ((RPAN != 0x00))
15643                 {
15644                     Return (RPAN) /* \RPAN */
15645                 }
15646                 Else
15647                 {
15648                     Return (0x001B0006)
15649                 }
15650             }
15651 
15652             Name (SLOT, 0x17)
15653             Method (_INI, 0, NotSerialized)  // _INI: Initialize
15654             {
15655                 If (PRES ())
15656                 {
15657                     LTRZ = LTRN /* \LTRN */
15658                     LMSL = PMLN /* \PMLN */
15659                     LNSL = PNLN /* \PNLN */
15660                     If (CondRefOf (PINI))
15661                     {
15662                         PINI ()
15663                     }
15664                 }
15665             }
15666 
15667             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
15668             Field (PXCS, AnyAcc, NoLock, Preserve)
15669             {
15670                 VDID,   32, 
15671                 Offset (0x50), 
15672                 L0SE,   1, 
15673                 Offset (0x52), 
15674                     ,   13, 
15675                 LASX,   1, 
15676                 Offset (0x5A), 
15677                     ,   3, 
15678                 PDCX,   1, 
15679                     ,   2, 
15680                 PDSX,   1, 
15681                 Offset (0x5B), 
15682                 Offset (0x60), 
15683                 Offset (0x62), 
15684                 PSPX,   1, 
15685                 Offset (0xD8), 
15686                     ,   30, 
15687                 HPEX,   1, 
15688                 PMEX,   1, 
15689                 Offset (0xE0), 
15690                     ,   7, 
15691                 NCB7,   1, 
15692                 Offset (0xE2), 
15693                     ,   2, 
15694                 L23E,   1, 
15695                 L23R,   1, 
15696                 Offset (0x420), 
15697                     ,   30, 
15698                 DPGE,   1
15699             }
15700 
15701             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
15702             {
15703                 Offset (0xDC), 
15704                     ,   30, 
15705                 HPSX,   1, 
15706                 PMSX,   1
15707             }
15708 
15709             Method (L23D, 0, Serialized)
15710             {
15711                 If ((NCB7 != 0x01))
15712                 {
15713                     Return (Zero)
15714                 }
15715 
15716                 DPGE = 0x00
15717                 L23R = 0x01
15718                 Local0 = 0x00
15719                 While (L23R)
15720                 {
15721                     If ((Local0 > 0x04))
15722                     {
15723                         Break
15724                     }
15725 
15726                     Sleep (0x10)
15727                     Local0++
15728                 }
15729 
15730                 NCB7 = 0x00
15731                 DPGE = 0x01
15732                 Local0 = 0x00
15733                 While ((LASX == 0x00))
15734                 {
15735                     If ((Local0 > 0x08))
15736                     {
15737                         Break
15738                     }
15739 
15740                     Sleep (0x10)
15741                     Local0++
15742                 }
15743             }
15744 
15745             Method (DL23, 0, Serialized)
15746             {
15747                 L23E = 0x01
15748                 Sleep (0x10)
15749                 Local0 = 0x00
15750                 While (L23E)
15751                 {
15752                     If ((Local0 > 0x04))
15753                     {
15754                         Break
15755                     }
15756 
15757                     Sleep (0x10)
15758                     Local0++
15759                 }
15760 
15761                 NCB7 = 0x01
15762             }
15763 
15764             Name (LTRV, Package (0x04)
15765             {
15766                 0x00, 
15767                 0x00, 
15768                 0x00, 
15769                 0x00
15770             })
15771             Method (PRES, 0, NotSerialized)
15772             {
15773                 If ((VDID == 0xFFFFFFFF))
15774                 {
15775                     Return (0x00)
15776                 }
15777                 Else
15778                 {
15779                     Return (0x01)
15780                 }
15781             }
15782 
15783             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
15784             {
15785                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
15786                 {
15787                     Switch (ToInteger (Arg2))
15788                     {
15789                         Case (0x00)
15790                         {
15791                             Name (OPTS, Buffer (0x02)
15792                             {
15793                                  0x00, 0x00                                       // ..
15794                             })
15795                             CreateBitField (OPTS, 0x00, FUN0)
15796                             CreateBitField (OPTS, 0x04, FUN4)
15797                             CreateBitField (OPTS, 0x06, FUN6)
15798                             CreateBitField (OPTS, 0x08, FUN8)
15799                             CreateBitField (OPTS, 0x09, FUN9)
15800                             CreateBitField (OPTS, 0x0A, FUNA)
15801                             CreateBitField (OPTS, 0x0B, FUNB)
15802                             If ((Arg1 >= 0x02))
15803                             {
15804                                 FUN0 = 0x01
15805                                 If (LTRE)
15806                                 {
15807                                     FUN6 = 0x01
15808                                 }
15809 
15810                                 If (CondRefOf (ECR1))
15811                                 {
15812                                     If ((ECR1 == 0x01))
15813                                     {
15814                                         If ((Arg1 >= 0x03))
15815                                         {
15816                                             FUN8 = 0x01
15817                                             FUN9 = 0x01
15818                                         }
15819                                     }
15820                                 }
15821                             }
15822 
15823                             If ((Arg1 >= 0x04))
15824                             {
15825                                 If (CondRefOf (PPBA))
15826                                 {
15827                                     FUNA = 0x01
15828                                 }
15829 
15830                                 If (CondRefOf (UPRD))
15831                                 {
15832                                     FUNB = 0x01
15833                                 }
15834                             }
15835 
15836                             Return (OPTS) /* \_SB_.PCI0.RP23._DSM.OPTS */
15837                         }
15838                         Case (0x06)
15839                         {
15840                             If ((Arg1 >= 0x02))
15841                             {
15842                                 If (LTRZ)
15843                                 {
15844                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
15845                                     LTRV [0x01] = (LMSL & 0x03FF)
15846                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
15847                                     LTRV [0x03] = (LNSL & 0x03FF)
15848                                     Return (LTRV) /* \_SB_.PCI0.RP23.LTRV */
15849                                 }
15850                                 Else
15851                                 {
15852                                     Return (0x00)
15853                                 }
15854                             }
15855                         }
15856                         Case (0x08)
15857                         {
15858                             If (CondRefOf (ECR1))
15859                             {
15860                                 If ((ECR1 == 0x01))
15861                                 {
15862                                     If ((Arg1 >= 0x03))
15863                                     {
15864                                         Return (0x01)
15865                                     }
15866                                 }
15867                             }
15868                         }
15869                         Case (0x09)
15870                         {
15871                             If (CondRefOf (ECR1))
15872                             {
15873                                 If ((ECR1 == 0x01))
15874                                 {
15875                                     If ((Arg1 >= 0x03))
15876                                     {
15877                                         Return (Package (0x05)
15878                                         {
15879                                             0xC350, 
15880                                             Ones, 
15881                                             Ones, 
15882                                             0xC350, 
15883                                             Ones
15884                                         })
15885                                     }
15886                                 }
15887                             }
15888                         }
15889                         Case (0x0A)
15890                         {
15891                             If (CondRefOf (PPBA))
15892                             {
15893                                 Return (PPBA (Arg3))
15894                             }
15895                         }
15896                         Case (0x0B)
15897                         {
15898                             If (CondRefOf (UPRD))
15899                             {
15900                                 Return (UPRD (Arg3))
15901                             }
15902                         }
15903 
15904                     }
15905                 }
15906 
15907                 Return (Buffer (0x01)
15908                 {
15909                      0x00                                             // .
15910                 })
15911             }
15912 
15913             Device (PXSX)
15914             {
15915                 Name (_ADR, 0x00)  // _ADR: Address
15916                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
15917                 {
15918                     Return (GPRW (0x69, 0x04))
15919                 }
15920             }
15921 
15922             Method (HPME, 0, Serialized)
15923             {
15924                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
15925                 {
15926                     Notify (PXSX, 0x02) // Device Wake
15927                     PMSX = 0x01
15928                     PSPX = 0x01
15929                 }
15930             }
15931 
15932             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
15933             {
15934                 If (CondRefOf (\_SB.PCI0.RP23.PPRW))
15935                 {
15936                     Return (\_SB.PCI0.RP23.PPRW ())
15937                 }
15938 
15939                 Return (GPRW (0x69, 0x04))
15940             }
15941 
15942             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
15943             {
15944                 If (CondRefOf (PICM))
15945                 {
15946                     If (PICM)
15947                     {
15948                         Return (AR06 ())
15949                     }
15950                 }
15951 
15952                 Return (PD06 ())
15953             }
15954         }
15955 
15956         Device (RP24)
15957         {
15958             Name (LTRZ, 0x00)
15959             Name (LMSL, 0x00)
15960             Name (LNSL, 0x00)
15961             Name (RID, 0x00)
15962             Method (_ADR, 0, NotSerialized)  // _ADR: Address
15963             {
15964                 If ((RPAO != 0x00))
15965                 {
15966                     Return (RPAO) /* \RPAO */
15967                 }
15968                 Else
15969                 {
15970                     Return (0x001B0007)
15971                 }
15972             }
15973 
15974             Name (SLOT, 0x18)
15975             Method (_INI, 0, NotSerialized)  // _INI: Initialize
15976             {
15977                 If (PRES ())
15978                 {
15979                     LTRZ = LTRO /* \LTRO */
15980                     LMSL = PMLO /* \PMLO */
15981                     LNSL = PNLO /* \PNLO */
15982                     If (CondRefOf (PINI))
15983                     {
15984                         PINI ()
15985                     }
15986                 }
15987             }
15988 
15989             OperationRegion (PXCS, PCI_Config, 0x00, 0x0480)
15990             Field (PXCS, AnyAcc, NoLock, Preserve)
15991             {
15992                 VDID,   32, 
15993                 Offset (0x50), 
15994                 L0SE,   1, 
15995                 Offset (0x52), 
15996                     ,   13, 
15997                 LASX,   1, 
15998                 Offset (0x5A), 
15999                     ,   3, 
16000                 PDCX,   1, 
16001                     ,   2, 
16002                 PDSX,   1, 
16003                 Offset (0x5B), 
16004                 Offset (0x60), 
16005                 Offset (0x62), 
16006                 PSPX,   1, 
16007                 Offset (0xD8), 
16008                     ,   30, 
16009                 HPEX,   1, 
16010                 PMEX,   1, 
16011                 Offset (0xE0), 
16012                     ,   7, 
16013                 NCB7,   1, 
16014                 Offset (0xE2), 
16015                     ,   2, 
16016                 L23E,   1, 
16017                 L23R,   1, 
16018                 Offset (0x420), 
16019                     ,   30, 
16020                 DPGE,   1
16021             }
16022 
16023             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
16024             {
16025                 Offset (0xDC), 
16026                     ,   30, 
16027                 HPSX,   1, 
16028                 PMSX,   1
16029             }
16030 
16031             Method (L23D, 0, Serialized)
16032             {
16033                 If ((NCB7 != 0x01))
16034                 {
16035                     Return (Zero)
16036                 }
16037 
16038                 DPGE = 0x00
16039                 L23R = 0x01
16040                 Local0 = 0x00
16041                 While (L23R)
16042                 {
16043                     If ((Local0 > 0x04))
16044                     {
16045                         Break
16046                     }
16047 
16048                     Sleep (0x10)
16049                     Local0++
16050                 }
16051 
16052                 NCB7 = 0x00
16053                 DPGE = 0x01
16054                 Local0 = 0x00
16055                 While ((LASX == 0x00))
16056                 {
16057                     If ((Local0 > 0x08))
16058                     {
16059                         Break
16060                     }
16061 
16062                     Sleep (0x10)
16063                     Local0++
16064                 }
16065             }
16066 
16067             Method (DL23, 0, Serialized)
16068             {
16069                 L23E = 0x01
16070                 Sleep (0x10)
16071                 Local0 = 0x00
16072                 While (L23E)
16073                 {
16074                     If ((Local0 > 0x04))
16075                     {
16076                         Break
16077                     }
16078 
16079                     Sleep (0x10)
16080                     Local0++
16081                 }
16082 
16083                 NCB7 = 0x01
16084             }
16085 
16086             Name (LTRV, Package (0x04)
16087             {
16088                 0x00, 
16089                 0x00, 
16090                 0x00, 
16091                 0x00
16092             })
16093             Method (PRES, 0, NotSerialized)
16094             {
16095                 If ((VDID == 0xFFFFFFFF))
16096                 {
16097                     Return (0x00)
16098                 }
16099                 Else
16100                 {
16101                     Return (0x01)
16102                 }
16103             }
16104 
16105             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
16106             {
16107                 If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
16108                 {
16109                     Switch (ToInteger (Arg2))
16110                     {
16111                         Case (0x00)
16112                         {
16113                             Name (OPTS, Buffer (0x02)
16114                             {
16115                                  0x00, 0x00                                       // ..
16116                             })
16117                             CreateBitField (OPTS, 0x00, FUN0)
16118                             CreateBitField (OPTS, 0x04, FUN4)
16119                             CreateBitField (OPTS, 0x06, FUN6)
16120                             CreateBitField (OPTS, 0x08, FUN8)
16121                             CreateBitField (OPTS, 0x09, FUN9)
16122                             CreateBitField (OPTS, 0x0A, FUNA)
16123                             CreateBitField (OPTS, 0x0B, FUNB)
16124                             If ((Arg1 >= 0x02))
16125                             {
16126                                 FUN0 = 0x01
16127                                 If (LTRE)
16128                                 {
16129                                     FUN6 = 0x01
16130                                 }
16131 
16132                                 If (CondRefOf (ECR1))
16133                                 {
16134                                     If ((ECR1 == 0x01))
16135                                     {
16136                                         If ((Arg1 >= 0x03))
16137                                         {
16138                                             FUN8 = 0x01
16139                                             FUN9 = 0x01
16140                                         }
16141                                     }
16142                                 }
16143                             }
16144 
16145                             If ((Arg1 >= 0x04))
16146                             {
16147                                 If (CondRefOf (PPBA))
16148                                 {
16149                                     FUNA = 0x01
16150                                 }
16151 
16152                                 If (CondRefOf (UPRD))
16153                                 {
16154                                     FUNB = 0x01
16155                                 }
16156                             }
16157 
16158                             Return (OPTS) /* \_SB_.PCI0.RP24._DSM.OPTS */
16159                         }
16160                         Case (0x06)
16161                         {
16162                             If ((Arg1 >= 0x02))
16163                             {
16164                                 If (LTRZ)
16165                                 {
16166                                     LTRV [0x00] = ((LMSL >> 0x0A) & 0x07)
16167                                     LTRV [0x01] = (LMSL & 0x03FF)
16168                                     LTRV [0x02] = ((LNSL >> 0x0A) & 0x07)
16169                                     LTRV [0x03] = (LNSL & 0x03FF)
16170                                     Return (LTRV) /* \_SB_.PCI0.RP24.LTRV */
16171                                 }
16172                                 Else
16173                                 {
16174                                     Return (0x00)
16175                                 }
16176                             }
16177                         }
16178                         Case (0x08)
16179                         {
16180                             If (CondRefOf (ECR1))
16181                             {
16182                                 If ((ECR1 == 0x01))
16183                                 {
16184                                     If ((Arg1 >= 0x03))
16185                                     {
16186                                         Return (0x01)
16187                                     }
16188                                 }
16189                             }
16190                         }
16191                         Case (0x09)
16192                         {
16193                             If (CondRefOf (ECR1))
16194                             {
16195                                 If ((ECR1 == 0x01))
16196                                 {
16197                                     If ((Arg1 >= 0x03))
16198                                     {
16199                                         Return (Package (0x05)
16200                                         {
16201                                             0xC350, 
16202                                             Ones, 
16203                                             Ones, 
16204                                             0xC350, 
16205                                             Ones
16206                                         })
16207                                     }
16208                                 }
16209                             }
16210                         }
16211                         Case (0x0A)
16212                         {
16213                             If (CondRefOf (PPBA))
16214                             {
16215                                 Return (PPBA (Arg3))
16216                             }
16217                         }
16218                         Case (0x0B)
16219                         {
16220                             If (CondRefOf (UPRD))
16221                             {
16222                                 Return (UPRD (Arg3))
16223                             }
16224                         }
16225 
16226                     }
16227                 }
16228 
16229                 Return (Buffer (0x01)
16230                 {
16231                      0x00                                             // .
16232                 })
16233             }
16234 
16235             Device (PXSX)
16236             {
16237                 Name (_ADR, 0x00)  // _ADR: Address
16238                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
16239                 {
16240                     Return (GPRW (0x69, 0x04))
16241                 }
16242             }
16243 
16244             Method (HPME, 0, Serialized)
16245             {
16246                 If (((VDID != 0xFFFFFFFF) && (PMSX == 0x01)))
16247                 {
16248                     Notify (PXSX, 0x02) // Device Wake
16249                     PMSX = 0x01
16250                     PSPX = 0x01
16251                 }
16252             }
16253 
16254             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
16255             {
16256                 If (CondRefOf (\_SB.PCI0.RP24.PPRW))
16257                 {
16258                     Return (\_SB.PCI0.RP24.PPRW ())
16259                 }
16260 
16261                 Return (GPRW (0x69, 0x04))
16262             }
16263 
16264             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
16265             {
16266                 If (CondRefOf (PICM))
16267                 {
16268                     If (PICM)
16269                     {
16270                         Return (AR07 ())
16271                     }
16272                 }
16273 
16274                 Return (PD07 ())
16275             }
16276         }
16277 
16278         Device (SAT0)
16279         {
16280             Name (_ADR, 0x00170000)  // _ADR: Address
16281             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
16282             {
16283                 If (PCIC (Arg0))
16284                 {
16285                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
16286                 }
16287                 ElseIf ((Arg0 == ToUUID ("9cd9cddd-8845-4afd-8392-31c4eb87cabd")))
16288                 {
16289                     Return (D3AS (Arg1, Arg2, Arg3))
16290                 }
16291                 ElseIf ((CondRefOf (SATC) && CondRefOf (SATD)))
16292                 {
16293                     If (SATC (Arg0))
16294                     {
16295                         Return (SATD (Arg0, Arg1, Arg2, Arg3))
16296                     }
16297                 }
16298                 Else
16299                 {
16300                     Return (Buffer (0x01)
16301                     {
16302                          0x00                                             // .
16303                     })
16304                 }
16305             }
16306 
16307             Method (_PS0, 0, Serialized)  // _PS0: Power State 0
16308             {
16309                 ADBG ("SATA0 Ctrlr D0")
16310                 If ((PCHS == PCHL))
16311                 {
16312                     If (!SCFD)
16313                     {
16314                         \_SB.CSD0 (0x14)
16315                     }
16316                 }
16317             }
16318 
16319             Method (_PS3, 0, Serialized)  // _PS3: Power State 3
16320             {
16321                 ADBG ("SATA0 Ctrlr D3")
16322                 If ((PCHS == PCHL))
16323                 {
16324                     \_SB.CSD3 (0x14)
16325                 }
16326             }
16327 
16328             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
16329             {
16330                 Return (0x03)
16331             }
16332 
16333             Device (PRT0)
16334             {
16335                 Name (_ADR, 0xFFFF)  // _ADR: Address
16336                 Method (PRES, 0, NotSerialized)
16337                 {
16338                     If ((SPPR & 0x01))
16339                     {
16340                         Return (0x01)
16341                     }
16342                     Else
16343                     {
16344                         Return (0x00)
16345                     }
16346                 }
16347             }
16348 
16349             Device (PRT1)
16350             {
16351                 Name (_ADR, 0x0001FFFF)  // _ADR: Address
16352                 Method (PRES, 0, NotSerialized)
16353                 {
16354                     If ((SPPR & 0x02))
16355                     {
16356                         Return (0x01)
16357                     }
16358                     Else
16359                     {
16360                         Return (0x00)
16361                     }
16362                 }
16363             }
16364 
16365             Device (PRT2)
16366             {
16367                 Name (_ADR, 0x0002FFFF)  // _ADR: Address
16368                 Method (PRES, 0, NotSerialized)
16369                 {
16370                     If ((SPPR & 0x04))
16371                     {
16372                         Return (0x01)
16373                     }
16374                     Else
16375                     {
16376                         Return (0x00)
16377                     }
16378                 }
16379             }
16380 
16381             Device (PRT3)
16382             {
16383                 Name (_ADR, 0x0003FFFF)  // _ADR: Address
16384                 Method (PRES, 0, NotSerialized)
16385                 {
16386                     If ((SPPR & 0x08))
16387                     {
16388                         Return (0x01)
16389                     }
16390                     Else
16391                     {
16392                         Return (0x00)
16393                     }
16394                 }
16395             }
16396 
16397             Device (PRT4)
16398             {
16399                 Name (_ADR, 0x0004FFFF)  // _ADR: Address
16400                 Method (PRES, 0, NotSerialized)
16401                 {
16402                     If ((SPPR & 0x10))
16403                     {
16404                         Return (0x01)
16405                     }
16406                     Else
16407                     {
16408                         Return (0x00)
16409                     }
16410                 }
16411             }
16412 
16413             Device (PRT5)
16414             {
16415                 Name (_ADR, 0x0005FFFF)  // _ADR: Address
16416                 Method (PRES, 0, NotSerialized)
16417                 {
16418                     If ((SPPR & 0x20))
16419                     {
16420                         Return (0x01)
16421                     }
16422                     Else
16423                     {
16424                         Return (0x00)
16425                     }
16426                 }
16427             }
16428 
16429             Device (NVM1)
16430             {
16431                 Name (_ADR, 0x00C1FFFF)  // _ADR: Address
16432                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
16433                 {
16434                     NITV = NIT1 /* \NIT1 */
16435                     NPMV = NPM1 /* \NPM1 */
16436                     NPCV = NPC1 /* \NPC1 */
16437                     NL1V = NL11 /* \NL11 */
16438                     ND2V = ND21 /* \ND21 */
16439                     ND1V = ND11 /* \ND11 */
16440                     NLRV = NLR1 /* \NLR1 */
16441                     NLDV = NLD1 /* \NLD1 */
16442                     NEAV = NEA1 /* \NEA1 */
16443                     NEBV = NEB1 /* \NEB1 */
16444                     NECV = NEC1 /* \NEC1 */
16445                     NRAV = NRA1 /* \NRA1 */
16446                     NMBV = NMB1 /* \NMB1 */
16447                     NMVV = NMV1 /* \NMV1 */
16448                     NPBV = NPB1 /* \NPB1 */
16449                     NPVV = NPV1 /* \NPV1 */
16450                     NRPN = NRP1 /* \NRP1 */
16451                     NCRN = 0x00
16452                 }
16453 
16454                 Name (PRBI, 0x00)
16455                 Name (PRBD, 0x00)
16456                 Name (PCMD, 0x00)
16457                 Name (NCRN, 0x00)
16458                 Name (NITV, 0x00)
16459                 Name (NPMV, 0x00)
16460                 Name (NPCV, 0x00)
16461                 Name (NL1V, 0x00)
16462                 Name (ND2V, 0x00)
16463                 Name (ND1V, 0x00)
16464                 Name (NLRV, 0x00)
16465                 Name (NLDV, 0x00)
16466                 Name (NEAV, 0x00)
16467                 Name (NEBV, 0x00)
16468                 Name (NECV, 0x00)
16469                 Name (NRAV, 0x00)
16470                 Name (NMBV, 0x00)
16471                 Name (NMVV, 0x00)
16472                 Name (NPBV, 0x00)
16473                 Name (NPVV, 0x00)
16474                 Name (NRPN, 0x00)
16475                 Name (MXIE, 0x00)
16476                 Name (ID3C, 0x00)
16477                 Name (ID3H, 0x00)
16478                 Name (CSAV, 0x00)
16479                 Method (_PS3, 0, Serialized)  // _PS3: Power State 3
16480                 {
16481                     ADBG (Concatenate ("_PS3r:", ToHexString (_ADR)))
16482                     If (IR3D ())
16483                     {
16484                         Return (Zero)
16485                     }
16486 
16487                     NVD3 ()
16488                 }
16489 
16490                 Method (_PS0, 0, Serialized)  // _PS0: Power State 0
16491                 {
16492                     ADBG (Concatenate ("_PS0r:", ToHexString (_ADR)))
16493                     If (IR3D ())
16494                     {
16495                         Return (Zero)
16496                     }
16497 
16498                     NVD0 ()
16499                 }
16500 
16501                 Method (RL23, 0, NotSerialized)
16502                 {
16503                     RDCA (NCRN, 0xE2, 0xFFFFFFFF, 0x04, 0x01)
16504                     Sleep (0x10)
16505                     Local0 = 0x00
16506                     While ((RDCA (NCRN, 0xE2, 0x00, 0x00, 0x00) & 0x04))
16507                     {
16508                         If ((Local0 > 0x04))
16509                         {
16510                             Break
16511                         }
16512 
16513                         Sleep (0x10)
16514                         Local0++
16515                     }
16516 
16517                     RDCA (NCRN, 0x0324, 0xFFFFFFFF, 0x08, 0x01)
16518                 }
16519 
16520                 Method (RLA, 0, NotSerialized)
16521                 {
16522                     RDCA (NCRN, 0x0420, 0xBFFFFFFF, 0x00, 0x01)
16523                     RDCA (NCRN, 0xE2, 0xFFFFFFFF, 0x08, 0x01)
16524                     Sleep (0x10)
16525                     Local0 = 0x00
16526                     While ((RDCA (NCRN, 0xE2, 0x00, 0x00, 0x00) & 0x08))
16527                     {
16528                         If ((Local0 > 0x04))
16529                         {
16530                             Break
16531                         }
16532 
16533                         Sleep (0x10)
16534                         Local0++
16535                     }
16536 
16537                     RDCA (NCRN, 0x0420, 0xFFFFFFFF, 0x40000000, 0x01)
16538                     Local0 = 0x00
16539                     While (((RDCA (NCRN, 0x52, 0x00, 0x00, 0x00) & 0x2000) == 0x00))
16540                     {
16541                         If ((Local0 > 0x08))
16542                         {
16543                             Break
16544                         }
16545 
16546                         Sleep (0x10)
16547                         Local0++
16548                     }
16549 
16550                     RDCA (NCRN, 0x0324, 0xFFFFFFF7, 0x00, 0x01)
16551                 }
16552 
16553                 Method (RPON, 0, Serialized)
16554                 {
16555                     ADBG (Concatenate ("RPONs: ", ToHexString (_ADR)))
16556                     If ((ID3C == 0x00))
16557                     {
16558                         ADBG ("RPON: no D3C")
16559                         Return (Zero)
16560                     }
16561 
16562                     \_SB.PCI0.SAT0.RSON (NRPN)
16563                     RLA ()
16564                     Sleep (0x64)
16565                     ID3C = 0x00
16566                     ADBG (Concatenate ("RPONe: ", ToHexString (_ADR)))
16567                 }
16568 
16569                 Method (RPOF, 0, Serialized)
16570                 {
16571                     ADBG (Concatenate ("RPOFs: ", ToHexString (_ADR)))
16572                     If ((ID3H == 0x00))
16573                     {
16574                         ADBG ("RPOF: No D3H")
16575                         BreakPoint
16576                         Return (Zero)
16577                     }
16578 
16579                     If (!D3CS (NRPN))
16580                     {
16581                         Return (Zero)
16582                     }
16583 
16584                     RL23 ()
16585                     \_SB.PCI0.SAT0.RSOF (NRPN)
16586                     ID3C = 0x01
16587                 }
16588 
16589                 Method (SAVC, 0, Serialized)
16590                 {
16591                     ADBG (Concatenate ("SAVC:", ToHexString (_ADR)))
16592                     PCMD = RDCA (NCRN, 0x04, 0x00, 0x00, 0x02)
16593                     If ((NITV == 0x01))
16594                     {
16595                         PRBI = 0x24
16596                         PRBD = RDCA (NCRN, 0x24, 0x00, 0x00, 0x02)
16597                     }
16598                     ElseIf ((NITV == 0x02))
16599                     {
16600                         PRBI = 0x10
16601                         PRBD = RDCA (NCRN, 0x10, 0x00, 0x00, 0x02)
16602                         OperationRegion (MCRC, SystemMemory, (\_SB.PCI0.GPCB () + (0x000B8000 + 0x033C)), 0x04)
16603                         Field (MCRC, AnyAcc, NoLock, Preserve)
16604                         {
16605                             SCSO,   8, 
16606                             Offset (0x02), 
16607                             TCSO,   8, 
16608                                 ,   7, 
16609                             RE,     1
16610                         }
16611 
16612                         MXIE = RDCA (NCRN, TCSO, 0x00, 0x00, 0x02)
16613                     }
16614 
16615                     CSAV = 0x01
16616                 }
16617 
16618                 Method (NVD3, 0, Serialized)
16619                 {
16620                     ADBG (Concatenate ("NVD3:", ToHexString (_ADR)))
16621                     If ((NITV == 0x00))
16622                     {
16623                         Return (Zero)
16624                     }
16625 
16626                     If ((ID3H == 0x01))
16627                     {
16628                         ADBG ("Skip in D3")
16629                         Return (Zero)
16630                     }
16631 
16632                     SAVC ()
16633                     RDCA (NCRN, (NPMV + 0x04), 0xFFFFFFFC, 0x03, 0x03)
16634                     RDCA (NCRN, 0xA4, 0xFFFFFFFC, 0x03, 0x01)
16635                     ID3H = 0x01
16636                     Return (Zero)
16637                 }
16638 
16639                 Method (NVD0, 0, Serialized)
16640                 {
16641                     ADBG (Concatenate ("NVD0:", ToHexString (_ADR)))
16642                     If ((NITV == 0x00))
16643                     {
16644                         Return (Zero)
16645                     }
16646 
16647                     If ((ID3H == 0x00))
16648                     {
16649                         ADBG ("Remap already in D0")
16650                         Return (Zero)
16651                     }
16652 
16653                     RDCA (NCRN, 0xA4, 0xFFFFFFFC, 0x00, 0x01)
16654                     RDCA (NCRN, (NPMV + 0x04), 0xFFFFFFFC, 0x00, 0x03)
16655                     If ((CSAV == 0x01))
16656                     {
16657                         CNRS ()
16658                         If ((NITV == 0x02))
16659                         {
16660                             OperationRegion (MCRC, SystemMemory, (\_SB.PCI0.GPCB () + (0x000B8000 + 0x033C)), 0x04)
16661                             Field (MCRC, AnyAcc, NoLock, Preserve)
16662                             {
16663                                 SCSO,   8, 
16664                                 Offset (0x02), 
16665                                 TCSO,   8, 
16666                                     ,   7, 
16667                                 RE,     1
16668                             }
16669 
16670                             RDCA (NCRN, TCSO, 0xFFFFFFFF, (MXIE & 0x80000000), 0x03)
16671                             ADBG ("NVD0:  MSIXe")
16672                         }
16673                     }
16674                     Else
16675                     {
16676                         ADBG ("Skip remap restore")
16677                     }
16678 
16679                     ID3H = 0x00
16680                     Return (Zero)
16681                 }
16682 
16683                 Method (CNRS, 0, Serialized)
16684                 {
16685                     ADBG (Concatenate ("CNRSs ", ToDecimalString (Timer)))
16686                     If ((NITV == 0x00))
16687                     {
16688                         Return (Zero)
16689                     }
16690 
16691                     RDCA (NCRN, 0x10, 0x00, 0x00, 0x03)
16692                     RDCA (NCRN, 0x14, 0x00, 0x00, 0x03)
16693                     RDCA (NCRN, 0x18, 0x00, 0x00, 0x03)
16694                     RDCA (NCRN, 0x1C, 0x00, 0x00, 0x03)
16695                     RDCA (NCRN, 0x20, 0x00, 0x00, 0x03)
16696                     RDCA (NCRN, 0x24, 0x00, 0x00, 0x03)
16697                     RDCA (NCRN, PRBI, 0x00, PRBD, 0x03)
16698                     RDCA (NCRN, 0x04, 0xFFFFFFF8, PCMD, 0x03)
16699                     If ((NL1V != 0x00))
16700                     {
16701                         RDCA (NCRN, (NL1V + 0x0C), 0xFFFFFF00, ND2V, 0x03)
16702                         RDCA (NCRN, (NL1V + 0x08), 0x0F, (ND1V & 0xFFFFFFF0), 0x03)
16703                         RDCA (NCRN, (NL1V + 0x08), 0xFFFFFFFF, ND1V, 0x03)
16704                     }
16705 
16706                     If ((NLRV != 0x00))
16707                     {
16708                         RDCA (NCRN, (NLRV + 0x04), 0xFFFFFFFF, NLDV, 0x03)
16709                     }
16710 
16711                     RDCA (NCRN, (NPCV + 0x10), 0xFFFFFEBF, (NEAV & 0xFFFC), 0x03)
16712                     RDCA (NCRN, (NPCV + 0x28), 0xFFFFFBFF, NECV, 0x03)
16713                     RDCA (NCRN, (NPCV + 0x08), 0xFFFFFF1F, NEBV, 0x03)
16714                     RDCA (NCRN, 0x68, 0xFFFFFBFF, NRAV, 0x01)
16715                     If (((NEAV & 0x40) == 0x40))
16716                     {
16717                         RDCA (NCRN, 0x50, 0xFFFFFFDF, 0x20, 0x01)
16718                         ADBG (Concatenate ("CNRSw ", ToDecimalString (Timer)))
16719                         While (((RDCA (NCRN, 0x52, 0x00, 0x00, 0x00) & 0x2000) == 0x00))
16720                         {
16721                             Stall (0x0A)
16722                         }
16723                     }
16724 
16725                     ADBG (Concatenate ("CNRSx ", ToDecimalString (Timer)))
16726                     RDCA (NCRN, (NPCV + 0x10), 0xFFFFFFFC, (NEAV & 0x03), 0x03)
16727                     If ((NMVV != 0x00))
16728                     {
16729                         RDCA (NCRN, NMBV, 0x00, NMVV, 0x03)
16730                     }
16731 
16732                     If ((NPVV != 0x00))
16733                     {
16734                         RDCA (NCRN, NPBV, 0x00, NPVV, 0x03)
16735                     }
16736 
16737                     ADBG (Concatenate ("CNRSe ", ToDecimalString (Timer)))
16738                 }
16739             }
16740 
16741             Device (NVM2)
16742             {
16743                 Name (_ADR, 0x00C2FFFF)  // _ADR: Address
16744                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
16745                 {
16746                     NITV = NIT2 /* \NIT2 */
16747                     NPMV = NPM2 /* \NPM2 */
16748                     NPCV = NPC2 /* \NPC2 */
16749                     NL1V = NL12 /* \NL12 */
16750                     ND2V = ND22 /* \ND22 */
16751                     ND1V = ND12 /* \ND12 */
16752                     NLRV = NLR2 /* \NLR2 */
16753                     NLDV = NLD2 /* \NLD2 */
16754                     NEAV = NEA2 /* \NEA2 */
16755                     NEBV = NEB2 /* \NEB2 */
16756                     NECV = NEC2 /* \NEC2 */
16757                     NRAV = NRA2 /* \NRA2 */
16758                     NMBV = NMB2 /* \NMB2 */
16759                     NMVV = NMV2 /* \NMV2 */
16760                     NPBV = NPB2 /* \NPB2 */
16761                     NPVV = NPV2 /* \NPV2 */
16762                     NRPN = NRP2 /* \NRP2 */
16763                     NCRN = 0x01
16764                 }
16765 
16766                 Name (PRBI, 0x00)
16767                 Name (PRBD, 0x00)
16768                 Name (PCMD, 0x00)
16769                 Name (NCRN, 0x00)
16770                 Name (NITV, 0x00)
16771                 Name (NPMV, 0x00)
16772                 Name (NPCV, 0x00)
16773                 Name (NL1V, 0x00)
16774                 Name (ND2V, 0x00)
16775                 Name (ND1V, 0x00)
16776                 Name (NLRV, 0x00)
16777                 Name (NLDV, 0x00)
16778                 Name (NEAV, 0x00)
16779                 Name (NEBV, 0x00)
16780                 Name (NECV, 0x00)
16781                 Name (NRAV, 0x00)
16782                 Name (NMBV, 0x00)
16783                 Name (NMVV, 0x00)
16784                 Name (NPBV, 0x00)
16785                 Name (NPVV, 0x00)
16786                 Name (NRPN, 0x00)
16787                 Name (MXIE, 0x00)
16788                 Name (ID3C, 0x00)
16789                 Name (ID3H, 0x00)
16790                 Name (CSAV, 0x00)
16791                 Method (_PS3, 0, Serialized)  // _PS3: Power State 3
16792                 {
16793                     ADBG (Concatenate ("_PS3r:", ToHexString (_ADR)))
16794                     If (IR3D ())
16795                     {
16796                         Return (Zero)
16797                     }
16798 
16799                     NVD3 ()
16800                 }
16801 
16802                 Method (_PS0, 0, Serialized)  // _PS0: Power State 0
16803                 {
16804                     ADBG (Concatenate ("_PS0r:", ToHexString (_ADR)))
16805                     If (IR3D ())
16806                     {
16807                         Return (Zero)
16808                     }
16809 
16810                     NVD0 ()
16811                 }
16812 
16813                 Method (RL23, 0, NotSerialized)
16814                 {
16815                     RDCA (NCRN, 0xE2, 0xFFFFFFFF, 0x04, 0x01)
16816                     Sleep (0x10)
16817                     Local0 = 0x00
16818                     While ((RDCA (NCRN, 0xE2, 0x00, 0x00, 0x00) & 0x04))
16819                     {
16820                         If ((Local0 > 0x04))
16821                         {
16822                             Break
16823                         }
16824 
16825                         Sleep (0x10)
16826                         Local0++
16827                     }
16828 
16829                     RDCA (NCRN, 0x0324, 0xFFFFFFFF, 0x08, 0x01)
16830                 }
16831 
16832                 Method (RLA, 0, NotSerialized)
16833                 {
16834                     RDCA (NCRN, 0x0420, 0xBFFFFFFF, 0x00, 0x01)
16835                     RDCA (NCRN, 0xE2, 0xFFFFFFFF, 0x08, 0x01)
16836                     Sleep (0x10)
16837                     Local0 = 0x00
16838                     While ((RDCA (NCRN, 0xE2, 0x00, 0x00, 0x00) & 0x08))
16839                     {
16840                         If ((Local0 > 0x04))
16841                         {
16842                             Break
16843                         }
16844 
16845                         Sleep (0x10)
16846                         Local0++
16847                     }
16848 
16849                     RDCA (NCRN, 0x0420, 0xFFFFFFFF, 0x40000000, 0x01)
16850                     Local0 = 0x00
16851                     While (((RDCA (NCRN, 0x52, 0x00, 0x00, 0x00) & 0x2000) == 0x00))
16852                     {
16853                         If ((Local0 > 0x08))
16854                         {
16855                             Break
16856                         }
16857 
16858                         Sleep (0x10)
16859                         Local0++
16860                     }
16861 
16862                     RDCA (NCRN, 0x0324, 0xFFFFFFF7, 0x00, 0x01)
16863                 }
16864 
16865                 Method (RPON, 0, Serialized)
16866                 {
16867                     ADBG (Concatenate ("RPONs: ", ToHexString (_ADR)))
16868                     If ((ID3C == 0x00))
16869                     {
16870                         ADBG ("RPON: no D3C")
16871                         Return (Zero)
16872                     }
16873 
16874                     \_SB.PCI0.SAT0.RSON (NRPN)
16875                     RLA ()
16876                     Sleep (0x64)
16877                     ID3C = 0x00
16878                     ADBG (Concatenate ("RPONe: ", ToHexString (_ADR)))
16879                 }
16880 
16881                 Method (RPOF, 0, Serialized)
16882                 {
16883                     ADBG (Concatenate ("RPOFs: ", ToHexString (_ADR)))
16884                     If ((ID3H == 0x00))
16885                     {
16886                         ADBG ("RPOF: No D3H")
16887                         BreakPoint
16888                         Return (Zero)
16889                     }
16890 
16891                     If (!D3CS (NRPN))
16892                     {
16893                         Return (Zero)
16894                     }
16895 
16896                     RL23 ()
16897                     \_SB.PCI0.SAT0.RSOF (NRPN)
16898                     ID3C = 0x01
16899                 }
16900 
16901                 Method (SAVC, 0, Serialized)
16902                 {
16903                     ADBG (Concatenate ("SAVC:", ToHexString (_ADR)))
16904                     PCMD = RDCA (NCRN, 0x04, 0x00, 0x00, 0x02)
16905                     If ((NITV == 0x01))
16906                     {
16907                         PRBI = 0x24
16908                         PRBD = RDCA (NCRN, 0x24, 0x00, 0x00, 0x02)
16909                     }
16910                     ElseIf ((NITV == 0x02))
16911                     {
16912                         PRBI = 0x10
16913                         PRBD = RDCA (NCRN, 0x10, 0x00, 0x00, 0x02)
16914                         OperationRegion (MCRC, SystemMemory, (\_SB.PCI0.GPCB () + (0x000B8000 + 0x033C)), 0x04)
16915                         Field (MCRC, AnyAcc, NoLock, Preserve)
16916                         {
16917                             SCSO,   8, 
16918                             Offset (0x02), 
16919                             TCSO,   8, 
16920                                 ,   7, 
16921                             RE,     1
16922                         }
16923 
16924                         MXIE = RDCA (NCRN, TCSO, 0x00, 0x00, 0x02)
16925                     }
16926 
16927                     CSAV = 0x01
16928                 }
16929 
16930                 Method (NVD3, 0, Serialized)
16931                 {
16932                     ADBG (Concatenate ("NVD3:", ToHexString (_ADR)))
16933                     If ((NITV == 0x00))
16934                     {
16935                         Return (Zero)
16936                     }
16937 
16938                     If ((ID3H == 0x01))
16939                     {
16940                         ADBG ("Skip in D3")
16941                         Return (Zero)
16942                     }
16943 
16944                     SAVC ()
16945                     RDCA (NCRN, (NPMV + 0x04), 0xFFFFFFFC, 0x03, 0x03)
16946                     RDCA (NCRN, 0xA4, 0xFFFFFFFC, 0x03, 0x01)
16947                     ID3H = 0x01
16948                     Return (Zero)
16949                 }
16950 
16951                 Method (NVD0, 0, Serialized)
16952                 {
16953                     ADBG (Concatenate ("NVD0:", ToHexString (_ADR)))
16954                     If ((NITV == 0x00))
16955                     {
16956                         Return (Zero)
16957                     }
16958 
16959                     If ((ID3H == 0x00))
16960                     {
16961                         ADBG ("Remap already in D0")
16962                         Return (Zero)
16963                     }
16964 
16965                     RDCA (NCRN, 0xA4, 0xFFFFFFFC, 0x00, 0x01)
16966                     RDCA (NCRN, (NPMV + 0x04), 0xFFFFFFFC, 0x00, 0x03)
16967                     If ((CSAV == 0x01))
16968                     {
16969                         CNRS ()
16970                         If ((NITV == 0x02))
16971                         {
16972                             OperationRegion (MCRC, SystemMemory, (\_SB.PCI0.GPCB () + (0x000B8000 + 0x033C)), 0x04)
16973                             Field (MCRC, AnyAcc, NoLock, Preserve)
16974                             {
16975                                 SCSO,   8, 
16976                                 Offset (0x02), 
16977                                 TCSO,   8, 
16978                                     ,   7, 
16979                                 RE,     1
16980                             }
16981 
16982                             RDCA (NCRN, TCSO, 0xFFFFFFFF, (MXIE & 0x80000000), 0x03)
16983                             ADBG ("NVD0:  MSIXe")
16984                         }
16985                     }
16986                     Else
16987                     {
16988                         ADBG ("Skip remap restore")
16989                     }
16990 
16991                     ID3H = 0x00
16992                     Return (Zero)
16993                 }
16994 
16995                 Method (CNRS, 0, Serialized)
16996                 {
16997                     ADBG (Concatenate ("CNRSs ", ToDecimalString (Timer)))
16998                     If ((NITV == 0x00))
16999                     {
17000                         Return (Zero)
17001                     }
17002 
17003                     RDCA (NCRN, 0x10, 0x00, 0x00, 0x03)
17004                     RDCA (NCRN, 0x14, 0x00, 0x00, 0x03)
17005                     RDCA (NCRN, 0x18, 0x00, 0x00, 0x03)
17006                     RDCA (NCRN, 0x1C, 0x00, 0x00, 0x03)
17007                     RDCA (NCRN, 0x20, 0x00, 0x00, 0x03)
17008                     RDCA (NCRN, 0x24, 0x00, 0x00, 0x03)
17009                     RDCA (NCRN, PRBI, 0x00, PRBD, 0x03)
17010                     RDCA (NCRN, 0x04, 0xFFFFFFF8, PCMD, 0x03)
17011                     If ((NL1V != 0x00))
17012                     {
17013                         RDCA (NCRN, (NL1V + 0x0C), 0xFFFFFF00, ND2V, 0x03)
17014                         RDCA (NCRN, (NL1V + 0x08), 0x0F, (ND1V & 0xFFFFFFF0), 0x03)
17015                         RDCA (NCRN, (NL1V + 0x08), 0xFFFFFFFF, ND1V, 0x03)
17016                     }
17017 
17018                     If ((NLRV != 0x00))
17019                     {
17020                         RDCA (NCRN, (NLRV + 0x04), 0xFFFFFFFF, NLDV, 0x03)
17021                     }
17022 
17023                     RDCA (NCRN, (NPCV + 0x10), 0xFFFFFEBF, (NEAV & 0xFFFC), 0x03)
17024                     RDCA (NCRN, (NPCV + 0x28), 0xFFFFFBFF, NECV, 0x03)
17025                     RDCA (NCRN, (NPCV + 0x08), 0xFFFFFF1F, NEBV, 0x03)
17026                     RDCA (NCRN, 0x68, 0xFFFFFBFF, NRAV, 0x01)
17027                     If (((NEAV & 0x40) == 0x40))
17028                     {
17029                         RDCA (NCRN, 0x50, 0xFFFFFFDF, 0x20, 0x01)
17030                         ADBG (Concatenate ("CNRSw ", ToDecimalString (Timer)))
17031                         While (((RDCA (NCRN, 0x52, 0x00, 0x00, 0x00) & 0x2000) == 0x00))
17032                         {
17033                             Stall (0x0A)
17034                         }
17035                     }
17036 
17037                     ADBG (Concatenate ("CNRSx ", ToDecimalString (Timer)))
17038                     RDCA (NCRN, (NPCV + 0x10), 0xFFFFFFFC, (NEAV & 0x03), 0x03)
17039                     If ((NMVV != 0x00))
17040                     {
17041                         RDCA (NCRN, NMBV, 0x00, NMVV, 0x03)
17042                     }
17043 
17044                     If ((NPVV != 0x00))
17045                     {
17046                         RDCA (NCRN, NPBV, 0x00, NPVV, 0x03)
17047                     }
17048 
17049                     ADBG (Concatenate ("CNRSe ", ToDecimalString (Timer)))
17050                 }
17051             }
17052 
17053             Device (NVM3)
17054             {
17055                 Name (_ADR, 0x00C3FFFF)  // _ADR: Address
17056                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
17057                 {
17058                     NITV = NIT3 /* \NIT3 */
17059                     NPMV = NPM3 /* \NPM3 */
17060                     NPCV = NPC3 /* \NPC3 */
17061                     NL1V = NL13 /* \NL13 */
17062                     ND2V = ND23 /* \ND23 */
17063                     ND1V = ND13 /* \ND13 */
17064                     NLRV = NLR3 /* \NLR3 */
17065                     NLDV = NLD3 /* \NLD3 */
17066                     NEAV = NEA3 /* \NEA3 */
17067                     NEBV = NEB3 /* \NEB3 */
17068                     NECV = NEC3 /* \NEC3 */
17069                     NRAV = NRA3 /* \NRA3 */
17070                     NMBV = NMB3 /* \NMB3 */
17071                     NMVV = NMV3 /* \NMV3 */
17072                     NPBV = NPB3 /* \NPB3 */
17073                     NPVV = NPV3 /* \NPV3 */
17074                     NRPN = NRP3 /* \NRP3 */
17075                     NCRN = 0x02
17076                 }
17077 
17078                 Name (PRBI, 0x00)
17079                 Name (PRBD, 0x00)
17080                 Name (PCMD, 0x00)
17081                 Name (NCRN, 0x00)
17082                 Name (NITV, 0x00)
17083                 Name (NPMV, 0x00)
17084                 Name (NPCV, 0x00)
17085                 Name (NL1V, 0x00)
17086                 Name (ND2V, 0x00)
17087                 Name (ND1V, 0x00)
17088                 Name (NLRV, 0x00)
17089                 Name (NLDV, 0x00)
17090                 Name (NEAV, 0x00)
17091                 Name (NEBV, 0x00)
17092                 Name (NECV, 0x00)
17093                 Name (NRAV, 0x00)
17094                 Name (NMBV, 0x00)
17095                 Name (NMVV, 0x00)
17096                 Name (NPBV, 0x00)
17097                 Name (NPVV, 0x00)
17098                 Name (NRPN, 0x00)
17099                 Name (MXIE, 0x00)
17100                 Name (ID3C, 0x00)
17101                 Name (ID3H, 0x00)
17102                 Name (CSAV, 0x00)
17103                 Method (_PS3, 0, Serialized)  // _PS3: Power State 3
17104                 {
17105                     ADBG (Concatenate ("_PS3r:", ToHexString (_ADR)))
17106                     If (IR3D ())
17107                     {
17108                         Return (Zero)
17109                     }
17110 
17111                     NVD3 ()
17112                 }
17113 
17114                 Method (_PS0, 0, Serialized)  // _PS0: Power State 0
17115                 {
17116                     ADBG (Concatenate ("_PS0r:", ToHexString (_ADR)))
17117                     If (IR3D ())
17118                     {
17119                         Return (Zero)
17120                     }
17121 
17122                     NVD0 ()
17123                 }
17124 
17125                 Method (RL23, 0, NotSerialized)
17126                 {
17127                     RDCA (NCRN, 0xE2, 0xFFFFFFFF, 0x04, 0x01)
17128                     Sleep (0x10)
17129                     Local0 = 0x00
17130                     While ((RDCA (NCRN, 0xE2, 0x00, 0x00, 0x00) & 0x04))
17131                     {
17132                         If ((Local0 > 0x04))
17133                         {
17134                             Break
17135                         }
17136 
17137                         Sleep (0x10)
17138                         Local0++
17139                     }
17140 
17141                     RDCA (NCRN, 0x0324, 0xFFFFFFFF, 0x08, 0x01)
17142                 }
17143 
17144                 Method (RLA, 0, NotSerialized)
17145                 {
17146                     RDCA (NCRN, 0x0420, 0xBFFFFFFF, 0x00, 0x01)
17147                     RDCA (NCRN, 0xE2, 0xFFFFFFFF, 0x08, 0x01)
17148                     Sleep (0x10)
17149                     Local0 = 0x00
17150                     While ((RDCA (NCRN, 0xE2, 0x00, 0x00, 0x00) & 0x08))
17151                     {
17152                         If ((Local0 > 0x04))
17153                         {
17154                             Break
17155                         }
17156 
17157                         Sleep (0x10)
17158                         Local0++
17159                     }
17160 
17161                     RDCA (NCRN, 0x0420, 0xFFFFFFFF, 0x40000000, 0x01)
17162                     Local0 = 0x00
17163                     While (((RDCA (NCRN, 0x52, 0x00, 0x00, 0x00) & 0x2000) == 0x00))
17164                     {
17165                         If ((Local0 > 0x08))
17166                         {
17167                             Break
17168                         }
17169 
17170                         Sleep (0x10)
17171                         Local0++
17172                     }
17173 
17174                     RDCA (NCRN, 0x0324, 0xFFFFFFF7, 0x00, 0x01)
17175                 }
17176 
17177                 Method (RPON, 0, Serialized)
17178                 {
17179                     ADBG (Concatenate ("RPONs: ", ToHexString (_ADR)))
17180                     If ((ID3C == 0x00))
17181                     {
17182                         ADBG ("RPON: no D3C")
17183                         Return (Zero)
17184                     }
17185 
17186                     \_SB.PCI0.SAT0.RSON (NRPN)
17187                     RLA ()
17188                     Sleep (0x64)
17189                     ID3C = 0x00
17190                     ADBG (Concatenate ("RPONe: ", ToHexString (_ADR)))
17191                 }
17192 
17193                 Method (RPOF, 0, Serialized)
17194                 {
17195                     ADBG (Concatenate ("RPOFs: ", ToHexString (_ADR)))
17196                     If ((ID3H == 0x00))
17197                     {
17198                         ADBG ("RPOF: No D3H")
17199                         BreakPoint
17200                         Return (Zero)
17201                     }
17202 
17203                     If (!D3CS (NRPN))
17204                     {
17205                         Return (Zero)
17206                     }
17207 
17208                     RL23 ()
17209                     \_SB.PCI0.SAT0.RSOF (NRPN)
17210                     ID3C = 0x01
17211                 }
17212 
17213                 Method (SAVC, 0, Serialized)
17214                 {
17215                     ADBG (Concatenate ("SAVC:", ToHexString (_ADR)))
17216                     PCMD = RDCA (NCRN, 0x04, 0x00, 0x00, 0x02)
17217                     If ((NITV == 0x01))
17218                     {
17219                         PRBI = 0x24
17220                         PRBD = RDCA (NCRN, 0x24, 0x00, 0x00, 0x02)
17221                     }
17222                     ElseIf ((NITV == 0x02))
17223                     {
17224                         PRBI = 0x10
17225                         PRBD = RDCA (NCRN, 0x10, 0x00, 0x00, 0x02)
17226                         OperationRegion (MCRC, SystemMemory, (\_SB.PCI0.GPCB () + (0x000B8000 + 0x033C)), 0x04)
17227                         Field (MCRC, AnyAcc, NoLock, Preserve)
17228                         {
17229                             SCSO,   8, 
17230                             Offset (0x02), 
17231                             TCSO,   8, 
17232                                 ,   7, 
17233                             RE,     1
17234                         }
17235 
17236                         MXIE = RDCA (NCRN, TCSO, 0x00, 0x00, 0x02)
17237                     }
17238 
17239                     CSAV = 0x01
17240                 }
17241 
17242                 Method (NVD3, 0, Serialized)
17243                 {
17244                     ADBG (Concatenate ("NVD3:", ToHexString (_ADR)))
17245                     If ((NITV == 0x00))
17246                     {
17247                         Return (Zero)
17248                     }
17249 
17250                     If ((ID3H == 0x01))
17251                     {
17252                         ADBG ("Skip in D3")
17253                         Return (Zero)
17254                     }
17255 
17256                     SAVC ()
17257                     RDCA (NCRN, (NPMV + 0x04), 0xFFFFFFFC, 0x03, 0x03)
17258                     RDCA (NCRN, 0xA4, 0xFFFFFFFC, 0x03, 0x01)
17259                     ID3H = 0x01
17260                     Return (Zero)
17261                 }
17262 
17263                 Method (NVD0, 0, Serialized)
17264                 {
17265                     ADBG (Concatenate ("NVD0:", ToHexString (_ADR)))
17266                     If ((NITV == 0x00))
17267                     {
17268                         Return (Zero)
17269                     }
17270 
17271                     If ((ID3H == 0x00))
17272                     {
17273                         ADBG ("Remap already in D0")
17274                         Return (Zero)
17275                     }
17276 
17277                     RDCA (NCRN, 0xA4, 0xFFFFFFFC, 0x00, 0x01)
17278                     RDCA (NCRN, (NPMV + 0x04), 0xFFFFFFFC, 0x00, 0x03)
17279                     If ((CSAV == 0x01))
17280                     {
17281                         CNRS ()
17282                         If ((NITV == 0x02))
17283                         {
17284                             OperationRegion (MCRC, SystemMemory, (\_SB.PCI0.GPCB () + (0x000B8000 + 0x033C)), 0x04)
17285                             Field (MCRC, AnyAcc, NoLock, Preserve)
17286                             {
17287                                 SCSO,   8, 
17288                                 Offset (0x02), 
17289                                 TCSO,   8, 
17290                                     ,   7, 
17291                                 RE,     1
17292                             }
17293 
17294                             RDCA (NCRN, TCSO, 0xFFFFFFFF, (MXIE & 0x80000000), 0x03)
17295                             ADBG ("NVD0:  MSIXe")
17296                         }
17297                     }
17298                     Else
17299                     {
17300                         ADBG ("Skip remap restore")
17301                     }
17302 
17303                     ID3H = 0x00
17304                     Return (Zero)
17305                 }
17306 
17307                 Method (CNRS, 0, Serialized)
17308                 {
17309                     ADBG (Concatenate ("CNRSs ", ToDecimalString (Timer)))
17310                     If ((NITV == 0x00))
17311                     {
17312                         Return (Zero)
17313                     }
17314 
17315                     RDCA (NCRN, 0x10, 0x00, 0x00, 0x03)
17316                     RDCA (NCRN, 0x14, 0x00, 0x00, 0x03)
17317                     RDCA (NCRN, 0x18, 0x00, 0x00, 0x03)
17318                     RDCA (NCRN, 0x1C, 0x00, 0x00, 0x03)
17319                     RDCA (NCRN, 0x20, 0x00, 0x00, 0x03)
17320                     RDCA (NCRN, 0x24, 0x00, 0x00, 0x03)
17321                     RDCA (NCRN, PRBI, 0x00, PRBD, 0x03)
17322                     RDCA (NCRN, 0x04, 0xFFFFFFF8, PCMD, 0x03)
17323                     If ((NL1V != 0x00))
17324                     {
17325                         RDCA (NCRN, (NL1V + 0x0C), 0xFFFFFF00, ND2V, 0x03)
17326                         RDCA (NCRN, (NL1V + 0x08), 0x0F, (ND1V & 0xFFFFFFF0), 0x03)
17327                         RDCA (NCRN, (NL1V + 0x08), 0xFFFFFFFF, ND1V, 0x03)
17328                     }
17329 
17330                     If ((NLRV != 0x00))
17331                     {
17332                         RDCA (NCRN, (NLRV + 0x04), 0xFFFFFFFF, NLDV, 0x03)
17333                     }
17334 
17335                     RDCA (NCRN, (NPCV + 0x10), 0xFFFFFEBF, (NEAV & 0xFFFC), 0x03)
17336                     RDCA (NCRN, (NPCV + 0x28), 0xFFFFFBFF, NECV, 0x03)
17337                     RDCA (NCRN, (NPCV + 0x08), 0xFFFFFF1F, NEBV, 0x03)
17338                     RDCA (NCRN, 0x68, 0xFFFFFBFF, NRAV, 0x01)
17339                     If (((NEAV & 0x40) == 0x40))
17340                     {
17341                         RDCA (NCRN, 0x50, 0xFFFFFFDF, 0x20, 0x01)
17342                         ADBG (Concatenate ("CNRSw ", ToDecimalString (Timer)))
17343                         While (((RDCA (NCRN, 0x52, 0x00, 0x00, 0x00) & 0x2000) == 0x00))
17344                         {
17345                             Stall (0x0A)
17346                         }
17347                     }
17348 
17349                     ADBG (Concatenate ("CNRSx ", ToDecimalString (Timer)))
17350                     RDCA (NCRN, (NPCV + 0x10), 0xFFFFFFFC, (NEAV & 0x03), 0x03)
17351                     If ((NMVV != 0x00))
17352                     {
17353                         RDCA (NCRN, NMBV, 0x00, NMVV, 0x03)
17354                     }
17355 
17356                     If ((NPVV != 0x00))
17357                     {
17358                         RDCA (NCRN, NPBV, 0x00, NPVV, 0x03)
17359                     }
17360 
17361                     ADBG (Concatenate ("CNRSe ", ToDecimalString (Timer)))
17362                 }
17363             }
17364 
17365             Method (RDCA, 5, Serialized)
17366             {
17367                 OperationRegion (RPAL, SystemMemory, (\_SB.PCI0.GPCB () + ((0x000B8000 + 0x0100) + Arg1)), 0x04)
17368                 Field (RPAL, DWordAcc, Lock, Preserve)
17369                 {
17370                     RPCD,   32
17371                 }
17372 
17373                 OperationRegion (EPAC, SystemMemory, (\_SB.PCI0.GPCB () + (0x000B8000 + 0x0308)), 0x08)
17374                 Field (EPAC, DWordAcc, Lock, Preserve)
17375                 {
17376                     CAIR,   32, 
17377                     CADR,   32
17378                 }
17379 
17380                 OperationRegion (NCRG, SystemMemory, (\_SB.PCI0.GPCB () + (0x000B8000 + 0x0FC0)), 0x04)
17381                 Field (NCRG, DWordAcc, Lock, Preserve)
17382                 {
17383                     CRGC,   32
17384                 }
17385 
17386                 If ((Arg0 > 0x02))
17387                 {
17388                     Return (0x00)
17389                 }
17390                 Else
17391                 {
17392                     CRGC = Arg0
17393                 }
17394 
17395                 Switch (ToInteger (Arg4))
17396                 {
17397                     Case (0x00)
17398                     {
17399                         Return (RPCD) /* \_SB_.PCI0.SAT0.RDCA.RPCD */
17400                     }
17401                     Case (0x02)
17402                     {
17403                         CAIR = Arg1
17404                         Return (CADR) /* \_SB_.PCI0.SAT0.RDCA.CADR */
17405                     }
17406                     Case (0x01)
17407                     {
17408                         Local0 = (Arg2 & RPCD) /* \_SB_.PCI0.SAT0.RDCA.RPCD */
17409                         Local0 |= Arg3
17410                         RPCD = Local0
17411                     }
17412                     Case (0x03)
17413                     {
17414                         CAIR = Arg1
17415                         Local0 = (Arg2 & CADR) /* \_SB_.PCI0.SAT0.RDCA.CADR */
17416                         Local0 |= Arg3
17417                         CADR = Local0
17418                     }
17419                     Default
17420                     {
17421                         Return (0x00)
17422                     }
17423 
17424                 }
17425 
17426                 Return (0x00)
17427             }
17428 
17429             Method (D3CS, 1, Serialized)
17430             {
17431                 Switch (Arg0)
17432                 {
17433                     Case (0x04)
17434                     {
17435                         If (CondRefOf (\_SB.PCI0.RP05.POFF))
17436                         {
17437                             Return (0x01)
17438                         }
17439                     }
17440                     Case (0x06)
17441                     {
17442                         If (CondRefOf (\_SB.PCI0.RP07.POFF))
17443                         {
17444                             Return (0x01)
17445                         }
17446                     }
17447                     Case (0x08)
17448                     {
17449                         If (CondRefOf (\_SB.PCI0.RP09.POFF))
17450                         {
17451                             Return (0x01)
17452                         }
17453                     }
17454                     Case (0x0A)
17455                     {
17456                         If (CondRefOf (\_SB.PCI0.RP11.POFF))
17457                         {
17458                             Return (0x01)
17459                         }
17460                     }
17461                     Case (0x0C)
17462                     {
17463                         If (CondRefOf (\_SB.PCI0.RP13.POFF))
17464                         {
17465                             Return (0x01)
17466                         }
17467                     }
17468                     Case (0x0E)
17469                     {
17470                         If (CondRefOf (\_SB.PCI0.RP15.POFF))
17471                         {
17472                             Return (0x01)
17473                         }
17474                     }
17475                     Case (0x10)
17476                     {
17477                         If (CondRefOf (\_SB.PCI0.RP17.POFF))
17478                         {
17479                             Return (0x01)
17480                         }
17481                     }
17482                     Case (0x12)
17483                     {
17484                         If (CondRefOf (\_SB.PCI0.RP19.POFF))
17485                         {
17486                             Return (0x01)
17487                         }
17488                     }
17489                     Case (0x14)
17490                     {
17491                         If (CondRefOf (\_SB.PCI0.RP21.POFF))
17492                         {
17493                             Return (0x01)
17494                         }
17495                     }
17496                     Case (0x16)
17497                     {
17498                         If (CondRefOf (\_SB.PCI0.RP23.POFF))
17499                         {
17500                             Return (0x01)
17501                         }
17502                     }
17503 
17504                 }
17505 
17506                 Return (0x00)
17507             }
17508 
17509             Method (RSON, 1, Serialized)
17510             {
17511                 Switch (Arg0)
17512                 {
17513                     Case (0x04)
17514                     {
17515                         If (CondRefOf (\_SB.PCI0.RP05.PON))
17516                         {
17517                             \_SB.PCI0.RP05.PON ()
17518                         }
17519                     }
17520                     Case (0x06)
17521                     {
17522                         If (CondRefOf (\_SB.PCI0.RP07.PON))
17523                         {
17524                             \_SB.PCI0.RP07.PON ()
17525                         }
17526                     }
17527                     Case (0x08)
17528                     {
17529                         If (CondRefOf (\_SB.PCI0.RP09.PON))
17530                         {
17531                             \_SB.PCI0.RP09.PON ()
17532                         }
17533                     }
17534                     Case (0x0A)
17535                     {
17536                         If (CondRefOf (\_SB.PCI0.RP11.PON))
17537                         {
17538                             \_SB.PCI0.RP11.PON ()
17539                         }
17540                     }
17541                     Case (0x0C)
17542                     {
17543                         If (CondRefOf (\_SB.PCI0.RP13.PON))
17544                         {
17545                             \_SB.PCI0.RP13.PON ()
17546                         }
17547                     }
17548                     Case (0x0E)
17549                     {
17550                         If (CondRefOf (\_SB.PCI0.RP15.PON))
17551                         {
17552                             \_SB.PCI0.RP15.PON ()
17553                         }
17554                     }
17555                     Case (0x10)
17556                     {
17557                         If (CondRefOf (\_SB.PCI0.RP17.PON))
17558                         {
17559                             \_SB.PCI0.RP17.PON ()
17560                         }
17561                     }
17562                     Case (0x12)
17563                     {
17564                         If (CondRefOf (\_SB.PCI0.RP19.PON))
17565                         {
17566                             \_SB.PCI0.RP19.PON ()
17567                         }
17568                     }
17569                     Case (0x14)
17570                     {
17571                         If (CondRefOf (\_SB.PCI0.RP21.PON))
17572                         {
17573                             \_SB.PCI0.RP21.PON ()
17574                         }
17575                     }
17576                     Case (0x16)
17577                     {
17578                         If (CondRefOf (\_SB.PCI0.RP23.PON))
17579                         {
17580                             \_SB.PCI0.RP23.PON ()
17581                         }
17582                     }
17583 
17584                 }
17585             }
17586 
17587             Method (RSOF, 1, Serialized)
17588             {
17589                 Switch (Arg0)
17590                 {
17591                     Case (0x04)
17592                     {
17593                         If (CondRefOf (\_SB.PCI0.RP05.POFF))
17594                         {
17595                             \_SB.PCI0.RP05.POFF ()
17596                         }
17597                     }
17598                     Case (0x06)
17599                     {
17600                         If (CondRefOf (\_SB.PCI0.RP07.POFF))
17601                         {
17602                             \_SB.PCI0.RP07.POFF ()
17603                         }
17604                     }
17605                     Case (0x08)
17606                     {
17607                         If (CondRefOf (\_SB.PCI0.RP09.POFF))
17608                         {
17609                             \_SB.PCI0.RP09.POFF ()
17610                         }
17611                     }
17612                     Case (0x0A)
17613                     {
17614                         If (CondRefOf (\_SB.PCI0.RP11.POFF))
17615                         {
17616                             \_SB.PCI0.RP11.POFF ()
17617                         }
17618                     }
17619                     Case (0x0C)
17620                     {
17621                         If (CondRefOf (\_SB.PCI0.RP13.POFF))
17622                         {
17623                             \_SB.PCI0.RP13.POFF ()
17624                         }
17625                     }
17626                     Case (0x0E)
17627                     {
17628                         If (CondRefOf (\_SB.PCI0.RP15.POFF))
17629                         {
17630                             \_SB.PCI0.RP15.POFF ()
17631                         }
17632                     }
17633                     Case (0x10)
17634                     {
17635                         If (CondRefOf (\_SB.PCI0.RP17.POFF))
17636                         {
17637                             \_SB.PCI0.RP17.POFF ()
17638                         }
17639                     }
17640                     Case (0x12)
17641                     {
17642                         If (CondRefOf (\_SB.PCI0.RP19.POFF))
17643                         {
17644                             \_SB.PCI0.RP19.POFF ()
17645                         }
17646                     }
17647                     Case (0x14)
17648                     {
17649                         If (CondRefOf (\_SB.PCI0.RP21.POFF))
17650                         {
17651                             \_SB.PCI0.RP21.POFF ()
17652                         }
17653                     }
17654                     Case (0x16)
17655                     {
17656                         If (CondRefOf (\_SB.PCI0.RP23.POFF))
17657                         {
17658                             \_SB.PCI0.RP23.POFF ()
17659                         }
17660                     }
17661 
17662                 }
17663             }
17664 
17665             Name (VL0M, 0x00)
17666             Name (VL1M, 0x00)
17667             Name (VL2M, 0x00)
17668             Name (VR3A, 0x01)
17669             Method (IRM, 1, NotSerialized)
17670             {
17671                 If ((VL0M & Arg0))
17672                 {
17673                     Return (0x01)
17674                 }
17675                 ElseIf ((VL1M & Arg0))
17676                 {
17677                     Return (0x01)
17678                 }
17679                 ElseIf ((VL2M & Arg0))
17680                 {
17681                     Return (0x01)
17682                 }
17683                 Else
17684                 {
17685                     Return (0x00)
17686                 }
17687             }
17688 
17689             Method (PD3C, 1, NotSerialized)
17690             {
17691                 Return ((!VR3A || IRM (Arg0)))
17692             }
17693 
17694             Scope (PRT0)
17695             {
17696                 Method (IR3D, 0, NotSerialized)
17697                 {
17698                     Return (PD3C (0x01))
17699                 }
17700             }
17701 
17702             Scope (PRT1)
17703             {
17704                 Method (IR3D, 0, NotSerialized)
17705                 {
17706                     Return (PD3C (0x02))
17707                 }
17708             }
17709 
17710             Scope (PRT2)
17711             {
17712                 Method (IR3D, 0, NotSerialized)
17713                 {
17714                     Return (PD3C (0x04))
17715                 }
17716             }
17717 
17718             Scope (PRT3)
17719             {
17720                 Method (IR3D, 0, NotSerialized)
17721                 {
17722                     Return (PD3C (0x08))
17723                 }
17724             }
17725 
17726             Scope (PRT4)
17727             {
17728                 Method (IR3D, 0, NotSerialized)
17729                 {
17730                     Return (PD3C (0x10))
17731                 }
17732             }
17733 
17734             Scope (PRT5)
17735             {
17736                 Method (IR3D, 0, NotSerialized)
17737                 {
17738                     Return (PD3C (0x20))
17739                 }
17740             }
17741 
17742             Scope (NVM1)
17743             {
17744                 Method (IR3D, 0, NotSerialized)
17745                 {
17746                     Return (PD3C (0x0100))
17747                 }
17748             }
17749 
17750             Scope (NVM2)
17751             {
17752                 Method (IR3D, 0, NotSerialized)
17753                 {
17754                     Return (PD3C (0x0200))
17755                 }
17756             }
17757 
17758             Scope (NVM3)
17759             {
17760                 Method (IR3D, 0, NotSerialized)
17761                 {
17762                     Return (PD3C (0x0400))
17763                 }
17764             }
17765 
17766             Method (RSTD, 5, Serialized)
17767             {
17768                 If ((Arg0 == ToUUID ("e03e3431-e510-4fa2-abc0-2d7e901245fe")))
17769                 {
17770                     Switch (ToInteger (Arg2))
17771                     {
17772                         Case (0x00)
17773                         {
17774                             Name (RBUF, Buffer (0x01)
17775                             {
17776                                  0x00                                             // .
17777                             })
17778                             CreateByteField (RBUF, 0x00, SFUN)
17779                             SFUN = 0x3F
17780                             Return (RBUF) /* \_SB_.PCI0.SAT0.RSTD.RBUF */
17781                         }
17782                         Case (0x01)
17783                         {
17784                             Arg4 = DerefOf (Arg3 [0x00])
17785                             Local0 = DerefOf (Arg3 [0x00])
17786                             ADBG (Concatenate ("RSTD.SET:", ToHexString (Local0)))
17787                             Return (Package (0x01)
17788                             {
17789                                 0x00
17790                             })
17791                         }
17792                         Case (0x02)
17793                         {
17794                             Local0 = DerefOf (Arg3 [0x00])
17795                             ADBG (Concatenate ("RSTD.ON:", ToHexString (Local0)))
17796                             \_SB.PCI0.SAT0.CPON (Local0)
17797                             Return (Package (0x01)
17798                             {
17799                                 0x00
17800                             })
17801                         }
17802                         Case (0x03)
17803                         {
17804                             Local0 = DerefOf (Arg3 [0x00])
17805                             ADBG (Concatenate ("RSTD.OFF:", ToHexString (Local0)))
17806                             \_SB.PCI0.SAT0.CPOF (Local0)
17807                             Return (Package (0x01)
17808                             {
17809                                 0x00
17810                             })
17811                         }
17812                         Case (0x04)
17813                         {
17814                             Name (GETM, Buffer (0x01)
17815                             {
17816                                  0x00                                             // .
17817                             })
17818                             CreateByteField (GETM, 0x00, GMSK)
17819                             GMSK = Arg4
17820                             ADBG (Concatenate ("RSTD.GET:", ToHexString (GMSK)))
17821                             Return (GETM) /* \_SB_.PCI0.SAT0.RSTD.GETM */
17822                         }
17823                         Case (0x05)
17824                         {
17825                             VR3A = DerefOf (Arg3 [0x00])
17826                             ADBG (Concatenate ("RSTD.D3A:", ToHexString (VR3A)))
17827                             Return (0x00)
17828                         }
17829                         Default
17830                         {
17831                             Return (Package (0x01)
17832                             {
17833                                 0x02
17834                             })
17835                         }
17836 
17837                     }
17838                 }
17839                 Else
17840                 {
17841                     Return (Buffer (0x01)
17842                     {
17843                          0x00                                             // .
17844                     })
17845                 }
17846             }
17847 
17848             Method (D3AS, 3, Serialized)
17849             {
17850                 Switch (Arg1)
17851                 {
17852                     Case (0x00)
17853                     {
17854                         Return (Buffer (0x01)
17855                         {
17856                              0x03                                             // .
17857                         })
17858                     }
17859                     Case (0x01)
17860                     {
17861                         If ((PSON == 0x01))
17862                         {
17863                             Return (Buffer (0x01)
17864                             {
17865                                  0x01                                             // .
17866                             })
17867                         }
17868                         Else
17869                         {
17870                             Return (Buffer (0x01)
17871                             {
17872                                  0x00                                             // .
17873                             })
17874                         }
17875                     }
17876 
17877                 }
17878 
17879                 Return (Buffer (0x01)
17880                 {
17881                      0x00                                             // .
17882                 })
17883             }
17884 
17885             Method (CPON, 1, Serialized)
17886             {
17887                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT0.SPON) && (Arg0 & 0x01)))
17888                 {
17889                     \_SB.PCI0.SAT0.PRT0.SPON ()
17890                 }
17891 
17892                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT1.SPON) && (Arg0 & 0x02)))
17893                 {
17894                     \_SB.PCI0.SAT0.PRT1.SPON ()
17895                 }
17896 
17897                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT2.SPON) && (Arg0 & 0x04)))
17898                 {
17899                     \_SB.PCI0.SAT0.PRT2.SPON ()
17900                 }
17901 
17902                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT3.SPON) && (Arg0 & 0x08)))
17903                 {
17904                     \_SB.PCI0.SAT0.PRT3.SPON ()
17905                 }
17906 
17907                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT4.SPON) && (Arg0 & 0x10)))
17908                 {
17909                     \_SB.PCI0.SAT0.PRT4.SPON ()
17910                 }
17911 
17912                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT5.SPON) && (Arg0 & 0x20)))
17913                 {
17914                     \_SB.PCI0.SAT0.PRT5.SPON ()
17915                 }
17916 
17917                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM1.RPON) && (Arg0 & 0x0100)))
17918                 {
17919                     \_SB.PCI0.SAT0.NVM1.RPON ()
17920                 }
17921 
17922                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM1.NVD0) && (Arg0 & 0x0100)))
17923                 {
17924                     \_SB.PCI0.SAT0.NVM1.NVD0 ()
17925                 }
17926 
17927                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM2.RPON) && (Arg0 & 0x0200)))
17928                 {
17929                     \_SB.PCI0.SAT0.NVM2.RPON ()
17930                 }
17931 
17932                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM2.NVD0) && (Arg0 & 0x0200)))
17933                 {
17934                     \_SB.PCI0.SAT0.NVM2.NVD0 ()
17935                 }
17936 
17937                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM3.RPON) && (Arg0 & 0x0400)))
17938                 {
17939                     \_SB.PCI0.SAT0.NVM3.RPON ()
17940                 }
17941 
17942                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM3.NVD0) && (Arg0 & 0x0400)))
17943                 {
17944                     \_SB.PCI0.SAT0.NVM3.NVD0 ()
17945                 }
17946             }
17947 
17948             Method (CPOF, 1, Serialized)
17949             {
17950                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT0.SPOF) && (Arg0 & 0x01)))
17951                 {
17952                     \_SB.PCI0.SAT0.PRT0.SPOF ()
17953                 }
17954 
17955                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT1.SPOF) && (Arg0 & 0x02)))
17956                 {
17957                     \_SB.PCI0.SAT0.PRT1.SPOF ()
17958                 }
17959 
17960                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT2.SPOF) && (Arg0 & 0x04)))
17961                 {
17962                     \_SB.PCI0.SAT0.PRT2.SPOF ()
17963                 }
17964 
17965                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT3.SPOF) && (Arg0 & 0x08)))
17966                 {
17967                     \_SB.PCI0.SAT0.PRT3.SPOF ()
17968                 }
17969 
17970                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT4.SPOF) && (Arg0 & 0x10)))
17971                 {
17972                     \_SB.PCI0.SAT0.PRT4.SPOF ()
17973                 }
17974 
17975                 If ((CondRefOf (\_SB.PCI0.SAT0.PRT5.SPOF) && (Arg0 & 0x20)))
17976                 {
17977                     \_SB.PCI0.SAT0.PRT5.SPOF ()
17978                 }
17979 
17980                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM1.NVD3) && (Arg0 & 0x0100)))
17981                 {
17982                     \_SB.PCI0.SAT0.NVM1.NVD3 ()
17983                 }
17984 
17985                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM1.RPOF) && (Arg0 & 0x0100)))
17986                 {
17987                     \_SB.PCI0.SAT0.NVM1.RPOF ()
17988                 }
17989 
17990                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM2.NVD3) && (Arg0 & 0x0200)))
17991                 {
17992                     \_SB.PCI0.SAT0.NVM2.NVD3 ()
17993                 }
17994 
17995                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM2.RPOF) && (Arg0 & 0x0200)))
17996                 {
17997                     \_SB.PCI0.SAT0.NVM2.RPOF ()
17998                 }
17999 
18000                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM3.NVD3) && (Arg0 & 0x0400)))
18001                 {
18002                     \_SB.PCI0.SAT0.NVM3.NVD3 ()
18003                 }
18004 
18005                 If ((CondRefOf (\_SB.PCI0.SAT0.NVM3.RPOF) && (Arg0 & 0x0400)))
18006                 {
18007                     \_SB.PCI0.SAT0.NVM3.RPOF ()
18008                 }
18009             }
18010 
18011             Device (VOL0)
18012             {
18013                 Name (_ADR, 0x0080FFFF)  // _ADR: Address
18014                 Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
18015                 {
18016                     V0PR
18017                 })
18018                 Name (_PR3, Package (0x01)  // _PR3: Power Resources for D3hot
18019                 {
18020                     V0PR
18021                 })
18022                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18023                 {
18024                     Return (\_SB.PCI0.SAT0.RSTD (Arg0, Arg1, Arg2, Arg3, RefOf (\_SB.PCI0.SAT0.VL0M)))
18025                 }
18026 
18027                 PowerResource (V0PR, 0x00, 0x0000)
18028                 {
18029                     Name (_STA, 0x01)  // _STA: Status
18030                     Method (_ON, 0, NotSerialized)  // _ON_: Power On
18031                     {
18032                         ADBG (Concatenate ("VOL0._ON:", ToHexString (VL0M)))
18033                         If (VR3A)
18034                         {
18035                             \_SB.PCI0.SAT0.CPON (VL0M)
18036                             _STA = 0x01
18037                         }
18038                         Else
18039                         {
18040                             ADBG ("Global RTD3 lock")
18041                         }
18042                     }
18043 
18044                     Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
18045                     {
18046                         ADBG (Concatenate ("VOL0._OFF:", ToHexString (VL0M)))
18047                         If (VR3A)
18048                         {
18049                             \_SB.PCI0.SAT0.CPOF (VL0M)
18050                             _STA = 0x00
18051                         }
18052                         Else
18053                         {
18054                             ADBG ("Global RTD3 lock")
18055                         }
18056                     }
18057                 }
18058             }
18059 
18060             Device (VOL1)
18061             {
18062                 Name (_ADR, 0x0081FFFF)  // _ADR: Address
18063                 Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
18064                 {
18065                     V1PR
18066                 })
18067                 Name (_PR3, Package (0x01)  // _PR3: Power Resources for D3hot
18068                 {
18069                     V1PR
18070                 })
18071                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18072                 {
18073                     Return (\_SB.PCI0.SAT0.RSTD (Arg0, Arg1, Arg2, Arg3, RefOf (\_SB.PCI0.SAT0.VL1M)))
18074                 }
18075 
18076                 PowerResource (V1PR, 0x00, 0x0000)
18077                 {
18078                     Name (_STA, 0x01)  // _STA: Status
18079                     Method (_ON, 0, NotSerialized)  // _ON_: Power On
18080                     {
18081                         ADBG (Concatenate ("VOL1._ON:", ToHexString (VL1M)))
18082                         If (VR3A)
18083                         {
18084                             \_SB.PCI0.SAT0.CPON (VL1M)
18085                             _STA = 0x01
18086                         }
18087                         Else
18088                         {
18089                             ADBG ("Global RTD3 lock")
18090                         }
18091                     }
18092 
18093                     Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
18094                     {
18095                         ADBG (Concatenate ("VOL1._OFF:", ToHexString (VL1M)))
18096                         If (VR3A)
18097                         {
18098                             \_SB.PCI0.SAT0.CPOF (VL1M)
18099                             _STA = 0x00
18100                         }
18101                         Else
18102                         {
18103                             ADBG ("Global RTD3 lock")
18104                         }
18105                     }
18106                 }
18107             }
18108 
18109             Device (VOL2)
18110             {
18111                 Name (_ADR, 0x0082FFFF)  // _ADR: Address
18112                 Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
18113                 {
18114                     V2PR
18115                 })
18116                 Name (_PR3, Package (0x01)  // _PR3: Power Resources for D3hot
18117                 {
18118                     V2PR
18119                 })
18120                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18121                 {
18122                     Return (\_SB.PCI0.SAT0.RSTD (Arg0, Arg1, Arg2, Arg3, RefOf (\_SB.PCI0.SAT0.VL2M)))
18123                 }
18124 
18125                 PowerResource (V2PR, 0x00, 0x0000)
18126                 {
18127                     Name (_STA, 0x01)  // _STA: Status
18128                     Method (_ON, 0, NotSerialized)  // _ON_: Power On
18129                     {
18130                         ADBG (Concatenate ("VOL2._ON:", ToHexString (VL2M)))
18131                         If (VR3A)
18132                         {
18133                             \_SB.PCI0.SAT0.CPON (VL2M)
18134                             _STA = 0x01
18135                         }
18136                         Else
18137                         {
18138                             ADBG ("Global RTD3 lock")
18139                         }
18140                     }
18141 
18142                     Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
18143                     {
18144                         ADBG (Concatenate ("VOL2._OFF:", ToHexString (VL2M)))
18145                         If (VR3A)
18146                         {
18147                             \_SB.PCI0.SAT0.CPOF (VL2M)
18148                             _STA = 0x00
18149                         }
18150                         Else
18151                         {
18152                             ADBG ("Global RTD3 lock")
18153                         }
18154                     }
18155                 }
18156             }
18157         }
18158     }
18159 
18160     Scope (\_SB.PCI0)
18161     {
18162         Device (GPI0)
18163         {
18164             Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
18165             {
18166                 If ((GPHD == 0x01))
18167                 {
18168                     Return ("PNP0C02")
18169                 }
18170 
18171                 If ((PCHS == PCHH))
18172                 {
18173                     Return ("INT3450")
18174                 }
18175 
18176                 Return ("INT34BB")
18177             }
18178 
18179             Name (LINK, "\\_SB.PCI0.GPI0")
18180             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18181             {
18182                 Name (RBUF, ResourceTemplate ()
18183                 {
18184                     Memory32Fixed (ReadWrite,
18185                         0x00000000,         // Address Base
18186                         0x00010000,         // Address Length
18187                         _Y20)
18188                     Memory32Fixed (ReadWrite,
18189                         0x00000000,         // Address Base
18190                         0x00010000,         // Address Length
18191                         _Y21)
18192                     Memory32Fixed (ReadWrite,
18193                         0x00000000,         // Address Base
18194                         0x00010000,         // Address Length
18195                         _Y23)
18196                     Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, _Y22)
18197                     {
18198                         0x0000000E,
18199                     }
18200                 })
18201                 Name (CBUF, ResourceTemplate ()
18202                 {
18203                     Memory32Fixed (ReadWrite,
18204                         0x00000000,         // Address Base
18205                         0x00010000,         // Address Length
18206                         _Y24)
18207                 })
18208                 CreateDWordField (RBUF, \_SB.PCI0.GPI0._CRS._Y20._BAS, COM0)  // _BAS: Base Address
18209                 CreateDWordField (RBUF, \_SB.PCI0.GPI0._CRS._Y21._BAS, COM1)  // _BAS: Base Address
18210                 CreateDWordField (RBUF, \_SB.PCI0.GPI0._CRS._Y22._INT, IRQN)  // _INT: Interrupts
18211                 COM0 = (SBRG + 0x006E0000)
18212                 COM1 = (SBRG + 0x006D0000)
18213                 IRQN = SGIR /* \SGIR */
18214                 If ((PCHS == PCHH))
18215                 {
18216                     CreateDWordField (RBUF, \_SB.PCI0.GPI0._CRS._Y23._BAS, CMH3)  // _BAS: Base Address
18217                     CMH3 = (SBRG + 0x006B0000)
18218                     CreateDWordField (CBUF, \_SB.PCI0.GPI0._CRS._Y24._BAS, CMH4)  // _BAS: Base Address
18219                     CMH4 = (SBRG + 0x006A0000)
18220                     Return (ConcatenateResTemplate (RBUF, CBUF))
18221                 }
18222                 Else
18223                 {
18224                     CreateDWordField (RBUF, \_SB.PCI0.GPI0._CRS._Y23._BAS, CML4)  // _BAS: Base Address
18225                     CML4 = (SBRG + 0x006A0000)
18226                     Return (RBUF) /* \_SB_.PCI0.GPI0._CRS.RBUF */
18227                 }
18228             }
18229 
18230             Method (_STA, 0, NotSerialized)  // _STA: Status
18231             {
18232                 If ((GPHD == 0x01))
18233                 {
18234                     Return (0x03)
18235                 }
18236 
18237                 Return (0x0F)
18238             }
18239         }
18240     }
18241 
18242     Scope (\_SB.PCI0)
18243     {
18244         Method (LPD3, 2, Serialized)
18245         {
18246             OperationRegion (ICB1, SystemMemory, Arg0, (0x84 + 0x04))
18247             Field (ICB1, AnyAcc, NoLock, Preserve)
18248             {
18249                 Offset (0x10), 
18250                 BAR0,   64
18251             }
18252 
18253             Field (ICB1, ByteAcc, NoLock, Preserve)
18254             {
18255                 Offset (0x84), 
18256                 PMEC,   8
18257             }
18258 
18259             PMEC = 0x03
18260             TEMP = PMEC /* \_SB_.PCI0.LPD3.PMEC */
18261             If ((Arg1 == 0x01))
18262             {
18263                 BAR0 = 0x00
18264             }
18265         }
18266 
18267         Method (LPD0, 1, Serialized)
18268         {
18269             OperationRegion (ICB1, SystemMemory, (Arg0 + 0x84), 0x04)
18270             Field (ICB1, DWordAcc, NoLock, Preserve)
18271             {
18272                 PMEC,   32
18273             }
18274 
18275             PMEC &= 0xFFFF7FFC
18276             TEMP = PMEC /* \_SB_.PCI0.LPD0.PMEC */
18277         }
18278 
18279         Method (LHRV, 1, Serialized)
18280         {
18281             OperationRegion (ICB1, SystemMemory, (Arg0 + 0x08), 0x04)
18282             Field (ICB1, DWordAcc, NoLock, Preserve)
18283             {
18284                 HRV,    8
18285             }
18286 
18287             Return (HRV) /* \_SB_.PCI0.LHRV.HRV_ */
18288         }
18289 
18290         Method (GETD, 1, Serialized)
18291         {
18292             OperationRegion (ICB1, SystemMemory, (Arg0 + 0x84), 0x04)
18293             Field (ICB1, DWordAcc, NoLock, Preserve)
18294             {
18295                 PMEC,   32
18296             }
18297 
18298             Return ((PMEC & 0x03))
18299         }
18300 
18301         Method (LCRS, 3, Serialized)
18302         {
18303             Name (RBUF, ResourceTemplate ()
18304             {
18305                 Memory32Fixed (ReadWrite,
18306                     0x00000000,         // Address Base
18307                     0x00001000,         // Address Length
18308                     _Y25)
18309                 Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, _Y26)
18310                 {
18311                     0x00000014,
18312                 }
18313             })
18314             CreateDWordField (RBUF, \_SB.PCI0.LCRS._Y25._BAS, BVAL)  // _BAS: Base Address
18315             CreateDWordField (RBUF, \_SB.PCI0.LCRS._Y25._LEN, BLEN)  // _LEN: Length
18316             CreateDWordField (RBUF, \_SB.PCI0.LCRS._Y26._INT, IRQN)  // _INT: Interrupts
18317             BVAL = Arg1
18318             IRQN = Arg2
18319             If ((Arg0 == 0x03))
18320             {
18321                 BLEN = 0x08
18322             }
18323 
18324             Return (RBUF) /* \_SB_.PCI0.LCRS.RBUF */
18325         }
18326 
18327         Method (LSTA, 1, Serialized)
18328         {
18329             If (((Arg0 == 0x00) || (Arg0 == 0x03)))
18330             {
18331                 Return (0x00)
18332             }
18333 
18334             If (CondRefOf (OSYS))
18335             {
18336                 If ((OSYS < 0x07DC))
18337                 {
18338                     Return (0x00)
18339                 }
18340             }
18341 
18342             Return (0x0F)
18343         }
18344     }
18345 
18346     Scope (\_SB.PCI0)
18347     {
18348         Device (SIRC)
18349         {
18350             Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
18351             Name (_STA, 0x03)  // _STA: Status
18352             Name (_UID, 0x05)  // _UID: Unique ID
18353             Method (ADDB, 3, Serialized)
18354             {
18355                 Name (BUFF, ResourceTemplate ()
18356                 {
18357                     Memory32Fixed (ReadWrite,
18358                         0x00000000,         // Address Base
18359                         0x00001000,         // Address Length
18360                         _Y27)
18361                 })
18362                 CreateDWordField (BUFF, \_SB.PCI0.SIRC.ADDB._Y27._BAS, ADDR)  // _BAS: Base Address
18363                 CreateDWordField (BUFF, \_SB.PCI0.SIRC.ADDB._Y27._LEN, LENG)  // _LEN: Length
18364                 Local0 = Buffer (0x02)
18365                     {
18366                          0x79, 0x00                                       // y.
18367                     }
18368                 If (((Arg0 == 0x02) || (Arg0 == 0x03)))
18369                 {
18370                     ADDR = Arg2
18371                     ConcatenateResTemplate (Local0, BUFF, Local1)
18372                     Local0 = Local1
18373                 }
18374 
18375                 If ((Arg0 == 0x03))
18376                 {
18377                     ADDR = (0x08 + Arg1)
18378                     LENG = 0x0FF8
18379                     ConcatenateResTemplate (Local0, BUFF, Local1)
18380                     Local0 = Local1
18381                 }
18382 
18383                 Return (Local0)
18384             }
18385 
18386             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
18387             {
18388                 Local0 = Buffer (0x02)
18389                     {
18390                          0x79, 0x00                                       // y.
18391                     }
18392                 ConcatenateResTemplate (Local0, ADDB (SMD0, SB00, SB10), Local1)
18393                 Local0 = Local1
18394                 ConcatenateResTemplate (Local0, ADDB (SMD1, SB01, SB11), Local1)
18395                 Local0 = Local1
18396                 ConcatenateResTemplate (Local0, ADDB (SMD2, SB02, SB12), Local1)
18397                 Local0 = Local1
18398                 ConcatenateResTemplate (Local0, ADDB (SMD3, SB03, SB13), Local1)
18399                 Local0 = Local1
18400                 ConcatenateResTemplate (Local0, ADDB (SMD4, SB04, SB14), Local1)
18401                 Local0 = Local1
18402                 ConcatenateResTemplate (Local0, ADDB (SMD5, SB05, SB15), Local1)
18403                 Local0 = Local1
18404                 ConcatenateResTemplate (Local0, ADDB (SMD6, SB06, SB16), Local1)
18405                 Local0 = Local1
18406                 ConcatenateResTemplate (Local0, ADDB (SMD7, SB07, SB17), Local1)
18407                 Local0 = Local1
18408                 ConcatenateResTemplate (Local0, ADDB (SMD8, SB08, SB18), Local1)
18409                 Local0 = Local1
18410                 ConcatenateResTemplate (Local0, ADDB (SMD9, SB09, SB19), Local1)
18411                 Local0 = Local1
18412                 ConcatenateResTemplate (Local0, ADDB (SMDA, SB0A, SB1A), Local1)
18413                 Local0 = Local1
18414                 ConcatenateResTemplate (Local0, ADDB (SMDB, SB0B, SB1B), Local1)
18415                 Local0 = Local1
18416                 If ((\_SB.PCI0.GPI0._STA () == 0x00))
18417                 {
18418                     ConcatenateResTemplate (Local0, \_SB.PCI0.GPI0._CRS (), Local1)
18419                     Local0 = Local1
18420                 }
18421 
18422                 Return (Local0)
18423             }
18424         }
18425     }
18426 
18427     Scope (\_SB.PCI0)
18428     {
18429         Device (I2C0)
18430         {
18431             If ((SMD0 != 0x01))
18432             {
18433                 Name (_HID, "INT34B2")  // _HID: Hardware ID
18434                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18435                 {
18436                     Return (LHRV (SB10))
18437                 }
18438 
18439                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18440                 {
18441                     Return (LCRS (SMD0, SB00, SIR0))
18442                 }
18443 
18444                 Method (_STA, 0, NotSerialized)  // _STA: Status
18445                 {
18446                     Return (LSTA (SMD0))
18447                 }
18448             }
18449 
18450             If ((SMD0 == 0x01))
18451             {
18452                 Name (_ADR, 0x00150000)  // _ADR: Address
18453                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18454                 {
18455                     If (PCIC (Arg0))
18456                     {
18457                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18458                     }
18459 
18460                     Return (Buffer (0x01)
18461                     {
18462                          0x00                                             // .
18463                     })
18464                 }
18465             }
18466 
18467             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18468             {
18469                 Return (GETD (SB10))
18470             }
18471 
18472             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18473             {
18474                 LPD0 (SB10)
18475             }
18476 
18477             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18478             {
18479                 LPD3 (SB10, SMD0)
18480             }
18481         }
18482     }
18483 
18484     Scope (\_SB.PCI0)
18485     {
18486         Device (I2C1)
18487         {
18488             If ((SMD1 != 0x01))
18489             {
18490                 Name (_HID, "INT34B3")  // _HID: Hardware ID
18491                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18492                 {
18493                     Return (LHRV (SB11))
18494                 }
18495 
18496                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18497                 {
18498                     Return (LCRS (SMD1, SB01, SIR1))
18499                 }
18500 
18501                 Method (_STA, 0, NotSerialized)  // _STA: Status
18502                 {
18503                     Return (LSTA (SMD1))
18504                 }
18505             }
18506 
18507             If ((SMD1 == 0x01))
18508             {
18509                 Name (_ADR, 0x00150001)  // _ADR: Address
18510                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18511                 {
18512                     If (PCIC (Arg0))
18513                     {
18514                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18515                     }
18516 
18517                     Return (Buffer (0x01)
18518                     {
18519                          0x00                                             // .
18520                     })
18521                 }
18522             }
18523 
18524             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18525             {
18526                 Return (GETD (SB11))
18527             }
18528 
18529             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18530             {
18531                 LPD0 (SB11)
18532             }
18533 
18534             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18535             {
18536                 LPD3 (SB11, SMD1)
18537             }
18538         }
18539     }
18540 
18541     Scope (\_SB.PCI0)
18542     {
18543         Device (I2C2)
18544         {
18545             If ((SMD2 != 0x01))
18546             {
18547                 Name (_HID, "INT34B4")  // _HID: Hardware ID
18548                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18549                 {
18550                     Return (LHRV (SB12))
18551                 }
18552 
18553                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18554                 {
18555                     Return (LCRS (SMD2, SB02, SIR2))
18556                 }
18557 
18558                 Method (_STA, 0, NotSerialized)  // _STA: Status
18559                 {
18560                     Return (LSTA (SMD2))
18561                 }
18562             }
18563 
18564             If ((SMD2 == 0x01))
18565             {
18566                 Name (_ADR, 0x00150002)  // _ADR: Address
18567                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18568                 {
18569                     If (PCIC (Arg0))
18570                     {
18571                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18572                     }
18573 
18574                     Return (Buffer (0x01)
18575                     {
18576                          0x00                                             // .
18577                     })
18578                 }
18579             }
18580 
18581             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18582             {
18583                 Return (GETD (SB12))
18584             }
18585 
18586             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18587             {
18588                 LPD0 (SB12)
18589             }
18590 
18591             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18592             {
18593                 LPD3 (SB12, SMD2)
18594             }
18595         }
18596     }
18597 
18598     Scope (\_SB.PCI0)
18599     {
18600         Device (I2C3)
18601         {
18602             If ((SMD3 != 0x01))
18603             {
18604                 Name (_HID, "INT34B5")  // _HID: Hardware ID
18605                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18606                 {
18607                     Return (LHRV (SB13))
18608                 }
18609 
18610                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18611                 {
18612                     Return (LCRS (SMD3, SB03, SIR3))
18613                 }
18614 
18615                 Method (_STA, 0, NotSerialized)  // _STA: Status
18616                 {
18617                     Return (LSTA (SMD3))
18618                 }
18619             }
18620 
18621             If ((SMD3 == 0x01))
18622             {
18623                 Name (_ADR, 0x00150003)  // _ADR: Address
18624                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18625                 {
18626                     If (PCIC (Arg0))
18627                     {
18628                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18629                     }
18630 
18631                     Return (Buffer (0x01)
18632                     {
18633                          0x00                                             // .
18634                     })
18635                 }
18636             }
18637 
18638             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18639             {
18640                 Return (GETD (SB13))
18641             }
18642 
18643             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18644             {
18645                 LPD0 (SB13)
18646             }
18647 
18648             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18649             {
18650                 LPD3 (SB13, SMD3)
18651             }
18652         }
18653     }
18654 
18655     Scope (\_SB.PCI0)
18656     {
18657         Device (I2C4)
18658         {
18659             If ((SMD4 != 0x01))
18660             {
18661                 Name (_HID, "INT34B6")  // _HID: Hardware ID
18662                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18663                 {
18664                     Return (LHRV (SB14))
18665                 }
18666 
18667                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18668                 {
18669                     Return (LCRS (SMD4, SB04, SIR4))
18670                 }
18671 
18672                 Method (_STA, 0, NotSerialized)  // _STA: Status
18673                 {
18674                     Return (LSTA (SMD4))
18675                 }
18676             }
18677 
18678             If ((SMD4 == 0x01))
18679             {
18680                 Name (_ADR, 0x00190000)  // _ADR: Address
18681                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18682                 {
18683                     If (PCIC (Arg0))
18684                     {
18685                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18686                     }
18687 
18688                     Return (Buffer (0x01)
18689                     {
18690                          0x00                                             // .
18691                     })
18692                 }
18693             }
18694 
18695             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18696             {
18697                 Return (GETD (SB14))
18698             }
18699 
18700             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18701             {
18702                 LPD0 (SB14)
18703             }
18704 
18705             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18706             {
18707                 LPD3 (SB14, SMD4)
18708             }
18709         }
18710     }
18711 
18712     Scope (\_SB.PCI0)
18713     {
18714         Device (I2C5)
18715         {
18716             If ((SMD5 != 0x01))
18717             {
18718                 Name (_HID, "INT34B7")  // _HID: Hardware ID
18719                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18720                 {
18721                     Return (LHRV (SB15))
18722                 }
18723 
18724                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18725                 {
18726                     Return (LCRS (SMD5, SB05, SIR5))
18727                 }
18728 
18729                 Method (_STA, 0, NotSerialized)  // _STA: Status
18730                 {
18731                     Return (LSTA (SMD5))
18732                 }
18733             }
18734 
18735             If ((SMD5 == 0x01))
18736             {
18737                 Name (_ADR, 0x00190001)  // _ADR: Address
18738                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18739                 {
18740                     If (PCIC (Arg0))
18741                     {
18742                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18743                     }
18744 
18745                     Return (Buffer (0x01)
18746                     {
18747                          0x00                                             // .
18748                     })
18749                 }
18750             }
18751 
18752             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18753             {
18754                 Return (GETD (SB15))
18755             }
18756 
18757             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18758             {
18759                 LPD0 (SB15)
18760             }
18761 
18762             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18763             {
18764                 LPD3 (SB15, SMD5)
18765             }
18766         }
18767     }
18768 
18769     Scope (\_SB.PCI0)
18770     {
18771         Device (SPI0)
18772         {
18773             If ((SMD6 != 0x01))
18774             {
18775                 Name (_HID, "INT34B0")  // _HID: Hardware ID
18776                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18777                 {
18778                     Return (LHRV (SB16))
18779                 }
18780 
18781                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18782                 {
18783                     Return (LCRS (SMD6, SB06, SIR6))
18784                 }
18785 
18786                 Method (_STA, 0, NotSerialized)  // _STA: Status
18787                 {
18788                     Return (LSTA (SMD6))
18789                 }
18790             }
18791 
18792             If ((SMD6 == 0x01))
18793             {
18794                 Name (_ADR, 0x001E0002)  // _ADR: Address
18795                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18796                 {
18797                     If (PCIC (Arg0))
18798                     {
18799                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18800                     }
18801 
18802                     Return (Buffer (0x01)
18803                     {
18804                          0x00                                             // .
18805                     })
18806                 }
18807             }
18808 
18809             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18810             {
18811                 Return (GETD (SB16))
18812             }
18813 
18814             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18815             {
18816                 LPD0 (SB16)
18817             }
18818 
18819             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18820             {
18821                 LPD3 (SB16, SMD6)
18822             }
18823         }
18824     }
18825 
18826     Scope (\_SB.PCI0)
18827     {
18828         Device (SPI1)
18829         {
18830             If ((SMD7 != 0x01))
18831             {
18832                 Name (_HID, "INT34B1")  // _HID: Hardware ID
18833                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18834                 {
18835                     Return (LHRV (SB17))
18836                 }
18837 
18838                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18839                 {
18840                     Return (LCRS (SMD7, SB07, SIR7))
18841                 }
18842 
18843                 Method (_STA, 0, NotSerialized)  // _STA: Status
18844                 {
18845                     Return (LSTA (SMD7))
18846                 }
18847             }
18848 
18849             If ((SMD7 == 0x01))
18850             {
18851                 Name (_ADR, 0x001E0003)  // _ADR: Address
18852                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18853                 {
18854                     If (PCIC (Arg0))
18855                     {
18856                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18857                     }
18858 
18859                     Return (Buffer (0x01)
18860                     {
18861                          0x00                                             // .
18862                     })
18863                 }
18864             }
18865 
18866             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18867             {
18868                 Return (GETD (SB17))
18869             }
18870 
18871             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18872             {
18873                 LPD0 (SB17)
18874             }
18875 
18876             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18877             {
18878                 LPD3 (SB17, SMD7)
18879             }
18880         }
18881     }
18882 
18883     Scope (\_SB.PCI0)
18884     {
18885         Device (SPI2)
18886         {
18887             If ((SMD8 != 0x01))
18888             {
18889                 Name (_HID, "INT34BC")  // _HID: Hardware ID
18890                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18891                 {
18892                     Return (LHRV (SB18))
18893                 }
18894 
18895                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18896                 {
18897                     Return (LCRS (SMD8, SB08, SIR8))
18898                 }
18899 
18900                 Method (_STA, 0, NotSerialized)  // _STA: Status
18901                 {
18902                     Return (LSTA (SMD8))
18903                 }
18904             }
18905 
18906             If ((SMD8 == 0x01))
18907             {
18908                 Name (_ADR, 0x00120006)  // _ADR: Address
18909                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18910                 {
18911                     If (PCIC (Arg0))
18912                     {
18913                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18914                     }
18915 
18916                     Return (Buffer (0x01)
18917                     {
18918                          0x00                                             // .
18919                     })
18920                 }
18921             }
18922 
18923             Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18924             {
18925                 Return (GETD (SB18))
18926             }
18927 
18928             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
18929             {
18930                 LPD0 (SB18)
18931             }
18932 
18933             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
18934             {
18935                 LPD3 (SB18, SMD8)
18936             }
18937         }
18938     }
18939 
18940     Scope (\_SB.PCI0)
18941     {
18942         Device (UA00)
18943         {
18944             If ((SMD9 != 0x01))
18945             {
18946                 Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
18947                 {
18948                     If ((SMD9 == 0x03))
18949                     {
18950                         Return (0x020CD041)
18951                     }
18952                     Else
18953                     {
18954                         Return ("INT34B8")
18955                     }
18956                 }
18957 
18958                 Name (_UID, "SerialIoUart0")  // _UID: Unique ID
18959                 Name (_DDN, "SerialIoUart0")  // _DDN: DOS Device Name
18960                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
18961                 {
18962                     Return (LHRV (SB19))
18963                 }
18964 
18965                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
18966                 {
18967                     Return (LCRS (SMD9, SB09, SIR9))
18968                 }
18969 
18970                 Method (_STA, 0, NotSerialized)  // _STA: Status
18971                 {
18972                     Return (LSTA (SMD9))
18973                 }
18974             }
18975 
18976             If ((SMD9 == 0x01))
18977             {
18978                 Name (_ADR, 0x001E0000)  // _ADR: Address
18979                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
18980                 {
18981                     If (PCIC (Arg0))
18982                     {
18983                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
18984                     }
18985 
18986                     Return (Buffer (0x01)
18987                     {
18988                          0x00                                             // .
18989                     })
18990                 }
18991             }
18992 
18993             If ((SMD9 != 0x03))
18994             {
18995                 Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
18996                 {
18997                     Return (GETD (SB19))
18998                 }
18999 
19000                 Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
19001                 {
19002                     LPD0 (SB19)
19003                 }
19004 
19005                 Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
19006                 {
19007                     LPD3 (SB19, SMD9)
19008                 }
19009             }
19010         }
19011     }
19012 
19013     Scope (\_SB.PCI0)
19014     {
19015         Device (UA01)
19016         {
19017             If ((SMDA != 0x01))
19018             {
19019                 Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
19020                 {
19021                     If ((SMDA == 0x03))
19022                     {
19023                         Return (0x020CD041)
19024                     }
19025                     Else
19026                     {
19027                         Return ("INT34B9")
19028                     }
19029                 }
19030 
19031                 Name (_UID, "SerialIoUart1")  // _UID: Unique ID
19032                 Name (_DDN, "SerialIoUart1")  // _DDN: DOS Device Name
19033                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
19034                 {
19035                     Return (LHRV (SB1A))
19036                 }
19037 
19038                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
19039                 {
19040                     Return (LCRS (SMDA, SB0A, SIRA))
19041                 }
19042 
19043                 Method (_STA, 0, NotSerialized)  // _STA: Status
19044                 {
19045                     Return (LSTA (SMDA))
19046                 }
19047             }
19048 
19049             If ((SMDA == 0x01))
19050             {
19051                 Name (_ADR, 0x001E0001)  // _ADR: Address
19052                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
19053                 {
19054                     If (PCIC (Arg0))
19055                     {
19056                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
19057                     }
19058 
19059                     Return (Buffer (0x01)
19060                     {
19061                          0x00                                             // .
19062                     })
19063                 }
19064             }
19065 
19066             If ((SMDA != 0x03))
19067             {
19068                 Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
19069                 {
19070                     Return (GETD (SB1A))
19071                 }
19072 
19073                 Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
19074                 {
19075                     LPD0 (SB1A)
19076                 }
19077 
19078                 Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
19079                 {
19080                     LPD3 (SB1A, SMDA)
19081                 }
19082             }
19083         }
19084     }
19085 
19086     Scope (\_SB.PCI0)
19087     {
19088         Device (UA02)
19089         {
19090             If ((SMDB != 0x01))
19091             {
19092                 Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
19093                 {
19094                     If ((SMDB == 0x03))
19095                     {
19096                         Return (0x020CD041)
19097                     }
19098                     Else
19099                     {
19100                         Return ("INT34BA")
19101                     }
19102                 }
19103 
19104                 Name (_UID, "SerialIoUart2")  // _UID: Unique ID
19105                 Name (_DDN, "SerialIoUart2")  // _DDN: DOS Device Name
19106                 Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
19107                 {
19108                     Return (LHRV (SB1B))
19109                 }
19110 
19111                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
19112                 {
19113                     Return (LCRS (SMDB, SB0B, SIRB))
19114                 }
19115 
19116                 Method (_STA, 0, NotSerialized)  // _STA: Status
19117                 {
19118                     Return (LSTA (SMDB))
19119                 }
19120             }
19121 
19122             If ((SMDB == 0x01))
19123             {
19124                 Name (_ADR, 0x00190002)  // _ADR: Address
19125                 Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
19126                 {
19127                     If (PCIC (Arg0))
19128                     {
19129                         Return (PCID (Arg0, Arg1, Arg2, Arg3))
19130                     }
19131 
19132                     Return (Buffer (0x01)
19133                     {
19134                          0x00                                             // .
19135                     })
19136                 }
19137             }
19138 
19139             If ((SMDB != 0x03))
19140             {
19141                 Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
19142                 {
19143                     Return (GETD (SB1B))
19144                 }
19145 
19146                 Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
19147                 {
19148                     LPD0 (SB1B)
19149                 }
19150 
19151                 Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
19152                 {
19153                     LPD3 (SB1B, SMDB)
19154                 }
19155             }
19156         }
19157     }
19158 
19159     Scope (\_SB.PCI0)
19160     {
19161         Method (DLLR, 5, Serialized)
19162         {
19163             ADBG ("SD DLL restore flow")
19164             Name (TEMP, 0x00)
19165             Name (EMPB, 0x00)
19166             EMPB = \XBAS
19167             EMPB |= (Arg0 << 0x14)
19168             EMPB |= (Arg1 << 0x0F)
19169             EMPB |= (Arg2 << 0x0C)
19170             OperationRegion (EMPC, SystemMemory, EMPB, 0x0100)
19171             Field (EMPC, DWordAcc, NoLock, Preserve)
19172             {
19173                 Offset (0x04), 
19174                     ,   1, 
19175                 MSE,    1, 
19176                 Offset (0x10), 
19177                 BAR0,   64, 
19178                 Offset (0x84), 
19179                 PSTA,   32
19180             }
19181 
19182             Name (OPST, 0x00)
19183             OPST = PSTA /* \_SB_.PCI0.DLLR.PSTA */
19184             PSTA &= 0xFFFFFFFC
19185             TEMP = PSTA /* \_SB_.PCI0.DLLR.PSTA */
19186             Name (OMSE, 0x00)
19187             OMSE = MSE /* \_SB_.PCI0.DLLR.MSE_ */
19188             MSE = 0x00
19189             Name (OBAR, 0x00)
19190             OBAR = BAR0 /* \_SB_.PCI0.DLLR.BAR0 */
19191             BAR0 = Arg3
19192             TEMP = BAR0 /* \_SB_.PCI0.DLLR.BAR0 */
19193             MSE = 0x01
19194             OperationRegion (EMMI, SystemMemory, Arg3, Arg4)
19195             Field (EMMI, DWordAcc, NoLock, Preserve)
19196             {
19197                 Offset (0x834), 
19198                 FDLL,   8, 
19199                 Offset (0x840), 
19200                 ADLL,   8
19201             }
19202 
19203             Name (FDLV, 0x00)
19204             Name (ADLV, 0x00)
19205             FDLV = FDLL /* \_SB_.PCI0.DLLR.FDLL */
19206             ADLV = ADLL /* \_SB_.PCI0.DLLR.ADLL */
19207             ADBG (Concatenate ("Fixed DLL value ", ToHexString (FDLV)))
19208             ADBG (Concatenate ("Auto DLL Value ", ToHexString (ADLV)))
19209             If ((ADLV != 0x00))
19210             {
19211                 ADBG ("Auto tuning executed, restoring values")
19212                 ADLV *= 0x02
19213                 FDLL = ADLV /* \_SB_.PCI0.DLLR.ADLV */
19214             }
19215 
19216             MSE = 0x00
19217             BAR0 = OBAR /* \_SB_.PCI0.DLLR.OBAR */
19218             MSE = OMSE /* \_SB_.PCI0.DLLR.OMSE */
19219             PSTA = OPST /* \_SB_.PCI0.DLLR.OPST */
19220             TEMP = PSTA /* \_SB_.PCI0.DLLR.PSTA */
19221         }
19222 
19223         Device (PUFS)
19224         {
19225             Name (_ADR, 0x00120005)  // _ADR: Address
19226             Name (_DDN, "Intel(R) UFS Controller")  // _DDN: DOS Device Name
19227             Device (CARD)
19228             {
19229                 Name (_ADR, 0x08)  // _ADR: Address
19230                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
19231                 {
19232                     Return (0x00)
19233                 }
19234             }
19235         }
19236 
19237         Device (PEMC)
19238         {
19239             Name (_ADR, 0x001A0000)  // _ADR: Address
19240             Method (_STA, 0, NotSerialized)  // _STA: Status
19241             {
19242                 If ((\EMCE == 0x00))
19243                 {
19244                     Return (0x00)
19245                 }
19246                 Else
19247                 {
19248                     Return (0x0F)
19249                 }
19250             }
19251 
19252             OperationRegion (SCSR, PCI_Config, 0x00, 0x0100)
19253             Field (SCSR, WordAcc, NoLock, Preserve)
19254             {
19255                 Offset (0x84), 
19256                 PSTA,   32, 
19257                 Offset (0xA2), 
19258                     ,   2, 
19259                 PGEN,   1
19260             }
19261 
19262             Method (_PS0, 0, Serialized)  // _PS0: Power State 0
19263             {
19264                 Stall (0x32)
19265                 PGEN = 0x00
19266                 PCRA (0x52, 0x1C20, 0x00)
19267                 PCRA (0x52, 0x4820, 0x00)
19268                 PSTA &= 0xFFFFFFFC
19269                 TEMP = PSTA /* \_SB_.PCI0.PEMC.PSTA */
19270             }
19271 
19272             Method (_PS3, 0, Serialized)  // _PS3: Power State 3
19273             {
19274                 DLLR (0x00, 0x1A, 0x00, 0xFE0D0000, 0x00010000)
19275                 PGEN = 0x01
19276                 PSTA |= 0x03
19277                 TEMP = PSTA /* \_SB_.PCI0.PEMC.PSTA */
19278             }
19279 
19280             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
19281             {
19282                 If (PCIC (Arg0))
19283                 {
19284                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
19285                 }
19286 
19287                 ADBG (Concatenate ("EMH4=", ToDecimalString (EMH4)))
19288                 If ((Arg0 == ToUUID ("f6c13ea5-65cd-461f-ab7a-29f7e8d5bd61")))
19289                 {
19290                     If ((Arg1 >= Zero))
19291                     {
19292                         Switch (ToInteger (Arg2))
19293                         {
19294                             Case (0x00)
19295                             {
19296                                 If ((EMH4 == 0x01))
19297                                 {
19298                                     Return (Buffer (0x02)
19299                                     {
19300                                          0x61, 0x02                                       // a.
19301                                     })
19302                                 }
19303 
19304                                 Return (Buffer (0x02)
19305                                 {
19306                                      0x21, 0x02                                       // !.
19307                                 })
19308                             }
19309                             Case (0x05)
19310                             {
19311                                 Return (Buffer (0x01)
19312                                 {
19313                                      0x03                                             // .
19314                                 })
19315                             }
19316                             Case (0x06)
19317                             {
19318                                 Return (Buffer (0x01)
19319                                 {
19320                                      0x05                                             // .
19321                                 })
19322                             }
19323                             Case (0x09)
19324                             {
19325                                 Switch (EMDS)
19326                                 {
19327                                     Case (0x00)
19328                                     {
19329                                         Return (Buffer (0x01)
19330                                         {
19331                                              0x00                                             // .
19332                                         })
19333                                     }
19334                                     Case (0x01)
19335                                     {
19336                                         Return (Buffer (0x01)
19337                                         {
19338                                              0x01                                             // .
19339                                         })
19340                                     }
19341                                     Case (0x04)
19342                                     {
19343                                         Return (Buffer (0x01)
19344                                         {
19345                                              0x04                                             // .
19346                                         })
19347                                     }
19348 
19349                                 }
19350                             }
19351 
19352                         }
19353                     }
19354                 }
19355 
19356                 Return (Buffer (0x01)
19357                 {
19358                      0x00                                             // .
19359                 })
19360             }
19361 
19362             Device (CARD)
19363             {
19364                 Name (_ADR, 0x08)  // _ADR: Address
19365                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
19366                 {
19367                     Return (0x00)
19368                 }
19369             }
19370         }
19371     }
19372 
19373     Scope (\_SB.PCI0)
19374     {
19375         Device (ISHD)
19376         {
19377             Name (_ADR, 0x00130000)  // _ADR: Address
19378             Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
19379             {
19380                 If (PCIC (Arg0))
19381                 {
19382                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
19383                 }
19384 
19385                 If (CondRefOf (HIWC))
19386                 {
19387                     If (HIWC (Arg0))
19388                     {
19389                         If (CondRefOf (HIDW))
19390                         {
19391                             Return (HIDW (Arg0, Arg1, Arg2, Arg3))
19392                         }
19393                     }
19394                 }
19395 
19396                 Return (Buffer (0x01)
19397                 {
19398                      0x00                                             // .
19399                 })
19400             }
19401         }
19402     }
19403 
19404     Scope (\_SB.PCI0)
19405     {
19406         Device (HECI)
19407         {
19408             Name (_ADR, 0x00160000)  // _ADR: Address
19409             Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
19410             {
19411                 If (PCIC (Arg0))
19412                 {
19413                     Return (PCID (Arg0, Arg1, Arg2, Arg3))
19414                 }
19415 
19416                 If (CondRefOf (HIWC))
19417                 {
19418                     If (HIWC (Arg0))
19419                     {
19420                         If (CondRefOf (HIDW))
19421                         {
19422                             Return (HIDW (Arg0, Arg1, Arg2, Arg3))
19423                         }
19424                     }
19425                 }
19426 
19427                 Return (Buffer (0x01)
19428                 {
19429                      0x00                                             // .
19430                 })
19431             }
19432         }
19433     }
19434 
19435     Scope (\_SB.PCI0)
19436     {
19437         Device (CNVW)
19438         {
19439             Name (_ADR, 0x00140003)  // _ADR: Address
19440             OperationRegion (CWAR, PCI_Config, 0x00, 0x0100)
19441             Field (CWAR, WordAcc, NoLock, Preserve)
19442             {
19443                 VDID,   32, 
19444                     ,   1, 
19445                 WMSE,   1, 
19446                 WBME,   1, 
19447                 Offset (0x10), 
19448                 WBR0,   64, 
19449                 Offset (0x44), 
19450                     ,   28, 
19451                 WFLR,   1, 
19452                 Offset (0x48), 
19453                     ,   15, 
19454                 WIFR,   1, 
19455                 Offset (0xCC), 
19456                 WPMS,   32
19457             }
19458 
19459             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
19460             {
19461                 If ((Arg0 == ToUUID ("079ff457-64a8-44be-bd8a-6955052b9b92")))
19462                 {
19463                     Switch (ToInteger (Arg2))
19464                     {
19465                         Case (0x00)
19466                         {
19467                             Switch (Arg1)
19468                             {
19469                                 Case (0x01)
19470                                 {
19471                                     Return (Buffer (0x01)
19472                                     {
19473                                          0x03                                             // .
19474                                     })
19475                                 }
19476 
19477                             }
19478 
19479                             Return (Buffer (0x01)
19480                             {
19481                                  0x00                                             // .
19482                             })
19483                         }
19484                         Case (0x01)
19485                         {
19486                             Return (RMRC) /* \RMRC */
19487                         }
19488 
19489                     }
19490                 }
19491                 Else
19492                 {
19493                     Return (Buffer (0x01)
19494                     {
19495                          0x00                                             // .
19496                     })
19497                 }
19498             }
19499 
19500             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
19501             {
19502                 Return (0x03)
19503             }
19504 
19505             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
19506             {
19507                 Return (GPRW (0x6D, 0x04))
19508             }
19509 
19510             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
19511             {
19512             }
19513 
19514             PowerResource (WRST, 0x05, 0x0000)
19515             {
19516                 Method (_STA, 0, NotSerialized)  // _STA: Status
19517                 {
19518                     Return (0x01)
19519                 }
19520 
19521                 Method (_ON, 0, NotSerialized)  // _ON_: Power On
19522                 {
19523                 }
19524 
19525                 Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
19526                 {
19527                 }
19528 
19529                 Method (_RST, 0, NotSerialized)  // _RST: Device Reset
19530                 {
19531                     If ((WFLR == 0x01))
19532                     {
19533                         WBR0 = 0x00
19534                         WPMS = 0x00
19535                         WBME = 0x00
19536                         WMSE = 0x00
19537                         WIFR = 0x01
19538                     }
19539                 }
19540             }
19541 
19542             Name (_PRR, Package (0x01)  // _PRR: Power Resource for Reset
19543             {
19544                 WRST
19545             })
19546         }
19547 
19548         Method (CNIP, 0, NotSerialized)
19549         {
19550             If ((\_SB.PCI0.CNVW.VDID != 0xFFFFFFFF))
19551             {
19552                 Return (0x01)
19553             }
19554             Else
19555             {
19556                 Return (0x00)
19557             }
19558         }
19559 
19560         Method (SBTE, 1, Serialized)
19561         {
19562             If ((PCHS == PCHL))
19563             {
19564                 Local0 = 0x04090000
19565             }
19566             Else
19567             {
19568                 Local0 = 0x030C0000
19569             }
19570 
19571             \_SB.SGOV (Local0, Arg0)
19572         }
19573 
19574         Method (GBTE, 0, NotSerialized)
19575         {
19576             If ((PCHS == PCHL))
19577             {
19578                 Local0 = 0x04090000
19579             }
19580             Else
19581             {
19582                 Local0 = 0x030C0000
19583             }
19584 
19585             Return (\_SB.GGOV (Local0))
19586         }
19587     }
19588 
19589     If ((PTHM == 0x02))
19590     {
19591         Scope (\_SB.PCI0)
19592         {
19593             Device (PCHT)
19594             {
19595                 Name (_HID, "INTC1001")  // _HID: Hardware ID
19596                 Method (_STA, 0, Serialized)  // _STA: Status
19597                 {
19598                     Return (0x0F)
19599                 }
19600 
19601                 Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
19602                 {
19603                     Memory32Fixed (ReadWrite,
19604                         0xFE100000,         // Address Base
19605                         0x00100000,         // Address Length
19606                         )
19607                     Memory32Fixed (ReadWrite,
19608                         0xFC800000,         // Address Base
19609                         0x00800000,         // Address Length
19610                         )
19611                 })
19612             }
19613         }
19614     }
19615 
19616     Scope (\_SB.PCI0.LPCB)
19617     {
19618         Device (EC)
19619         {
19620             Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */)  // _HID: Hardware ID
19621             Name (_UID, 0x00)  // _UID: Unique ID
19622             Method (_GPE, 0, NotSerialized)  // _GPE: General Purpose Events
19623             {
19624                 Return (\EGPE)
19625             }
19626 
19627             Method (_REG, 2, NotSerialized)  // _REG: Region Availability
19628             {
19629                 If ((Arg0 == 0x03))
19630                 {
19631                     \H8DR = Arg1
19632                 }
19633             }
19634 
19635             OperationRegion (ECOR, EmbeddedControl, 0x00, 0x0100)
19636             Field (ECOR, ByteAcc, NoLock, Preserve)
19637             {
19638                 HDBM,   1, 
19639                     ,   1, 
19640                     ,   1, 
19641                 HFNE,   1, 
19642                     ,   1, 
19643                     ,   1, 
19644                 HLDM,   1, 
19645                 Offset (0x01), 
19646                 BBLS,   1, 
19647                 BTCM,   1, 
19648                     ,   1, 
19649                     ,   1, 
19650                     ,   1, 
19651                 HBPR,   1, 
19652                 BTPC,   1, 
19653                 Offset (0x02), 
19654                 HDUE,   1, 
19655                     ,   4, 
19656                 SNLK,   1, 
19657                 Offset (0x03), 
19658                     ,   5, 
19659                 HAUM,   2, 
19660                 Offset (0x05), 
19661                 HSPA,   1, 
19662                 Offset (0x06), 
19663                 HSUN,   8, 
19664                 HSRP,   8, 
19665                 Offset (0x0C), 
19666                 HLCL,   8, 
19667                     ,   4, 
19668                 CALM,   1, 
19669                 Offset (0x0E), 
19670                 HFNS,   2, 
19671                 Offset (0x0F), 
19672                     ,   6, 
19673                 NULS,   1, 
19674                 Offset (0x10), 
19675                 HAM0,   8, 
19676                 HAM1,   8, 
19677                 HAM2,   8, 
19678                 HAM3,   8, 
19679                 HAM4,   8, 
19680                 HAM5,   8, 
19681                 HAM6,   8, 
19682                 HAM7,   8, 
19683                 HAM8,   8, 
19684                 HAM9,   8, 
19685                 HAMA,   8, 
19686                 HAMB,   8, 
19687                 HAMC,   8, 
19688                 HAMD,   8, 
19689                 HAME,   8, 
19690                 HAMF,   8, 
19691                 Offset (0x23), 
19692                 HANT,   8, 
19693                 Offset (0x26), 
19694                     ,   2, 
19695                 HANA,   2, 
19696                 Offset (0x27), 
19697                 Offset (0x28), 
19698                     ,   1, 
19699                 SKEM,   1, 
19700                 Offset (0x29), 
19701                 Offset (0x2A), 
19702                 HATR,   8, 
19703                 HT0H,   8, 
19704                 HT0L,   8, 
19705                 HT1H,   8, 
19706                 HT1L,   8, 
19707                 HFSP,   8, 
19708                     ,   6, 
19709                 HMUT,   1, 
19710                 Offset (0x31), 
19711                     ,   2, 
19712                 HUWB,   1, 
19713                     ,   3, 
19714                 VPON,   1, 
19715                 VRST,   1, 
19716                 HWPM,   1, 
19717                 HWLB,   1, 
19718                 HWLO,   1, 
19719                 HWDK,   1, 
19720                 HWFN,   1, 
19721                 HWBT,   1, 
19722                 HWRI,   1, 
19723                 HWBU,   1, 
19724                 HWLU,   1, 
19725                 Offset (0x34), 
19726                     ,   3, 
19727                 PIBS,   1, 
19728                     ,   3, 
19729                 HPLO,   1, 
19730                 Offset (0x36), 
19731                 HWAC,   16, 
19732                 HB0S,   7, 
19733                 HB0A,   1, 
19734                 HB1S,   7, 
19735                 HB1A,   1, 
19736                 HCMU,   1, 
19737                     ,   2, 
19738                 OVRQ,   1, 
19739                 DCBD,   1, 
19740                 DCWL,   1, 
19741                 DCWW,   1, 
19742                 HB1I,   1, 
19743                     ,   1, 
19744                 KBLT,   1, 
19745                 BTPW,   1, 
19746                 FNKC,   1, 
19747                 HUBS,   1, 
19748                 BDPW,   1, 
19749                 BDDT,   1, 
19750                 HUBB,   1, 
19751                 Offset (0x46), 
19752                     ,   1, 
19753                 BTWK,   1, 
19754                 HPLD,   1, 
19755                     ,   1, 
19756                 HPAC,   1, 
19757                 BTST,   1, 
19758                 PSST,   1, 
19759                 Offset (0x47), 
19760                 HPBU,   1, 
19761                     ,   1, 
19762                 HBID,   1, 
19763                     ,   3, 
19764                 HBCS,   1, 
19765                 HPNF,   1, 
19766                     ,   1, 
19767                 GSTS,   1, 
19768                     ,   2, 
19769                 HLBU,   1, 
19770                 DOCD,   1, 
19771                 HCBL,   1, 
19772                 Offset (0x49), 
19773                 SLUL,   1, 
19774                     ,   1, 
19775                 ACAT,   1, 
19776                     ,   4, 
19777                 ELNK,   1, 
19778                 FPSU,   1, 
19779                 Offset (0x4B), 
19780                 Offset (0x4C), 
19781                 HTMH,   8, 
19782                 HTML,   8, 
19783                 HWAK,   16, 
19784                 HMPR,   8, 
19785                     ,   7, 
19786                 HMDN,   1, 
19787                 Offset (0x78), 
19788                 TMP0,   8, 
19789                 TMP3,   8, 
19790                 Offset (0x7B), 
19791                 GTMP,   1, 
19792                 Offset (0x80), 
19793                 Offset (0x81), 
19794                 HIID,   8, 
19795                 Offset (0x83), 
19796                 HFNI,   8, 
19797                 HSPD,   16, 
19798                 Offset (0x88), 
19799                 TSL0,   7, 
19800                 TSR0,   1, 
19801                 TSL1,   7, 
19802                 TSR1,   1, 
19803                 TSL2,   7, 
19804                 TSR2,   1, 
19805                 TSL3,   7, 
19806                 TSR3,   1, 
19807                 GPUT,   1, 
19808                 Offset (0x8D), 
19809                 HDAA,   3, 
19810                 HDAB,   3, 
19811                 HDAC,   2, 
19812                 Offset (0xB0), 
19813                 HDEN,   32, 
19814                 HDEP,   32, 
19815                 HDEM,   8, 
19816                 HDES,   8, 
19817                 Offset (0xC8), 
19818                 ATMX,   8, 
19819                 HWAT,   8, 
19820                 Offset (0xCC), 
19821                 PWMH,   8, 
19822                 PWML,   8, 
19823                 Offset (0xED), 
19824                     ,   4, 
19825                 HDDD,   1
19826             }
19827 
19828             Method (_INI, 0, NotSerialized)  // _INI: Initialize
19829             {
19830                 ADBG ("H8 _INI")
19831                 If (\H8DR)
19832                 {
19833                     HSPA = 0x00
19834                 }
19835                 Else
19836                 {
19837                     \MBEC (0x05, 0xFE, 0x00)
19838                 }
19839 
19840                 \_SB.PCI0.LPCB.EC.HKEY.WGIN ()
19841                 If ((\WLAC == 0x02)){}
19842                 ElseIf ((ELNK && (\WLAC == 0x01)))
19843                 {
19844                     DCWL = 0x00
19845                 }
19846                 Else
19847                 {
19848                     DCWL = 0x01
19849                 }
19850             }
19851 
19852             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
19853             {
19854                 IO (Decode16,
19855                     0x0062,             // Range Minimum
19856                     0x0062,             // Range Maximum
19857                     0x01,               // Alignment
19858                     0x01,               // Length
19859                     )
19860                 IO (Decode16,
19861                     0x0066,             // Range Minimum
19862                     0x0066,             // Range Maximum
19863                     0x01,               // Alignment
19864                     0x01,               // Length
19865                     )
19866             })
19867             Method (LED, 2, NotSerialized)
19868             {
19869                 Local0 = (Arg0 | Arg1)
19870                 If (\H8DR)
19871                 {
19872                     HLCL = Local0
19873                 }
19874                 Else
19875                 {
19876                     \WBEC (0x0C, Local0)
19877                 }
19878 
19879                 If (CondRefOf (\_SB.PCI0.LPCB.EC.SLEG))
19880                 {
19881                     \_SB.PCI0.LPCB.EC.SLEG (Arg0, Arg1)
19882                 }
19883             }
19884 
19885             Name (BAON, 0x00)
19886             Name (WBON, 0x00)
19887             Method (BEEP, 1, NotSerialized)
19888             {
19889                 If ((Arg0 == 0x05))
19890                 {
19891                     WBON = 0x00
19892                 }
19893 
19894                 Local2 = WBON /* \_SB_.PCI0.LPCB.EC__.WBON */
19895                 If (BAON)
19896                 {
19897                     If ((Arg0 == 0x00))
19898                     {
19899                         BAON = 0x00
19900                         If (WBON)
19901                         {
19902                             Local0 = 0x03
19903                             Local1 = 0x08
19904                         }
19905                         Else
19906                         {
19907                             Local0 = 0x00
19908                             Local1 = 0x00
19909                         }
19910                     }
19911                     Else
19912                     {
19913                         Local0 = 0xFF
19914                         Local1 = 0xFF
19915                         If ((Arg0 == 0x11))
19916                         {
19917                             WBON = 0x00
19918                         }
19919 
19920                         If ((Arg0 == 0x10))
19921                         {
19922                             WBON = 0x01
19923                         }
19924                     }
19925                 }
19926                 Else
19927                 {
19928                     Local0 = Arg0
19929                     Local1 = 0xFF
19930                     If ((Arg0 == 0x0F))
19931                     {
19932                         Local0 = Arg0
19933                         Local1 = 0x08
19934                         BAON = 0x01
19935                     }
19936 
19937                     If ((Arg0 == 0x11))
19938                     {
19939                         Local0 = 0x00
19940                         Local1 = 0x00
19941                         WBON = 0x00
19942                     }
19943 
19944                     If ((Arg0 == 0x10))
19945                     {
19946                         Local0 = 0x03
19947                         Local1 = 0x08
19948                         WBON = 0x01
19949                     }
19950                 }
19951 
19952                 If ((Arg0 == 0x03))
19953                 {
19954                     WBON = 0x00
19955                     If (Local2)
19956                     {
19957                         Local0 = 0x07
19958                         If (((\SPS == 0x03) || (\SPS == 0x04)))
19959                         {
19960                             Local2 = 0x00
19961                             Local0 = 0xFF
19962                             Local1 = 0xFF
19963                         }
19964                     }
19965                 }
19966 
19967                 If ((Arg0 == 0x07))
19968                 {
19969                     If (Local2)
19970                     {
19971                         Local2 = 0x00
19972                         Local0 = 0xFF
19973                         Local1 = 0xFF
19974                     }
19975                 }
19976 
19977                 If (\H8DR)
19978                 {
19979                     If ((Local2 && !WBON))
19980                     {
19981                         HSRP = 0x00
19982                         HSUN = 0x00
19983                         Sleep (0x64)
19984                     }
19985 
19986                     If ((Local1 != 0xFF))
19987                     {
19988                         HSRP = Local1
19989                     }
19990 
19991                     If ((Local0 != 0xFF))
19992                     {
19993                         HSUN = Local0
19994                     }
19995                 }
19996                 Else
19997                 {
19998                     If ((Local2 && !WBON))
19999                     {
20000                         \WBEC (0x07, 0x00)
20001                         \WBEC (0x06, 0x00)
20002                         Sleep (0x64)
20003                     }
20004 
20005                     If ((Local1 != 0xFF))
20006                     {
20007                         \WBEC (0x07, Local1)
20008                     }
20009 
20010                     If ((Local0 != 0xFF))
20011                     {
20012                         \WBEC (0x06, Local0)
20013                     }
20014                 }
20015 
20016                 If ((Arg0 == 0x03)){}
20017                 If ((Arg0 == 0x07))
20018                 {
20019                     Sleep (0x01F4)
20020                 }
20021             }
20022 
20023             Method (EVNT, 1, NotSerialized)
20024             {
20025                 If (\H8DR)
20026                 {
20027                     If (Arg0)
20028                     {
20029                         HAM5 |= 0x04
20030                     }
20031                     Else
20032                     {
20033                         HAM5 &= 0xFB
20034                     }
20035                 }
20036                 ElseIf (Arg0)
20037                 {
20038                     \MBEC (0x15, 0xFF, 0x04)
20039                 }
20040                 Else
20041                 {
20042                     \MBEC (0x15, 0xFB, 0x00)
20043                 }
20044             }
20045 
20046             Method (CHKS, 0, NotSerialized)
20047             {
20048                 Local0 = 0x03E8
20049                 While (HMPR)
20050                 {
20051                     Sleep (0x01)
20052                     Local0--
20053                     If (!Local0)
20054                     {
20055                         Return (0x8080)
20056                     }
20057                 }
20058 
20059                 If (HMDN)
20060                 {
20061                     Return (Zero)
20062                 }
20063 
20064                 Return (0x8081)
20065             }
20066 
20067             Method (LPMD, 0, NotSerialized)
20068             {
20069                 Local0 = 0x00
20070                 Local1 = 0x00
20071                 Local2 = 0x00
20072                 If (\H8DR)
20073                 {
20074                     If (HPAC)
20075                     {
20076                         If (HPLO)
20077                         {
20078                             Local0 = \LPST
20079                         }
20080                         ElseIf ((HWAT < 0x5A))
20081                         {
20082                             If (HB0A)
20083                             {
20084                                 If (((HB0S & 0x10) || ((HB0S & 0x07) < 0x02)))
20085                                 {
20086                                     Local1 = 0x01
20087                                 }
20088                             }
20089                             Else
20090                             {
20091                                 Local1 = 0x01
20092                             }
20093 
20094                             If (HB1A)
20095                             {
20096                                 If (((HB1S & 0x10) || ((HB1S & 0x07) < 0x02)))
20097                                 {
20098                                     Local2 = 0x01
20099                                 }
20100                             }
20101                             Else
20102                             {
20103                                 Local2 = 0x01
20104                             }
20105 
20106                             If ((Local1 && Local2))
20107                             {
20108                                 Local0 = \LPST
20109                             }
20110                         }
20111                     }
20112                 }
20113                 ElseIf ((\RBEC (0x46) & 0x10))
20114                 {
20115                     If ((\RBEC (0x34) & 0x80))
20116                     {
20117                         Local0 = \LPST
20118                     }
20119                     ElseIf ((\RBEC (0xC9) < 0x5A))
20120                     {
20121                         Local3 = \RBEC (0x38)
20122                         If ((Local3 & 0x80))
20123                         {
20124                             If (((Local3 & 0x10) || ((Local3 & 0x07) < 0x02)))
20125                             {
20126                                 Local1 = 0x01
20127                             }
20128                         }
20129                         Else
20130                         {
20131                             Local2 = 0x01
20132                         }
20133 
20134                         Local3 = \RBEC (0x39)
20135                         If ((Local3 & 0x80))
20136                         {
20137                             If (((Local3 & 0x10) || ((Local3 & 0x07) < 0x02)))
20138                             {
20139                                 Local1 = 0x01
20140                             }
20141                         }
20142                         Else
20143                         {
20144                             Local2 = 0x01
20145                         }
20146 
20147                         If ((Local1 && Local2))
20148                         {
20149                             Local0 = \LPST
20150                         }
20151                     }
20152                 }
20153 
20154                 Return (Local0)
20155             }
20156 
20157             Method (CLPM, 0, NotSerialized)
20158             {
20159                 If ((\_SB.CFGD & 0x01))
20160                 {
20161                     If ((\OSPX || \CPPX))
20162                     {
20163                         \PNTF (0x80)
20164                     }
20165                     Else
20166                     {
20167                         Local0 = LPMD ()
20168                         If (Local0)
20169                         {
20170                             \STEP (0x04)
20171                         }
20172                         Else
20173                         {
20174                             \STEP (0x05)
20175                         }
20176                     }
20177                 }
20178             }
20179 
20180             Method (ECNT, 1, Serialized)
20181             {
20182                 Switch (ToInteger (Arg0))
20183                 {
20184                     Case (0x00)
20185                     {
20186                         \_SB.PCI0.LPCB.EC.LED (0x0A, 0x80)
20187                         \_SB.PCI0.LPCB.EC.LED (0x00, 0x80)
20188                         Return (0x00)
20189                     }
20190                     Case (0x01)
20191                     {
20192                         \_SB.PCI0.LPCB.EC.LED (0x00, 0x00)
20193                         \_SB.PCI0.LPCB.EC.LED (0x0A, 0x00)
20194                         Return (0x00)
20195                     }
20196                     Case (0x02)
20197                     {
20198                         \_SB.SGOV (0x04010003, 0x00)
20199                         Sleep (0x0A)
20200                         Return (0x00)
20201                     }
20202                     Case (0x03)
20203                     {
20204                         \_SB.SGOV (0x04010003, 0x01)
20205                         Return (0x00)
20206                     }
20207                     Default
20208                     {
20209                         Return (0xFF)
20210                     }
20211 
20212                 }
20213             }
20214 
20215             Device (HKEY)
20216             {
20217                 Name (_HID, EisaId ("LEN0268"))  // _HID: Hardware ID
20218                 Method (_STA, 0, NotSerialized)  // _STA: Status
20219                 {
20220                     Return (0x0F)
20221                 }
20222 
20223                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
20224                 {
20225                     ADBG ("HKEY _INI")
20226                     ADBG ("_INI0")
20227                     \_SB.PCI0.LPCB.EC.HKEY.ANGN = 0x00
20228                     \_SB.PCI0.LPCB.EC.HKEY.DYTC (0x800F0001)
20229                     ADBG ("_INI1")
20230                 }
20231 
20232                 Method (MHKV, 0, NotSerialized)
20233                 {
20234                     Return (0x0200)
20235                 }
20236 
20237                 Name (DHKC, 0x00)
20238                 Name (DHKB, 0x01)
20239                 Name (DHKH, 0x00)
20240                 Name (DHKW, 0x00)
20241                 Name (DHKS, 0x00)
20242                 Name (DHKD, 0x00)
20243                 Name (DHKN, 0x0808)
20244                 Name (DHKE, 0x00)
20245                 Name (DHKF, 0x001F4000)
20246                 Name (DHKT, 0x00)
20247                 Name (DHWW, 0x00)
20248                 Mutex (XDHK, 0x00)
20249                 Method (MHKA, 1, NotSerialized)
20250                 {
20251                     If ((Arg0 == 0x00))
20252                     {
20253                         Return (0x03)
20254                     }
20255                     ElseIf ((Arg0 == 0x01))
20256                     {
20257                         Return (0xFFFFFFFB)
20258                     }
20259                     ElseIf ((Arg0 == 0x02))
20260                     {
20261                         Return (0x00)
20262                     }
20263                     ElseIf ((Arg0 == 0x03))
20264                     {
20265                         Return (0x001F4000)
20266                     }
20267                     Else
20268                     {
20269                         Return (0x00)
20270                     }
20271                 }
20272 
20273                 Method (MHKN, 1, NotSerialized)
20274                 {
20275                     If ((Arg0 == 0x00))
20276                     {
20277                         Return (0x03)
20278                     }
20279                     ElseIf ((Arg0 == 0x01))
20280                     {
20281                         Return (DHKN) /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKN */
20282                     }
20283                     ElseIf ((Arg0 == 0x02))
20284                     {
20285                         Return (DHKE) /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKE */
20286                     }
20287                     ElseIf ((Arg0 == 0x03))
20288                     {
20289                         Return (DHKF) /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKF */
20290                     }
20291                     Else
20292                     {
20293                         Return (0x00)
20294                     }
20295                 }
20296 
20297                 Method (MHKK, 2, NotSerialized)
20298                 {
20299                     If ((Arg0 == 0x00))
20300                     {
20301                         Return (0x03)
20302                     }
20303                     ElseIf (DHKC)
20304                     {
20305                         If ((Arg0 == 0x01))
20306                         {
20307                             Return ((DHKN & Arg1))
20308                         }
20309                         ElseIf ((Arg0 == 0x02))
20310                         {
20311                             Return ((DHKE & Arg1))
20312                         }
20313                         ElseIf ((Arg0 == 0x03))
20314                         {
20315                             Return ((DHKF & Arg1))
20316                         }
20317                         Else
20318                         {
20319                             Return (0x00)
20320                         }
20321                     }
20322                     Else
20323                     {
20324                         Return (Zero)
20325                     }
20326                 }
20327 
20328                 Method (MHKM, 2, NotSerialized)
20329                 {
20330                     Acquire (XDHK, 0xFFFF)
20331                     If ((Arg0 > 0x60))
20332                     {
20333                         Noop
20334                     }
20335                     ElseIf ((Arg0 <= 0x20))
20336                     {
20337                         Local0 = (One << Arg0--)
20338                         If ((Local0 & 0xFFFFFFFB))
20339                         {
20340                             If (Arg1)
20341                             {
20342                                 DHKN |= Local0 /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKN */
20343                             }
20344                             Else
20345                             {
20346                                 DHKN &= (Local0 ^ 0xFFFFFFFF)
20347                             }
20348                         }
20349                         Else
20350                         {
20351                             Noop
20352                         }
20353                     }
20354                     ElseIf ((Arg0 <= 0x40))
20355                     {
20356                         Noop
20357                     }
20358                     ElseIf ((Arg0 <= 0x60))
20359                     {
20360                         Arg0 -= 0x40
20361                         Local0 = (One << Arg0--)
20362                         If ((Local0 & 0x001F4000))
20363                         {
20364                             If (Arg1)
20365                             {
20366                                 DHKF |= Local0 /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKF */
20367                             }
20368                             Else
20369                             {
20370                                 DHKF &= (Local0 ^ 0xFFFFFFFF)
20371                             }
20372                         }
20373                         Else
20374                         {
20375                             Noop
20376                         }
20377                     }
20378 
20379                     Release (XDHK)
20380                 }
20381 
20382                 Method (MHKS, 0, NotSerialized)
20383                 {
20384                     Notify (\_SB.SLPB, 0x80) // Status Change
20385                 }
20386 
20387                 Method (MHKC, 1, NotSerialized)
20388                 {
20389                     DHKC = Arg0
20390                 }
20391 
20392                 Method (MHKP, 0, NotSerialized)
20393                 {
20394                     Acquire (XDHK, 0xFFFF)
20395                     If (DHWW)
20396                     {
20397                         Local1 = DHWW /* \_SB_.PCI0.LPCB.EC__.HKEY.DHWW */
20398                         DHWW = Zero
20399                     }
20400                     ElseIf (DHKW)
20401                     {
20402                         Local1 = DHKW /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKW */
20403                         DHKW = Zero
20404                     }
20405                     ElseIf (DHKD)
20406                     {
20407                         Local1 = DHKD /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKD */
20408                         DHKD = Zero
20409                     }
20410                     ElseIf (DHKS)
20411                     {
20412                         Local1 = DHKS /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKS */
20413                         DHKS = Zero
20414                     }
20415                     ElseIf (DHKT)
20416                     {
20417                         Local1 = DHKT /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKT */
20418                         DHKT = Zero
20419                     }
20420                     Else
20421                     {
20422                         Local1 = DHKH /* \_SB_.PCI0.LPCB.EC__.HKEY.DHKH */
20423                         DHKH = Zero
20424                     }
20425 
20426                     Release (XDHK)
20427                     Return (Local1)
20428                 }
20429 
20430                 Method (MHKE, 1, Serialized)
20431                 {
20432                     DHKB = Arg0
20433                     Acquire (XDHK, 0xFFFF)
20434                     DHKH = Zero
20435                     DHKW = Zero
20436                     DHKS = Zero
20437                     DHKD = Zero
20438                     DHKT = Zero
20439                     DHWW = Zero
20440                     Release (XDHK)
20441                 }
20442 
20443                 Method (MHKQ, 1, Serialized)
20444                 {
20445                     If (DHKB)
20446                     {
20447                         If (DHKC)
20448                         {
20449                             Acquire (XDHK, 0xFFFF)
20450                             If ((Arg0 < 0x1000)){}
20451                             ElseIf ((Arg0 < 0x2000))
20452                             {
20453                                 DHKH = Arg0
20454                             }
20455                             ElseIf ((Arg0 < 0x3000))
20456                             {
20457                                 DHKW = Arg0
20458                             }
20459                             ElseIf ((Arg0 < 0x4000))
20460                             {
20461                                 DHKS = Arg0
20462                             }
20463                             ElseIf ((Arg0 < 0x5000))
20464                             {
20465                                 DHKD = Arg0
20466                             }
20467                             ElseIf ((Arg0 < 0x6000))
20468                             {
20469                                 DHKH = Arg0
20470                             }
20471                             ElseIf ((Arg0 < 0x7000))
20472                             {
20473                                 DHKT = Arg0
20474                             }
20475                             ElseIf ((Arg0 < 0x8000))
20476                             {
20477                                 DHWW = Arg0
20478                             }
20479                             Else
20480                             {
20481                             }
20482 
20483                             Release (XDHK)
20484                             Notify (HKEY, 0x80) // Status Change
20485                         }
20486                         ElseIf ((Arg0 == 0x1004))
20487                         {
20488                             Notify (\_SB.SLPB, 0x80) // Status Change
20489                         }
20490                     }
20491                 }
20492 
20493                 Method (MHKB, 1, NotSerialized)
20494                 {
20495                     If ((Arg0 == 0x00))
20496                     {
20497                         \_SB.PCI0.LPCB.EC.BEEP (0x11)
20498                         \LIDB = 0x00
20499                     }
20500                     ElseIf ((Arg0 == 0x01))
20501                     {
20502                         \_SB.PCI0.LPCB.EC.BEEP (0x10)
20503                         \LIDB = 0x01
20504                     }
20505                     Else
20506                     {
20507                     }
20508                 }
20509 
20510                 Method (MHKD, 0, NotSerialized)
20511                 {
20512                     If ((\PLUX == 0x00))
20513                     {
20514                         If (VIGD)
20515                         {
20516                             \_SB.PCI0.GFX0.VLOC (0x00)
20517                         }
20518                     }
20519                 }
20520 
20521                 Method (MHQC, 1, NotSerialized)
20522                 {
20523                     If (\WNTF)
20524                     {
20525                         If ((Arg0 == 0x00))
20526                         {
20527                             Return (\CWAC)
20528                         }
20529                         ElseIf ((Arg0 == 0x01))
20530                         {
20531                             Return (\CWAP)
20532                         }
20533                         ElseIf ((Arg0 == 0x02))
20534                         {
20535                             Return (\CWAT)
20536                         }
20537                         Else
20538                         {
20539                             Noop
20540                         }
20541                     }
20542                     Else
20543                     {
20544                         Noop
20545                     }
20546 
20547                     Return (0x00)
20548                 }
20549 
20550                 Method (MHGC, 0, NotSerialized)
20551                 {
20552                     If (\WNTF)
20553                     {
20554                         Acquire (XDHK, 0xFFFF)
20555                         If (CKC4 (0x00))
20556                         {
20557                             Local0 = 0x03
20558                         }
20559                         Else
20560                         {
20561                             Local0 = 0x04
20562                         }
20563 
20564                         Release (XDHK)
20565                         Return (Local0)
20566                     }
20567                     Else
20568                     {
20569                         Noop
20570                     }
20571 
20572                     Return (0x00)
20573                 }
20574 
20575                 Method (MHSC, 1, NotSerialized)
20576                 {
20577                     If ((\CWAC && \WNTF))
20578                     {
20579                         Acquire (XDHK, 0xFFFF)
20580                         If (\OSC4)
20581                         {
20582                             If ((Arg0 == 0x03))
20583                             {
20584                                 If (!\CWAS)
20585                                 {
20586                                     \PNTF (0x81)
20587                                     \CWAS = 0x01
20588                                 }
20589                             }
20590                             ElseIf ((Arg0 == 0x04))
20591                             {
20592                                 If (\CWAS)
20593                                 {
20594                                     \PNTF (0x81)
20595                                     \CWAS = 0x00
20596                                 }
20597                             }
20598                             Else
20599                             {
20600                                 Noop
20601                             }
20602                         }
20603 
20604                         Release (XDHK)
20605                     }
20606                     Else
20607                     {
20608                         Noop
20609                     }
20610                 }
20611 
20612                 Method (CKC4, 1, NotSerialized)
20613                 {
20614                     Local0 = 0x00
20615                     If (\C4WR)
20616                     {
20617                         If (!\C4AC)
20618                         {
20619                             Local0 |= 0x01
20620                         }
20621                     }
20622 
20623                     If (\C4NA)
20624                     {
20625                         Local0 |= 0x02
20626                     }
20627 
20628                     If ((\CWAC && \CWAS))
20629                     {
20630                         Local0 |= 0x04
20631                     }
20632 
20633                     Local0 &= ~Arg0
20634                     Return (Local0)
20635                 }
20636 
20637                 Method (MHQE, 0, NotSerialized)
20638                 {
20639                     Return (\C4WR)
20640                 }
20641 
20642                 Method (MHGE, 0, NotSerialized)
20643                 {
20644                     If ((\C4WR && \C4AC))
20645                     {
20646                         Return (0x04)
20647                     }
20648 
20649                     Return (0x03)
20650                 }
20651 
20652                 Method (MHSE, 1, NotSerialized)
20653                 {
20654                     If (\C4WR)
20655                     {
20656                         Local0 = \C4AC
20657                         If ((Arg0 == 0x03))
20658                         {
20659                             \C4AC = 0x00
20660                             If ((Local0 ^ \C4AC))
20661                             {
20662                                 If (\OSC4)
20663                                 {
20664                                     \PNTF (0x81)
20665                                 }
20666                             }
20667                         }
20668                         ElseIf ((Arg0 == 0x04))
20669                         {
20670                             \C4AC = 0x01
20671                             If ((Local0 ^ \C4AC))
20672                             {
20673                                 If (\OSC4)
20674                                 {
20675                                     \PNTF (0x81)
20676                                 }
20677                             }
20678                         }
20679                     }
20680                 }
20681 
20682                 Method (UAWO, 1, NotSerialized)
20683                 {
20684                     Return (\UAWS (Arg0))
20685                 }
20686 
20687                 Method (MLCG, 1, NotSerialized)
20688                 {
20689                     Local0 = \KBLS (0x00, 0x00)
20690                     Return (Local0)
20691                 }
20692 
20693                 Method (MLCS, 1, NotSerialized)
20694                 {
20695                     Local0 = \KBLS (0x01, Arg0)
20696                     If (!(Local0 & 0x80000000))
20697                     {
20698                         If ((Arg0 & 0x00010000))
20699                         {
20700                             \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6001)
20701                         }
20702                         ElseIf (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x00020000))
20703                         {
20704                             \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1012)
20705                         }
20706                     }
20707 
20708                     Return (Local0)
20709                 }
20710 
20711                 Method (DSSG, 1, NotSerialized)
20712                 {
20713                     Local0 = (0x0400 | \PDCI)
20714                     Return (Local0)
20715                 }
20716 
20717                 Method (DSSS, 1, NotSerialized)
20718                 {
20719                     \PDCI |= Arg0
20720                 }
20721 
20722                 Method (SBSG, 1, NotSerialized)
20723                 {
20724                     Return (\SYBC (0x00, 0x00))
20725                 }
20726 
20727                 Method (SBSS, 1, NotSerialized)
20728                 {
20729                     Return (\SYBC (0x01, Arg0))
20730                 }
20731 
20732                 Method (PBLG, 1, NotSerialized)
20733                 {
20734                     Local0 = \BRLV /* External reference */
20735                     Local1 = (Local0 | 0x0F00)
20736                     Return (Local1)
20737                 }
20738 
20739                 Method (PBLS, 1, NotSerialized)
20740                 {
20741                     \BRLV = Arg0
20742                     If (\VIGD)
20743                     {
20744                         \_SB.PCI0.LPCB.EC.BRNS ()
20745                     }
20746                     Else
20747                     {
20748                         \VBRC (\BRLV)
20749                     }
20750 
20751                     If (!\NBCF)
20752                     {
20753                         \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6050)
20754                     }
20755 
20756                     Return (0x00)
20757                 }
20758 
20759                 Method (PMSG, 1, NotSerialized)
20760                 {
20761                     Local0 = \PRSM (0x00, 0x00)
20762                     Return (Local0)
20763                 }
20764 
20765                 Method (PMSS, 1, NotSerialized)
20766                 {
20767                     \PRSM (0x01, Arg0)
20768                     Return (0x00)
20769                 }
20770 
20771                 Method (ISSG, 1, NotSerialized)
20772                 {
20773                     Local0 = \ISSP
20774                     If (\ISSP)
20775                     {
20776                         Local0 |= 0x01000000
20777                         Local0 |= (\ISFS << 0x19)
20778                     }
20779 
20780                     Local0 |= (\ISCG & 0x30)
20781                     Return (Local0)
20782                 }
20783 
20784                 Method (ISSS, 1, NotSerialized)
20785                 {
20786                     \ISCG = Arg0
20787                     Return (0x00)
20788                 }
20789 
20790                 Method (FFSG, 1, NotSerialized)
20791                 {
20792                     Return (0x00)
20793                 }
20794 
20795                 Method (FFSS, 1, NotSerialized)
20796                 {
20797                     Return (0x80000000)
20798                 }
20799 
20800                 Method (GMKS, 0, NotSerialized)
20801                 {
20802                     Return (\FNSC (0x02, 0x00))
20803                 }
20804 
20805                 Method (SMKS, 1, NotSerialized)
20806                 {
20807                     Local0 = \FNSC (0x03, (Arg0 & 0x00010001))
20808                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6060)
20809                     Return (Local0)
20810                 }
20811 
20812                 Method (GSKL, 1, NotSerialized)
20813                 {
20814                     Return (\FNSC (0x04, (Arg0 & 0x0F000000)))
20815                 }
20816 
20817                 Method (SSKL, 1, NotSerialized)
20818                 {
20819                     Return (\FNSC (0x05, (Arg0 & 0x0F00FFFF)))
20820                 }
20821 
20822                 Method (INSG, 1, NotSerialized)
20823                 {
20824                     Local0 = \IOEN
20825                     Local0 |= (\IOST << 0x07)
20826                     Local0 |= (\IOCP << 0x08)
20827                     Local0 |= 0x10000000
20828                     Return (Local0)
20829                 }
20830 
20831                 Method (INSS, 1, NotSerialized)
20832                 {
20833                     If ((Arg0 & 0x10000000))
20834                     {
20835                         If (\IOCP)
20836                         {
20837                             Local0 = ((Arg0 & 0x80) >> 0x07)
20838                             If (!\EZRC (Local0))
20839                             {
20840                                 \IOST = Local0
20841                             }
20842                         }
20843 
20844                         Return (0x00)
20845                     }
20846 
20847                     If ((\IOCP && (Arg0 & 0x01)))
20848                     {
20849                         \IOEN = 0x01
20850                     }
20851                     Else
20852                     {
20853                         \IOEN = 0x00
20854                         If (\IOST)
20855                         {
20856                             If (!\ISOC (0x00))
20857                             {
20858                                 \IOST = 0x00
20859                             }
20860                         }
20861                     }
20862 
20863                     Return (0x00)
20864                 }
20865 
20866                 Method (VOPP, 1, NotSerialized)
20867                 {
20868                     If (((Arg0 & 0x00F00000) == 0x00100000))
20869                     {
20870                         If ((((Arg0 & 0x03F6) == 0x00) || (Arg0 & 0x09)))
20871                         {
20872                             \SDPS (0x01, (Arg0 & 0x09))
20873                             Local0 = 0x00
20874                             Local0 |= \SDPS (0x00, 0x00)
20875                             Local0 |= 0x2400
20876                             Return (Local0)
20877                         }
20878                         Else
20879                         {
20880                             Return (0x00100000)
20881                         }
20882                     }
20883                     ElseIf (((Arg0 & 0x00F00000) == 0x00200000))
20884                     {
20885                         Local0 = 0x00
20886                         Local0 |= \SDPS (0x00, 0x00)
20887                         Local0 |= 0x2400
20888                         Return (Local0)
20889                     }
20890                     Else
20891                     {
20892                         Return (0x00100000)
20893                     }
20894 
20895                     Return (0x00)
20896                 }
20897 
20898                 Method (GDGT, 1, NotSerialized)
20899                 {
20900                     Local0 = 0x00010000
20901                     If ((\_SB.PCI0.LPCB.EC.TMP3 == 0x80))
20902                     {
20903                         Local0 |= 0x02
20904                     }
20905                     ElseIf (\_SB.PCI0.LPCB.EC.GTMP)
20906                     {
20907                         Local0 |= 0x03
20908                     }
20909                     Else
20910                     {
20911                         Local0 |= 0x02
20912                     }
20913 
20914                     Return (Local0)
20915                 }
20916             }
20917 
20918             Device (AC)
20919             {
20920                 Name (_HID, "ACPI0003" /* Power Source Device */)  // _HID: Hardware ID
20921                 Name (_UID, 0x00)  // _UID: Unique ID
20922                 Name (_PCL, Package (0x01)  // _PCL: Power Consumer List
20923                 {
20924                     \_SB
20925                 })
20926                 Method (_PSR, 0, NotSerialized)  // _PSR: Power Source
20927                 {
20928                     If (\H8DR)
20929                     {
20930                         Return (HPAC) /* \_SB_.PCI0.LPCB.EC__.HPAC */
20931                     }
20932                     ElseIf ((\RBEC (0x46) & 0x10))
20933                     {
20934                         Return (0x01)
20935                     }
20936                     Else
20937                     {
20938                         Return (0x00)
20939                     }
20940                 }
20941 
20942                 Method (_STA, 0, NotSerialized)  // _STA: Status
20943                 {
20944                     Return (0x0F)
20945                 }
20946             }
20947 
20948             Scope (HKEY)
20949             {
20950                 Method (SMPS, 1, Serialized)
20951                 {
20952                     If (((Arg0 & ~0xFFFF) != 0x00))
20953                     {
20954                         Return (0x80000000)
20955                     }
20956 
20957                     Switch ((Arg0 & 0xFFFF))
20958                     {
20959                         Case (0x00)
20960                         {
20961                             Local1 = 0x0100
20962                         }
20963                         Case (0x0100)
20964                         {
20965                             Local1 = \_SB.PCI0.LPCB.EC.HWAT
20966                             Local1 |= (MIAC << 0x10)
20967                         }
20968                         Default
20969                         {
20970                             Local1 = 0x80000000
20971                         }
20972 
20973                     }
20974 
20975                     Return (Local1)
20976                 }
20977             }
20978 
20979             Method (_Q22, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
20980             {
20981                 CLPM ()
20982                 If (HB0A)
20983                 {
20984                     Notify (BAT0, 0x80) // Status Change
20985                 }
20986             }
20987 
20988             Method (_Q4A, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
20989             {
20990                 CLPM ()
20991                 Notify (BAT0, 0x81) // Information Change
20992             }
20993 
20994             Method (_Q4B, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
20995             {
20996                 CLPM ()
20997                 Notify (BAT0, 0x80) // Status Change
20998             }
20999 
21000             Method (_Q24, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
21001             {
21002                 CLPM ()
21003                 Notify (BAT0, 0x80) // Status Change
21004             }
21005 
21006             Method (BFCC, 0, NotSerialized)
21007             {
21008                 If (\_SB.PCI0.LPCB.EC.BAT0.B0ST)
21009                 {
21010                     Notify (BAT0, 0x81) // Information Change
21011                 }
21012             }
21013 
21014             Method (BATW, 1, NotSerialized)
21015             {
21016                 If (\BT2T){}
21017             }
21018 
21019             Field (ECOR, ByteAcc, NoLock, Preserve)
21020             {
21021                 Offset (0xA0), 
21022                 SBRC,   16, 
21023                 SBFC,   16, 
21024                 SBAE,   16, 
21025                 SBRS,   16, 
21026                 SBAC,   16, 
21027                 SBVO,   16, 
21028                 SBAF,   16, 
21029                 SBBS,   16
21030             }
21031 
21032             Field (ECOR, ByteAcc, NoLock, Preserve)
21033             {
21034                 Offset (0xA0), 
21035                 SBBM,   16, 
21036                 SBMD,   16, 
21037                 SBCC,   16
21038             }
21039 
21040             Field (ECOR, ByteAcc, NoLock, Preserve)
21041             {
21042                 Offset (0xA0), 
21043                 SBDC,   16, 
21044                 SBDV,   16, 
21045                 SBOM,   16, 
21046                 SBSI,   16, 
21047                 SBDT,   16, 
21048                 SBSN,   16
21049             }
21050 
21051             Field (ECOR, ByteAcc, NoLock, Preserve)
21052             {
21053                 Offset (0xA0), 
21054                 SBCH,   32
21055             }
21056 
21057             Field (ECOR, ByteAcc, NoLock, Preserve)
21058             {
21059                 Offset (0xA0), 
21060                 SBMN,   128
21061             }
21062 
21063             Field (ECOR, ByteAcc, NoLock, Preserve)
21064             {
21065                 Offset (0xA0), 
21066                 SBDN,   128
21067             }
21068 
21069             Mutex (BATM, 0x00)
21070             Method (GBIF, 3, NotSerialized)
21071             {
21072                 Acquire (BATM, 0xFFFF)
21073                 If (Arg2)
21074                 {
21075                     HIID = (Arg0 | 0x01)
21076                     Local7 = SBBM /* \_SB_.PCI0.LPCB.EC__.SBBM */
21077                     Local7 >>= 0x0F
21078                     Arg1 [0x00] = (Local7 ^ 0x01)
21079                     HIID = Arg0
21080                     If (Local7)
21081                     {
21082                         Local1 = (SBFC * 0x0A)
21083                     }
21084                     Else
21085                     {
21086                         Local1 = SBFC /* \_SB_.PCI0.LPCB.EC__.SBFC */
21087                     }
21088 
21089                     Arg1 [0x02] = Local1
21090                     HIID = (Arg0 | 0x02)
21091                     If (Local7)
21092                     {
21093                         Local0 = (SBDC * 0x0A)
21094                     }
21095                     Else
21096                     {
21097                         Local0 = SBDC /* \_SB_.PCI0.LPCB.EC__.SBDC */
21098                     }
21099 
21100                     Arg1 [0x01] = Local0
21101                     Divide (Local1, 0x14, Local2, Arg1 [0x05])
21102                     If (Local7)
21103                     {
21104                         Arg1 [0x06] = 0xC8
21105                     }
21106                     ElseIf (SBDV)
21107                     {
21108                         Divide (0x00030D40, SBDV, Local2, Arg1 [0x06])
21109                     }
21110                     Else
21111                     {
21112                         Arg1 [0x06] = 0x00
21113                     }
21114 
21115                     Arg1 [0x04] = SBDV /* \_SB_.PCI0.LPCB.EC__.SBDV */
21116                     Local0 = SBSN /* \_SB_.PCI0.LPCB.EC__.SBSN */
21117                     Name (SERN, Buffer (0x06)
21118                     {
21119                         "     "
21120                     })
21121                     Local2 = 0x04
21122                     While (Local0)
21123                     {
21124                         Divide (Local0, 0x0A, Local1, Local0)
21125                         SERN [Local2] = (Local1 + 0x30)
21126                         Local2--
21127                     }
21128 
21129                     Arg1 [0x0A] = SERN /* \_SB_.PCI0.LPCB.EC__.GBIF.SERN */
21130                     HIID = (Arg0 | 0x06)
21131                     Arg1 [0x09] = SBDN /* \_SB_.PCI0.LPCB.EC__.SBDN */
21132                     HIID = (Arg0 | 0x04)
21133                     Name (BTYP, Buffer (0x05)
21134                     {
21135                          0x00, 0x00, 0x00, 0x00, 0x00                     // .....
21136                     })
21137                     BTYP = SBCH /* \_SB_.PCI0.LPCB.EC__.SBCH */
21138                     Arg1 [0x0B] = BTYP /* \_SB_.PCI0.LPCB.EC__.GBIF.BTYP */
21139                     HIID = (Arg0 | 0x05)
21140                     Arg1 [0x0C] = SBMN /* \_SB_.PCI0.LPCB.EC__.SBMN */
21141                 }
21142                 Else
21143                 {
21144                     Arg1 [0x01] = 0xFFFFFFFF
21145                     Arg1 [0x05] = 0x00
21146                     Arg1 [0x06] = 0x00
21147                     Arg1 [0x02] = 0xFFFFFFFF
21148                 }
21149 
21150                 Release (BATM)
21151                 Return (Arg1)
21152             }
21153 
21154             Method (GBIX, 3, NotSerialized)
21155             {
21156                 Acquire (BATM, 0xFFFF)
21157                 If (Arg2)
21158                 {
21159                     HIID = (Arg0 | 0x01)
21160                     Local7 = SBCC /* \_SB_.PCI0.LPCB.EC__.SBCC */
21161                     Arg1 [0x08] = Local7
21162                     Local7 = SBBM /* \_SB_.PCI0.LPCB.EC__.SBBM */
21163                     Local7 >>= 0x0F
21164                     Arg1 [0x01] = (Local7 ^ 0x01)
21165                     HIID = Arg0
21166                     If (Local7)
21167                     {
21168                         Local1 = (SBFC * 0x0A)
21169                     }
21170                     Else
21171                     {
21172                         Local1 = SBFC /* \_SB_.PCI0.LPCB.EC__.SBFC */
21173                     }
21174 
21175                     Arg1 [0x03] = Local1
21176                     HIID = (Arg0 | 0x02)
21177                     If (Local7)
21178                     {
21179                         Local0 = (SBDC * 0x0A)
21180                     }
21181                     Else
21182                     {
21183                         Local0 = SBDC /* \_SB_.PCI0.LPCB.EC__.SBDC */
21184                     }
21185 
21186                     Arg1 [0x02] = Local0
21187                     Divide (Local1, 0x14, Local2, Arg1 [0x06])
21188                     If (Local7)
21189                     {
21190                         Arg1 [0x07] = 0xC8
21191                     }
21192                     ElseIf (SBDV)
21193                     {
21194                         Divide (0x00030D40, SBDV, Local2, Arg1 [0x07])
21195                     }
21196                     Else
21197                     {
21198                         Arg1 [0x07] = 0x00
21199                     }
21200 
21201                     Arg1 [0x05] = SBDV /* \_SB_.PCI0.LPCB.EC__.SBDV */
21202                     Local0 = SBSN /* \_SB_.PCI0.LPCB.EC__.SBSN */
21203                     Name (SERN, Buffer (0x06)
21204                     {
21205                         "     "
21206                     })
21207                     Local2 = 0x04
21208                     While (Local0)
21209                     {
21210                         Divide (Local0, 0x0A, Local1, Local0)
21211                         SERN [Local2] = (Local1 + 0x30)
21212                         Local2--
21213                     }
21214 
21215                     Arg1 [0x11] = SERN /* \_SB_.PCI0.LPCB.EC__.GBIX.SERN */
21216                     HIID = (Arg0 | 0x06)
21217                     Arg1 [0x10] = SBDN /* \_SB_.PCI0.LPCB.EC__.SBDN */
21218                     HIID = (Arg0 | 0x04)
21219                     Name (BTYP, Buffer (0x05)
21220                     {
21221                          0x00, 0x00, 0x00, 0x00, 0x00                     // .....
21222                     })
21223                     BTYP = SBCH /* \_SB_.PCI0.LPCB.EC__.SBCH */
21224                     Arg1 [0x12] = BTYP /* \_SB_.PCI0.LPCB.EC__.GBIX.BTYP */
21225                     HIID = (Arg0 | 0x05)
21226                     Arg1 [0x13] = SBMN /* \_SB_.PCI0.LPCB.EC__.SBMN */
21227                 }
21228                 Else
21229                 {
21230                     Arg1 [0x02] = 0xFFFFFFFF
21231                     Arg1 [0x06] = 0x00
21232                     Arg1 [0x07] = 0x00
21233                     Arg1 [0x03] = 0xFFFFFFFF
21234                 }
21235 
21236                 Release (BATM)
21237                 Return (Arg1)
21238             }
21239 
21240             Name (B0I0, 0x00)
21241             Name (B0I1, 0x00)
21242             Name (B0I2, 0x00)
21243             Name (B0I3, 0x00)
21244             Name (B1I0, 0x00)
21245             Name (B1I1, 0x00)
21246             Name (B1I2, 0x00)
21247             Name (B1I3, 0x00)
21248             Method (GBST, 4, NotSerialized)
21249             {
21250                 Acquire (BATM, 0xFFFF)
21251                 If ((Arg1 & 0x20))
21252                 {
21253                     Local0 = 0x02
21254                 }
21255                 ElseIf ((Arg1 & 0x40))
21256                 {
21257                     Local0 = 0x01
21258                 }
21259                 Else
21260                 {
21261                     Local0 = 0x00
21262                 }
21263 
21264                 If ((Arg1 & 0x07)){}
21265                 Else
21266                 {
21267                     Local0 |= 0x04
21268                 }
21269 
21270                 If (((Arg1 & 0x07) == 0x07))
21271                 {
21272                     Local0 = 0x04
21273                     Local1 = 0x00
21274                     Local2 = 0x00
21275                     Local3 = 0x00
21276                 }
21277                 Else
21278                 {
21279                     HIID = Arg0
21280                     Local3 = SBVO /* \_SB_.PCI0.LPCB.EC__.SBVO */
21281                     If (Arg2)
21282                     {
21283                         Local2 = (SBRC * 0x0A)
21284                     }
21285                     Else
21286                     {
21287                         Local2 = SBRC /* \_SB_.PCI0.LPCB.EC__.SBRC */
21288                     }
21289 
21290                     Local1 = SBAC /* \_SB_.PCI0.LPCB.EC__.SBAC */
21291                     If ((Local1 >= 0x8000))
21292                     {
21293                         If ((Local0 & 0x01))
21294                         {
21295                             Local1 = (0x00010000 - Local1)
21296                         }
21297                         Else
21298                         {
21299                             Local1 = 0x00
21300                         }
21301                     }
21302                     ElseIf (!(Local0 & 0x02))
21303                     {
21304                         Local1 = 0x00
21305                     }
21306 
21307                     If (Arg2)
21308                     {
21309                         Local1 *= Local3
21310                         Divide (Local1, 0x03E8, Local7, Local1)
21311                     }
21312                 }
21313 
21314                 Local5 = (0x01 << (Arg0 >> 0x04))
21315                 BSWA |= BSWR /* \_SB_.PCI0.LPCB.EC__.BSWR */
21316                 If (((BSWA & Local5) == 0x00))
21317                 {
21318                     Arg3 [0x00] = Local0
21319                     Arg3 [0x01] = Local1
21320                     Arg3 [0x02] = Local2
21321                     Arg3 [0x03] = Local3
21322                     If ((Arg0 == 0x00))
21323                     {
21324                         B0I0 = Local0
21325                         B0I1 = Local1
21326                         B0I2 = Local2
21327                         B0I3 = Local3
21328                     }
21329                     Else
21330                     {
21331                         B1I0 = Local0
21332                         B1I1 = Local1
21333                         B1I2 = Local2
21334                         B1I3 = Local3
21335                     }
21336                 }
21337                 Else
21338                 {
21339                     If (\_SB.PCI0.LPCB.EC.AC._PSR ())
21340                     {
21341                         If ((Arg0 == 0x00))
21342                         {
21343                             Arg3 [0x00] = B0I0 /* \_SB_.PCI0.LPCB.EC__.B0I0 */
21344                             Arg3 [0x01] = B0I1 /* \_SB_.PCI0.LPCB.EC__.B0I1 */
21345                             Arg3 [0x02] = B0I2 /* \_SB_.PCI0.LPCB.EC__.B0I2 */
21346                             Arg3 [0x03] = B0I3 /* \_SB_.PCI0.LPCB.EC__.B0I3 */
21347                         }
21348                         Else
21349                         {
21350                             Arg3 [0x00] = B1I0 /* \_SB_.PCI0.LPCB.EC__.B1I0 */
21351                             Arg3 [0x01] = B1I1 /* \_SB_.PCI0.LPCB.EC__.B1I1 */
21352                             Arg3 [0x02] = B1I2 /* \_SB_.PCI0.LPCB.EC__.B1I2 */
21353                             Arg3 [0x03] = B1I3 /* \_SB_.PCI0.LPCB.EC__.B1I3 */
21354                         }
21355                     }
21356                     Else
21357                     {
21358                         Arg3 [0x00] = Local0
21359                         Arg3 [0x01] = Local1
21360                         Arg3 [0x02] = Local2
21361                         Arg3 [0x03] = Local3
21362                     }
21363 
21364                     If ((((Local0 & 0x04) == 0x00) && ((Local2 > 0x00) && 
21365                         (Local3 > 0x00))))
21366                     {
21367                         BSWA &= ~Local5
21368                         Arg3 [0x00] = Local0
21369                         Arg3 [0x01] = Local1
21370                         Arg3 [0x02] = Local2
21371                         Arg3 [0x03] = Local3
21372                     }
21373                 }
21374 
21375                 Release (BATM)
21376                 Return (Arg3)
21377             }
21378 
21379             Name (BSWR, 0x00)
21380             Name (BSWA, 0x00)
21381             Method (AJTP, 3, NotSerialized)
21382             {
21383                 Local0 = Arg1
21384                 Acquire (BATM, 0xFFFF)
21385                 HIID = Arg0
21386                 Local1 = SBRC /* \_SB_.PCI0.LPCB.EC__.SBRC */
21387                 Release (BATM)
21388                 If ((Arg0 == 0x00))
21389                 {
21390                     Local2 = HB0S /* \_SB_.PCI0.LPCB.EC__.HB0S */
21391                 }
21392                 Else
21393                 {
21394                     Local2 = HB1S /* \_SB_.PCI0.LPCB.EC__.HB1S */
21395                 }
21396 
21397                 If ((Local2 & 0x20))
21398                 {
21399                     If ((Arg2 > 0x00))
21400                     {
21401                         Local0 += 0x01
21402                     }
21403 
21404                     If ((Local0 <= Local1))
21405                     {
21406                         Local0 = (Local1 + 0x01)
21407                     }
21408                 }
21409                 ElseIf ((Local2 & 0x40))
21410                 {
21411                     If ((Local0 >= Local1))
21412                     {
21413                         Local0 = (Local1 - 0x01)
21414                     }
21415                 }
21416 
21417                 Return (Local0)
21418             }
21419 
21420             Device (BAT0)
21421             {
21422                 Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */)  // _HID: Hardware ID
21423                 Name (_UID, 0x00)  // _UID: Unique ID
21424                 Name (_PCL, Package (0x01)  // _PCL: Power Consumer List
21425                 {
21426                     \_SB
21427                 })
21428                 Name (B0ST, 0x00)
21429                 Name (BT0I, Package (0x0D)
21430                 {
21431                     0x00, 
21432                     0xFFFFFFFF, 
21433                     0xFFFFFFFF, 
21434                     0x01, 
21435                     0x2A30, 
21436                     0x00, 
21437                     0x00, 
21438                     0x01, 
21439                     0x01, 
21440                     "", 
21441                     "", 
21442                     "", 
21443                     ""
21444                 })
21445                 Name (BX0I, Package (0x15)
21446                 {
21447                     0x01, 
21448                     0x00, 
21449                     0xFFFFFFFF, 
21450                     0xFFFFFFFF, 
21451                     0x01, 
21452                     0xFFFFFFFF, 
21453                     0x00, 
21454                     0x00, 
21455                     0xFFFFFFFF, 
21456                     0x00017318, 
21457                     0xFFFFFFFF, 
21458                     0xFFFFFFFF, 
21459                     0x03E8, 
21460                     0x01F4, 
21461                     0xFFFFFFFF, 
21462                     0xFFFFFFFF, 
21463                     "", 
21464                     "", 
21465                     "", 
21466                     "", 
21467                     0x00
21468                 })
21469                 Name (BT0P, Package (0x04){})
21470                 Method (_STA, 0, NotSerialized)  // _STA: Status
21471                 {
21472                     If (\H8DR)
21473                     {
21474                         B0ST = HB0A /* \_SB_.PCI0.LPCB.EC__.HB0A */
21475                     }
21476                     ElseIf ((\RBEC (0x38) & 0x80))
21477                     {
21478                         B0ST = 0x01
21479                     }
21480                     Else
21481                     {
21482                         B0ST = 0x00
21483                     }
21484 
21485                     If (B0ST)
21486                     {
21487                         Return (0x1F)
21488                     }
21489                     Else
21490                     {
21491                         Return (0x0F)
21492                     }
21493                 }
21494 
21495                 Method (_BIF, 0, NotSerialized)  // _BIF: Battery Information
21496                 {
21497                     Local7 = 0x00
21498                     Local6 = 0x0A
21499                     While ((!Local7 && Local6))
21500                     {
21501                         If (HB0A)
21502                         {
21503                             If (((HB0S & 0x07) == 0x07))
21504                             {
21505                                 Sleep (0x03E8)
21506                                 Local6--
21507                             }
21508                             Else
21509                             {
21510                                 Local7 = 0x01
21511                             }
21512                         }
21513                         Else
21514                         {
21515                             Local6 = 0x00
21516                         }
21517                     }
21518 
21519                     GBIX (0x00, BX0I, Local7)
21520                     BT0I [0x00] = DerefOf (BX0I [0x01])
21521                     BT0I [0x01] = DerefOf (BX0I [0x02])
21522                     BT0I [0x02] = DerefOf (BX0I [0x03])
21523                     BT0I [0x03] = DerefOf (BX0I [0x04])
21524                     BT0I [0x04] = DerefOf (BX0I [0x05])
21525                     BT0I [0x05] = DerefOf (BX0I [0x06])
21526                     BT0I [0x06] = DerefOf (BX0I [0x07])
21527                     BT0I [0x07] = DerefOf (BX0I [0x0E])
21528                     BT0I [0x08] = DerefOf (BX0I [0x0F])
21529                     BT0I [0x09] = DerefOf (BX0I [0x10])
21530                     BT0I [0x0A] = DerefOf (BX0I [0x11])
21531                     BT0I [0x0B] = DerefOf (BX0I [0x12])
21532                     BT0I [0x0C] = DerefOf (BX0I [0x13])
21533                     Return (BT0I) /* \_SB_.PCI0.LPCB.EC__.BAT0.BT0I */
21534                 }
21535 
21536                 Method (_BIX, 0, NotSerialized)  // _BIX: Battery Information Extended
21537                 {
21538                     Local7 = 0x00
21539                     Local6 = 0x0A
21540                     While ((!Local7 && Local6))
21541                     {
21542                         If (HB0A)
21543                         {
21544                             If (((HB0S & 0x07) == 0x07))
21545                             {
21546                                 Sleep (0x03E8)
21547                                 Local6--
21548                             }
21549                             Else
21550                             {
21551                                 Local7 = 0x01
21552                             }
21553                         }
21554                         Else
21555                         {
21556                             Local6 = 0x00
21557                         }
21558                     }
21559 
21560                     Return (GBIX (0x00, BX0I, Local7))
21561                 }
21562 
21563                 Method (_BST, 0, NotSerialized)  // _BST: Battery Status
21564                 {
21565                     Local0 = (DerefOf (BX0I [0x01]) ^ 0x01)
21566                     Return (GBST (0x00, HB0S, Local0, BT0P))
21567                 }
21568 
21569                 Method (_BTP, 1, NotSerialized)  // _BTP: Battery Trip Point
21570                 {
21571                     HAM4 &= 0xEF
21572                     If (Arg0)
21573                     {
21574                         Local0 = 0x00
21575                         Local1 = Arg0
21576                         If (!DerefOf (BX0I [0x01]))
21577                         {
21578                             Divide (Local1, 0x0A, Local0, Local1)
21579                         }
21580 
21581                         Local1 = AJTP (0x00, Local1, Local0)
21582                         HT0L = (Local1 & 0xFF)
21583                         HT0H = ((Local1 >> 0x08) & 0xFF)
21584                         HAM4 |= 0x10
21585                     }
21586                 }
21587             }
21588 
21589             Scope (HKEY)
21590             {
21591                 Method (SCRQ, 1, Serialized)
21592                 {
21593                     Name (SCRS, 0x00)
21594                     Local0 = Arg0
21595                     Local1 = 0x00
21596                     ADBG (Concatenate ("SCRQ =", ToHexString (Local0)))
21597                     If (((Local0 & 0x80000000) == 0x00))
21598                     {
21599                         Switch ((Local0 & 0xFFFF))
21600                         {
21601                             Case (0x00)
21602                             {
21603                                 Local2 = 0x01000000
21604                             }
21605                             Case (0x0200)
21606                             {
21607                                 Return (0x01)
21608                             }
21609                             Case (0x0210)
21610                             {
21611                                 Return (0x01)
21612                             }
21613                             Case (0x0211)
21614                             {
21615                                 Return (0x01)
21616                             }
21617                             Case (0x0212)
21618                             {
21619                                 Return (0x01)
21620                             }
21621                             Case (0x0300)
21622                             {
21623                                 Return (0x01)
21624                             }
21625                             Case (0x0301)
21626                             {
21627                                 Return (0x01)
21628                             }
21629                             Case (0x0302)
21630                             {
21631                                 Return (0x01)
21632                             }
21633                             Default
21634                             {
21635                                 Return (0x00)
21636                             }
21637 
21638                         }
21639 
21640                         Return (Local2)
21641                     }
21642                     Else
21643                     {
21644                         Local2 = (0x00 + 0x40000000)
21645                         Switch ((Local0 & 0xFFFF))
21646                         {
21647                             Case (0x00)
21648                             {
21649                                 Local2 = 0x01000000
21650                             }
21651                             Case (0x0200)
21652                             {
21653                                 Local2 = 0x01000000
21654                             }
21655                             Case (0x0210)
21656                             {
21657                                 \SREQ (0x02, 0x00, 0x00)
21658                             }
21659                             Case (0x0211)
21660                             {
21661                                 \SREQ (0x02, 0x01, 0x00)
21662                             }
21663                             Case (0x0212)
21664                             {
21665                                 \SREQ (0x02, 0x02, 0x00)
21666                             }
21667                             Case (0x0300)
21668                             {
21669                                 Local2 = 0x01000000
21670                             }
21671                             Case (0x0301)
21672                             {
21673                                 If ((\TBTS == 0x01))
21674                                 {
21675                                     \_SB.TBFP (0x01, 0x01)
21676                                 }
21677                                 Else
21678                                 {
21679                                     Local2 = (0x02 + 0x80000000)
21680                                 }
21681                             }
21682                             Case (0x0302)
21683                             {
21684                                 If ((\TBTS == 0x01))
21685                                 {
21686                                     \_SB.TBFP (0x01, 0x00)
21687                                 }
21688                                 Else
21689                                 {
21690                                     Local2 = (0x02 + 0x80000000)
21691                                 }
21692                             }
21693                             Default
21694                             {
21695                                 Local2 = (0x01 + 0x80000000)
21696                             }
21697 
21698                         }
21699 
21700                         Return (Local2)
21701                     }
21702                 }
21703             }
21704         }
21705 
21706         Device (HPET)
21707         {
21708             Name (_HID, EisaId ("PNP0103") /* HPET System Timer */)  // _HID: Hardware ID
21709             Name (_UID, 0x00)  // _UID: Unique ID
21710             Name (BUF0, ResourceTemplate ()
21711             {
21712                 Memory32Fixed (ReadWrite,
21713                     0xFED00000,         // Address Base
21714                     0x00000400,         // Address Length
21715                     _Y28)
21716             })
21717             Method (_STA, 0, NotSerialized)  // _STA: Status
21718             {
21719                 If (HPTE)
21720                 {
21721                     Return (0x0F)
21722                 }
21723 
21724                 Return (0x00)
21725             }
21726 
21727             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
21728             {
21729                 If (HPTE)
21730                 {
21731                     CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y28._BAS, HPT0)  // _BAS: Base Address
21732                     HPT0 = HPTB /* \HPTB */
21733                 }
21734 
21735                 Return (BUF0) /* \_SB_.PCI0.LPCB.HPET.BUF0 */
21736             }
21737         }
21738 
21739         Device (IPIC)
21740         {
21741             Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */)  // _HID: Hardware ID
21742             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
21743             {
21744                 IO (Decode16,
21745                     0x0020,             // Range Minimum
21746                     0x0020,             // Range Maximum
21747                     0x01,               // Alignment
21748                     0x02,               // Length
21749                     )
21750                 IO (Decode16,
21751                     0x0024,             // Range Minimum
21752                     0x0024,             // Range Maximum
21753                     0x01,               // Alignment
21754                     0x02,               // Length
21755                     )
21756                 IO (Decode16,
21757                     0x0028,             // Range Minimum
21758                     0x0028,             // Range Maximum
21759                     0x01,               // Alignment
21760                     0x02,               // Length
21761                     )
21762                 IO (Decode16,
21763                     0x002C,             // Range Minimum
21764                     0x002C,             // Range Maximum
21765                     0x01,               // Alignment
21766                     0x02,               // Length
21767                     )
21768                 IO (Decode16,
21769                     0x0030,             // Range Minimum
21770                     0x0030,             // Range Maximum
21771                     0x01,               // Alignment
21772                     0x02,               // Length
21773                     )
21774                 IO (Decode16,
21775                     0x0034,             // Range Minimum
21776                     0x0034,             // Range Maximum
21777                     0x01,               // Alignment
21778                     0x02,               // Length
21779                     )
21780                 IO (Decode16,
21781                     0x0038,             // Range Minimum
21782                     0x0038,             // Range Maximum
21783                     0x01,               // Alignment
21784                     0x02,               // Length
21785                     )
21786                 IO (Decode16,
21787                     0x003C,             // Range Minimum
21788                     0x003C,             // Range Maximum
21789                     0x01,               // Alignment
21790                     0x02,               // Length
21791                     )
21792                 IO (Decode16,
21793                     0x00A0,             // Range Minimum
21794                     0x00A0,             // Range Maximum
21795                     0x01,               // Alignment
21796                     0x02,               // Length
21797                     )
21798                 IO (Decode16,
21799                     0x00A4,             // Range Minimum
21800                     0x00A4,             // Range Maximum
21801                     0x01,               // Alignment
21802                     0x02,               // Length
21803                     )
21804                 IO (Decode16,
21805                     0x00A8,             // Range Minimum
21806                     0x00A8,             // Range Maximum
21807                     0x01,               // Alignment
21808                     0x02,               // Length
21809                     )
21810                 IO (Decode16,
21811                     0x00AC,             // Range Minimum
21812                     0x00AC,             // Range Maximum
21813                     0x01,               // Alignment
21814                     0x02,               // Length
21815                     )
21816                 IO (Decode16,
21817                     0x00B0,             // Range Minimum
21818                     0x00B0,             // Range Maximum
21819                     0x01,               // Alignment
21820                     0x02,               // Length
21821                     )
21822                 IO (Decode16,
21823                     0x00B4,             // Range Minimum
21824                     0x00B4,             // Range Maximum
21825                     0x01,               // Alignment
21826                     0x02,               // Length
21827                     )
21828                 IO (Decode16,
21829                     0x00B8,             // Range Minimum
21830                     0x00B8,             // Range Maximum
21831                     0x01,               // Alignment
21832                     0x02,               // Length
21833                     )
21834                 IO (Decode16,
21835                     0x00BC,             // Range Minimum
21836                     0x00BC,             // Range Maximum
21837                     0x01,               // Alignment
21838                     0x02,               // Length
21839                     )
21840                 IO (Decode16,
21841                     0x04D0,             // Range Minimum
21842                     0x04D0,             // Range Maximum
21843                     0x01,               // Alignment
21844                     0x02,               // Length
21845                     )
21846                 IRQNoFlags ()
21847                     {2}
21848             })
21849         }
21850 
21851         Device (MATH)
21852         {
21853             Name (_HID, EisaId ("PNP0C04") /* x87-compatible Floating Point Processing Unit */)  // _HID: Hardware ID
21854             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
21855             {
21856                 IO (Decode16,
21857                     0x00F0,             // Range Minimum
21858                     0x00F0,             // Range Maximum
21859                     0x01,               // Alignment
21860                     0x01,               // Length
21861                     )
21862                 IRQNoFlags ()
21863                     {13}
21864             })
21865             Method (_STA, 0, NotSerialized)  // _STA: Status
21866             {
21867                 If ((PCHS == PCHH))
21868                 {
21869                     Return (0x1F)
21870                 }
21871                 Else
21872                 {
21873                     Return (0x00)
21874                 }
21875             }
21876         }
21877 
21878         Device (LDRC)
21879         {
21880             Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
21881             Name (_UID, 0x02)  // _UID: Unique ID
21882             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
21883             {
21884                 IO (Decode16,
21885                     0x002E,             // Range Minimum
21886                     0x002E,             // Range Maximum
21887                     0x01,               // Alignment
21888                     0x02,               // Length
21889                     )
21890                 IO (Decode16,
21891                     0x004E,             // Range Minimum
21892                     0x004E,             // Range Maximum
21893                     0x01,               // Alignment
21894                     0x02,               // Length
21895                     )
21896                 IO (Decode16,
21897                     0x0061,             // Range Minimum
21898                     0x0061,             // Range Maximum
21899                     0x01,               // Alignment
21900                     0x01,               // Length
21901                     )
21902                 IO (Decode16,
21903                     0x0063,             // Range Minimum
21904                     0x0063,             // Range Maximum
21905                     0x01,               // Alignment
21906                     0x01,               // Length
21907                     )
21908                 IO (Decode16,
21909                     0x0065,             // Range Minimum
21910                     0x0065,             // Range Maximum
21911                     0x01,               // Alignment
21912                     0x01,               // Length
21913                     )
21914                 IO (Decode16,
21915                     0x0067,             // Range Minimum
21916                     0x0067,             // Range Maximum
21917                     0x01,               // Alignment
21918                     0x01,               // Length
21919                     )
21920                 IO (Decode16,
21921                     0x0070,             // Range Minimum
21922                     0x0070,             // Range Maximum
21923                     0x01,               // Alignment
21924                     0x01,               // Length
21925                     )
21926                 IO (Decode16,
21927                     0x0080,             // Range Minimum
21928                     0x0080,             // Range Maximum
21929                     0x01,               // Alignment
21930                     0x01,               // Length
21931                     )
21932                 IO (Decode16,
21933                     0x0092,             // Range Minimum
21934                     0x0092,             // Range Maximum
21935                     0x01,               // Alignment
21936                     0x01,               // Length
21937                     )
21938                 IO (Decode16,
21939                     0x00B2,             // Range Minimum
21940                     0x00B2,             // Range Maximum
21941                     0x01,               // Alignment
21942                     0x02,               // Length
21943                     )
21944                 IO (Decode16,
21945                     0x0680,             // Range Minimum
21946                     0x0680,             // Range Maximum
21947                     0x01,               // Alignment
21948                     0x20,               // Length
21949                     )
21950                 IO (Decode16,
21951                     0x164E,             // Range Minimum
21952                     0x164E,             // Range Maximum
21953                     0x01,               // Alignment
21954                     0x02,               // Length
21955                     )
21956             })
21957         }
21958 
21959         Device (RTC)
21960         {
21961             Name (_HID, EisaId ("PNP0B00") /* AT Real-Time Clock */)  // _HID: Hardware ID
21962             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
21963             {
21964                 IO (Decode16,
21965                     0x0070,             // Range Minimum
21966                     0x0070,             // Range Maximum
21967                     0x01,               // Alignment
21968                     0x08,               // Length
21969                     )
21970                 IRQNoFlags ()
21971                     {8}
21972             })
21973             Method (_STA, 0, NotSerialized)  // _STA: Status
21974             {
21975                 If ((\STAS == 0x01))
21976                 {
21977                     Return (0x0F)
21978                 }
21979                 Else
21980                 {
21981                     Return (0x00)
21982                 }
21983             }
21984         }
21985 
21986         Device (TIMR)
21987         {
21988             Name (_HID, EisaId ("PNP0100") /* PC-class System Timer */)  // _HID: Hardware ID
21989             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
21990             {
21991                 IO (Decode16,
21992                     0x0040,             // Range Minimum
21993                     0x0040,             // Range Maximum
21994                     0x01,               // Alignment
21995                     0x04,               // Length
21996                     )
21997                 IO (Decode16,
21998                     0x0050,             // Range Minimum
21999                     0x0050,             // Range Maximum
22000                     0x10,               // Alignment
22001                     0x04,               // Length
22002                     )
22003                 IRQNoFlags ()
22004                     {0}
22005             })
22006         }
22007 
22008         Device (CWDT)
22009         {
22010             Name (_HID, EisaId ("INT3F0D") /* ACPI Motherboard Resources */)  // _HID: Hardware ID
22011             Name (_CID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _CID: Compatible ID
22012             Method (_STA, 0, Serialized)  // _STA: Status
22013             {
22014                 Return (0x0F)
22015             }
22016 
22017             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
22018             {
22019                 Name (RBUF, ResourceTemplate ()
22020                 {
22021                     IO (Decode16,
22022                         0x0000,             // Range Minimum
22023                         0x0000,             // Range Maximum
22024                         0x04,               // Alignment
22025                         0x04,               // Length
22026                         _Y29)
22027                 })
22028                 CreateWordField (RBUF, \_SB.PCI0.LPCB.CWDT._CRS._Y29._MIN, OMIN)  // _MIN: Minimum Base Address
22029                 CreateWordField (RBUF, \_SB.PCI0.LPCB.CWDT._CRS._Y29._MAX, OMAX)  // _MAX: Maximum Base Address
22030                 OMIN = (PMBS + 0x54)
22031                 OMAX = (PMBS + 0x54)
22032                 Return (RBUF) /* \_SB_.PCI0.LPCB.CWDT._CRS.RBUF */
22033             }
22034         }
22035 
22036         Device (SPKR)
22037         {
22038             Name (_HID, EisaId ("PNP0800") /* Microsoft Sound System Compatible Device */)  // _HID: Hardware ID
22039             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
22040             {
22041                 IO (Decode16,
22042                     0x0061,             // Range Minimum
22043                     0x0061,             // Range Maximum
22044                     0x01,               // Alignment
22045                     0x01,               // Length
22046                     )
22047             })
22048         }
22049 
22050         Device (KBD)
22051         {
22052             Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
22053             {
22054                 If (\WIN8)
22055                 {
22056                     Return (0x7100AE30)
22057                 }
22058 
22059                 Return (0x0303D041)
22060             }
22061 
22062             Name (_CID, EisaId ("PNP0303") /* IBM Enhanced Keyboard (101/102-key, PS/2 Mouse) */)  // _CID: Compatible ID
22063             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
22064             {
22065                 IO (Decode16,
22066                     0x0060,             // Range Minimum
22067                     0x0060,             // Range Maximum
22068                     0x01,               // Alignment
22069                     0x01,               // Length
22070                     )
22071                 IO (Decode16,
22072                     0x0064,             // Range Minimum
22073                     0x0064,             // Range Maximum
22074                     0x01,               // Alignment
22075                     0x01,               // Length
22076                     )
22077                 IRQNoFlags ()
22078                     {1}
22079             })
22080         }
22081 
22082         Device (MOU)
22083         {
22084             Name (_HID, EisaId ("LEN0401"))  // _HID: Hardware ID
22085             Name (_CID, EisaId ("PNP0F13") /* PS/2 Mouse */)  // _CID: Compatible ID
22086             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
22087             {
22088                 IRQNoFlags ()
22089                     {12}
22090             })
22091             Method (MHID, 0, NotSerialized)
22092             {
22093                 Local0 = (PNHM & 0x0FFF0FF0)
22094                 If ((Local0 == 0x000406E0))
22095                 {
22096                     _HID = 0x7B00AE30
22097                 }
22098                 ElseIf (CondRefOf (PHID))
22099                 {
22100                     PHID ()
22101                 }
22102                 ElseIf ((\_SB.GGIV (0x04030016) == 0x01))
22103                 {
22104                     _HID = 0x0104AE30
22105                 }
22106                 Else
22107                 {
22108                     _HID = 0x0004AE30
22109                 }
22110             }
22111         }
22112     }
22113 
22114     Name (ECUP, 0x01)
22115     Mutex (EHLD, 0x00)
22116     Name (LDLY, 0x012C)
22117     Name (TNVB, 0x5FB02000)
22118     Name (TNVL, 0x0044)
22119     OperationRegion (BNVS, SystemMemory, TNVB, TNVL)
22120     Field (BNVS, AnyAcc, Lock, Preserve)
22121     {
22122         TBSF,   8, 
22123         SOHP,   8, 
22124         TWIN,   8, 
22125         GP5F,   8, 
22126         NOHP,   8, 
22127         TBSE,   8, 
22128         WKFN,   8, 
22129         TBTS,   8, 
22130         TARS,   8, 
22131         FPEN,   32, 
22132         FPG0,   32, 
22133         FP0L,   8, 
22134         CPG0,   32, 
22135         RSG0,   32, 
22136         RS0L,   8, 
22137         DTCP,   8, 
22138         RPS0,   8, 
22139         RPT0,   8, 
22140         RPS1,   8, 
22141         RPT1,   8, 
22142         RPN0,   8, 
22143         RPN1,   8, 
22144         FPG1,   32, 
22145         FP1L,   8, 
22146         CPG1,   32, 
22147         RSG1,   32, 
22148         RS1L,   8, 
22149         CGST,   8, 
22150         DTPT,   8, 
22151         TRWA,   8, 
22152         ACDC,   8, 
22153         DT0E,   8, 
22154         DT1E,   8, 
22155         TASP,   8, 
22156         TL1S,   8, 
22157         TCLK,   8, 
22158         TLTR,   8, 
22159         TPTM,   8, 
22160         TWAK,   8, 
22161         TBOD,   16, 
22162         TSXW,   8, 
22163         RTBT,   8, 
22164         RTBC,   8, 
22165         TBCD,   16, 
22166         TREV,   8
22167     }
22168 
22169     Name (TRDO, 0x00)
22170     Name (TRD3, 0x00)
22171     Name (TBPE, 0x00)
22172     Name (TOFF, 0x00)
22173     Method (TBON, 0, Serialized)
22174     {
22175         TRDO = 0x01
22176         Switch (ToInteger (\RPS0))
22177         {
22178             Case (0x01)
22179             {
22180                 If (CondRefOf (\_SB.PCI0.RP01.PON))
22181                 {
22182                     \_SB.PCI0.RP01.PON ()
22183                 }
22184             }
22185             Case (0x02)
22186             {
22187                 If (CondRefOf (\_SB.PCI0.RP02.PON))
22188                 {
22189                     \_SB.PCI0.RP02.PON ()
22190                 }
22191             }
22192             Case (0x03)
22193             {
22194                 If (CondRefOf (\_SB.PCI0.RP03.PON))
22195                 {
22196                     \_SB.PCI0.RP03.PON ()
22197                 }
22198             }
22199             Case (0x04)
22200             {
22201                 If (CondRefOf (\_SB.PCI0.RP04.PON))
22202                 {
22203                     \_SB.PCI0.RP04.PON ()
22204                 }
22205             }
22206             Case (0x05)
22207             {
22208                 If (CondRefOf (\_SB.PCI0.RP05.PON))
22209                 {
22210                     \_SB.PCI0.RP05.PON ()
22211                 }
22212             }
22213             Case (0x06)
22214             {
22215                 If (CondRefOf (\_SB.PCI0.RP06.PON))
22216                 {
22217                     \_SB.PCI0.RP06.PON ()
22218                 }
22219             }
22220             Case (0x07)
22221             {
22222                 If (CondRefOf (\_SB.PCI0.RP07.PON))
22223                 {
22224                     \_SB.PCI0.RP07.PON ()
22225                 }
22226             }
22227             Case (0x08)
22228             {
22229                 If (CondRefOf (\_SB.PCI0.RP08.PON))
22230                 {
22231                     \_SB.PCI0.RP08.PON ()
22232                 }
22233             }
22234             Case (0x09)
22235             {
22236                 If (CondRefOf (\_SB.PCI0.RP09.PON))
22237                 {
22238                     \_SB.PCI0.RP09.PON ()
22239                 }
22240             }
22241             Case (0x0A)
22242             {
22243                 If (CondRefOf (\_SB.PCI0.RP10.PON))
22244                 {
22245                     \_SB.PCI0.RP10.PON ()
22246                 }
22247             }
22248             Case (0x0B)
22249             {
22250                 If (CondRefOf (\_SB.PCI0.RP11.PON))
22251                 {
22252                     \_SB.PCI0.RP11.PON ()
22253                 }
22254             }
22255             Case (0x0C)
22256             {
22257                 If (CondRefOf (\_SB.PCI0.RP12.PON))
22258                 {
22259                     \_SB.PCI0.RP12.PON ()
22260                 }
22261             }
22262             Case (0x0D)
22263             {
22264                 If (CondRefOf (\_SB.PCI0.RP13.PON))
22265                 {
22266                     \_SB.PCI0.RP13.PON ()
22267                 }
22268             }
22269             Case (0x0E)
22270             {
22271                 If (CondRefOf (\_SB.PCI0.RP14.PON))
22272                 {
22273                     \_SB.PCI0.RP14.PON ()
22274                 }
22275             }
22276             Case (0x0F)
22277             {
22278                 If (CondRefOf (\_SB.PCI0.RP15.PON))
22279                 {
22280                     \_SB.PCI0.RP15.PON ()
22281                 }
22282             }
22283             Case (0x10)
22284             {
22285                 If (CondRefOf (\_SB.PCI0.RP16.PON))
22286                 {
22287                     \_SB.PCI0.RP16.PON ()
22288                 }
22289             }
22290             Case (0x11)
22291             {
22292                 If (CondRefOf (\_SB.PCI0.RP17.PON))
22293                 {
22294                     \_SB.PCI0.RP17.PON ()
22295                 }
22296             }
22297             Case (0x12)
22298             {
22299                 If (CondRefOf (\_SB.PCI0.RP18.PON))
22300                 {
22301                     \_SB.PCI0.RP18.PON ()
22302                 }
22303             }
22304             Case (0x13)
22305             {
22306                 If (CondRefOf (\_SB.PCI0.RP19.PON))
22307                 {
22308                     \_SB.PCI0.RP19.PON ()
22309                 }
22310             }
22311             Case (0x14)
22312             {
22313                 If (CondRefOf (\_SB.PCI0.RP20.PON))
22314                 {
22315                     \_SB.PCI0.RP20.PON ()
22316                 }
22317             }
22318             Case (0x15)
22319             {
22320                 If (CondRefOf (\_SB.PCI0.RP21.PON))
22321                 {
22322                     \_SB.PCI0.RP21.PON ()
22323                 }
22324             }
22325             Case (0x16)
22326             {
22327                 If (CondRefOf (\_SB.PCI0.RP22.PON))
22328                 {
22329                     \_SB.PCI0.RP22.PON ()
22330                 }
22331             }
22332             Case (0x17)
22333             {
22334                 If (CondRefOf (\_SB.PCI0.RP23.PON))
22335                 {
22336                     \_SB.PCI0.RP23.PON ()
22337                 }
22338             }
22339             Case (0x18)
22340             {
22341                 If (CondRefOf (\_SB.PCI0.RP24.PON))
22342                 {
22343                     \_SB.PCI0.RP24.PON ()
22344                 }
22345             }
22346 
22347         }
22348 
22349         TRDO = 0x00
22350     }
22351 
22352     Method (TBTD, 2, Serialized)
22353     {
22354         ADBG ("TBTD")
22355         If ((Arg1 == 0x01))
22356         {
22357             Switch (ToInteger (Arg0))
22358             {
22359                 Case (Package (0x08)
22360                     {
22361                         0x01, 
22362                         0x02, 
22363                         0x03, 
22364                         0x04, 
22365                         0x05, 
22366                         0x06, 
22367                         0x07, 
22368                         0x08
22369                     }
22370 
22371 )
22372                 {
22373                     Local0 = 0x1C
22374                 }
22375                 Case (Package (0x08)
22376                     {
22377                         0x09, 
22378                         0x0A, 
22379                         0x0B, 
22380                         0x0C, 
22381                         0x0D, 
22382                         0x0E, 
22383                         0x0F, 
22384                         0x10
22385                     }
22386 
22387 )
22388                 {
22389                     Local0 = 0x1D
22390                 }
22391                 Case (Package (0x08)
22392                     {
22393                         0x11, 
22394                         0x12, 
22395                         0x13, 
22396                         0x14, 
22397                         0x15, 
22398                         0x16, 
22399                         0x17, 
22400                         0x18
22401                     }
22402 
22403 )
22404                 {
22405                     Local0 = 0x1B
22406                 }
22407 
22408             }
22409         }
22410         ElseIf ((Arg1 == 0x02))
22411         {
22412             Switch (ToInteger (Arg0))
22413             {
22414                 Case (Package (0x03)
22415                     {
22416                         0x01, 
22417                         0x02, 
22418                         0x03
22419                     }
22420 
22421 )
22422                 {
22423                     Local0 = 0x01
22424                 }
22425 
22426             }
22427         }
22428         Else
22429         {
22430             Local0 = 0xFF
22431         }
22432 
22433         ADBG ("Device no")
22434         ADBG (Local0)
22435         Return (Local0)
22436     }
22437 
22438     Method (TBTF, 2, Serialized)
22439     {
22440         ADBG ("TBTF")
22441         If ((Arg1 == 0x01))
22442         {
22443             Switch (ToInteger (Arg0))
22444             {
22445                 Case (0x01)
22446                 {
22447                     Local0 = (\RPA1 & 0x0F)
22448                 }
22449                 Case (0x02)
22450                 {
22451                     Local0 = (\RPA2 & 0x0F)
22452                 }
22453                 Case (0x03)
22454                 {
22455                     Local0 = (\RPA3 & 0x0F)
22456                 }
22457                 Case (0x04)
22458                 {
22459                     Local0 = (\RPA4 & 0x0F)
22460                 }
22461                 Case (0x05)
22462                 {
22463                     Local0 = (\RPA5 & 0x0F)
22464                 }
22465                 Case (0x06)
22466                 {
22467                     Local0 = (\RPA6 & 0x0F)
22468                 }
22469                 Case (0x07)
22470                 {
22471                     Local0 = (\RPA7 & 0x0F)
22472                 }
22473                 Case (0x08)
22474                 {
22475                     Local0 = (\RPA8 & 0x0F)
22476                 }
22477                 Case (0x09)
22478                 {
22479                     Local0 = (\RPA9 & 0x0F)
22480                 }
22481                 Case (0x0A)
22482                 {
22483                     Local0 = (\RPAA & 0x0F)
22484                 }
22485                 Case (0x0B)
22486                 {
22487                     Local0 = (\RPAB & 0x0F)
22488                 }
22489                 Case (0x0C)
22490                 {
22491                     Local0 = (\RPAC & 0x0F)
22492                 }
22493                 Case (0x0D)
22494                 {
22495                     Local0 = (\RPAD & 0x0F)
22496                 }
22497                 Case (0x0E)
22498                 {
22499                     Local0 = (\RPAE & 0x0F)
22500                 }
22501                 Case (0x0F)
22502                 {
22503                     Local0 = (\RPAF & 0x0F)
22504                 }
22505                 Case (0x10)
22506                 {
22507                     Local0 = (\RPAG & 0x0F)
22508                 }
22509                 Case (0x11)
22510                 {
22511                     Local0 = (\RPAH & 0x0F)
22512                 }
22513                 Case (0x12)
22514                 {
22515                     Local0 = (\RPAI & 0x0F)
22516                 }
22517                 Case (0x13)
22518                 {
22519                     Local0 = (\RPAJ & 0x0F)
22520                 }
22521                 Case (0x14)
22522                 {
22523                     Local0 = (\RPAK & 0x0F)
22524                 }
22525                 Case (0x15)
22526                 {
22527                     Local0 = (\RPAL & 0x0F)
22528                 }
22529                 Case (0x16)
22530                 {
22531                     Local0 = (\RPAM & 0x0F)
22532                 }
22533                 Case (0x17)
22534                 {
22535                     Local0 = (\RPAN & 0x0F)
22536                 }
22537                 Case (0x18)
22538                 {
22539                     Local0 = (\RPAO & 0x0F)
22540                 }
22541 
22542             }
22543         }
22544         ElseIf ((Arg1 == 0x02))
22545         {
22546             Switch (ToInteger (Arg0))
22547             {
22548                 Case (0x01)
22549                 {
22550                     Local0 = 0x00
22551                 }
22552                 Case (0x02)
22553                 {
22554                     Local0 = 0x01
22555                 }
22556                 Case (0x03)
22557                 {
22558                     Local0 = 0x02
22559                 }
22560 
22561             }
22562         }
22563         Else
22564         {
22565             Local0 = 0xFF
22566         }
22567 
22568         ADBG ("Function no")
22569         ADBG (Local0)
22570         Return (Local0)
22571     }
22572 
22573     Method (MMRP, 2, Serialized)
22574     {
22575         Local0 = \_SB.PCI0.GPCB ()
22576         Local0 += (TBTD (Arg0, Arg1) << 0x0F)
22577         Local0 += (TBTF (Arg0, Arg1) << 0x0C)
22578         Return (Local0)
22579     }
22580 
22581     Method (MMTB, 2, Serialized)
22582     {
22583         ADBG ("MMTB")
22584         Local0 = \_SB.PCI0.GPCB ()
22585         Local0 += (TBTD (Arg0, Arg1) << 0x0F)
22586         Local0 += (TBTF (Arg0, Arg1) << 0x0C)
22587         OperationRegion (MMMM, SystemMemory, Local0, 0x1A)
22588         Field (MMMM, AnyAcc, NoLock, Preserve)
22589         {
22590             Offset (0x19), 
22591             SBUS,   8
22592         }
22593 
22594         Local2 = SBUS /* \MMTB.SBUS */
22595         Local0 = \_SB.PCI0.GPCB ()
22596         Local2 *= 0x00100000
22597         Local0 += Local2
22598         ADBG ("TBT-US-ADR")
22599         ADBG (Local0)
22600         Return (Local0)
22601     }
22602 
22603     Method (FFTB, 2, Serialized)
22604     {
22605         ADBG ("FFTB")
22606         Local0 = (MMTB (Arg0, Arg1) + 0x0548)
22607         OperationRegion (PXVD, SystemMemory, Local0, 0x08)
22608         Field (PXVD, DWordAcc, NoLock, Preserve)
22609         {
22610             TB2P,   32, 
22611             P2TB,   32
22612         }
22613 
22614         Local1 = TB2P /* \FFTB.TB2P */
22615         If ((Local1 == 0xFFFFFFFF))
22616         {
22617             ADBG ("FFTb 1")
22618             Return (0x01)
22619         }
22620         Else
22621         {
22622             ADBG ("FFTb 0")
22623             Return (0x00)
22624         }
22625     }
22626 
22627     Name (TDMA, 0x80000000)
22628     Scope (\_GPE)
22629     {
22630         Method (OSUP, 2, Serialized)
22631         {
22632             ADBG ("OSUP")
22633             Local0 = (Arg0 + 0x0540)
22634             OperationRegion (PXVD, SystemMemory, Local0, 0x10)
22635             Field (PXVD, DWordAcc, NoLock, Preserve)
22636             {
22637                 IT2P,   32, 
22638                 IP2T,   32, 
22639                 DT2P,   32, 
22640                 DP2T,   32
22641             }
22642 
22643             Local1 = 0x64
22644             If ((Arg1 == 0x80))
22645             {
22646                 IP2T = 0x0D
22647             }
22648             Else
22649             {
22650                 DP2T = 0x0D
22651             }
22652 
22653             While ((Local1 > 0x00))
22654             {
22655                 Local1 = (Local1 - 0x01)
22656                 If ((Arg1 == 0x80))
22657                 {
22658                     Local2 = IT2P /* \_GPE.OSUP.IT2P */
22659                 }
22660                 Else
22661                 {
22662                     Local2 = DT2P /* \_GPE.OSUP.DT2P */
22663                 }
22664 
22665                 If (((Local2 == 0xFFFFFFFF) && (Arg1 == 0x00)))
22666                 {
22667                     ADBG ("Dev gone")
22668                     Return (0x02)
22669                 }
22670 
22671                 If ((Local2 & 0x01))
22672                 {
22673                     ADBG ("Cmd acknowledged")
22674                     Break
22675                 }
22676 
22677                 Sleep (0x32)
22678             }
22679 
22680             If ((Arg1 == 0x80))
22681             {
22682                 IP2T = 0x00
22683                 Local1 = 0x64
22684                 While ((Local1 > 0x00))
22685                 {
22686                     Local1 = (Local1 - 0x01)
22687                     Local2 = IT2P /* \_GPE.OSUP.IT2P */
22688                     If ((Local2 & 0x01))
22689                     {
22690                         ADBG ("Cmd acknowledged")
22691                         Break
22692                     }
22693 
22694                     Sleep (0x32)
22695                 }
22696             }
22697             ElseIf ((TRWA == 0x01))
22698             {
22699                 DP2T = 0x0C
22700             }
22701             Else
22702             {
22703                 DP2T = 0x00
22704             }
22705 
22706             ADBG ("End-of-OSUP")
22707             Return (0x01)
22708         }
22709 
22710         Method (TBFF, 2, Serialized)
22711         {
22712             ADBG ("TBFF")
22713             Local0 = MMTB (Arg0, Arg1)
22714             OperationRegion (PXVD, SystemMemory, Local0, 0x08)
22715             Field (PXVD, DWordAcc, NoLock, Preserve)
22716             {
22717                 VEDI,   32, 
22718                 CMDR,   32
22719             }
22720 
22721             Local1 = VEDI /* \_GPE.TBFF.VEDI */
22722             If ((Local1 == 0xFFFFFFFF))
22723             {
22724                 If ((\TWIN != 0x00))
22725                 {
22726                     If ((CMDR == 0xFFFFFFFF))
22727                     {
22728                         Return (0x02)
22729                     }
22730 
22731                     Return (0x01)
22732                 }
22733                 Else
22734                 {
22735                     Return (OSUP (Local0, 0x00))
22736                 }
22737             }
22738             Else
22739             {
22740                 ADBG ("Dev Present")
22741                 Return (0x00)
22742             }
22743         }
22744 
22745         Method (TSUB, 2, Serialized)
22746         {
22747             ADBG ("TSUB")
22748             Local0 = \_SB.PCI0.GPCB ()
22749             Local0 += (TBTD (Arg0, Arg1) << 0x0F)
22750             Local0 += (TBTF (Arg0, Arg1) << 0x0C)
22751             ADBG ("ADR")
22752             ADBG (Local0)
22753             OperationRegion (MMMM, SystemMemory, Local0, 0x1A)
22754             Field (MMMM, AnyAcc, NoLock, Preserve)
22755             {
22756                 Offset (0x19), 
22757                 SBUS,   8
22758             }
22759 
22760             ADBG ("Sec Bus")
22761             ADBG (SBUS)
22762             Return (SBUS) /* \_GPE.TSUB.SBUS */
22763         }
22764 
22765         Method (TSUP, 2, Serialized)
22766         {
22767             ADBG ("TSUB")
22768             Local0 = \_SB.PCI0.GPCB ()
22769             Local0 += (TBTD (Arg0, Arg1) << 0x0F)
22770             Local0 += (TBTF (Arg0, Arg1) << 0x0C)
22771             ADBG ("ADR:")
22772             ADBG (Local0)
22773             OperationRegion (MMMM, SystemMemory, Local0, 0x30)
22774             Field (MMMM, AnyAcc, NoLock, Preserve)
22775             {
22776                 CMDS,   32, 
22777                 Offset (0x19), 
22778                 SBUS,   8, 
22779                 SBU5,   8, 
22780                 Offset (0x1C), 
22781                 SEIO,   32, 
22782                 MMBL,   32, 
22783                 PMBL,   32
22784             }
22785 
22786             ADBG ("Pmem of TBT RP:")
22787             ADBG (PMBL)
22788             Return (PMBL) /* \_GPE.TSUP.PMBL */
22789         }
22790 
22791         Method (WSUB, 2, Serialized)
22792         {
22793             ADBG (Concatenate ("WSUB=", ToHexString (Arg0)))
22794             ADBG (ToHexString (Timer))
22795             Local0 = 0x00
22796             Local1 = 0x00
22797             While (0x01)
22798             {
22799                 Local1 = TSUP (Arg0, Arg1)
22800                 If ((Local1 > 0x0001FFF1))
22801                 {
22802                     ADBG ("WSUB-Finished")
22803                     Break
22804                 }
22805                 Else
22806                 {
22807                     Local0 += 0x01
22808                     If ((Local0 > 0x03E8))
22809                     {
22810                         Sleep (0x03E8)
22811                         ADBG ("WSUB-Deadlock")
22812                     }
22813                     Else
22814                     {
22815                         Sleep (0x10)
22816                     }
22817                 }
22818             }
22819 
22820             ADBG (Concatenate ("WSUb=", ToHexString (Local1)))
22821         }
22822 
22823         Method (WWAK, 0, NotSerialized)
22824         {
22825             ADBG ("WWAK")
22826             Wait (WFEV, 0xFFFF)
22827             Signal (WFEV)
22828         }
22829 
22830         Method (NTFY, 2, Serialized)
22831         {
22832             ADBG ("NTFY")
22833             If ((NOHP == 0x01))
22834             {
22835                 If ((Arg1 == 0x01))
22836                 {
22837                     Switch (ToInteger (Arg0))
22838                     {
22839                         Case (0x01)
22840                         {
22841                             ADBG ("Notify RP01")
22842                             Notify (\_SB.PCI0.RP01, 0x00) // Bus Check
22843                         }
22844                         Case (0x02)
22845                         {
22846                             ADBG ("Notify RP02")
22847                             Notify (\_SB.PCI0.RP02, 0x00) // Bus Check
22848                         }
22849                         Case (0x03)
22850                         {
22851                             ADBG ("Notify RP03")
22852                             Notify (\_SB.PCI0.RP03, 0x00) // Bus Check
22853                         }
22854                         Case (0x04)
22855                         {
22856                             ADBG ("Notify RP04")
22857                             Notify (\_SB.PCI0.RP04, 0x00) // Bus Check
22858                         }
22859                         Case (0x05)
22860                         {
22861                             ADBG ("Notify RP05")
22862                             Notify (\_SB.PCI0.RP05, 0x00) // Bus Check
22863                         }
22864                         Case (0x06)
22865                         {
22866                             ADBG ("Notify RP06")
22867                             Notify (\_SB.PCI0.RP06, 0x00) // Bus Check
22868                         }
22869                         Case (0x07)
22870                         {
22871                             ADBG ("Notify RP07")
22872                             Notify (\_SB.PCI0.RP07, 0x00) // Bus Check
22873                         }
22874                         Case (0x08)
22875                         {
22876                             ADBG ("Notify RP08")
22877                             Notify (\_SB.PCI0.RP08, 0x00) // Bus Check
22878                         }
22879                         Case (0x09)
22880                         {
22881                             ADBG ("Notify RP09")
22882                             Notify (\_SB.PCI0.RP09, 0x00) // Bus Check
22883                         }
22884                         Case (0x0A)
22885                         {
22886                             ADBG ("Notify RP10")
22887                             Notify (\_SB.PCI0.RP10, 0x00) // Bus Check
22888                         }
22889                         Case (0x0B)
22890                         {
22891                             ADBG ("Notify RP11")
22892                             Notify (\_SB.PCI0.RP11, 0x00) // Bus Check
22893                         }
22894                         Case (0x0C)
22895                         {
22896                             ADBG ("Notify RP12")
22897                             Notify (\_SB.PCI0.RP12, 0x00) // Bus Check
22898                         }
22899                         Case (0x0D)
22900                         {
22901                             ADBG ("Notify RP13")
22902                             Notify (\_SB.PCI0.RP13, 0x00) // Bus Check
22903                         }
22904                         Case (0x0E)
22905                         {
22906                             ADBG ("Notify RP14")
22907                             Notify (\_SB.PCI0.RP14, 0x00) // Bus Check
22908                         }
22909                         Case (0x0F)
22910                         {
22911                             ADBG ("Notify RP15")
22912                             Notify (\_SB.PCI0.RP15, 0x00) // Bus Check
22913                         }
22914                         Case (0x10)
22915                         {
22916                             ADBG ("Notify RP16")
22917                             Notify (\_SB.PCI0.RP16, 0x00) // Bus Check
22918                         }
22919                         Case (0x11)
22920                         {
22921                             ADBG ("Notify RP17")
22922                             Notify (\_SB.PCI0.RP17, 0x00) // Bus Check
22923                         }
22924                         Case (0x12)
22925                         {
22926                             ADBG ("Notify RP18")
22927                             Notify (\_SB.PCI0.RP18, 0x00) // Bus Check
22928                         }
22929                         Case (0x13)
22930                         {
22931                             ADBG ("Notify RP19")
22932                             Notify (\_SB.PCI0.RP19, 0x00) // Bus Check
22933                         }
22934                         Case (0x14)
22935                         {
22936                             ADBG ("Notify RP20")
22937                             Notify (\_SB.PCI0.RP20, 0x00) // Bus Check
22938                         }
22939                         Case (0x15)
22940                         {
22941                             ADBG ("Notify RP21")
22942                             Notify (\_SB.PCI0.RP21, 0x00) // Bus Check
22943                         }
22944                         Case (0x16)
22945                         {
22946                             ADBG ("Notify RP22")
22947                             Notify (\_SB.PCI0.RP22, 0x00) // Bus Check
22948                         }
22949                         Case (0x17)
22950                         {
22951                             ADBG ("Notify RP23")
22952                             Notify (\_SB.PCI0.RP23, 0x00) // Bus Check
22953                         }
22954                         Case (0x18)
22955                         {
22956                             ADBG ("Notify RP24")
22957                             Notify (\_SB.PCI0.RP24, 0x00) // Bus Check
22958                         }
22959 
22960                     }
22961                 }
22962                 ElseIf ((Arg1 == 0x02))
22963                 {
22964                     Switch (ToInteger (Arg0))
22965                     {
22966                         Case (0x01)
22967                         {
22968                             ADBG ("Notify PEG0")
22969                             Notify (\_SB.PCI0.PEG0, 0x00) // Bus Check
22970                         }
22971                         Case (0x02)
22972                         {
22973                             ADBG ("Notify PEG1")
22974                             Notify (\_SB.PCI0.PEG1, 0x00) // Bus Check
22975                         }
22976                         Case (0x03)
22977                         {
22978                             ADBG ("Notify PEG2")
22979                             Notify (\_SB.PCI0.PEG2, 0x00) // Bus Check
22980                         }
22981 
22982                     }
22983                 }
22984             }
22985 
22986             P8XH (0x00, 0xC2)
22987             P8XH (0x01, 0xC2)
22988         }
22989 
22990         Method (GNIS, 2, Serialized)
22991         {
22992             ADBG ("GNIS")
22993             If ((GP5F == 0x00))
22994             {
22995                 ADBG ("GNIS_Dis=0")
22996                 Return (0x00)
22997             }
22998 
22999             Local0 = (MMTB (Arg0, Arg1) + 0x0544)
23000             OperationRegion (PXVD, SystemMemory, Local0, 0x08)
23001             Field (PXVD, DWordAcc, NoLock, Preserve)
23002             {
23003                 HPFI,   1, 
23004                 Offset (0x04), 
23005                 TB2P,   32
23006             }
23007 
23008             Local1 = TB2P /* \_GPE.GNIS.TB2P */
23009             ADBG (Concatenate ("TB2P=", ToHexString (Local1)))
23010             If ((Local1 == 0xFFFFFFFF))
23011             {
23012                 ADBG ("GNIS=0")
23013                 Return (0x00)
23014             }
23015 
23016             Local2 = HPFI /* \_GPE.GNIS.HPFI */
23017             ADBG (Concatenate ("HPFI=", ToHexString (Local2)))
23018             If ((Local2 == 0x01))
23019             {
23020                 HPFI = 0x00
23021                 ADBG ("GNIS=0")
23022                 Return (0x00)
23023             }
23024 
23025             ADBG ("GNIS=1")
23026             Return (0x01)
23027         }
23028 
23029         Method (CHKP, 2, Serialized)
23030         {
23031             Local0 = (MMTB (Arg0, Arg1) + 0x0544)
23032             OperationRegion (PXVE, SystemMemory, Local0, 0x08)
23033             Field (PXVE, DWordAcc, NoLock, Preserve)
23034             {
23035                 HPFI,   1, 
23036                 Offset (0x04), 
23037                 TB2P,   32
23038             }
23039 
23040             Local1 = TB2P /* \_GPE.CHKP.TB2P */
23041             Local1 &= 0x20000000
23042             ADBG (Concatenate ("Local1=", ToHexString (Local1)))
23043             If ((Local1 == 0x20000000))
23044             {
23045                 Return (0x01)
23046             }
23047             Else
23048             {
23049                 Return (0x00)
23050             }
23051         }
23052 
23053         Method (XTBT, 2, Serialized)
23054         {
23055             ADBG ("XTBT")
23056             ADBG ("RP :")
23057             ADBG (Arg0)
23058             DTCP = Arg0
23059             DTPT = Arg1
23060             If ((Arg0 == RPS0))
23061             {
23062                 Local0 = 0x01
23063             }
23064             ElseIf ((Arg0 == RPS1))
23065             {
23066                 Local0 = 0x02
23067             }
23068             Else
23069             {
23070                 Local0 = 0x00
23071                 Return (Zero)
23072             }
23073 
23074             If (TRDO)
23075             {
23076                 ADBG ("Durng TBT_ON")
23077                 Return (Zero)
23078             }
23079 
23080             If (TRD3)
23081             {
23082                 ADBG ("During TBT_OFF")
23083                 Return (Zero)
23084             }
23085 
23086             WWAK ()
23087             WSUB (Arg0, Arg1)
23088             If (GNIS (Arg0, Arg1))
23089             {
23090                 Return (Zero)
23091             }
23092 
23093             OperationRegion (SPRT, SystemIO, 0xB2, 0x02)
23094             Field (SPRT, ByteAcc, Lock, Preserve)
23095             {
23096                 SSMP,   8
23097             }
23098 
23099             ADBG ("TBT-HP-Handler")
23100             Acquire (OSUM, 0xFFFF)
23101             Local1 = TBFF (Arg0, Arg1)
23102             If ((Local1 == 0x01))
23103             {
23104                 Sleep (0x10)
23105                 Release (OSUM)
23106                 ADBG ("OS_Up_Received")
23107                 Return (Zero)
23108             }
23109 
23110             If ((Local1 == 0x02))
23111             {
23112                 NTFY (Arg0, Arg1)
23113                 Sleep (0x10)
23114                 Release (OSUM)
23115                 ADBG ("Disconnect")
23116                 Return (Zero)
23117             }
23118 
23119             If ((SOHP == 0x01))
23120             {
23121                 ADBG ("TBT SW SMI")
23122                 TBSF = 0x15
23123                 SSMP = 0xF7
23124             }
23125 
23126             NTFY (Arg0, Arg1)
23127             Sleep (0x10)
23128             Release (OSUM)
23129             ADBG ("End-of-XTBT")
23130         }
23131 
23132         Method (ATBT, 0, NotSerialized)
23133         {
23134             ADBG ("ATBT")
23135             If ((CGST == 0x00))
23136             {
23137                 If ((RPN0 == 0x01))
23138                 {
23139                     XTBT (RPS0, RPT0)
23140                 }
23141             }
23142             ElseIf ((RPN0 == 0x01))
23143             {
23144                 XTBT (RPS0, RPT0)
23145             }
23146             ElseIf ((RPN1 == 0x01))
23147             {
23148                 XTBT (RPS1, RPT1)
23149             }
23150 
23151             ADBG ("End-of-ATBT")
23152         }
23153 
23154         Method (BTBT, 0, NotSerialized)
23155         {
23156             ADBG ("BTBT")
23157             If ((CGST == 0x00))
23158             {
23159                 If ((RPN1 == 0x01))
23160                 {
23161                     XTBT (RPS1, RPT1)
23162                 }
23163             }
23164 
23165             ADBG ("End-of-BTBT")
23166         }
23167 
23168         Method (TINI, 3, Serialized)
23169         {
23170             ADBG ("TINI")
23171             If ((Arg0 == 0x00))
23172             {
23173                 Local0 = MMRP (Arg1, Arg2)
23174                 OperationRegion (RP_X, SystemMemory, Local0, 0x20)
23175                 Field (RP_X, DWordAcc, NoLock, Preserve)
23176                 {
23177                     REG0,   32, 
23178                     REG1,   32, 
23179                     REG2,   32, 
23180                     REG3,   32, 
23181                     REG4,   32, 
23182                     REG5,   32, 
23183                     REG6,   32, 
23184                     REG7,   32
23185                 }
23186 
23187                 Local1 = REG6 /* \_GPE.TINI.REG6 */
23188                 REG6 = ((0x02 << 0x10) | (0x02 << 0x08))
23189                 Local2 = MMTB (Arg1, Arg2)
23190                 OSUP (Local2, 0x00)
23191                 REG6 = Local1
23192             }
23193 
23194             ADBG ("End-of-TINI")
23195         }
23196     }
23197 
23198     Scope (\_SB)
23199     {
23200         Method (THDR, 3, Serialized)
23201         {
23202             ADBG ("THDR")
23203             \_SB.CAGS (Arg0)
23204             \_GPE.XTBT (Arg1, Arg2)
23205         }
23206     }
23207 
23208     Scope (\_SB)
23209     {
23210         Method (CGWR, 2, Serialized)
23211         {
23212             If (CondRefOf (\_SB.SGOV))
23213             {
23214                 \_SB.SGOV (Arg0, Arg1)
23215             }
23216         }
23217 
23218         Method (CGRD, 2, Serialized)
23219         {
23220             Local0 = 0x01
23221             If ((Arg1 == 0x00))
23222             {
23223                 If (CondRefOf (\_SB.GGOV))
23224                 {
23225                     Local0 = \_SB.GGOV (Arg0)
23226                 }
23227             }
23228             ElseIf ((Arg1 == 0x01))
23229             {
23230                 If (CondRefOf (\_SB.GGIV))
23231                 {
23232                     Local0 = \_SB.GGIV (Arg0)
23233                 }
23234             }
23235 
23236             Return (Local0)
23237         }
23238 
23239         Method (WRGP, 2, Serialized)
23240         {
23241             Local0 = Arg0
23242             Local1 = Arg0
23243             Local0 &= 0xFFFFFFFF
23244             Local1 >>= 0x20
23245             If (((Local0 & 0xFF) == 0x01))
23246             {
23247                 \_SB.CGWR (Local1, Arg1)
23248             }
23249         }
23250 
23251         Method (RDGP, 2, Serialized)
23252         {
23253             Local7 = 0x01
23254             Local0 = Arg0
23255             Local1 = Arg0
23256             Local0 &= 0xFFFFFFFF
23257             Local1 >>= 0x20
23258             If (((Local0 & 0xFF) == 0x01))
23259             {
23260                 Local7 = \_SB.CGRD (Local1, Arg1)
23261             }
23262 
23263             Return (Local7)
23264         }
23265     }
23266 
23267     Scope (\_SB)
23268     {
23269         Method (TBFP, 2, NotSerialized)
23270         {
23271             If (Arg0)
23272             {
23273                 If ((Arg1 == 0x01))
23274                 {
23275                     CGWR (FPG0, FP0L)
23276                 }
23277                 Else
23278                 {
23279                     CGWR (FPG1, FP1L)
23280                 }
23281             }
23282             ElseIf ((Arg1 == 0x01))
23283             {
23284                 CGWR (FPG0, !FP0L)
23285             }
23286             Else
23287             {
23288                 CGWR (FPG1, !FP1L)
23289             }
23290         }
23291 
23292         Device (WMTF)
23293         {
23294             Name (_HID, "PNP0C14" /* Windows Management Instrumentation Device */)  // _HID: Hardware ID
23295             Name (_UID, "TBFP")  // _UID: Unique ID
23296             Name (_WDG, Buffer (0x14)
23297             {
23298                 /* 0000 */  0x48, 0xFD, 0xCC, 0x86, 0x5E, 0x20, 0x77, 0x4A,  // H...^ wJ
23299                 /* 0008 */  0x9C, 0x48, 0x20, 0x21, 0xCB, 0xED, 0xE3, 0x41,  // .H !...A
23300                 /* 0010 */  0x54, 0x46, 0x01, 0x02                           // TF..
23301             })
23302             Method (WMTF, 3, NotSerialized)
23303             {
23304                 CreateByteField (Arg2, 0x00, FP)
23305                 If (FP)
23306                 {
23307                     TBFP (0x01, 0x01)
23308                 }
23309                 Else
23310                 {
23311                     TBFP (0x00, 0x01)
23312                 }
23313             }
23314         }
23315     }
23316 
23317     If (((TBTS == 0x01) && ((RPS0 == 0x01) || (RPS1 == 0x01))))
23318     {
23319         Scope (\_SB.PCI0.RP01)
23320         {
23321             Device (HRUS)
23322             {
23323                 Name (_ADR, 0x00)  // _ADR: Address
23324                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23325                 {
23326                     Return (TARS) /* \TARS */
23327                 }
23328             }
23329         }
23330     }
23331 
23332     If (((TBTS == 0x01) && ((RPS0 == 0x02) || (RPS1 == 0x02))))
23333     {
23334         Scope (\_SB.PCI0.RP02)
23335         {
23336             Device (HRUS)
23337             {
23338                 Name (_ADR, 0x00)  // _ADR: Address
23339                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23340                 {
23341                     Return (TARS) /* \TARS */
23342                 }
23343             }
23344         }
23345     }
23346 
23347     If (((TBTS == 0x01) && ((RPS0 == 0x03) || (RPS1 == 0x03))))
23348     {
23349         Scope (\_SB.PCI0.RP03)
23350         {
23351             Device (HRUS)
23352             {
23353                 Name (_ADR, 0x00)  // _ADR: Address
23354                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23355                 {
23356                     Return (TARS) /* \TARS */
23357                 }
23358             }
23359         }
23360     }
23361 
23362     If (((TBTS == 0x01) && ((RPS0 == 0x04) || (RPS1 == 0x04))))
23363     {
23364         Scope (\_SB.PCI0.RP04)
23365         {
23366             Device (HRUS)
23367             {
23368                 Name (_ADR, 0x00)  // _ADR: Address
23369                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23370                 {
23371                     Return (TARS) /* \TARS */
23372                 }
23373             }
23374         }
23375     }
23376 
23377     If (((TBTS == 0x01) && ((RPS0 == 0x05) || (RPS1 == 0x05))))
23378     {
23379         Scope (\_SB.PCI0.RP05)
23380         {
23381             Device (HRUS)
23382             {
23383                 Name (_ADR, 0x00)  // _ADR: Address
23384                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23385                 {
23386                     Return (TARS) /* \TARS */
23387                 }
23388             }
23389         }
23390     }
23391 
23392     If (((TBTS == 0x01) && ((RPS0 == 0x06) || (RPS1 == 0x06))))
23393     {
23394         Scope (\_SB.PCI0.RP06)
23395         {
23396             Device (HRUS)
23397             {
23398                 Name (_ADR, 0x00)  // _ADR: Address
23399                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23400                 {
23401                     Return (TARS) /* \TARS */
23402                 }
23403             }
23404         }
23405     }
23406 
23407     If (((TBTS == 0x01) && ((RPS0 == 0x07) || (RPS1 == 0x07))))
23408     {
23409         Scope (\_SB.PCI0.RP07)
23410         {
23411             Device (HRUS)
23412             {
23413                 Name (_ADR, 0x00)  // _ADR: Address
23414                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23415                 {
23416                     Return (TARS) /* \TARS */
23417                 }
23418             }
23419         }
23420     }
23421 
23422     If (((TBTS == 0x01) && ((RPS0 == 0x08) || (RPS1 == 0x08))))
23423     {
23424         Scope (\_SB.PCI0.RP08)
23425         {
23426             Device (HRUS)
23427             {
23428                 Name (_ADR, 0x00)  // _ADR: Address
23429                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23430                 {
23431                     Return (TARS) /* \TARS */
23432                 }
23433             }
23434         }
23435     }
23436 
23437     If (((TBTS == 0x01) && ((RPS0 == 0x09) || (RPS1 == 0x09))))
23438     {
23439         Scope (\_SB.PCI0.RP09)
23440         {
23441             Device (HRUS)
23442             {
23443                 Name (_ADR, 0x00)  // _ADR: Address
23444                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23445                 {
23446                     Return (TARS) /* \TARS */
23447                 }
23448             }
23449         }
23450     }
23451 
23452     If (((TBTS == 0x01) && ((RPS0 == 0x0A) || (RPS1 == 0x0A))))
23453     {
23454         Scope (\_SB.PCI0.RP10)
23455         {
23456             Device (HRUS)
23457             {
23458                 Name (_ADR, 0x00)  // _ADR: Address
23459                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23460                 {
23461                     Return (TARS) /* \TARS */
23462                 }
23463             }
23464         }
23465     }
23466 
23467     If (((TBTS == 0x01) && ((RPS0 == 0x0B) || (RPS1 == 0x0B))))
23468     {
23469         Scope (\_SB.PCI0.RP11)
23470         {
23471             Device (HRUS)
23472             {
23473                 Name (_ADR, 0x00)  // _ADR: Address
23474                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23475                 {
23476                     Return (TARS) /* \TARS */
23477                 }
23478             }
23479         }
23480     }
23481 
23482     If (((TBTS == 0x01) && ((RPS0 == 0x0C) || (RPS1 == 0x0C))))
23483     {
23484         Scope (\_SB.PCI0.RP12)
23485         {
23486             Device (HRUS)
23487             {
23488                 Name (_ADR, 0x00)  // _ADR: Address
23489                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23490                 {
23491                     Return (TARS) /* \TARS */
23492                 }
23493             }
23494         }
23495     }
23496 
23497     If (((TBTS == 0x01) && ((RPS0 == 0x0D) || (RPS1 == 0x0D))))
23498     {
23499         Scope (\_SB.PCI0.RP13)
23500         {
23501             Device (HRUS)
23502             {
23503                 Name (_ADR, 0x00)  // _ADR: Address
23504                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23505                 {
23506                     Return (TARS) /* \TARS */
23507                 }
23508             }
23509         }
23510     }
23511 
23512     If (((TBTS == 0x01) && ((RPS0 == 0x0E) || (RPS1 == 0x0E))))
23513     {
23514         Scope (\_SB.PCI0.RP14)
23515         {
23516             Device (HRUS)
23517             {
23518                 Name (_ADR, 0x00)  // _ADR: Address
23519                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23520                 {
23521                     Return (TARS) /* \TARS */
23522                 }
23523             }
23524         }
23525     }
23526 
23527     If (((TBTS == 0x01) && ((RPS0 == 0x0F) || (RPS1 == 0x0F))))
23528     {
23529         Scope (\_SB.PCI0.RP15)
23530         {
23531             Device (HRUS)
23532             {
23533                 Name (_ADR, 0x00)  // _ADR: Address
23534                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23535                 {
23536                     Return (TARS) /* \TARS */
23537                 }
23538             }
23539         }
23540     }
23541 
23542     If (((TBTS == 0x01) && ((RPS0 == 0x10) || (RPS1 == 0x10))))
23543     {
23544         Scope (\_SB.PCI0.RP16)
23545         {
23546             Device (HRUS)
23547             {
23548                 Name (_ADR, 0x00)  // _ADR: Address
23549                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23550                 {
23551                     Return (TARS) /* \TARS */
23552                 }
23553             }
23554         }
23555     }
23556 
23557     If (((TBTS == 0x01) && ((RPS0 == 0x11) || (RPS1 == 0x11))))
23558     {
23559         Scope (\_SB.PCI0.RP17)
23560         {
23561             Device (HRUS)
23562             {
23563                 Name (_ADR, 0x00)  // _ADR: Address
23564                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23565                 {
23566                     Return (TARS) /* \TARS */
23567                 }
23568             }
23569         }
23570     }
23571 
23572     If (((TBTS == 0x01) && ((RPS0 == 0x12) || (RPS1 == 0x12))))
23573     {
23574         Scope (\_SB.PCI0.RP18)
23575         {
23576             Device (HRUS)
23577             {
23578                 Name (_ADR, 0x00)  // _ADR: Address
23579                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23580                 {
23581                     Return (TARS) /* \TARS */
23582                 }
23583             }
23584         }
23585     }
23586 
23587     If (((TBTS == 0x01) && ((RPS0 == 0x13) || (RPS1 == 0x13))))
23588     {
23589         Scope (\_SB.PCI0.RP19)
23590         {
23591             Device (HRUS)
23592             {
23593                 Name (_ADR, 0x00)  // _ADR: Address
23594                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23595                 {
23596                     Return (TARS) /* \TARS */
23597                 }
23598             }
23599         }
23600     }
23601 
23602     If (((TBTS == 0x01) && ((RPS0 == 0x14) || (RPS1 == 0x14))))
23603     {
23604         Scope (\_SB.PCI0.RP20)
23605         {
23606             Device (HRUS)
23607             {
23608                 Name (_ADR, 0x00)  // _ADR: Address
23609                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23610                 {
23611                     Return (TARS) /* \TARS */
23612                 }
23613             }
23614         }
23615     }
23616 
23617     If (((TBTS == 0x01) && ((RPS0 == 0x15) || (RPS1 == 0x15))))
23618     {
23619         Scope (\_SB.PCI0.PEG0)
23620         {
23621             Device (HRUS)
23622             {
23623                 Name (_ADR, 0x00)  // _ADR: Address
23624                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23625                 {
23626                     Return (TARS) /* \TARS */
23627                 }
23628             }
23629         }
23630     }
23631 
23632     If (((TBTS == 0x01) && ((RPS0 == 0x16) || (RPS1 == 0x16))))
23633     {
23634         Scope (\_SB.PCI0.PEG1)
23635         {
23636             Device (HRUS)
23637             {
23638                 Name (_ADR, 0x00)  // _ADR: Address
23639                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23640                 {
23641                     Return (TARS) /* \TARS */
23642                 }
23643             }
23644         }
23645     }
23646 
23647     If (((TBTS == 0x01) && ((RPS0 == 0x17) || (RPS1 == 0x17))))
23648     {
23649         Scope (\_SB.PCI0.PEG2)
23650         {
23651             Device (HRUS)
23652             {
23653                 Name (_ADR, 0x00)  // _ADR: Address
23654                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
23655                 {
23656                     Return (TARS) /* \TARS */
23657                 }
23658             }
23659         }
23660     }
23661 
23662     Scope (\_SB)
23663     {
23664         Method (PERB, 5, Serialized)
23665         {
23666             ADBG ("PERB")
23667             Local7 = Arg0
23668             Local7 |= (Arg1 << 0x14)
23669             Local7 |= (Arg2 << 0x0F)
23670             Local7 |= (Arg3 << 0x0C)
23671             Local7 |= Arg4
23672             OperationRegion (PCI0, SystemMemory, Local7, 0x01)
23673             Field (PCI0, ByteAcc, NoLock, Preserve)
23674             {
23675                 TEMP,   8
23676             }
23677 
23678             Return (TEMP) /* \_SB_.PERB.TEMP */
23679         }
23680 
23681         Method (PEWB, 6, Serialized)
23682         {
23683             ADBG ("PEWB")
23684             Local7 = Arg0
23685             Local7 |= (Arg1 << 0x14)
23686             Local7 |= (Arg2 << 0x0F)
23687             Local7 |= (Arg3 << 0x0C)
23688             Local7 |= Arg4
23689             OperationRegion (PCI0, SystemMemory, Local7, 0x01)
23690             Field (PCI0, ByteAcc, NoLock, Preserve)
23691             {
23692                 TEMP,   8
23693             }
23694 
23695             TEMP = Arg5
23696         }
23697 
23698         Method (PERW, 5, Serialized)
23699         {
23700             ADBG ("PERW")
23701             Local7 = Arg0
23702             Local7 |= (Arg1 << 0x14)
23703             Local7 |= (Arg2 << 0x0F)
23704             Local7 |= (Arg3 << 0x0C)
23705             Local7 |= Arg4
23706             OperationRegion (PCI0, SystemMemory, Local7, 0x02)
23707             Field (PCI0, ByteAcc, NoLock, Preserve)
23708             {
23709                 TEMP,   16
23710             }
23711 
23712             Return (TEMP) /* \_SB_.PERW.TEMP */
23713         }
23714 
23715         Method (PEWW, 6, Serialized)
23716         {
23717             ADBG ("PEWW")
23718             Local7 = Arg0
23719             Local7 |= (Arg1 << 0x14)
23720             Local7 |= (Arg2 << 0x0F)
23721             Local7 |= (Arg3 << 0x0C)
23722             Local7 |= Arg4
23723             OperationRegion (PCI0, SystemMemory, Local7, 0x02)
23724             Field (PCI0, ByteAcc, NoLock, Preserve)
23725             {
23726                 TEMP,   16
23727             }
23728 
23729             TEMP = Arg5
23730         }
23731 
23732         Method (PERD, 5, Serialized)
23733         {
23734             ADBG ("PERD")
23735             Local7 = Arg0
23736             Local7 |= (Arg1 << 0x14)
23737             Local7 |= (Arg2 << 0x0F)
23738             Local7 |= (Arg3 << 0x0C)
23739             Local7 |= Arg4
23740             OperationRegion (PCI0, SystemMemory, Local7, 0x04)
23741             Field (PCI0, ByteAcc, NoLock, Preserve)
23742             {
23743                 TEMP,   32
23744             }
23745 
23746             Return (TEMP) /* \_SB_.PERD.TEMP */
23747         }
23748 
23749         Method (PEWD, 6, Serialized)
23750         {
23751             ADBG ("PEWD")
23752             Local7 = Arg0
23753             Local7 |= (Arg1 << 0x14)
23754             Local7 |= (Arg2 << 0x0F)
23755             Local7 |= (Arg3 << 0x0C)
23756             Local7 |= Arg4
23757             OperationRegion (PCI0, SystemMemory, Local7, 0x04)
23758             Field (PCI0, ByteAcc, NoLock, Preserve)
23759             {
23760                 TEMP,   32
23761             }
23762 
23763             TEMP = Arg5
23764         }
23765 
23766         Method (STDC, 5, Serialized)
23767         {
23768             ADBG ("STDC")
23769             Local7 = PERW (Arg0, Arg1, Arg2, Arg3, 0x00)
23770             If ((Local7 == 0xFFFF))
23771             {
23772                 ADBG ("Referenced device is not present")
23773                 Return (0x00)
23774             }
23775 
23776             Local0 = PERW (Arg0, Arg1, Arg2, Arg3, 0x06)
23777             If (((Local0 & 0x10) == 0x00))
23778             {
23779                 ADBG ("No Capabilities linked list is available")
23780                 Return (0x00)
23781             }
23782 
23783             Local2 = PERB (Arg0, Arg1, Arg2, Arg3, 0x34)
23784             While (0x01)
23785             {
23786                 Local2 &= 0xFC
23787                 If ((Local2 == 0x00))
23788                 {
23789                     ADBG ("Capability ID is not found")
23790                     Return (0x00)
23791                 }
23792 
23793                 Local1 = PERB (Arg0, Arg1, Arg2, Arg3, Local2)
23794                 If ((Arg4 == Local1))
23795                 {
23796                     ADBG ("Capability ID is found")
23797                     ADBG ("Capability Offset : ")
23798                     ADBG (Local2)
23799                     Return (Local2)
23800                 }
23801 
23802                 Local2 = PERB (Arg0, Arg1, Arg2, Arg3, (Local2 + 0x01))
23803                 Return (0x00)
23804             }
23805         }
23806     }
23807 
23808     Scope (\_SB)
23809     {
23810         OperationRegion (ITSS, SystemMemory, 0xFDC43100, 0x0208)
23811         Field (ITSS, ByteAcc, NoLock, Preserve)
23812         {
23813             PARC,   8, 
23814             PBRC,   8, 
23815             PCRC,   8, 
23816             PDRC,   8, 
23817             PERC,   8, 
23818             PFRC,   8, 
23819             PGRC,   8, 
23820             PHRC,   8, 
23821             Offset (0x200), 
23822                 ,   1, 
23823                 ,   1, 
23824             SCGE,   1
23825         }
23826     }
23827 
23828     Mutex (MUTX, 0x00)
23829     Mutex (OSUM, 0x00)
23830     Event (WFEV)
23831     OperationRegion (PRT0, SystemIO, 0x80, 0x02)
23832     Field (PRT0, WordAcc, Lock, Preserve)
23833     {
23834         P80B,   16
23835     }
23836 
23837     Field (PRT0, ByteAcc, NoLock, Preserve)
23838     {
23839         P80P,   8
23840     }
23841 
23842     Name (P80T, 0x00)
23843     Method (D8XH, 2, Serialized)
23844     {
23845         If ((Arg0 == 0x00))
23846         {
23847             P80T = ((P80T & 0xFF00) | Arg1)
23848         }
23849 
23850         If ((Arg0 == 0x01))
23851         {
23852             P80T = ((P80T & 0xFF) | (Arg1 << 0x08))
23853         }
23854 
23855         P80B = P80T /* \P80T */
23856         CMDB (Arg0, Arg1)
23857     }
23858 
23859     Method (P8XH, 2, Serialized)
23860     {
23861         If (CondRefOf (MDBG))
23862         {
23863             D8XH (Arg0, Arg1)
23864         }
23865     }
23866 
23867     Method (CMDB, 2, Serialized)
23868     {
23869         Local0 = RDCM (0x40)
23870         Local0 *= 0x02
23871         Local0 += 0x42
23872         Local1 = (Local0 + 0x01)
23873         WRCM (Local0, Arg1)
23874         WRCM (Local1, 0xFC)
23875     }
23876 
23877     Method (RDCM, 1, NotSerialized)
23878     {
23879         ADBG ("RDCM")
23880         ADBG ("CMOS Offset")
23881         ADBG (Arg0)
23882         OperationRegion (CMOS, SystemIO, 0x72, 0x02)
23883         Field (CMOS, ByteAcc, NoLock, Preserve)
23884         {
23885             CIND,   8, 
23886             CDAT,   8
23887         }
23888 
23889         CIND = Arg0
23890         Local0 = CDAT /* \RDCM.CDAT */
23891         Return (Local0)
23892     }
23893 
23894     Method (WRCM, 2, Serialized)
23895     {
23896         ADBG ("WRCM")
23897         ADBG ("CMOS Offset")
23898         ADBG (Arg0)
23899         ADBG ("CMOS Data")
23900         ADBG (Arg1)
23901         OperationRegion (CMOS, SystemIO, 0x72, 0x02)
23902         Field (CMOS, AnyAcc, NoLock, Preserve)
23903         {
23904             LIND,   8, 
23905             LDAT,   8
23906         }
23907 
23908         LIND = Arg0
23909         LDAT = Arg1
23910     }
23911 
23912     Method (ADBG, 1, Serialized)
23913     {
23914         If (CondRefOf (MBGS))
23915         {
23916             ToHexString (Arg0, Local0)
23917             MBGS (Local0)
23918         }
23919     }
23920 
23921     OperationRegion (SPRT, SystemIO, 0xB2, 0x02)
23922     Field (SPRT, ByteAcc, Lock, Preserve)
23923     {
23924         SSMP,   8
23925     }
23926 
23927     Method (\_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
23928     {
23929         GPIC = Arg0
23930         PICM = Arg0
23931     }
23932 
23933     Method (OPTS, 1, NotSerialized)
23934     {
23935         P80B = 0x00
23936         P8XH (0x00, Arg0)
23937         ADBG (Concatenate ("OPTS=", ToHexString (Arg0)))
23938         Local0 = 0x01
23939         If ((Arg0 == \SPS))
23940         {
23941             Local0 = 0x00
23942         }
23943 
23944         If (((Arg0 == 0x00) || (Arg0 >= 0x06)))
23945         {
23946             Local0 = 0x00
23947         }
23948 
23949         If (Local0)
23950         {
23951             \SPS = Arg0
23952             \_SB.PCI0.LPCB.EC.HKEY.MHKE (0x00)
23953             If (\_SB.PCI0.LPCB.EC.KBLT)
23954             {
23955                 \SCMS (0x0D)
23956             }
23957 
23958             If ((Arg0 == 0x01))
23959             {
23960                 \FNID = \_SB.PCI0.LPCB.EC.HFNI
23961                 \_SB.PCI0.LPCB.EC.HFNI = 0x00
23962                 \_SB.PCI0.LPCB.EC.HFSP = 0x00
23963             }
23964 
23965             If ((Arg0 == 0x03))
23966             {
23967                 \VVPD (0x03)
23968                 \SLTP ()
23969                 \ACST = \_SB.PCI0.LPCB.EC.AC._PSR ()
23970                 If ((\FNWK == 0x01))
23971                 {
23972                     If (\H8DR)
23973                     {
23974                         \_SB.PCI0.LPCB.EC.HWFN = 0x00
23975                     }
23976                     Else
23977                     {
23978                         \MBEC (0x32, 0xEF, 0x00)
23979                     }
23980                 }
23981             }
23982 
23983             If ((Arg0 == 0x04))
23984             {
23985                 If (VDSP)
23986                 {
23987                     SHA1 = Zero
23988                 }
23989 
23990                 \_SB.SLPB._PSW (0x00)
23991                 \SLTP ()
23992                 \AWON (0x04)
23993             }
23994 
23995             If ((Arg0 == 0x05))
23996             {
23997                 \SLTP ()
23998                 \AWON (0x05)
23999             }
24000 
24001             If ((Arg0 >= 0x04))
24002             {
24003                 \_SB.PCI0.LPCB.EC.HWLB = 0x00
24004             }
24005             Else
24006             {
24007                 \_SB.PCI0.LPCB.EC.HWLB = 0x01
24008             }
24009 
24010             If ((Arg0 >= 0x03))
24011             {
24012                 \_SB.PCI0.LPCB.EC.HCMU = 0x01
24013             }
24014 
24015             If ((Arg0 != 0x05))
24016             {
24017                 \_SB.PCI0.RP05.PDSF = \_SB.PCI0.RP05.PDSX
24018             }
24019 
24020             \_SB.PCI0.LPCB.EC.HKEY.WGPS (Arg0)
24021             Local2 = (Arg0 << 0x04)
24022             Local2 |= 0x0D
24023             D8XH (0x00, Local2)
24024         }
24025 
24026         ADBG ("OPTS END")
24027     }
24028 
24029     Method (_PTS, 1, NotSerialized)  // _PTS: Prepare To Sleep
24030     {
24031         D8XH (0x00, Arg0)
24032         D8XH (0x01, 0x00)
24033         ADBG (Concatenate ("_PTS=", ToHexString (Arg0)))
24034         If ((TBTS == 0x01))
24035         {
24036             Reset (WFEV)
24037             If ((\RTBT == 0x01))
24038             {
24039                 TOFF = 0x00
24040             }
24041         }
24042 
24043         If ((Arg0 == 0x03))
24044         {
24045             If (CondRefOf (\_SB.DTSE))
24046             {
24047                 If ((\_SB.DTSE && (TCNT > 0x01)))
24048                 {
24049                     TRAP (0x02, 0x1E)
24050                 }
24051             }
24052         }
24053 
24054         If (CondRefOf (\_SB.TPM.PTS))
24055         {
24056             \_SB.TPM.PTS (Arg0)
24057         }
24058 
24059         If ((((Arg0 == 0x03) || (Arg0 == 0x04)) || (Arg0 == 0x05)))
24060         {
24061             If ((PFLV == 0x02))
24062             {
24063                 \_SB.SGOV (0x04070017, 0x01)
24064             }
24065         }
24066 
24067         OPTS (Arg0)
24068     }
24069 
24070     Method (PBCL, 0, NotSerialized)
24071     {
24072         Return (Package (0x67)
24073         {
24074             0x50, 
24075             0x32, 
24076             0x00, 
24077             0x01, 
24078             0x02, 
24079             0x03, 
24080             0x04, 
24081             0x05, 
24082             0x06, 
24083             0x07, 
24084             0x08, 
24085             0x09, 
24086             0x0A, 
24087             0x0B, 
24088             0x0C, 
24089             0x0D, 
24090             0x0E, 
24091             0x0F, 
24092             0x10, 
24093             0x11, 
24094             0x12, 
24095             0x13, 
24096             0x14, 
24097             0x15, 
24098             0x16, 
24099             0x17, 
24100             0x18, 
24101             0x19, 
24102             0x1A, 
24103             0x1B, 
24104             0x1C, 
24105             0x1D, 
24106             0x1E, 
24107             0x1F, 
24108             0x20, 
24109             0x21, 
24110             0x22, 
24111             0x23, 
24112             0x24, 
24113             0x25, 
24114             0x26, 
24115             0x27, 
24116             0x28, 
24117             0x29, 
24118             0x2A, 
24119             0x2B, 
24120             0x2C, 
24121             0x2D, 
24122             0x2E, 
24123             0x2F, 
24124             0x30, 
24125             0x31, 
24126             0x32, 
24127             0x33, 
24128             0x34, 
24129             0x35, 
24130             0x36, 
24131             0x37, 
24132             0x38, 
24133             0x39, 
24134             0x3A, 
24135             0x3B, 
24136             0x3C, 
24137             0x3D, 
24138             0x3E, 
24139             0x3F, 
24140             0x40, 
24141             0x41, 
24142             0x42, 
24143             0x43, 
24144             0x44, 
24145             0x45, 
24146             0x46, 
24147             0x47, 
24148             0x48, 
24149             0x49, 
24150             0x4A, 
24151             0x4B, 
24152             0x4C, 
24153             0x4D, 
24154             0x4E, 
24155             0x4F, 
24156             0x50, 
24157             0x51, 
24158             0x52, 
24159             0x53, 
24160             0x54, 
24161             0x55, 
24162             0x56, 
24163             0x57, 
24164             0x58, 
24165             0x59, 
24166             0x5A, 
24167             0x5B, 
24168             0x5C, 
24169             0x5D, 
24170             0x5E, 
24171             0x5F, 
24172             0x60, 
24173             0x61, 
24174             0x62, 
24175             0x63, 
24176             0x64
24177         })
24178     }
24179 
24180     Name (WAKI, Package (0x02)
24181     {
24182         0x00, 
24183         0x00
24184     })
24185     Method (OWAK, 1, NotSerialized)
24186     {
24187         ADBG ("OWAK")
24188         If (((Arg0 == 0x00) || (Arg0 >= 0x05)))
24189         {
24190             Return (WAKI) /* \WAKI */
24191         }
24192 
24193         \SPS = 0x00
24194         \_SB.PCI0.LPCB.EC.HCMU = 0x00
24195         \_SB.PCI0.LPCB.EC.EVNT (0x01)
24196         \_SB.PCI0.LPCB.EC.HKEY.MHKE (0x01)
24197         \_SB.PCI0.LPCB.EC.FNST ()
24198         \SCMS (0x0D)
24199         \LIDB = 0x00
24200         \_SB.PCI0.LPCB.EC.HKEY.CSSS ()
24201         If ((Arg0 == 0x01))
24202         {
24203             \FNID = \_SB.PCI0.LPCB.EC.HFNI
24204         }
24205 
24206         If ((Arg0 == 0x03))
24207         {
24208             \NVSS (0x00)
24209             \PWRS = \_SB.PCI0.LPCB.EC.AC._PSR ()
24210             If (\OSC4)
24211             {
24212                 \PNTF (0x81)
24213             }
24214 
24215             If ((\ACST != \_SB.PCI0.LPCB.EC.AC._PSR ()))
24216             {
24217                 \_SB.PCI0.LPCB.EC.ATMC ()
24218             }
24219 
24220             If (\SCRM)
24221             {
24222                 \_SB.PCI0.LPCB.EC.HFSP = 0x07
24223             }
24224 
24225             \IOEN = 0x00
24226             \IOST = 0x00
24227             If ((\ISWK == 0x01))
24228             {
24229                 If (\_SB.PCI0.LPCB.EC.HKEY.DHKC)
24230                 {
24231                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6070)
24232                 }
24233             }
24234 
24235             If (\VIGD)
24236             {
24237                 \_SB.PCI0.GFX0.CLID = \_SB.LID._LID ()
24238                 If (\WVIS)
24239                 {
24240                     \VBTD ()
24241                 }
24242             }
24243             ElseIf (\WVIS)
24244             {
24245                 \_SB.PCI0.GFX0.CLID = \_SB.LID._LID ()
24246                 \VBTD ()
24247             }
24248 
24249             \VCMS (0x01, \_SB.LID._LID ())
24250             \AWON (0x00)
24251             If (\CMPR)
24252             {
24253                 Notify (\_SB.SLPB, 0x02) // Device Wake
24254                 \CMPR = 0x00
24255             }
24256 
24257             If ((\WLAC == 0x02)){}
24258             ElseIf ((\_SB.PCI0.LPCB.EC.ELNK && (\WLAC == 0x01)))
24259             {
24260                 \_SB.PCI0.LPCB.EC.DCWL = 0x00
24261             }
24262             Else
24263             {
24264                 \_SB.PCI0.LPCB.EC.DCWL = 0x01
24265             }
24266         }
24267 
24268         If ((Arg0 == 0x04))
24269         {
24270             \NVSS (0x00)
24271             \_SB.PCI0.LPCB.EC.HSPA = 0x00
24272             \PWRS = \_SB.PCI0.LPCB.EC.AC._PSR ()
24273             If (\OSC4)
24274             {
24275                 \PNTF (0x81)
24276             }
24277 
24278             \_SB.PCI0.LPCB.EC.ATMC ()
24279             If (\SCRM)
24280             {
24281                 \_SB.PCI0.LPCB.EC.HFSP = 0x07
24282             }
24283 
24284             If (!\NBCF)
24285             {
24286                 If (\VIGD)
24287                 {
24288                     \_SB.PCI0.LPCB.EC.BRNS ()
24289                 }
24290                 Else
24291                 {
24292                     \VBRC (\BRLV)
24293                 }
24294             }
24295 
24296             \IOEN = 0x00
24297             \IOST = 0x00
24298             If ((\ISWK == 0x02))
24299             {
24300                 If (\_SB.PCI0.LPCB.EC.HKEY.DHKC)
24301                 {
24302                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6080)
24303                 }
24304             }
24305 
24306             If ((\WLAC == 0x02)){}
24307             ElseIf ((\_SB.PCI0.LPCB.EC.ELNK && (\WLAC == 0x01)))
24308             {
24309                 \_SB.PCI0.LPCB.EC.DCWL = 0x00
24310             }
24311             Else
24312             {
24313                 \_SB.PCI0.LPCB.EC.DCWL = 0x01
24314             }
24315         }
24316 
24317         If ((\_SB.PCI0.RP05.PDSX ^ \_SB.PCI0.RP05.PDSF))
24318         {
24319             \_SB.PCI0.RP05.PDSF = \_SB.PCI0.RP05.PDSX
24320             Notify (\_SB.PCI0.RP05, 0x00) // Bus Check
24321         }
24322 
24323         \_SB.PCI0.LPCB.EC.BATW (Arg0)
24324         \_SB.PCI0.LPCB.EC.HKEY.WGWK (Arg0)
24325         Notify (\_TZ.THM0, 0x80) // Status Change
24326         \VSLD (\_SB.LID._LID ())
24327         If (\VIGD)
24328         {
24329             \_SB.PCI0.GFX0.CLID = \_SB.LID._LID ()
24330         }
24331         ElseIf (\WVIS)
24332         {
24333             \_SB.PCI0.GFX0.CLID = \_SB.LID._LID ()
24334         }
24335 
24336         If ((Arg0 < 0x04))
24337         {
24338             If (((\RRBF & 0x02) || (\_SB.PCI0.LPCB.EC.HWAC & 0x02)))
24339             {
24340                 Local0 = (Arg0 << 0x08)
24341                 Local0 = (0x2013 | Local0)
24342                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (Local0)
24343             }
24344         }
24345 
24346         If ((Arg0 == 0x04))
24347         {
24348             Local0 = 0x00
24349             Local1 = \CSUM (0x00)
24350             If ((Local1 != \CHKC))
24351             {
24352                 Local0 = 0x01
24353                 \CHKC = Local1
24354             }
24355 
24356             Local1 = \CSUM (0x01)
24357             If ((Local1 != \CHKE))
24358             {
24359                 Local0 = 0x01
24360                 \CHKE = Local1
24361             }
24362 
24363             If (Local0)
24364             {
24365                 Notify (\_SB, 0x00) // Bus Check
24366             }
24367         }
24368 
24369         If (((Arg0 == 0x03) || (Arg0 == 0x04)))
24370         {
24371             ADBG ("_WAK0")
24372             \_SB.PCI0.LPCB.EC.HKEY.ANGN = 0x00
24373             If (\H8DR)
24374             {
24375                 Local1 = \_SB.PCI0.LPCB.EC.TSL2
24376                 Local2 = \_SB.PCI0.LPCB.EC.TSL1
24377             }
24378             Else
24379             {
24380                 Local1 = (\RBEC (0x8A) & 0x7F)
24381                 Local2 = (\RBEC (0x89) & 0x7F)
24382             }
24383 
24384             If ((Local2 & 0x76))
24385             {
24386                 \_SB.PCI0.LPCB.EC.HKEY.DYTC (0x001F4001)
24387             }
24388             Else
24389             {
24390                 \_SB.PCI0.LPCB.EC.HKEY.DYTC (0x000F4001)
24391             }
24392 
24393             \_SB.PCI0.LPCB.EC.HKEY.DYTC (0x800F0001)
24394             ADBG ("_WAK1")
24395         }
24396 
24397         \RRBF = Zero
24398         Local2 = (Arg0 << 0x04)
24399         Local2 |= 0x0E
24400         D8XH (0x00, Local2)
24401         ADBG ("OWAK END")
24402         Return (WAKI) /* \WAKI */
24403     }
24404 
24405     Method (_WAK, 1, Serialized)  // _WAK: Wake
24406     {
24407         D8XH (0x01, 0xAB)
24408         ADBG ("_WAK")
24409         If ((((PMOF & 0x01) == 0x01) || (S0ID == One)))
24410         {
24411             \_SB.SCGE = 0x01
24412         }
24413 
24414         If (NEXP)
24415         {
24416             If ((OSCC & 0x01))
24417             {
24418                 NHPG ()
24419             }
24420 
24421             If ((OSCC & 0x04))
24422             {
24423                 NPME ()
24424             }
24425         }
24426 
24427         If (((Arg0 == 0x03) || (Arg0 == 0x04)))
24428         {
24429             If ((GBSX & 0x40))
24430             {
24431                 \_SB.PCI0.GFX0.IUEH (0x06)
24432                 PB1E ^= 0x08
24433             }
24434 
24435             If ((GBSX & 0x80))
24436             {
24437                 \_SB.PCI0.GFX0.IUEH (0x07)
24438                 PB1E ^= 0x10
24439             }
24440 
24441             If (CondRefOf (\_SB.DTSE))
24442             {
24443                 If ((\_SB.DTSE && (TCNT > 0x01)))
24444                 {
24445                     TRAP (0x02, 0x14)
24446                 }
24447             }
24448 
24449             If ((TBTS == 0x01))
24450             {
24451                 If ((RPN0 == 0x01))
24452                 {
24453                     Acquire (OSUM, 0xFFFF)
24454                     \_GPE.TINI (0x00, RPS0, RPT0)
24455                     Release (OSUM)
24456                 }
24457 
24458                 If ((RPN1 == 0x01))
24459                 {
24460                     Acquire (OSUM, 0xFFFF)
24461                     \_GPE.TINI (0x00, RPS1, RPT1)
24462                     Release (OSUM)
24463                 }
24464             }
24465 
24466             If ((\_SB.PCI0.RP01.VDID != 0xFFFFFFFF))
24467             {
24468                 Notify (\_SB.PCI0.RP01, 0x00) // Bus Check
24469             }
24470 
24471             If ((\_SB.PCI0.RP02.VDID != 0xFFFFFFFF))
24472             {
24473                 Notify (\_SB.PCI0.RP02, 0x00) // Bus Check
24474             }
24475 
24476             If ((\_SB.PCI0.RP03.VDID != 0xFFFFFFFF))
24477             {
24478                 Notify (\_SB.PCI0.RP03, 0x00) // Bus Check
24479             }
24480 
24481             If ((\_SB.PCI0.RP04.VDID != 0xFFFFFFFF))
24482             {
24483                 Notify (\_SB.PCI0.RP04, 0x00) // Bus Check
24484             }
24485 
24486             If ((\_SB.PCI0.RP05.VDID != 0xFFFFFFFF))
24487             {
24488                 Notify (\_SB.PCI0.RP05, 0x00) // Bus Check
24489             }
24490 
24491             If ((\_SB.PCI0.RP06.VDID != 0xFFFFFFFF))
24492             {
24493                 Notify (\_SB.PCI0.RP06, 0x00) // Bus Check
24494             }
24495 
24496             If ((\_SB.PCI0.RP07.VDID != 0xFFFFFFFF))
24497             {
24498                 If ((\DSTS == 0x00))
24499                 {
24500                     Notify (\_SB.PCI0.RP07, 0x00) // Bus Check
24501                 }
24502             }
24503 
24504             If ((\_SB.PCI0.RP08.VDID != 0xFFFFFFFF))
24505             {
24506                 If ((\DSTS == 0x00))
24507                 {
24508                     Notify (\_SB.PCI0.RP08, 0x00) // Bus Check
24509                 }
24510             }
24511 
24512             If ((\_SB.PCI0.RP09.VDID != 0xFFFFFFFF))
24513             {
24514                 Notify (\_SB.PCI0.RP09, 0x00) // Bus Check
24515             }
24516 
24517             If ((\_SB.PCI0.RP10.VDID != 0xFFFFFFFF))
24518             {
24519                 Notify (\_SB.PCI0.RP10, 0x00) // Bus Check
24520             }
24521 
24522             If ((\_SB.PCI0.RP11.VDID != 0xFFFFFFFF))
24523             {
24524                 Notify (\_SB.PCI0.RP11, 0x00) // Bus Check
24525             }
24526 
24527             If ((\_SB.PCI0.RP12.VDID != 0xFFFFFFFF))
24528             {
24529                 Notify (\_SB.PCI0.RP12, 0x00) // Bus Check
24530             }
24531 
24532             If ((\_SB.PCI0.RP13.VDID != 0xFFFFFFFF))
24533             {
24534                 Notify (\_SB.PCI0.RP13, 0x00) // Bus Check
24535             }
24536 
24537             If ((\_SB.PCI0.RP14.VDID != 0xFFFFFFFF))
24538             {
24539                 Notify (\_SB.PCI0.RP14, 0x00) // Bus Check
24540             }
24541 
24542             If ((\_SB.PCI0.RP15.VDID != 0xFFFFFFFF))
24543             {
24544                 Notify (\_SB.PCI0.RP15, 0x00) // Bus Check
24545             }
24546 
24547             If ((\_SB.PCI0.RP16.VDID != 0xFFFFFFFF))
24548             {
24549                 Notify (\_SB.PCI0.RP16, 0x00) // Bus Check
24550             }
24551 
24552             If ((\_SB.PCI0.RP17.VDID != 0xFFFFFFFF))
24553             {
24554                 Notify (\_SB.PCI0.RP17, 0x00) // Bus Check
24555             }
24556 
24557             If ((\_SB.PCI0.RP18.VDID != 0xFFFFFFFF))
24558             {
24559                 Notify (\_SB.PCI0.RP18, 0x00) // Bus Check
24560             }
24561 
24562             If ((\_SB.PCI0.RP19.VDID != 0xFFFFFFFF))
24563             {
24564                 Notify (\_SB.PCI0.RP19, 0x00) // Bus Check
24565             }
24566 
24567             If ((\_SB.PCI0.RP20.VDID != 0xFFFFFFFF))
24568             {
24569                 Notify (\_SB.PCI0.RP20, 0x00) // Bus Check
24570             }
24571 
24572             If ((\_SB.PCI0.RP21.VDID != 0xFFFFFFFF))
24573             {
24574                 Notify (\_SB.PCI0.RP21, 0x00) // Bus Check
24575             }
24576 
24577             If ((\_SB.PCI0.RP22.VDID != 0xFFFFFFFF))
24578             {
24579                 Notify (\_SB.PCI0.RP22, 0x00) // Bus Check
24580             }
24581 
24582             If ((\_SB.PCI0.RP23.VDID != 0xFFFFFFFF))
24583             {
24584                 Notify (\_SB.PCI0.RP23, 0x00) // Bus Check
24585             }
24586 
24587             If ((\_SB.PCI0.RP24.VDID != 0xFFFFFFFF))
24588             {
24589                 Notify (\_SB.PCI0.RP24, 0x00) // Bus Check
24590             }
24591 
24592             If ((\_SB.PCI0.RP21.VDID != 0xFFFFFFFF))
24593             {
24594                 Notify (\_SB.PCI0.RP21, 0x00) // Bus Check
24595             }
24596 
24597             If ((\_SB.PCI0.RP22.VDID != 0xFFFFFFFF))
24598             {
24599                 Notify (\_SB.PCI0.RP22, 0x00) // Bus Check
24600             }
24601 
24602             If ((\_SB.PCI0.RP23.VDID != 0xFFFFFFFF))
24603             {
24604                 Notify (\_SB.PCI0.RP23, 0x00) // Bus Check
24605             }
24606 
24607             If ((\_SB.PCI0.RP24.VDID != 0xFFFFFFFF))
24608             {
24609                 Notify (\_SB.PCI0.RP24, 0x00) // Bus Check
24610             }
24611         }
24612 
24613         OWAK (Arg0)
24614         If ((TBTS == 0x01))
24615         {
24616             Signal (WFEV)
24617         }
24618 
24619         Return (Package (0x02)
24620         {
24621             0x00, 
24622             0x00
24623         })
24624     }
24625 
24626     Method (GETB, 3, Serialized)
24627     {
24628         Local0 = (Arg0 * 0x08)
24629         Local1 = (Arg1 * 0x08)
24630         CreateField (Arg2, Local0, Local1, TBF3)
24631         Return (TBF3) /* \GETB.TBF3 */
24632     }
24633 
24634     Method (PNOT, 0, Serialized)
24635     {
24636         If ((TCNT > 0x01))
24637         {
24638             If ((\PC00 & 0x08))
24639             {
24640                 Notify (\_SB.PR00, 0x80) // Status Change
24641             }
24642 
24643             If ((\PC01 & 0x08))
24644             {
24645                 Notify (\_SB.PR01, 0x80) // Status Change
24646             }
24647 
24648             If ((\PC02 & 0x08))
24649             {
24650                 Notify (\_SB.PR02, 0x80) // Status Change
24651             }
24652 
24653             If ((\PC03 & 0x08))
24654             {
24655                 Notify (\_SB.PR03, 0x80) // Status Change
24656             }
24657 
24658             If ((\PC04 & 0x08))
24659             {
24660                 Notify (\_SB.PR04, 0x80) // Status Change
24661             }
24662 
24663             If ((\PC05 & 0x08))
24664             {
24665                 Notify (\_SB.PR05, 0x80) // Status Change
24666             }
24667 
24668             If ((\PC06 & 0x08))
24669             {
24670                 Notify (\_SB.PR06, 0x80) // Status Change
24671             }
24672 
24673             If ((\PC07 & 0x08))
24674             {
24675                 Notify (\_SB.PR07, 0x80) // Status Change
24676             }
24677 
24678             If ((\PC08 & 0x08))
24679             {
24680                 Notify (\_SB.PR08, 0x80) // Status Change
24681             }
24682 
24683             If ((\PC09 & 0x08))
24684             {
24685                 Notify (\_SB.PR09, 0x80) // Status Change
24686             }
24687 
24688             If ((\PC10 & 0x08))
24689             {
24690                 Notify (\_SB.PR10, 0x80) // Status Change
24691             }
24692 
24693             If ((\PC11 & 0x08))
24694             {
24695                 Notify (\_SB.PR11, 0x80) // Status Change
24696             }
24697 
24698             If ((\PC12 & 0x08))
24699             {
24700                 Notify (\_SB.PR12, 0x80) // Status Change
24701             }
24702 
24703             If ((\PC13 & 0x08))
24704             {
24705                 Notify (\_SB.PR13, 0x80) // Status Change
24706             }
24707 
24708             If ((\PC14 & 0x08))
24709             {
24710                 Notify (\_SB.PR14, 0x80) // Status Change
24711             }
24712 
24713             If ((\PC15 & 0x08))
24714             {
24715                 Notify (\_SB.PR15, 0x80) // Status Change
24716             }
24717         }
24718         Else
24719         {
24720             Notify (\_SB.PR00, 0x80) // Status Change
24721         }
24722 
24723         If ((TCNT > 0x01))
24724         {
24725             If (((\PC00 & 0x08) && (\PC00 & 0x10)))
24726             {
24727                 Notify (\_SB.PR00, 0x81) // Information Change
24728             }
24729 
24730             If (((\PC01 & 0x08) && (\PC01 & 0x10)))
24731             {
24732                 Notify (\_SB.PR01, 0x81) // Information Change
24733             }
24734 
24735             If (((\PC02 & 0x08) && (\PC02 & 0x10)))
24736             {
24737                 Notify (\_SB.PR02, 0x81) // Information Change
24738             }
24739 
24740             If (((\PC03 & 0x08) && (\PC03 & 0x10)))
24741             {
24742                 Notify (\_SB.PR03, 0x81) // Information Change
24743             }
24744 
24745             If (((\PC04 & 0x08) && (\PC04 & 0x10)))
24746             {
24747                 Notify (\_SB.PR04, 0x81) // Information Change
24748             }
24749 
24750             If (((\PC05 & 0x08) && (\PC05 & 0x10)))
24751             {
24752                 Notify (\_SB.PR05, 0x81) // Information Change
24753             }
24754 
24755             If (((\PC06 & 0x08) && (\PC06 & 0x10)))
24756             {
24757                 Notify (\_SB.PR06, 0x81) // Information Change
24758             }
24759 
24760             If (((\PC07 & 0x08) && (\PC07 & 0x10)))
24761             {
24762                 Notify (\_SB.PR07, 0x81) // Information Change
24763             }
24764 
24765             If (((\PC08 & 0x08) && (\PC08 & 0x10)))
24766             {
24767                 Notify (\_SB.PR08, 0x81) // Information Change
24768             }
24769 
24770             If (((\PC09 & 0x08) && (\PC09 & 0x10)))
24771             {
24772                 Notify (\_SB.PR09, 0x81) // Information Change
24773             }
24774 
24775             If (((\PC10 & 0x08) && (\PC10 & 0x10)))
24776             {
24777                 Notify (\_SB.PR10, 0x81) // Information Change
24778             }
24779 
24780             If (((\PC11 & 0x08) && (\PC11 & 0x10)))
24781             {
24782                 Notify (\_SB.PR11, 0x81) // Information Change
24783             }
24784 
24785             If (((\PC12 & 0x08) && (\PC12 & 0x10)))
24786             {
24787                 Notify (\_SB.PR12, 0x81) // Information Change
24788             }
24789 
24790             If (((\PC13 & 0x08) && (\PC13 & 0x10)))
24791             {
24792                 Notify (\_SB.PR13, 0x81) // Information Change
24793             }
24794 
24795             If (((\PC14 & 0x08) && (\PC14 & 0x10)))
24796             {
24797                 Notify (\_SB.PR14, 0x81) // Information Change
24798             }
24799 
24800             If (((\PC15 & 0x08) && (\PC15 & 0x10)))
24801             {
24802                 Notify (\_SB.PR15, 0x81) // Information Change
24803             }
24804         }
24805         Else
24806         {
24807             Notify (\_SB.PR00, 0x81) // Information Change
24808         }
24809 
24810         If ((DPTF == 0x01))
24811         {
24812             Notify (\_SB.IETM, 0x86) // Device-Specific
24813             If ((CHGE == 0x01)){}
24814         }
24815     }
24816 
24817     OperationRegion (MBAR, SystemMemory, (\_SB.PCI0.GMHB () + 0x5000), 0x1000)
24818     Field (MBAR, ByteAcc, NoLock, Preserve)
24819     {
24820         Offset (0x938), 
24821         PWRU,   4, 
24822         Offset (0x9A0), 
24823         PPL1,   15, 
24824         PL1E,   1, 
24825         CLP1,   1
24826     }
24827 
24828     Name (CLMP, 0x00)
24829     Name (PLEN, 0x00)
24830     Name (PLSV, 0x8000)
24831     Name (CSEM, 0x00)
24832     Method (SPL1, 0, Serialized)
24833     {
24834         Name (PPUU, 0x00)
24835         If ((CSEM == 0x01))
24836         {
24837             Return (Zero)
24838         }
24839 
24840         CSEM = 0x01
24841         PLSV = PPL1 /* \PPL1 */
24842         PLEN = PL1E /* \PL1E */
24843         CLMP = CLP1 /* \CLP1 */
24844         If ((PWRU == 0x00))
24845         {
24846             PPUU = 0x01
24847         }
24848         Else
24849         {
24850             PPUU = (PWRU-- << 0x02)
24851         }
24852 
24853         Local0 = (PLVL * PPUU) /* \SPL1.PPUU */
24854         Local1 = (Local0 / 0x03E8)
24855         PPL1 = Local1
24856         PL1E = 0x01
24857         CLP1 = 0x01
24858     }
24859 
24860     Method (RPL1, 0, Serialized)
24861     {
24862         PPL1 = PLSV /* \PLSV */
24863         PL1E = PLEN /* \PLEN */
24864         CLP1 = CLMP /* \CLMP */
24865         CSEM = 0x00
24866     }
24867 
24868     Name (UAMS, 0x00)
24869     Name (GLCK, 0x00)
24870     Method (GUAM, 1, Serialized)
24871     {
24872         Switch (ToInteger (Arg0))
24873         {
24874             Case (0x00)
24875             {
24876                 If ((GLCK == 0x01))
24877                 {
24878                     GLCK = 0x00
24879                     P8XH (0x00, 0xE1)
24880                     P8XH (0x01, 0xAB)
24881                     ADBG ("Exit Resiliency")
24882                     If (PSCP)
24883                     {
24884                         If (CondRefOf (\_SB.PR00._PPC))
24885                         {
24886                             \_SB.CPPC = Zero
24887                             PNOT ()
24888                         }
24889                     }
24890 
24891                     If (PLCS)
24892                     {
24893                         RPL1 ()
24894                     }
24895                 }
24896             }
24897             Case (0x01)
24898             {
24899                 If ((GLCK == 0x00))
24900                 {
24901                     GLCK = 0x01
24902                     P8XH (0x00, 0xE0)
24903                     P8XH (0x01, 0x00)
24904                     ADBG ("Enter Resiliency")
24905                     If (PSCP)
24906                     {
24907                         If ((CondRefOf (\_SB.PR00._PSS) && CondRefOf (\_SB.PR00._PPC)))
24908                         {
24909                             If ((\PC00 & 0x0400))
24910                             {
24911                                 \_SB.CPPC = (SizeOf (\_SB.PR00.TPSS) - One)
24912                             }
24913                             Else
24914                             {
24915                                 \_SB.CPPC = (SizeOf (\_SB.PR00.LPSS) - One)
24916                             }
24917 
24918                             PNOT ()
24919                         }
24920                     }
24921 
24922                     If (PLCS)
24923                     {
24924                         SPL1 ()
24925                     }
24926                 }
24927             }
24928             Default
24929             {
24930                 Return (Zero)
24931             }
24932 
24933         }
24934 
24935         UAMS = (Arg0 && !PWRS)
24936         P_CS ()
24937     }
24938 
24939     Method (P_CS, 0, Serialized)
24940     {
24941         If (CondRefOf (\_SB.PCI0.PAUD.PUAM))
24942         {
24943             \_SB.PCI0.PAUD.PUAM ()
24944         }
24945 
24946         If ((OSYS == 0x07DC))
24947         {
24948             If (CondRefOf (\_SB.PCI0.XHC.DUAM))
24949             {
24950                 \_SB.PCI0.XHC.DUAM ()
24951             }
24952         }
24953     }
24954 
24955     Method (TRAP, 2, Serialized)
24956     {
24957         SMIF = Arg1
24958         If ((Arg0 == 0x02))
24959         {
24960             \_SB.DTSF = Arg1
24961             \_SB.TRPD = 0x00
24962             Return (\_SB.DTSF)
24963         }
24964 
24965         If ((Arg0 == 0x04))
24966         {
24967             \_SB.TRPF = 0x00
24968         }
24969 
24970         Return (SMIF) /* \SMIF */
24971     }
24972 
24973     Scope (\_SB.PCI0)
24974     {
24975         Method (PTMA, 0, NotSerialized)
24976         {
24977             Return (\_SB.BGMA)
24978         }
24979 
24980         Method (PTMS, 0, NotSerialized)
24981         {
24982             Return (\_SB.BGMS)
24983         }
24984 
24985         Method (PTIA, 0, NotSerialized)
24986         {
24987             Return (\_SB.BGIA)
24988         }
24989 
24990         Method (OINI, 0, NotSerialized)
24991         {
24992             ADBG ("Init _INI")
24993             If ((\_REV >= 0x02))
24994             {
24995                 \H8DR = 0x01
24996             }
24997 
24998             \OSIF = 0x01
24999             \PWRS = \_SB.PCI0.LPCB.EC.AC._PSR ()
25000             \_SB.PCI0.LPCB.MOU.MHID ()
25001             If (\LNUX)
25002             {
25003                 \_SB.PCI0.LPCB.EC.SAUM (0x02)
25004                 \SCMS (0x1C)
25005             }
25006 
25007             \_SB.PCI0.RID = \SRAH
25008             If (VIGD)
25009             {
25010                 \_SB.PCI0.GFX0.RID = \SRHE
25011             }
25012             Else
25013             {
25014                 \_SB.PCI0.PEG0.RID = \SRHE
25015             }
25016 
25017             \_SB.PCI0.RP01.RID = \SRE1
25018             \_SB.PCI0.RP05.RID = \SRE4
25019             \_SB.PCI0.RP07.RID = \SRE4
25020             \_SB.PCI0.RP09.RID = \SRE4
25021             \_SB.PCI0.LPCB.RID = \SRLP
25022             \_SB.PCI0.SAT0.RID = \SRSA
25023             \_SB.PCI0.SBUS.RID = \SRSM
25024         }
25025 
25026         Method (_INI, 0, Serialized)  // _INI: Initialize
25027         {
25028             TBPE = 0x01
25029             OSYS = 0x03E8
25030             If (CondRefOf (\_OSI))
25031             {
25032                 If (\_OSI ("Windows 2001"))
25033                 {
25034                     \WNTF = 0x01
25035                     \WXPF = 0x01
25036                     \WSPV = 0x00
25037                     OSYS = 0x07D1
25038                 }
25039 
25040                 If (\_OSI ("Windows 2001 SP1"))
25041                 {
25042                     \WSPV = 0x01
25043                     OSYS = 0x07D1
25044                 }
25045 
25046                 If (\_OSI ("Windows 2001 SP2"))
25047                 {
25048                     \WSPV = 0x02
25049                     OSYS = 0x07D2
25050                 }
25051 
25052                 If (\_OSI ("Windows 2006"))
25053                 {
25054                     \WVIS = 0x01
25055                     OSYS = 0x07D6
25056                 }
25057 
25058                 If (\_OSI ("Windows 2009"))
25059                 {
25060                     \WIN7 = 0x01
25061                     OSYS = 0x07D9
25062                 }
25063 
25064                 If (\_OSI ("Windows 2012"))
25065                 {
25066                     \WIN8 = 0x01
25067                     OSYS = 0x07DC
25068                 }
25069 
25070                 If (\_OSI ("Windows 2013"))
25071                 {
25072                     \WIN8 = 0x01
25073                     OSYS = 0x07DD
25074                 }
25075 
25076                 If (\_OSI ("Windows 2015"))
25077                 {
25078                     \WIN8 = 0x01
25079                     OSYS = 0x07DF
25080                 }
25081 
25082                 If (\_OSI ("Linux"))
25083                 {
25084                     \LNUX = 0x01
25085                     OSYS = 0x03E8
25086                 }
25087 
25088                 If (\_OSI ("FreeBSD"))
25089                 {
25090                     \LNUX = 0x01
25091                     OSYS = 0x03E8
25092                 }
25093             }
25094             ElseIf ((\SCMP (\_OS, "Microsoft Windows NT") == Zero))
25095             {
25096                 \WNTF = 0x01
25097             }
25098 
25099             If (CondRefOf (\_SB.DTSE))
25100             {
25101                 If ((\_SB.DTSE >= 0x01))
25102                 {
25103                     \_SB.DSAE = 0x01
25104                 }
25105             }
25106 
25107             If ((TBTS == 0x01))
25108             {
25109                 If ((RPN0 == 0x01))
25110                 {
25111                     Acquire (OSUM, 0xFFFF)
25112                     \_GPE.TINI (0x00, RPS0, RPT0)
25113                     Release (OSUM)
25114                 }
25115 
25116                 If ((RPN1 == 0x01))
25117                 {
25118                     Acquire (OSUM, 0xFFFF)
25119                     \_GPE.TINI (0x00, RPS1, RPT1)
25120                     Release (OSUM)
25121                 }
25122 
25123                 Signal (WFEV)
25124             }
25125 
25126             OINI ()
25127         }
25128     }
25129 
25130     Scope (\)
25131     {
25132         Method (NHPG, 0, Serialized)
25133         {
25134             \_SB.PCI0.RP01.HPEX = 0x00
25135             \_SB.PCI0.RP02.HPEX = 0x00
25136             \_SB.PCI0.RP03.HPEX = 0x00
25137             \_SB.PCI0.RP04.HPEX = 0x00
25138             \_SB.PCI0.RP05.HPEX = 0x00
25139             \_SB.PCI0.RP06.HPEX = 0x00
25140             \_SB.PCI0.RP07.HPEX = 0x00
25141             \_SB.PCI0.RP08.HPEX = 0x00
25142             \_SB.PCI0.RP09.HPEX = 0x00
25143             \_SB.PCI0.RP10.HPEX = 0x00
25144             \_SB.PCI0.RP11.HPEX = 0x00
25145             \_SB.PCI0.RP12.HPEX = 0x00
25146             \_SB.PCI0.RP13.HPEX = 0x00
25147             \_SB.PCI0.RP14.HPEX = 0x00
25148             \_SB.PCI0.RP15.HPEX = 0x00
25149             \_SB.PCI0.RP16.HPEX = 0x00
25150             \_SB.PCI0.RP17.HPEX = 0x00
25151             \_SB.PCI0.RP18.HPEX = 0x00
25152             \_SB.PCI0.RP19.HPEX = 0x00
25153             \_SB.PCI0.RP20.HPEX = 0x00
25154             \_SB.PCI0.RP21.HPEX = 0x00
25155             \_SB.PCI0.RP22.HPEX = 0x00
25156             \_SB.PCI0.RP23.HPEX = 0x00
25157             \_SB.PCI0.RP24.HPEX = 0x00
25158             \_SB.PCI0.RP01.HPSX = 0x01
25159             \_SB.PCI0.RP02.HPSX = 0x01
25160             \_SB.PCI0.RP03.HPSX = 0x01
25161             \_SB.PCI0.RP04.HPSX = 0x01
25162             \_SB.PCI0.RP05.HPSX = 0x01
25163             \_SB.PCI0.RP06.HPSX = 0x01
25164             \_SB.PCI0.RP07.HPSX = 0x01
25165             \_SB.PCI0.RP08.HPSX = 0x01
25166             \_SB.PCI0.RP09.HPSX = 0x01
25167             \_SB.PCI0.RP10.HPSX = 0x01
25168             \_SB.PCI0.RP11.HPSX = 0x01
25169             \_SB.PCI0.RP12.HPSX = 0x01
25170             \_SB.PCI0.RP13.HPSX = 0x01
25171             \_SB.PCI0.RP14.HPSX = 0x01
25172             \_SB.PCI0.RP15.HPSX = 0x01
25173             \_SB.PCI0.RP16.HPSX = 0x01
25174             \_SB.PCI0.RP17.HPSX = 0x01
25175             \_SB.PCI0.RP18.HPSX = 0x01
25176             \_SB.PCI0.RP19.HPSX = 0x01
25177             \_SB.PCI0.RP20.HPSX = 0x01
25178             \_SB.PCI0.RP21.HPSX = 0x01
25179             \_SB.PCI0.RP22.HPSX = 0x01
25180             \_SB.PCI0.RP23.HPSX = 0x01
25181             \_SB.PCI0.RP24.HPSX = 0x01
25182             \_SB.PCI0.RP01.PDCX = 0x01
25183             \_SB.PCI0.RP02.PDCX = 0x01
25184             \_SB.PCI0.RP03.PDCX = 0x01
25185             \_SB.PCI0.RP04.PDCX = 0x01
25186             \_SB.PCI0.RP05.PDCX = 0x01
25187             \_SB.PCI0.RP06.PDCX = 0x01
25188             \_SB.PCI0.RP07.PDCX = 0x01
25189             \_SB.PCI0.RP08.PDCX = 0x01
25190             \_SB.PCI0.RP09.PDCX = 0x01
25191             \_SB.PCI0.RP10.PDCX = 0x01
25192             \_SB.PCI0.RP11.PDCX = 0x01
25193             \_SB.PCI0.RP12.PDCX = 0x01
25194             \_SB.PCI0.RP13.PDCX = 0x01
25195             \_SB.PCI0.RP14.PDCX = 0x01
25196             \_SB.PCI0.RP15.PDCX = 0x01
25197             \_SB.PCI0.RP16.PDCX = 0x01
25198             \_SB.PCI0.RP17.PDCX = 0x01
25199             \_SB.PCI0.RP18.PDCX = 0x01
25200             \_SB.PCI0.RP19.PDCX = 0x01
25201             \_SB.PCI0.RP20.PDCX = 0x01
25202             \_SB.PCI0.RP21.PDCX = 0x01
25203             \_SB.PCI0.RP22.PDCX = 0x01
25204             \_SB.PCI0.RP23.PDCX = 0x01
25205             \_SB.PCI0.RP24.PDCX = 0x01
25206         }
25207 
25208         Method (NPME, 0, Serialized)
25209         {
25210             \_SB.PCI0.RP01.PMEX = 0x00
25211             \_SB.PCI0.RP02.PMEX = 0x00
25212             \_SB.PCI0.RP03.PMEX = 0x00
25213             \_SB.PCI0.RP04.PMEX = 0x00
25214             \_SB.PCI0.RP05.PMEX = 0x00
25215             \_SB.PCI0.RP06.PMEX = 0x00
25216             \_SB.PCI0.RP07.PMEX = 0x00
25217             \_SB.PCI0.RP08.PMEX = 0x00
25218             \_SB.PCI0.RP09.PMEX = 0x00
25219             \_SB.PCI0.RP10.PMEX = 0x00
25220             \_SB.PCI0.RP11.PMEX = 0x00
25221             \_SB.PCI0.RP12.PMEX = 0x00
25222             \_SB.PCI0.RP13.PMEX = 0x00
25223             \_SB.PCI0.RP14.PMEX = 0x00
25224             \_SB.PCI0.RP15.PMEX = 0x00
25225             \_SB.PCI0.RP16.PMEX = 0x00
25226             \_SB.PCI0.RP17.PMEX = 0x00
25227             \_SB.PCI0.RP18.PMEX = 0x00
25228             \_SB.PCI0.RP19.PMEX = 0x00
25229             \_SB.PCI0.RP20.PMEX = 0x00
25230             \_SB.PCI0.RP21.PMEX = 0x00
25231             \_SB.PCI0.RP22.PMEX = 0x00
25232             \_SB.PCI0.RP23.PMEX = 0x00
25233             \_SB.PCI0.RP24.PMEX = 0x00
25234             \_SB.PCI0.RP21.PMEX = 0x00
25235             \_SB.PCI0.RP22.PMEX = 0x00
25236             \_SB.PCI0.RP23.PMEX = 0x00
25237             \_SB.PCI0.RP24.PMEX = 0x00
25238             \_SB.PCI0.RP01.PMSX = 0x01
25239             \_SB.PCI0.RP02.PMSX = 0x01
25240             \_SB.PCI0.RP03.PMSX = 0x01
25241             \_SB.PCI0.RP04.PMSX = 0x01
25242             \_SB.PCI0.RP05.PMSX = 0x01
25243             \_SB.PCI0.RP06.PMSX = 0x01
25244             \_SB.PCI0.RP07.PMSX = 0x01
25245             \_SB.PCI0.RP08.PMSX = 0x01
25246             \_SB.PCI0.RP09.PMSX = 0x01
25247             \_SB.PCI0.RP10.PMSX = 0x01
25248             \_SB.PCI0.RP11.PMSX = 0x01
25249             \_SB.PCI0.RP12.PMSX = 0x01
25250             \_SB.PCI0.RP13.PMSX = 0x01
25251             \_SB.PCI0.RP14.PMSX = 0x01
25252             \_SB.PCI0.RP15.PMSX = 0x01
25253             \_SB.PCI0.RP16.PMSX = 0x01
25254             \_SB.PCI0.RP17.PMSX = 0x01
25255             \_SB.PCI0.RP18.PMSX = 0x01
25256             \_SB.PCI0.RP19.PMSX = 0x01
25257             \_SB.PCI0.RP20.PMSX = 0x01
25258             \_SB.PCI0.RP21.PMSX = 0x01
25259             \_SB.PCI0.RP22.PMSX = 0x01
25260             \_SB.PCI0.RP23.PMSX = 0x01
25261             \_SB.PCI0.RP24.PMSX = 0x01
25262         }
25263 
25264         Name (PICM, 0x00)
25265         Name (PRWP, Package (0x02)
25266         {
25267             Zero, 
25268             Zero
25269         })
25270         Method (GPRW, 2, NotSerialized)
25271         {
25272             PRWP [0x00] = Arg0
25273             Local0 = (SS1 << 0x01)
25274             Local0 |= (SS2 << 0x02)
25275             Local0 |= (SS3 << 0x03)
25276             Local0 |= (SS4 << 0x04)
25277             If (((0x01 << Arg1) & Local0))
25278             {
25279                 PRWP [0x01] = Arg1
25280             }
25281             Else
25282             {
25283                 Local0 >>= 0x01
25284                 FindSetLeftBit (Local0, PRWP [0x01])
25285             }
25286 
25287             Return (PRWP) /* \PRWP */
25288         }
25289     }
25290 
25291     Scope (\_SB)
25292     {
25293         Name (OSCI, 0x00)
25294         Name (OSCO, 0x00)
25295         Name (OSCP, 0x00)
25296         Method (_OSC, 4, Serialized)  // _OSC: Operating System Capabilities
25297         {
25298             CreateDWordField (Arg3, 0x00, STS0)
25299             CreateDWordField (Arg3, 0x04, CAP0)
25300             If ((((PMOF & 0x01) == 0x01) || (S0ID == One)))
25301             {
25302                 \_SB.SCGE = 0x01
25303             }
25304 
25305             If ((Arg0 == ToUUID ("0811b06e-4a27-44f9-8d60-3cbbc22e7b48") /* Platform-wide Capabilities */))
25306             {
25307                 If ((Arg1 == One))
25308                 {
25309                     OSCP = CAP0 /* \_SB_._OSC.CAP0 */
25310                     If ((CAP0 & 0x04))
25311                     {
25312                         OSCO = 0x04
25313                         If (((SGMD & 0x0F) != 0x02))
25314                         {
25315                             If ((RTD3 == 0x00))
25316                             {
25317                                 CAP0 &= 0x3B
25318                                 STS0 |= 0x10
25319                             }
25320                         }
25321                     }
25322 
25323                     If ((CAP0 & 0x20))
25324                     {
25325                         \CPPX = 0x01
25326                     }
25327                     Else
25328                     {
25329                         CAP0 &= 0x9F
25330                         STS0 |= 0x10
25331                     }
25332                 }
25333                 Else
25334                 {
25335                     STS0 &= 0xFFFFFF00
25336                     STS0 |= 0x0A
25337                 }
25338             }
25339             Else
25340             {
25341                 STS0 &= 0xFFFFFF00
25342                 STS0 |= 0x06
25343             }
25344 
25345             Return (Arg3)
25346         }
25347 
25348         Device (EPC)
25349         {
25350             Name (_HID, EisaId ("INT0E0C"))  // _HID: Hardware ID
25351             Name (_STR, Unicode ("Enclave Page Cache 1.0"))  // _STR: Description String
25352             Name (_MLS, Package (0x01)  // _MLS: Multiple Language String
25353             {
25354                 Package (0x02)
25355                 {
25356                     "en", 
25357                     Unicode ("Enclave Page Cache 1.0")
25358                 }
25359             })
25360             Name (RBUF, ResourceTemplate ()
25361             {
25362                 QWordMemory (ResourceConsumer, PosDecode, MinNotFixed, MaxNotFixed, NonCacheable, ReadWrite,
25363                     0x0000000000000000, // Granularity
25364                     0x0000000000000000, // Range Minimum
25365                     0x0000000000000000, // Range Maximum
25366                     0x0000000000000000, // Translation Offset
25367                     0x0000000000000001, // Length
25368                     ,, _Y2A, AddressRangeMemory, TypeStatic)
25369             })
25370             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
25371             {
25372                 CreateQWordField (RBUF, \_SB.EPC._Y2A._MIN, EMIN)  // _MIN: Minimum Base Address
25373                 CreateQWordField (RBUF, \_SB.EPC._Y2A._MAX, EMAX)  // _MAX: Maximum Base Address
25374                 CreateQWordField (RBUF, \_SB.EPC._Y2A._LEN, ELEN)  // _LEN: Length
25375                 EMIN = \_SB.EMNA
25376                 ELEN = \_SB.ELNG
25377                 EMAX = ((\_SB.EMNA + \_SB.ELNG) - 0x01)
25378                 Return (RBUF) /* \_SB_.EPC_.RBUF */
25379             }
25380 
25381             Method (_STA, 0, NotSerialized)  // _STA: Status
25382             {
25383                 If ((\_SB.EPCS != 0x00))
25384                 {
25385                     Return (0x0F)
25386                 }
25387 
25388                 Return (0x00)
25389             }
25390         }
25391     }
25392 
25393     Scope (\_SB)
25394     {
25395         Device (SLPB)
25396         {
25397             Name (_HID, EisaId ("PNP0C0E") /* Sleep Button Device */)  // _HID: Hardware ID
25398             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
25399             {
25400                 Return (Package (0x02)
25401                 {
25402                     0x17, 
25403                     0x03
25404                 })
25405             }
25406 
25407             Method (_PSW, 1, NotSerialized)  // _PSW: Power State Wake
25408             {
25409                 If (\H8DR)
25410                 {
25411                     If (Arg0)
25412                     {
25413                         \_SB.PCI0.LPCB.EC.HWFN = 0x01
25414                     }
25415                     Else
25416                     {
25417                         \_SB.PCI0.LPCB.EC.HWFN = 0x00
25418                     }
25419                 }
25420                 ElseIf (Arg0)
25421                 {
25422                     \MBEC (0x32, 0xFF, 0x10)
25423                 }
25424                 Else
25425                 {
25426                     \MBEC (0x32, 0xEF, 0x00)
25427                 }
25428             }
25429         }
25430     }
25431 
25432     If ((ENVM == 0x01))
25433     {
25434         Scope (\_SB)
25435         {
25436             Method (VMON, 0, Serialized)
25437             {
25438             }
25439 
25440             Method (VMOF, 0, Serialized)
25441             {
25442             }
25443         }
25444     }
25445 
25446     Scope (\_SB)
25447     {
25448         Device (COEX)
25449         {
25450             Name (_HID, EisaId ("INT3519"))  // _HID: Hardware ID
25451             Name (_STR, Unicode ("CoExistence Manager"))  // _STR: Description String
25452             Method (_STA, 0, NotSerialized)  // _STA: Status
25453             {
25454                 If ((COEM == 0x01))
25455                 {
25456                     Return (0x0F)
25457                 }
25458                 Else
25459                 {
25460                     Return (0x00)
25461                 }
25462             }
25463         }
25464     }
25465 
25466     Scope (\_SB)
25467     {
25468         Processor (PR00, 0x01, 0x00001810, 0x06){}
25469         Processor (PR01, 0x02, 0x00001810, 0x06){}
25470         Processor (PR02, 0x03, 0x00001810, 0x06){}
25471         Processor (PR03, 0x04, 0x00001810, 0x06){}
25472         Processor (PR04, 0x05, 0x00001810, 0x06){}
25473         Processor (PR05, 0x06, 0x00001810, 0x06){}
25474         Processor (PR06, 0x07, 0x00001810, 0x06){}
25475         Processor (PR07, 0x08, 0x00001810, 0x06){}
25476         Processor (PR08, 0x09, 0x00001810, 0x06){}
25477         Processor (PR09, 0x0A, 0x00001810, 0x06){}
25478         Processor (PR10, 0x0B, 0x00001810, 0x06){}
25479         Processor (PR11, 0x0C, 0x00001810, 0x06){}
25480         Processor (PR12, 0x0D, 0x00001810, 0x06){}
25481         Processor (PR13, 0x0E, 0x00001810, 0x06){}
25482         Processor (PR14, 0x0F, 0x00001810, 0x06){}
25483         Processor (PR15, 0x10, 0x00001810, 0x06){}
25484     }
25485 
25486     Scope (\_SB.PR00)
25487     {
25488         Name (CPC2, Package (0x15)
25489         {
25490             0x15, 
25491             0x02, 
25492             ResourceTemplate ()
25493             {
25494                 Register (FFixedHW, 
25495                     0x08,               // Bit Width
25496                     0x00,               // Bit Offset
25497                     0x0000000000000771, // Address
25498                     0x04,               // Access Size
25499                     )
25500             }, 
25501 
25502             ResourceTemplate ()
25503             {
25504                 Register (FFixedHW, 
25505                     0x08,               // Bit Width
25506                     0x08,               // Bit Offset
25507                     0x00000000000000CE, // Address
25508                     0x04,               // Access Size
25509                     )
25510             }, 
25511 
25512             ResourceTemplate ()
25513             {
25514                 Register (FFixedHW, 
25515                     0x08,               // Bit Width
25516                     0x10,               // Bit Offset
25517                     0x0000000000000771, // Address
25518                     0x04,               // Access Size
25519                     )
25520             }, 
25521 
25522             ResourceTemplate ()
25523             {
25524                 Register (FFixedHW, 
25525                     0x08,               // Bit Width
25526                     0x18,               // Bit Offset
25527                     0x0000000000000771, // Address
25528                     0x04,               // Access Size
25529                     )
25530             }, 
25531 
25532             ResourceTemplate ()
25533             {
25534                 Register (FFixedHW, 
25535                     0x08,               // Bit Width
25536                     0x08,               // Bit Offset
25537                     0x0000000000000771, // Address
25538                     0x04,               // Access Size
25539                     )
25540             }, 
25541 
25542             ResourceTemplate ()
25543             {
25544                 Register (FFixedHW, 
25545                     0x08,               // Bit Width
25546                     0x10,               // Bit Offset
25547                     0x0000000000000774, // Address
25548                     0x04,               // Access Size
25549                     )
25550             }, 
25551 
25552             ResourceTemplate ()
25553             {
25554                 Register (FFixedHW, 
25555                     0x08,               // Bit Width
25556                     0x00,               // Bit Offset
25557                     0x0000000000000774, // Address
25558                     0x04,               // Access Size
25559                     )
25560             }, 
25561 
25562             ResourceTemplate ()
25563             {
25564                 Register (FFixedHW, 
25565                     0x08,               // Bit Width
25566                     0x08,               // Bit Offset
25567                     0x0000000000000774, // Address
25568                     0x04,               // Access Size
25569                     )
25570             }, 
25571 
25572             ResourceTemplate ()
25573             {
25574                 Register (SystemMemory, 
25575                     0x00,               // Bit Width
25576                     0x00,               // Bit Offset
25577                     0x0000000000000000, // Address
25578                     ,)
25579             }, 
25580 
25581             ResourceTemplate ()
25582             {
25583                 Register (SystemMemory, 
25584                     0x00,               // Bit Width
25585                     0x00,               // Bit Offset
25586                     0x0000000000000000, // Address
25587                     ,)
25588             }, 
25589 
25590             ResourceTemplate ()
25591             {
25592                 Register (SystemMemory, 
25593                     0x00,               // Bit Width
25594                     0x00,               // Bit Offset
25595                     0x0000000000000000, // Address
25596                     ,)
25597             }, 
25598 
25599             ResourceTemplate ()
25600             {
25601                 Register (FFixedHW, 
25602                     0x40,               // Bit Width
25603                     0x00,               // Bit Offset
25604                     0x00000000000000E7, // Address
25605                     0x04,               // Access Size
25606                     )
25607             }, 
25608 
25609             ResourceTemplate ()
25610             {
25611                 Register (FFixedHW, 
25612                     0x40,               // Bit Width
25613                     0x00,               // Bit Offset
25614                     0x00000000000000E8, // Address
25615                     0x04,               // Access Size
25616                     )
25617             }, 
25618 
25619             ResourceTemplate ()
25620             {
25621                 Register (FFixedHW, 
25622                     0x02,               // Bit Width
25623                     0x01,               // Bit Offset
25624                     0x0000000000000777, // Address
25625                     0x04,               // Access Size
25626                     )
25627             }, 
25628 
25629             ResourceTemplate ()
25630             {
25631                 Register (FFixedHW, 
25632                     0x01,               // Bit Width
25633                     0x00,               // Bit Offset
25634                     0x0000000000000770, // Address
25635                     0x04,               // Access Size
25636                     )
25637             }, 
25638 
25639             0x01, 
25640             ResourceTemplate ()
25641             {
25642                 Register (FFixedHW, 
25643                     0x0A,               // Bit Width
25644                     0x20,               // Bit Offset
25645                     0x0000000000000774, // Address
25646                     0x04,               // Access Size
25647                     )
25648             }, 
25649 
25650             ResourceTemplate ()
25651             {
25652                 Register (FFixedHW, 
25653                     0x08,               // Bit Width
25654                     0x18,               // Bit Offset
25655                     0x0000000000000774, // Address
25656                     0x04,               // Access Size
25657                     )
25658             }, 
25659 
25660             0x00
25661         })
25662         Name (CPOC, Package (0x15)
25663         {
25664             0x15, 
25665             0x02, 
25666             0xFF, 
25667             ResourceTemplate ()
25668             {
25669                 Register (FFixedHW, 
25670                     0x08,               // Bit Width
25671                     0x08,               // Bit Offset
25672                     0x00000000000000CE, // Address
25673                     0x04,               // Access Size
25674                     )
25675             }, 
25676 
25677             ResourceTemplate ()
25678             {
25679                 Register (FFixedHW, 
25680                     0x08,               // Bit Width
25681                     0x10,               // Bit Offset
25682                     0x0000000000000771, // Address
25683                     0x04,               // Access Size
25684                     )
25685             }, 
25686 
25687             ResourceTemplate ()
25688             {
25689                 Register (FFixedHW, 
25690                     0x08,               // Bit Width
25691                     0x18,               // Bit Offset
25692                     0x0000000000000771, // Address
25693                     0x04,               // Access Size
25694                     )
25695             }, 
25696 
25697             ResourceTemplate ()
25698             {
25699                 Register (FFixedHW, 
25700                     0x08,               // Bit Width
25701                     0x08,               // Bit Offset
25702                     0x0000000000000771, // Address
25703                     0x04,               // Access Size
25704                     )
25705             }, 
25706 
25707             ResourceTemplate ()
25708             {
25709                 Register (FFixedHW, 
25710                     0x08,               // Bit Width
25711                     0x10,               // Bit Offset
25712                     0x0000000000000774, // Address
25713                     0x04,               // Access Size
25714                     )
25715             }, 
25716 
25717             ResourceTemplate ()
25718             {
25719                 Register (FFixedHW, 
25720                     0x08,               // Bit Width
25721                     0x00,               // Bit Offset
25722                     0x0000000000000774, // Address
25723                     0x04,               // Access Size
25724                     )
25725             }, 
25726 
25727             ResourceTemplate ()
25728             {
25729                 Register (FFixedHW, 
25730                     0x08,               // Bit Width
25731                     0x08,               // Bit Offset
25732                     0x0000000000000774, // Address
25733                     0x04,               // Access Size
25734                     )
25735             }, 
25736 
25737             ResourceTemplate ()
25738             {
25739                 Register (SystemMemory, 
25740                     0x00,               // Bit Width
25741                     0x00,               // Bit Offset
25742                     0x0000000000000000, // Address
25743                     ,)
25744             }, 
25745 
25746             ResourceTemplate ()
25747             {
25748                 Register (SystemMemory, 
25749                     0x00,               // Bit Width
25750                     0x00,               // Bit Offset
25751                     0x0000000000000000, // Address
25752                     ,)
25753             }, 
25754 
25755             ResourceTemplate ()
25756             {
25757                 Register (SystemMemory, 
25758                     0x00,               // Bit Width
25759                     0x00,               // Bit Offset
25760                     0x0000000000000000, // Address
25761                     ,)
25762             }, 
25763 
25764             ResourceTemplate ()
25765             {
25766                 Register (FFixedHW, 
25767                     0x40,               // Bit Width
25768                     0x00,               // Bit Offset
25769                     0x00000000000000E7, // Address
25770                     0x04,               // Access Size
25771                     )
25772             }, 
25773 
25774             ResourceTemplate ()
25775             {
25776                 Register (FFixedHW, 
25777                     0x40,               // Bit Width
25778                     0x00,               // Bit Offset
25779                     0x00000000000000E8, // Address
25780                     0x04,               // Access Size
25781                     )
25782             }, 
25783 
25784             ResourceTemplate ()
25785             {
25786                 Register (FFixedHW, 
25787                     0x02,               // Bit Width
25788                     0x01,               // Bit Offset
25789                     0x0000000000000777, // Address
25790                     0x04,               // Access Size
25791                     )
25792             }, 
25793 
25794             ResourceTemplate ()
25795             {
25796                 Register (FFixedHW, 
25797                     0x01,               // Bit Width
25798                     0x00,               // Bit Offset
25799                     0x0000000000000770, // Address
25800                     0x04,               // Access Size
25801                     )
25802             }, 
25803 
25804             0x01, 
25805             ResourceTemplate ()
25806             {
25807                 Register (FFixedHW, 
25808                     0x0A,               // Bit Width
25809                     0x20,               // Bit Offset
25810                     0x0000000000000774, // Address
25811                     0x04,               // Access Size
25812                     )
25813             }, 
25814 
25815             ResourceTemplate ()
25816             {
25817                 Register (FFixedHW, 
25818                     0x08,               // Bit Width
25819                     0x18,               // Bit Offset
25820                     0x0000000000000774, // Address
25821                     0x04,               // Access Size
25822                     )
25823             }, 
25824 
25825             0x00
25826         })
25827     }
25828 
25829     Scope (\_SB)
25830     {
25831         Device (PAGD)
25832         {
25833             Name (_HID, "ACPI000C" /* Processor Aggregator Device */)  // _HID: Hardware ID
25834             Method (_STA, 0, NotSerialized)  // _STA: Status
25835             {
25836                 If (\_OSI ("Processor Aggregator Device"))
25837                 {
25838                     Return (0x0F)
25839                 }
25840                 Else
25841                 {
25842                     Return (0x00)
25843                 }
25844             }
25845 
25846             Name (_PUR, Package (0x02)  // _PUR: Processor Utilization Request
25847             {
25848                 0x01, 
25849                 0x00
25850             })
25851         }
25852     }
25853 
25854     Scope (\)
25855     {
25856         Method (PNTF, 1, NotSerialized)
25857         {
25858             If ((\_SB.CFGD & 0x0200))
25859             {
25860                 If ((((PC00 & 0x08) && ((Arg0 == 0x80) || (
25861                     Arg0 == 0x82))) || ((PC00 & 0x10) && (Arg0 == 0x81))))
25862                 {
25863                     Notify (\_SB.PR00, Arg0)
25864                 }
25865 
25866                 If ((((PC01 & 0x08) && ((Arg0 == 0x80) || (
25867                     Arg0 == 0x82))) || ((PC01 & 0x10) && (Arg0 == 0x81))))
25868                 {
25869                     Notify (\_SB.PR01, Arg0)
25870                 }
25871 
25872                 If ((((PC02 & 0x08) && ((Arg0 == 0x80) || (
25873                     Arg0 == 0x82))) || ((PC02 & 0x10) && (Arg0 == 0x81))))
25874                 {
25875                     Notify (\_SB.PR02, Arg0)
25876                 }
25877 
25878                 If ((((PC03 & 0x08) && ((Arg0 == 0x80) || (
25879                     Arg0 == 0x82))) || ((PC03 & 0x10) && (Arg0 == 0x81))))
25880                 {
25881                     Notify (\_SB.PR03, Arg0)
25882                 }
25883 
25884                 If ((((PC04 & 0x08) && ((Arg0 == 0x80) || (
25885                     Arg0 == 0x82))) || ((PC04 & 0x10) && (Arg0 == 0x81))))
25886                 {
25887                     Notify (\_SB.PR04, Arg0)
25888                 }
25889 
25890                 If ((((PC05 & 0x08) && ((Arg0 == 0x80) || (
25891                     Arg0 == 0x82))) || ((PC05 & 0x10) && (Arg0 == 0x81))))
25892                 {
25893                     Notify (\_SB.PR05, Arg0)
25894                 }
25895 
25896                 If ((((PC06 & 0x08) && ((Arg0 == 0x80) || (
25897                     Arg0 == 0x82))) || ((PC06 & 0x10) && (Arg0 == 0x81))))
25898                 {
25899                     Notify (\_SB.PR06, Arg0)
25900                 }
25901 
25902                 If ((((PC07 & 0x08) && ((Arg0 == 0x80) || (
25903                     Arg0 == 0x82))) || ((PC07 & 0x10) && (Arg0 == 0x81))))
25904                 {
25905                     Notify (\_SB.PR07, Arg0)
25906                 }
25907             }
25908             ElseIf (((Arg0 == 0x80) || ((Arg0 == 0x81) || (Arg0 == 
25909                 0x82))))
25910             {
25911                 Notify (\_SB.PR00, Arg0)
25912             }
25913         }
25914     }
25915 
25916     Scope (\_SB.PCI0)
25917     {
25918         Device (PDRC)
25919         {
25920             Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
25921             Name (_UID, 0x01)  // _UID: Unique ID
25922             Name (BUF0, ResourceTemplate ()
25923             {
25924                 Memory32Fixed (ReadWrite,
25925                     0x00000000,         // Address Base
25926                     0x00008000,         // Address Length
25927                     _Y2B)
25928                 Memory32Fixed (ReadWrite,
25929                     0x00000000,         // Address Base
25930                     0x00001000,         // Address Length
25931                     _Y2C)
25932                 Memory32Fixed (ReadWrite,
25933                     0x00000000,         // Address Base
25934                     0x00001000,         // Address Length
25935                     _Y2D)
25936                 Memory32Fixed (ReadWrite,
25937                     0x00000000,         // Address Base
25938                     0x00000000,         // Address Length
25939                     _Y2E)
25940                 Memory32Fixed (ReadWrite,
25941                     0xFED20000,         // Address Base
25942                     0x00020000,         // Address Length
25943                     )
25944                 Memory32Fixed (ReadOnly,
25945                     0xFED90000,         // Address Base
25946                     0x00004000,         // Address Length
25947                     )
25948                 Memory32Fixed (ReadWrite,
25949                     0xFED45000,         // Address Base
25950                     0x0004B000,         // Address Length
25951                     )
25952                 Memory32Fixed (ReadOnly,
25953                     0xFEE00000,         // Address Base
25954                     0x00100000,         // Address Length
25955                     )
25956                 Memory32Fixed (ReadWrite,
25957                     0x00000000,         // Address Base
25958                     0x00000000,         // Address Length
25959                     )
25960                 Memory32Fixed (ReadWrite,
25961                     0x00000000,         // Address Base
25962                     0x00000000,         // Address Length
25963                     _Y2F)
25964             })
25965             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
25966             {
25967                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y2B._BAS, MBR0)  // _BAS: Base Address
25968                 MBR0 = \_SB.PCI0.GMHB ()
25969                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y2C._BAS, DBR0)  // _BAS: Base Address
25970                 DBR0 = \_SB.PCI0.GDMB ()
25971                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y2D._BAS, EBR0)  // _BAS: Base Address
25972                 EBR0 = \_SB.PCI0.GEPB ()
25973                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y2E._BAS, XBR0)  // _BAS: Base Address
25974                 XBR0 = \_SB.PCI0.GPCB ()
25975                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y2E._LEN, XSZ0)  // _LEN: Length
25976                 XSZ0 = \_SB.PCI0.GPCL ()
25977                 If (!HPTE)
25978                 {
25979                     CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y2F._BAS, HBAS)  // _BAS: Base Address
25980                     CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y2F._LEN, HLEN)  // _LEN: Length
25981                     HBAS = HPTB /* \HPTB */
25982                     HLEN = 0x0400
25983                 }
25984 
25985                 Return (BUF0) /* \_SB_.PCI0.PDRC.BUF0 */
25986             }
25987         }
25988     }
25989 
25990     Method (BRTN, 1, Serialized)
25991     {
25992         If (((DIDX & 0x0F00) == 0x0400))
25993         {
25994             Notify (\_SB.PCI0.GFX0.DD1F, Arg0)
25995         }
25996     }
25997 
25998     Scope (\_GPE)
25999     {
26000         Method (_L17, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
26001         {
26002             Local0 = \_SB.PCI0.LPCB.EC.HWAC
26003             \RRBF = Local0
26004             Sleep (0x0A)
26005             If ((Local0 & 0x02)){}
26006             If ((Local0 & 0x04))
26007             {
26008                 Notify (\_SB.LID, 0x02) // Device Wake
26009             }
26010 
26011             If ((Local0 & 0x08))
26012             {
26013                 Notify (\_SB.SLPB, 0x02) // Device Wake
26014             }
26015 
26016             If ((Local0 & 0x10))
26017             {
26018                 Notify (\_SB.SLPB, 0x02) // Device Wake
26019             }
26020 
26021             If ((Local0 & 0x40)){}
26022             If ((Local0 & 0x80))
26023             {
26024                 Notify (\_SB.SLPB, 0x02) // Device Wake
26025             }
26026         }
26027 
26028         Method (_L69, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
26029         {
26030             If (\_SB.PCI0.RP01.PSPX)
26031             {
26032                 \_SB.PCI0.RP01.PSPX = 0x01
26033                 \_SB.PCI0.RP01.PMSX = 0x01
26034                 Notify (\_SB.PCI0.RP01, 0x02) // Device Wake
26035             }
26036 
26037             If (\_SB.PCI0.RP05.PSPX)
26038             {
26039                 \_SB.PCI0.RP05.PSPX = 0x01
26040                 \_SB.PCI0.RP05.PMSX = 0x01
26041                 Notify (\_SB.PCI0.RP05, 0x02) // Device Wake
26042             }
26043 
26044             If (\_SB.PCI0.RP07.PSPX)
26045             {
26046                 \_SB.PCI0.RP07.PSPX = 0x01
26047                 \_SB.PCI0.RP07.PMSX = 0x01
26048                 Notify (\_SB.PCI0.RP07, 0x02) // Device Wake
26049             }
26050 
26051             If (\_SB.PCI0.RP09.PSPX)
26052             {
26053                 \_SB.PCI0.RP09.PSPX = 0x01
26054                 \_SB.PCI0.RP09.PMSX = 0x01
26055                 Notify (\_SB.PCI0.RP09, 0x02) // Device Wake
26056             }
26057         }
26058 
26059         Method (_L61, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
26060         {
26061             L01C += 0x01
26062             P8XH (0x00, 0x01)
26063             P8XH (0x01, L01C)
26064             If (((\_SB.PCI0.RP05.VDID != 0xFFFFFFFF) && \_SB.PCI0.RP05.HPSX))
26065             {
26066                 If (((TBTS != 0x01) || ((RPS0 != 0x05) || 
26067                     (RPS1 != 0x05))))
26068                 {
26069                     Sleep (0x64)
26070                 }
26071 
26072                 If (\_SB.PCI0.RP05.PDCX)
26073                 {
26074                     \_SB.PCI0.RP05.PDCX = 0x01
26075                     \_SB.PCI0.RP05.HPSX = 0x01
26076                     If (!\_SB.PCI0.RP05.PDSX)
26077                     {
26078                         \_SB.PCI0.RP05.L0SE = 0x00
26079                     }
26080 
26081                     If (((TBTS != 0x01) || ((RPS0 != 0x05) || 
26082                         (RPS1 != 0x05))))
26083                     {
26084                         Notify (\_SB.PCI0.RP05, 0x00) // Bus Check
26085                     }
26086                 }
26087                 Else
26088                 {
26089                     \_SB.PCI0.RP05.HPSX = 0x01
26090                 }
26091             }
26092         }
26093 
26094         Method (_L62, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
26095         {
26096             \_SB.PCI0.LPCB.SWGE = 0x00
26097         }
26098 
26099         Method (_L66, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
26100         {
26101             If (\_SB.PCI0.GFX0.GSSE)
26102             {
26103                 \_SB.PCI0.GFX0.GSCI ()
26104             }
26105             Else
26106             {
26107                 \_SB.PCI0.SBUS.CPSC = 0x01
26108             }
26109         }
26110 
26111         Method (_L47, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
26112         {
26113             Notify (\_SB.PCI0.RP05, 0x02) // Device Wake
26114         }
26115 
26116         Name (PRES, 0x01)
26117         Method (_L6F, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
26118         {
26119             If ((RTD3 == 0x01))
26120             {
26121                 If (CondRefOf (\_GPE.AL6F))
26122                 {
26123                     \_GPE.AL6F ()
26124                 }
26125             }
26126 
26127             If ((SGGP == 0x01))
26128             {
26129                 If (CondRefOf (\_GPE.P0L6))
26130                 {
26131                     \_GPE.P0L6 ()
26132                 }
26133             }
26134 
26135             If ((P1GP == 0x01))
26136             {
26137                 If (CondRefOf (\_GPE.P1L6))
26138                 {
26139                     \_GPE.P1L6 ()
26140                 }
26141             }
26142 
26143             If ((P2GP == 0x01))
26144             {
26145                 If (CondRefOf (\_GPE.P2L6))
26146                 {
26147                     \_GPE.P2L6 ()
26148                 }
26149             }
26150 
26151             If ((P3GP == 0x01))
26152             {
26153                 If (CondRefOf (\_GPE.P3L6))
26154                 {
26155                     \_GPE.P3L6 ()
26156                 }
26157             }
26158 
26159             If ((TBTS == 0x01))
26160             {
26161                 If ((CGST == 0x00))
26162                 {
26163                     If (\_SB.ISME (CPG0))
26164                     {
26165                         \_SB.THDR (CPG0, RPS0, RPT0)
26166                     }
26167 
26168                     If (\_SB.ISME (CPG1))
26169                     {
26170                         \_SB.THDR (CPG1, RPS1, RPT1)
26171                     }
26172                 }
26173                 ElseIf (\_SB.ISME (CPG0))
26174                 {
26175                     If ((RPN0 == 0x01))
26176                     {
26177                         \_SB.THDR (CPG0, RPS0, RPT0)
26178                     }
26179 
26180                     If ((RPN1 == 0x01))
26181                     {
26182                         \_SB.THDR (CPG0, RPS1, RPT1)
26183                     }
26184                 }
26185             }
26186         }
26187     }
26188 
26189     Scope (\_SB.PCI0.RP09.PXSX)
26190     {
26191         OperationRegion (RPXX, PCI_Config, 0x00, 0x10)
26192         Field (RPXX, AnyAcc, NoLock, Preserve)
26193         {
26194             VDID,   32
26195         }
26196 
26197         OperationRegion (FLDR, PCI_Config, 0x44, 0x06)
26198         Field (FLDR, ByteAcc, NoLock, Preserve)
26199         {
26200             DCAP,   32, 
26201             DCTR,   16
26202         }
26203 
26204         Method (WIST, 0, Serialized)
26205         {
26206             If (CondRefOf (VDID))
26207             {
26208                 Switch (ToInteger (VDID))
26209                 {
26210                     Case (0x095A8086)
26211                     {
26212                         Return (0x01)
26213                     }
26214                     Case (0x095B8086)
26215                     {
26216                         Return (0x01)
26217                     }
26218                     Case (0x31658086)
26219                     {
26220                         Return (0x01)
26221                     }
26222                     Case (0x31668086)
26223                     {
26224                         Return (0x01)
26225                     }
26226                     Case (0x08B18086)
26227                     {
26228                         Return (0x01)
26229                     }
26230                     Case (0x08B28086)
26231                     {
26232                         Return (0x01)
26233                     }
26234                     Case (0x08B38086)
26235                     {
26236                         Return (0x01)
26237                     }
26238                     Case (0x08B48086)
26239                     {
26240                         Return (0x01)
26241                     }
26242                     Case (0x24F38086)
26243                     {
26244                         Return (0x01)
26245                     }
26246                     Case (0x24F48086)
26247                     {
26248                         Return (0x01)
26249                     }
26250                     Case (0x24F58086)
26251                     {
26252                         Return (0x01)
26253                     }
26254                     Case (0x24F68086)
26255                     {
26256                         Return (0x01)
26257                     }
26258                     Case (0x24FD8086)
26259                     {
26260                         Return (0x01)
26261                     }
26262                     Case (0x24FB8086)
26263                     {
26264                         Return (0x01)
26265                     }
26266                     Case (0x25268086)
26267                     {
26268                         Return (0x01)
26269                     }
26270                     Case (0x27238086)
26271                     {
26272                         Return (0x01)
26273                     }
26274                     Case (0xB82210EC)
26275                     {
26276                         Return (0x01)
26277                     }
26278                     Default
26279                     {
26280                         Return (0x00)
26281                     }
26282 
26283                 }
26284             }
26285             Else
26286             {
26287                 Return (0x00)
26288             }
26289         }
26290 
26291         Method (WWST, 0, Serialized)
26292         {
26293             If (CondRefOf (VDID))
26294             {
26295                 Switch (ToInteger (VDID))
26296                 {
26297                     Case (0x73608086)
26298                     {
26299                         Return (0x01)
26300                     }
26301                     Case (0x75608086)
26302                     {
26303                         Return (0x01)
26304                     }
26305                     Default
26306                     {
26307                         Return (0x00)
26308                     }
26309 
26310                 }
26311             }
26312             Else
26313             {
26314                 Return (0x00)
26315             }
26316         }
26317 
26318         If (WIST ())
26319         {
26320             PowerResource (WRST, 0x05, 0x0000)
26321             {
26322                 Method (_STA, 0, NotSerialized)  // _STA: Status
26323                 {
26324                     ADBG ("Wifi PR _STA")
26325                     Return (0x01)
26326                 }
26327 
26328                 Method (_ON, 0, NotSerialized)  // _ON_: Power On
26329                 {
26330                     ADBG ("Wifi PR _ON")
26331                 }
26332 
26333                 Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
26334                 {
26335                     ADBG ("Wifi PR _OFF")
26336                 }
26337 
26338                 Method (_RST, 0, NotSerialized)  // _RST: Device Reset
26339                 {
26340                     ADBG ("Wifi PR _RST")
26341                     If ((DCAP & 0x10000000))
26342                     {
26343                         Local0 = DCTR /* \_SB_.PCI0.RP09.PXSX.DCTR */
26344                         Local0 |= 0x8000
26345                         DCTR = Local0
26346                     }
26347                 }
26348             }
26349 
26350             Name (SPLX, Package (0x02)
26351             {
26352                 0x00, 
26353                 Package (0x03)
26354                 {
26355                     0x80000000, 
26356                     0x80000000, 
26357                     0x80000000
26358                 }
26359             })
26360             Method (SPLC, 0, Serialized)
26361             {
26362                 DerefOf (SPLX [0x01]) [0x00] = \DOM1
26363                 DerefOf (SPLX [0x01]) [0x01] = \LIM1
26364                 DerefOf (SPLX [0x01]) [0x02] = \TIM1
26365                 Return (SPLX) /* \_SB_.PCI0.RP09.PXSX.SPLX */
26366             }
26367 
26368             Name (WANX, Package (0x03)
26369             {
26370                 0x00, 
26371                 Package (0x03)
26372                 {
26373                     0x80000000, 
26374                     0x80000000, 
26375                     0x80000000
26376                 }, 
26377 
26378                 Package (0x03)
26379                 {
26380                     0x80000000, 
26381                     0x80000000, 
26382                     0x80000000
26383                 }
26384             })
26385             Method (WAND, 0, Serialized)
26386             {
26387                 DerefOf (WANX [0x01]) [0x00] = 0x00
26388                 DerefOf (WANX [0x01]) [0x01] = \TRD0
26389                 DerefOf (WANX [0x01]) [0x02] = \TRL0
26390                 DerefOf (WANX [0x02]) [0x00] = 0x01
26391                 DerefOf (WANX [0x02]) [0x01] = \TRD1
26392                 DerefOf (WANX [0x02]) [0x02] = \TRL1
26393                 Return (WANX) /* \_SB_.PCI0.RP09.PXSX.WANX */
26394             }
26395 
26396             OperationRegion (RPXY, PCI_Config, 0x2C, 0x10)
26397             Field (RPXY, AnyAcc, NoLock, Preserve)
26398             {
26399                 SVID,   32
26400             }
26401 
26402             Name (WRDX, Package (0x02)
26403             {
26404                 0x00, 
26405                 Package (0x02)
26406                 {
26407                     0x80000000, 
26408                     0x8000
26409                 }
26410             })
26411             Method (WRDD, 0, Serialized)
26412             {
26413             }
26414 
26415             Name (WRDY, Package (0x02)
26416             {
26417                 0x00, 
26418                 Package (0x0C)
26419                 {
26420                     0x07, 
26421                     0x80, 
26422                     0x80, 
26423                     0x80, 
26424                     0x80, 
26425                     0x80, 
26426                     0x80, 
26427                     0x80, 
26428                     0x80, 
26429                     0x80, 
26430                     0x80, 
26431                     0x80
26432                 }
26433             })
26434             Method (WRDS, 0, Serialized)
26435             {
26436             }
26437 
26438             Name (EWRY, Package (0x02)
26439             {
26440                 0x00, 
26441                 Package (0x21)
26442                 {
26443                     0x07, 
26444                     0x80, 
26445                     0x80, 
26446                     0x80, 
26447                     0x80, 
26448                     0x80, 
26449                     0x80, 
26450                     0x80, 
26451                     0x80, 
26452                     0x80, 
26453                     0x80, 
26454                     0x80, 
26455                     0x80, 
26456                     0x80, 
26457                     0x80, 
26458                     0x80, 
26459                     0x80, 
26460                     0x80, 
26461                     0x80, 
26462                     0x80, 
26463                     0x80, 
26464                     0x80, 
26465                     0x80, 
26466                     0x80, 
26467                     0x80, 
26468                     0x80, 
26469                     0x80, 
26470                     0x80, 
26471                     0x80, 
26472                     0x80, 
26473                     0x80, 
26474                     0x80, 
26475                     0x80
26476                 }
26477             })
26478             Method (EWRD, 0, Serialized)
26479             {
26480                 DerefOf (EWRY [0x01]) [0x01] = \STDE
26481                 DerefOf (EWRY [0x01]) [0x02] = \STRS
26482                 DerefOf (EWRY [0x01]) [0x03] = \ST20
26483                 DerefOf (EWRY [0x01]) [0x04] = \ST21
26484                 DerefOf (EWRY [0x01]) [0x05] = \ST22
26485                 DerefOf (EWRY [0x01]) [0x06] = \ST23
26486                 DerefOf (EWRY [0x01]) [0x07] = \ST24
26487                 DerefOf (EWRY [0x01]) [0x08] = \ST25
26488                 DerefOf (EWRY [0x01]) [0x09] = \ST26
26489                 DerefOf (EWRY [0x01]) [0x0A] = \ST27
26490                 DerefOf (EWRY [0x01]) [0x0B] = \ST28
26491                 DerefOf (EWRY [0x01]) [0x0C] = \ST29
26492                 DerefOf (EWRY [0x01]) [0x0D] = \ST30
26493                 DerefOf (EWRY [0x01]) [0x0E] = \ST31
26494                 DerefOf (EWRY [0x01]) [0x0F] = \ST32
26495                 DerefOf (EWRY [0x01]) [0x10] = \ST33
26496                 DerefOf (EWRY [0x01]) [0x11] = \ST34
26497                 DerefOf (EWRY [0x01]) [0x12] = \ST35
26498                 DerefOf (EWRY [0x01]) [0x13] = \ST36
26499                 DerefOf (EWRY [0x01]) [0x14] = \ST37
26500                 DerefOf (EWRY [0x01]) [0x15] = \ST38
26501                 DerefOf (EWRY [0x01]) [0x16] = \ST39
26502                 DerefOf (EWRY [0x01]) [0x17] = \ST40
26503                 DerefOf (EWRY [0x01]) [0x18] = \ST41
26504                 DerefOf (EWRY [0x01]) [0x19] = \ST42
26505                 DerefOf (EWRY [0x01]) [0x1A] = \ST43
26506                 DerefOf (EWRY [0x01]) [0x1B] = \ST44
26507                 DerefOf (EWRY [0x01]) [0x1C] = \ST45
26508                 DerefOf (EWRY [0x01]) [0x1D] = \ST46
26509                 DerefOf (EWRY [0x01]) [0x1E] = \ST47
26510                 DerefOf (EWRY [0x01]) [0x1F] = \ST48
26511                 DerefOf (EWRY [0x01]) [0x20] = \ST49
26512                 Return (EWRY) /* \_SB_.PCI0.RP09.PXSX.EWRY */
26513             }
26514 
26515             Name (WGDY, Package (0x02)
26516             {
26517                 0x00, 
26518                 Package (0x13)
26519                 {
26520                     0x07, 
26521                     0x80, 
26522                     0x80, 
26523                     0x80, 
26524                     0x80, 
26525                     0x80, 
26526                     0x80, 
26527                     0x80, 
26528                     0x80, 
26529                     0x80, 
26530                     0x80, 
26531                     0x80, 
26532                     0x80, 
26533                     0x80, 
26534                     0x80, 
26535                     0x80, 
26536                     0x80, 
26537                     0x80, 
26538                     0x80
26539                 }
26540             })
26541             Method (WGDS, 0, Serialized)
26542             {
26543                 DerefOf (WGDY [0x01]) [0x01] = \SD11
26544                 DerefOf (WGDY [0x01]) [0x02] = \SD12
26545                 DerefOf (WGDY [0x01]) [0x03] = \SD13
26546                 DerefOf (WGDY [0x01]) [0x04] = \SD14
26547                 DerefOf (WGDY [0x01]) [0x05] = \SD15
26548                 DerefOf (WGDY [0x01]) [0x06] = \SD16
26549                 DerefOf (WGDY [0x01]) [0x07] = \SD21
26550                 DerefOf (WGDY [0x01]) [0x08] = \SD22
26551                 DerefOf (WGDY [0x01]) [0x09] = \SD23
26552                 DerefOf (WGDY [0x01]) [0x0A] = \SD24
26553                 DerefOf (WGDY [0x01]) [0x0B] = \SD25
26554                 DerefOf (WGDY [0x01]) [0x0C] = \SD26
26555                 DerefOf (WGDY [0x01]) [0x0D] = \SD31
26556                 DerefOf (WGDY [0x01]) [0x0E] = \SD32
26557                 DerefOf (WGDY [0x01]) [0x0F] = \SD33
26558                 DerefOf (WGDY [0x01]) [0x10] = \SD34
26559                 DerefOf (WGDY [0x01]) [0x11] = \SD35
26560                 DerefOf (WGDY [0x01]) [0x12] = \SD36
26561                 Return (WGDY) /* \_SB_.PCI0.RP09.PXSX.WGDY */
26562             }
26563 
26564             Name (SADX, Package (0x03)
26565             {
26566                 0x00, 
26567                 Package (0x02)
26568                 {
26569                     0x07, 
26570                     0x80000000
26571                 }, 
26572 
26573                 Package (0x02)
26574                 {
26575                     0x12, 
26576                     0x80000000
26577                 }
26578             })
26579             Method (SADS, 0, Serialized)
26580             {
26581                 DerefOf (SADX [0x01]) [0x01] = \ATDV
26582                 DerefOf (SADX [0x02]) [0x01] = \ATDV
26583                 Return (SADX) /* \_SB_.PCI0.RP09.PXSX.SADX */
26584             }
26585 
26586             Name (GPCX, Package (0x03)
26587             {
26588                 0x00, 
26589                 Package (0x02)
26590                 {
26591                     0x07, 
26592                     Package (0x03)
26593                     {
26594                         0x00, 
26595                         0x00, 
26596                         0x00
26597                     }
26598                 }, 
26599 
26600                 Package (0x02)
26601                 {
26602                     0x12, 
26603                     Package (0x03)
26604                     {
26605                         0x00, 
26606                         0x00, 
26607                         0x00
26608                     }
26609                 }
26610             })
26611             Method (GPC, 0, Serialized)
26612             {
26613                 Return (GPCX) /* \_SB_.PCI0.RP09.PXSX.GPCX */
26614             }
26615 
26616             PowerResource (DRST, 0x05, 0x0000)
26617             {
26618                 Method (_STA, 0, NotSerialized)  // _STA: Status
26619                 {
26620                     ADBG ("PXSX PR _STA")
26621                     Return (0x01)
26622                 }
26623 
26624                 Method (_ON, 0, NotSerialized)  // _ON_: Power On
26625                 {
26626                     ADBG ("PXSX PR _ON")
26627                 }
26628 
26629                 Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
26630                 {
26631                     ADBG ("PXSX PR _OFF")
26632                 }
26633 
26634                 Method (_RST, 0, NotSerialized)  // _RST: Device Reset
26635                 {
26636                     ADBG ("PXSX PR _RST")
26637                     If ((DCAP & 0x10000000))
26638                     {
26639                         Local0 = DCTR /* \_SB_.PCI0.RP09.PXSX.DCTR */
26640                         Local0 |= 0x8000
26641                         DCTR = Local0
26642                     }
26643                 }
26644             }
26645 
26646             Method (_PRR, 0, NotSerialized)  // _PRR: Power Resource for Reset
26647             {
26648                 If (WIST ())
26649                 {
26650                     If (CondRefOf (WRST))
26651                     {
26652                         Return (Package (0x01)
26653                         {
26654                             WRST
26655                         })
26656                     }
26657                 }
26658 
26659                 Return (Package (0x01)
26660                 {
26661                     DRST
26662                 })
26663             }
26664 
26665             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
26666             {
26667                 If ((Arg0 == ToUUID ("079ff457-64a8-44be-bd8a-6955052b9b92")))
26668                 {
26669                     Switch (ToInteger (Arg2))
26670                     {
26671                         Case (0x00)
26672                         {
26673                             Switch (Arg1)
26674                             {
26675                                 Case (0x01)
26676                                 {
26677                                     Return (Buffer (0x01)
26678                                     {
26679                                          0x03                                             // .
26680                                     })
26681                                 }
26682 
26683                             }
26684 
26685                             Return (Buffer (0x01)
26686                             {
26687                                  0x00                                             // .
26688                             })
26689                         }
26690                         Case (0x01)
26691                         {
26692                             Return (RMRC) /* \RMRC */
26693                         }
26694 
26695                     }
26696                 }
26697                 Else
26698                 {
26699                     Return (Buffer (0x01)
26700                     {
26701                          0x00                                             // .
26702                     })
26703                 }
26704             }
26705         }
26706     }
26707 
26708     Scope (\_SB)
26709     {
26710         Name (PDAT, Zero)
26711         Name (DSSI, 0x00)
26712         Method (DSSV, 0, Serialized)
26713         {
26714             PDAT = \SDAB
26715             PDAT <<= 0x10
26716             PDAT |= \SDAA /* \_SB_.PDAT */
26717         }
26718 
26719         Device (WFDE)
26720         {
26721             Name (_HID, "PNP0C14" /* Windows Management Instrumentation Device */)  // _HID: Hardware ID
26722             Name (_UID, "SampleDev")  // _UID: Unique ID
26723             Name (_WDG, Buffer (0x3C)
26724             {
26725                 /* 0000 */  0xEF, 0x9D, 0xC4, 0x2B, 0x15, 0x7B, 0x05, 0x4F,  // ...+.{.O
26726                 /* 0008 */  0x8B, 0xB7, 0xEE, 0x37, 0xB9, 0x54, 0x7C, 0x0B,  // ...7.T|.
26727                 /* 0010 */  0x44, 0x45, 0x01, 0x02, 0x3E, 0xA3, 0xFE, 0xA6,  // DE..>...
26728                 /* 0018 */  0xBF, 0xDA, 0xF5, 0x46, 0xBF, 0xC8, 0x46, 0x0D,  // ...F..F.
26729                 /* 0020 */  0x96, 0x1B, 0xEC, 0x9F, 0xD0, 0x00, 0x01, 0x08,  // ........
26730                 /* 0028 */  0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11,  // !...f...
26731                 /* 0030 */  0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10,  // ......).
26732                 /* 0038 */  0x43, 0x43, 0x01, 0x00                           // CC..
26733             })
26734             Method (WMDE, 3, NotSerialized)
26735             {
26736                 If ((Arg1 == One))
26737                 {
26738                     Return (One)
26739                 }
26740 
26741                 If ((Arg1 == 0x02))
26742                 {
26743                     If ((DSSI == 0x00))
26744                     {
26745                         DSSV ()
26746                         DSSI = 0x01
26747                     }
26748 
26749                     Return (One)
26750                 }
26751 
26752                 If ((Arg1 == 0x03))
26753                 {
26754                     Return (PDAT) /* \_SB_.PDAT */
26755                 }
26756             }
26757 
26758             Method (_WED, 1, NotSerialized)  // _Wxx: Wake Event, xx=0x00-0xFF
26759             {
26760                 If ((Arg0 == 0xD0))
26761                 {
26762                     Return (PDAT) /* \_SB_.PDAT */
26763                 }
26764 
26765                 Return (Zero)
26766             }
26767 
26768             Name (WQCC, Buffer (0x043D)
26769             {
26770                 /* 0000 */  0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00,  // FOMB....
26771                 /* 0008 */  0x2D, 0x04, 0x00, 0x00, 0xB4, 0x0F, 0x00, 0x00,  // -.......
26772                 /* 0010 */  0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54,  // DS...}.T
26773                 /* 0018 */  0x28, 0xCE, 0x87, 0x00, 0x01, 0x06, 0x18, 0x42,  // (......B
26774                 /* 0020 */  0x10, 0x07, 0x10, 0x22, 0x21, 0x04, 0x12, 0x01,  // ..."!...
26775                 /* 0028 */  0xA1, 0xC8, 0x2C, 0x0C, 0x86, 0x10, 0x38, 0x2E,  // ..,...8.
26776                 /* 0030 */  0x24, 0x15, 0x07, 0x85, 0x12, 0x02, 0xA1, 0xFE,  // $.......
26777                 /* 0038 */  0x04, 0xF2, 0x2B, 0x00, 0xA1, 0x43, 0x01, 0x32,  // ..+..C.2
26778                 /* 0040 */  0x05, 0x18, 0x14, 0xE0, 0x14, 0x41, 0x04, 0xBD,  // .....A..
26779                 /* 0048 */  0x0A, 0xB0, 0x29, 0xC0, 0xA4, 0x00, 0x8B, 0x02,  // ..).....
26780                 /* 0050 */  0xB4, 0x0B, 0xB0, 0x2C, 0x40, 0xB7, 0x00, 0xE9,  // ...,@...
26781                 /* 0058 */  0xB0, 0x44, 0x24, 0x38, 0x4A, 0x0C, 0x38, 0x4A,  // .D$8J.8J
26782                 /* 0060 */  0x27, 0xB6, 0x70, 0xC3, 0x06, 0x2F, 0x14, 0x45,  // '.p../.E
26783                 /* 0068 */  0x33, 0x88, 0x92, 0xA0, 0x72, 0x01, 0xBE, 0x11,  // 3...r...
26784                 /* 0070 */  0x04, 0x5E, 0xAE, 0x00, 0xC9, 0x13, 0x90, 0x66,  // .^.....f
26785                 /* 0078 */  0x01, 0x86, 0x05, 0x58, 0x17, 0x20, 0x7B, 0x08,  // ...X. {.
26786                 /* 0080 */  0x54, 0xEA, 0x10, 0x50, 0x72, 0x86, 0x80, 0x1A,  // T..Pr...
26787                 /* 0088 */  0x40, 0xAB, 0x13, 0x10, 0x7E, 0xA5, 0x53, 0x42,  // @...~.SB
26788                 /* 0090 */  0x12, 0x84, 0x33, 0x56, 0xF1, 0xF8, 0x9A, 0x45,  // ..3V...E
26789                 /* 0098 */  0xD3, 0x73, 0x92, 0x73, 0x0C, 0x39, 0x1E, 0x17,  // .s.s.9..
26790                 /* 00A0 */  0x7A, 0x10, 0x3C, 0x84, 0x04, 0x10, 0x26, 0x7B,  // z.<...&{
26791                 /* 00A8 */  0xC8, 0x92, 0x0D, 0x83, 0xD2, 0x30, 0x16, 0xEA,  // .....0..
26792                 /* 00B0 */  0x62, 0xD4, 0xA8, 0x91, 0xB2, 0x01, 0x19, 0xA2,  // b.......
26793                 /* 00B8 */  0x24, 0x38, 0xD4, 0xA8, 0x3D, 0xBB, 0xE6, 0xC7,  // $8..=...
26794                 /* 00C0 */  0xA1, 0xD9, 0xB5, 0x3D, 0x16, 0x02, 0xC9, 0xA4,  // ...=....
26795                 /* 00C8 */  0x0D, 0x05, 0x25, 0x05, 0x42, 0xC2, 0x67, 0x4A,  // ..%.B.gJ
26796                 /* 00D0 */  0x66, 0x14, 0xF1, 0x48, 0x0D, 0x93, 0xC0, 0xA3,  // f..H....
26797                 /* 00D8 */  0x88, 0xEC, 0x19, 0x46, 0x63, 0xD0, 0xD8, 0x61,  // ...Fc..a
26798                 /* 00E0 */  0x78, 0x98, 0xC1, 0x0E, 0xE2, 0x30, 0x8E, 0x39,  // x....0.9
26799                 /* 00E8 */  0x72, 0x02, 0x4F, 0xE8, 0x48, 0x8F, 0xBC, 0xB0,  // r.O.H...
26800                 /* 00F0 */  0x79, 0x0A, 0x35, 0x46, 0x73, 0x50, 0x04, 0xFF,  // y.5FsP..
26801                 /* 00F8 */  0x51, 0x00, 0x2B, 0x11, 0x56, 0xA3, 0x8D, 0x7D,  // Q.+.V..}
26802                 /* 0100 */  0xBE, 0x1E, 0xCD, 0xC1, 0xC6, 0x38, 0x82, 0xE3,  // .....8..
26803                 /* 0108 */  0x4A, 0xF0, 0xFF, 0x0F, 0x13, 0xA4, 0xF7, 0xE9,  // J.......
26804                 /* 0110 */  0x10, 0x41, 0x78, 0x12, 0x3D, 0x0B, 0x61, 0xF5,  // .Ax.=.a.
26805                 /* 0118 */  0x0C, 0x24, 0x9C, 0x10, 0xC7, 0xCD, 0x61, 0x0E,  // .$....a.
26806                 /* 0120 */  0x58, 0x83, 0x40, 0xC9, 0x80, 0x10, 0xE4, 0x33,  // X.@....3
26807                 /* 0128 */  0xC1, 0xD1, 0x99, 0xC0, 0xEE, 0x8F, 0x02, 0xD2,  // ........
26808                 /* 0130 */  0x26, 0x40, 0xE3, 0x1D, 0x40, 0x20, 0x9D, 0x21,  // &@..@ .!
26809                 /* 0138 */  0x08, 0xA4, 0xAD, 0xC1, 0x08, 0xA6, 0x42, 0x28,  // ......B(
26810                 /* 0140 */  0xA1, 0x1C, 0x55, 0x38, 0x5B, 0x43, 0x11, 0x90,  // ..U8[C..
26811                 /* 0148 */  0x6F, 0x05, 0xAF, 0x0F, 0xA1, 0xD8, 0xD4, 0x42,  // o......B
26812                 /* 0150 */  0x1E, 0x5B, 0x90, 0xC6, 0xC0, 0x84, 0x1C, 0x2C,  // .[.....,
26813                 /* 0158 */  0x4C, 0xBC, 0xF6, 0x17, 0xC2, 0x1E, 0x12, 0x3A,  // L......:
26814                 /* 0160 */  0x0B, 0x38, 0xD2, 0x68, 0x50, 0x07, 0x05, 0x9F,  // .8.hP...
26815                 /* 0168 */  0x07, 0x7C, 0x16, 0x78, 0x3E, 0xF0, 0xA8, 0x0E,  // .|.x>...
26816                 /* 0170 */  0xCD, 0x83, 0x3B, 0xB0, 0xC7, 0x87, 0x07, 0x01,  // ..;.....
26817                 /* 0178 */  0x0F, 0x99, 0xDD, 0x10, 0x7C, 0xAE, 0xF0, 0xC9,  // ....|...
26818                 /* 0180 */  0x00, 0xEF, 0x1A, 0x50, 0x57, 0x82, 0x07, 0x02,  // ...PW...
26819                 /* 0188 */  0x36, 0x46, 0xC3, 0xF1, 0x21, 0x7A, 0xB8, 0xE1,  // 6F..!z..
26820                 /* 0190 */  0x4E, 0xE0, 0x10, 0x19, 0xA0, 0x67, 0xF5, 0x2C,  // N....g.,
26821                 /* 0198 */  0x80, 0x1D, 0xD6, 0xC9, 0x3C, 0x08, 0xBC, 0x4B,  // ....<..K
26822                 /* 01A0 */  0x34, 0x7B, 0x8B, 0x20, 0x04, 0xC7, 0xE3, 0x0B,  // 4{. ....
26823                 /* 01A8 */  0x04, 0x9B, 0x70, 0x02, 0xCB, 0x1F, 0x04, 0x6A,  // ..p....j
26824                 /* 01B0 */  0x64, 0x86, 0xF6, 0x74, 0x4F, 0xEB, 0x45, 0xC0,  // d..tO.E.
26825                 /* 01B8 */  0x07, 0x00, 0x13, 0x58, 0x2C, 0x84, 0x14, 0x40,  // ...X,..@
26826                 /* 01C0 */  0x68, 0x3C, 0xE0, 0x57, 0x7C, 0xE8, 0x20, 0xB7,  // h<.W|. .
26827                 /* 01C8 */  0x05, 0xCF, 0xD7, 0x47, 0x13, 0xE6, 0x64, 0x3C,  // ...G..d<
26828                 /* 01D0 */  0xA8, 0x51, 0xF8, 0x14, 0x10, 0xEE, 0xBC, 0x4D,  // .Q.....M
26829                 /* 01D8 */  0xE0, 0xC0, 0x10, 0xFA, 0x5F, 0x58, 0xD4, 0x31,  // ...._X.1
26830                 /* 01E0 */  0x85, 0x9F, 0x26, 0xE8, 0x41, 0x82, 0xA1, 0xB2,  // ..&.A...
26831                 /* 01E8 */  0xFF, 0x3F, 0xC4, 0x91, 0x9C, 0x90, 0x3F, 0x2B,  // .?....?+
26832                 /* 01F0 */  0x1E, 0x18, 0x7C, 0xC1, 0xA7, 0x08, 0x20, 0x03,  // ..|... .
26833                 /* 01F8 */  0x83, 0xBB, 0x42, 0xB0, 0x01, 0xC3, 0xBF, 0x4C,  // ..B....L
26834                 /* 0200 */  0x18, 0xD8, 0x17, 0x89, 0xCA, 0x20, 0xC9, 0x91,  // ..... ..
26835                 /* 0208 */  0xE3, 0x89, 0x06, 0x0C, 0xE8, 0x7D, 0x0E, 0x56,  // .....}.V
26836                 /* 0210 */  0x87, 0x16, 0x83, 0xF9, 0x3E, 0x13, 0xEC, 0xE5,  // ....>...
26837                 /* 0218 */  0xA1, 0x47, 0x20, 0xDD, 0x59, 0xAC, 0x15, 0x42,  // .G .Y..B
26838                 /* 0220 */  0x38, 0xAF, 0x30, 0x3E, 0xD6, 0x00, 0x93, 0x51,  // 8.0>...Q
26839                 /* 0228 */  0x3F, 0xD6, 0x80, 0xED, 0xE4, 0x03, 0x67, 0x00,  // ?.....g.
26840                 /* 0230 */  0x3C, 0x8E, 0x09, 0x10, 0x26, 0xFA, 0x5D, 0x20,  // <...&.] 
26841                 /* 0238 */  0x29, 0x0F, 0x04, 0x0A, 0xE3, 0x23, 0x0D, 0x70,  // )....#.p
26842                 /* 0240 */  0xF9, 0xFF, 0x1F, 0x69, 0x80, 0xDF, 0xC9, 0x00,  // ...i....
26843                 /* 0248 */  0x77, 0x7A, 0x00, 0xCF, 0x84, 0x5E, 0x2B, 0xD8,  // wz...^+.
26844                 /* 0250 */  0xFD, 0xC1, 0xE3, 0x08, 0x12, 0x38, 0xC2, 0x13,  // .....8..
26845                 /* 0258 */  0x11, 0x39, 0xD1, 0x40, 0x3E, 0x35, 0x3C, 0xC2,  // .9.@>5<.
26846                 /* 0260 */  0x3C, 0x07, 0x9C, 0xCE, 0xE1, 0x1C, 0xC9, 0x43,  // <......C
26847                 /* 0268 */  0xC0, 0xEB, 0x8C, 0xBD, 0x21, 0xE9, 0x1E, 0xF3,  // ....!...
26848                 /* 0270 */  0x3A, 0x63, 0xAC, 0x40, 0x27, 0x15, 0xC5, 0xF7,  // :c.@'...
26849                 /* 0278 */  0x99, 0x50, 0x11, 0xA2, 0x45, 0x09, 0x19, 0xE1,  // .P..E...
26850                 /* 0280 */  0x15, 0x22, 0xA4, 0x91, 0xA3, 0x45, 0x8C, 0x12,  // ."...E..
26851                 /* 0288 */  0x3F, 0x64, 0x9C, 0x27, 0x1A, 0x16, 0xEB, 0x28,  // ?d.'...(
26852                 /* 0290 */  0xA0, 0xF3, 0x87, 0x4F, 0x34, 0x80, 0xDF, 0xFF,  // ...O4...
26853                 /* 0298 */  0xFF, 0x89, 0x06, 0xFC, 0xF2, 0x4E, 0x24, 0xA0,  // .....N$.
26854                 /* 02A0 */  0x3B, 0x36, 0x79, 0x0E, 0x21, 0x9E, 0x46, 0x80,  // ;6y.!.F.
26855                 /* 02A8 */  0x8B, 0xF4, 0x47, 0x87, 0x4E, 0x75, 0x64, 0xA1,  // ..G.Nud.
26856                 /* 02B0 */  0xB2, 0xB1, 0x50, 0x0F, 0x82, 0x0A, 0x3F, 0x21,  // ..P...?!
26857                 /* 02B8 */  0xE8, 0xAC, 0x12, 0x37, 0xE6, 0xAB, 0xCA, 0x6B,  // ...7...k
26858                 /* 02C0 */  0x84, 0x4F, 0x6B, 0xBE, 0x4B, 0xB0, 0x41, 0x0B,  // .Ok.K.A.
26859                 /* 02C8 */  0x4E, 0xA7, 0x3D, 0x2E, 0x93, 0x42, 0x22, 0x21,  // N.=..B"!
26860                 /* 02D0 */  0x34, 0x20, 0xC3, 0x59, 0x16, 0x1C, 0x05, 0xF1,  // 4 .Y....
26861                 /* 02D8 */  0xE8, 0x7D, 0xE2, 0xF3, 0x51, 0x08, 0x6E, 0xC4,  // .}..Q.n.
26862                 /* 02E0 */  0xA3, 0x10, 0x3D, 0x2D, 0xE0, 0xC7, 0x72, 0x64,  // ..=-..rd
26863                 /* 02E8 */  0x27, 0xE6, 0x59, 0xF8, 0x70, 0x87, 0x3B, 0x72,  // '.Y.p.;r
26864                 /* 02F0 */  0xC0, 0x1D, 0x1C, 0x5B, 0xE1, 0xF1, 0xFB, 0x02,  // ...[....
26865                 /* 02F8 */  0x10, 0xE4, 0x7C, 0x83, 0x9D, 0xAC, 0x51, 0x5E,  // ..|...Q^
26866                 /* 0300 */  0x11, 0x3C, 0x42, 0xEC, 0x60, 0x7C, 0x4C, 0xE2,  // .<B.`|L.
26867                 /* 0308 */  0xE3, 0xF0, 0xD5, 0xE0, 0x7D, 0xC6, 0x04, 0xEC,  // ....}...
26868                 /* 0310 */  0x0C, 0x04, 0x9E, 0xFF, 0xFF, 0x19, 0x88, 0x0B,  // ........
26869                 /* 0318 */  0x3C, 0x22, 0x80, 0x02, 0xC8, 0x97, 0x02, 0x1F,  // <"......
26870                 /* 0320 */  0x11, 0x1E, 0x0C, 0xD8, 0x1C, 0x9E, 0x12, 0x7C,  // .......|
26871                 /* 0328 */  0xC4, 0x61, 0xF0, 0x3C, 0xDA, 0xA8, 0xA8, 0xAC,  // .a.<....
26872                 /* 0330 */  0x71, 0xA1, 0x06, 0xEB, 0x33, 0x0C, 0xC3, 0x3E,  // q...3..>
26873                 /* 0338 */  0x4F, 0x5F, 0x9A, 0x8E, 0xD2, 0xC7, 0x29, 0x0C,  // O_....).
26874                 /* 0340 */  0xAC, 0x87, 0xCF, 0x61, 0x8D, 0x16, 0xF6, 0xA8,  // ...a....
26875                 /* 0348 */  0x9F, 0x24, 0x7C, 0x0B, 0xF1, 0xCC, 0x8C, 0x11,  // .$|.....
26876                 /* 0350 */  0xD6, 0x47, 0x00, 0x20, 0x76, 0x7C, 0x40, 0x9D,  // .G. v|@.
26877                 /* 0358 */  0x79, 0x7C, 0x6E, 0xF0, 0x88, 0x22, 0x9E, 0xE7,  // y|n.."..
26878                 /* 0360 */  0xDB, 0x8F, 0x2F, 0x1B, 0xA7, 0xE4, 0x01, 0x59,  // ../....Y
26879                 /* 0368 */  0xE2, 0xE9, 0x01, 0x25, 0x8E, 0x42, 0xD2, 0x4E,  // ...%.B.N
26880                 /* 0370 */  0x0F, 0x28, 0x31, 0x70, 0x14, 0xC4, 0xA7, 0x07,  // .(1p....
26881                 /* 0378 */  0x07, 0x3D, 0x3D, 0x40, 0x0F, 0x76, 0x7A, 0x00,  // .==@.vz.
26882                 /* 0380 */  0xC5, 0xA9, 0x00, 0x37, 0x56, 0xB8, 0x63, 0xF3,  // ...7V.c.
26883                 /* 0388 */  0x21, 0xCC, 0x73, 0xC3, 0x1E, 0x1C, 0xC0, 0xF2,  // !.s.....
26884                 /* 0390 */  0xFF, 0x3F, 0x38, 0x00, 0xDF, 0xE1, 0xFA, 0xE0,  // .?8.....
26885                 /* 0398 */  0x00, 0xAE, 0x33, 0x80, 0x0F, 0x0E, 0xE0, 0x3A,  // ..3....:
26886                 /* 03A0 */  0x6E, 0x82, 0x67, 0xF4, 0xEC, 0x08, 0xF3, 0x88,  // n.g.....
26887                 /* 03A8 */  0x63, 0xAC, 0x73, 0x7D, 0xE4, 0xF1, 0x09, 0x00,  // c.s}....
26888                 /* 03B0 */  0x8E, 0x98, 0x73, 0x03, 0x6A, 0xB8, 0x96, 0x7B,  // ..s.j..{
26889                 /* 03B8 */  0x8A, 0x41, 0xDC, 0x11, 0x30, 0x07, 0x18, 0x1F,  // .A..0...
26890                 /* 03C0 */  0x1B, 0xB8, 0x40, 0x0A, 0xC9, 0x3B, 0x36, 0xA0,  // ..@..;6.
26891                 /* 03C8 */  0x04, 0xC1, 0x51, 0x10, 0x8F, 0xD1, 0x61, 0x8F,  // ..Q...a.
26892                 /* 03D0 */  0x0D, 0xD0, 0xC3, 0x1D, 0x1B, 0x40, 0x71, 0xFC,  // .....@q.
26893                 /* 03D8 */  0xC1, 0x9F, 0x38, 0xE0, 0x9F, 0xC3, 0xE0, 0x1C,  // ..8.....
26894                 /* 03E0 */  0x1C, 0xF8, 0xFF, 0xFF, 0xE0, 0x00, 0xF8, 0x08,  // ........
26895                 /* 03E8 */  0x75, 0x70, 0x00, 0x1D, 0x2C, 0x3F, 0x38, 0x80,  // up..,?8.
26896                 /* 03F0 */  0x67, 0xFC, 0xC0, 0x43, 0xA1, 0x4D, 0x9F, 0x1A,  // g..C.M..
26897                 /* 03F8 */  0x8D, 0x5A, 0x35, 0x28, 0x53, 0xA3, 0x4C, 0x83,  // .Z5(S.L.
26898                 /* 0400 */  0x5A, 0x7D, 0x2A, 0x35, 0x66, 0xCC, 0xC6, 0x91,  // Z}*5f...
26899                 /* 0408 */  0x01, 0x25, 0x64, 0x55, 0x1A, 0x96, 0x63, 0x80,  // .%dU..c.
26900                 /* 0410 */  0xF0, 0x47, 0x82, 0x40, 0x1C, 0xD5, 0x02, 0x20,  // .G.@... 
26901                 /* 0418 */  0x8B, 0xE2, 0x01, 0x88, 0x09, 0x59, 0x92, 0x40,  // .....Y.@
26902                 /* 0420 */  0x1C, 0xEF, 0xA8, 0x28, 0x23, 0xE7, 0x06, 0x83,  // ...(#...
26903                 /* 0428 */  0x08, 0xC8, 0x71, 0xD7, 0x28, 0x20, 0x87, 0x07,  // ..q.( ..
26904                 /* 0430 */  0x11, 0x90, 0xE3, 0xAF, 0x43, 0x40, 0x16, 0xA3,  // ....C@..
26905                 /* 0438 */  0x03, 0x88, 0xFD, 0xFF, 0x01                     // .....
26906             })
26907         }
26908 
26909         Device (WFTE)
26910         {
26911             Name (_HID, "PNP0C14" /* Windows Management Instrumentation Device */)  // _HID: Hardware ID
26912             Name (_UID, "TestDev")  // _UID: Unique ID
26913             Name (_WDG, Buffer (0x28)
26914             {
26915                 /* 0000 */  0x7F, 0xAB, 0x13, 0x1F, 0x20, 0x62, 0x10, 0x42,  // .... b.B
26916                 /* 0008 */  0x8F, 0x8E, 0x8B, 0xB5, 0xE7, 0x1E, 0xE9, 0x69,  // .......i
26917                 /* 0010 */  0x44, 0x45, 0x01, 0x02, 0x21, 0x12, 0x90, 0x05,  // DE..!...
26918                 /* 0018 */  0x66, 0xD5, 0xD1, 0x11, 0xB2, 0xF0, 0x00, 0xA0,  // f.......
26919                 /* 0020 */  0xC9, 0x06, 0x29, 0x10, 0x43, 0x43, 0x01, 0x00   // ..).CC..
26920             })
26921             Method (WMDE, 3, NotSerialized)
26922             {
26923                 If ((Arg1 == 0x01))
26924                 {
26925                     PDAT = Arg2
26926                     Notify (WFDE, 0xD0) // Hardware-Specific
26927                     Return (PDAT) /* \_SB_.PDAT */
26928                 }
26929             }
26930 
26931             Name (WQCC, Buffer (0x02F1)
26932             {
26933                 /* 0000 */  0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00,  // FOMB....
26934                 /* 0008 */  0xE1, 0x02, 0x00, 0x00, 0xC2, 0x06, 0x00, 0x00,  // ........
26935                 /* 0010 */  0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54,  // DS...}.T
26936                 /* 0018 */  0xA8, 0x5D, 0x83, 0x00, 0x01, 0x06, 0x18, 0x42,  // .].....B
26937                 /* 0020 */  0x20, 0x14, 0x03, 0x89, 0xC0, 0xA2, 0x69, 0x24,  //  .....i$
26938                 /* 0028 */  0xC7, 0x01, 0x0C, 0x86, 0xCB, 0x72, 0x20, 0xE4,  // .....r .
26939                 /* 0030 */  0x82, 0x89, 0x09, 0x10, 0x01, 0x21, 0xAF, 0x02,  // .....!..
26940                 /* 0038 */  0x6C, 0x0A, 0x30, 0x09, 0xA2, 0xFE, 0xFD, 0x21,  // l.0....!
26941                 /* 0040 */  0x4A, 0x82, 0x43, 0x09, 0x81, 0x90, 0x64, 0x01,  // J.C...d.
26942                 /* 0048 */  0xE6, 0x05, 0xE8, 0x16, 0x60, 0x58, 0x80, 0x6D,  // ....`X.m
26943                 /* 0050 */  0x01, 0xA6, 0x05, 0x38, 0x86, 0xA4, 0xD2, 0xC0,  // ...8....
26944                 /* 0058 */  0x29, 0x81, 0xA5, 0x40, 0x48, 0xB8, 0x00, 0xE5,  // )..@H...
26945                 /* 0060 */  0x02, 0x7C, 0x0B, 0xD0, 0x8E, 0x28, 0xDC, 0x96,  // .|...(..
26946                 /* 0068 */  0x61, 0x44, 0xE0, 0x51, 0x44, 0xB6, 0x50, 0x34,  // aD.QD.P4
26947                 /* 0070 */  0x0A, 0x8D, 0x1D, 0x86, 0x65, 0x82, 0x69, 0x10,  // ....e.i.
26948                 /* 0078 */  0x87, 0x51, 0x36, 0xB2, 0x08, 0x3C, 0xA1, 0x4E,  // .Q6..<.N
26949                 /* 0080 */  0x05, 0xC8, 0x15, 0x20, 0x4C, 0x80, 0x78, 0x54,  // ... L.xT
26950                 /* 0088 */  0x61, 0x34, 0x07, 0x45, 0x20, 0x43, 0x63, 0xC4,  // a4.E Cc.
26951                 /* 0090 */  0x40, 0x48, 0x22, 0xAC, 0x9C, 0x63, 0x6B, 0x14,  // @H"..ck.
26952                 /* 0098 */  0xA7, 0x71, 0x34, 0xA5, 0x63, 0x68, 0x04, 0xC7,  // .q4.ch..
26953                 /* 00A0 */  0x75, 0x40, 0x06, 0xE9, 0x7D, 0x3A, 0x44, 0xD0,  // u@..}:D.
26954                 /* 00A8 */  0x84, 0x34, 0x8A, 0x68, 0x21, 0xA2, 0x04, 0x3D,  // .4.h!..=
26955                 /* 00B0 */  0x8E, 0x20, 0x81, 0x23, 0x24, 0x30, 0xCC, 0x31,  // . .#$0.1
26956                 /* 00B8 */  0x60, 0x64, 0x40, 0xC8, 0xB3, 0x00, 0xEB, 0x83,  // `d@.....
26957                 /* 00C0 */  0x23, 0x04, 0x76, 0x2F, 0xC0, 0x98, 0x00, 0x8D,  // #.v/....
26958                 /* 00C8 */  0x10, 0x72, 0x26, 0xC0, 0xA0, 0x00, 0x85, 0x02,  // .r&.....
26959                 /* 00D0 */  0xBC, 0xC1, 0xC8, 0x96, 0x00, 0x6D, 0x02, 0x94,  // .....m..
26960                 /* 00D8 */  0x21, 0x68, 0x4A, 0x51, 0x0E, 0x2A, 0x48, 0xB8,  // !hJQ.*H.
26961                 /* 00E0 */  0x28, 0x16, 0x87, 0x26, 0x88, 0x16, 0x51, 0x08,  // (..&..Q.
26962                 /* 00E8 */  0x68, 0x84, 0xD6, 0x60, 0x84, 0x1B, 0x2E, 0x46,  // h..`...F
26963                 /* 00F0 */  0x84, 0x93, 0x8B, 0x1C, 0xA2, 0xFD, 0x41, 0x90,  // ......A.
26964                 /* 00F8 */  0x68, 0x47, 0x01, 0x49, 0x00, 0x51, 0xA4, 0xD1,  // hG.I.Q..
26965                 /* 0100 */  0xA0, 0x86, 0x9F, 0xE0, 0x71, 0xC0, 0x47, 0x81,  // ....q.G.
26966                 /* 0108 */  0x93, 0x3B, 0xA9, 0x13, 0x33, 0xC8, 0x89, 0x1D,  // .;..3...
26967                 /* 0110 */  0x5D, 0x9D, 0xE7, 0x00, 0x32, 0x62, 0x86, 0x95,  // ]...2b..
26968                 /* 0118 */  0xE0, 0xD7, 0xC0, 0x07, 0x03, 0xBC, 0x6B, 0x40,  // ......k@
26969                 /* 0120 */  0xDD, 0x08, 0x9E, 0x07, 0xD8, 0x30, 0xC3, 0x61,  // .....0.a
26970                 /* 0128 */  0x86, 0xE8, 0xD1, 0x86, 0xFB, 0xFF, 0x9F, 0xC0,  // ........
26971                 /* 0130 */  0x21, 0x32, 0x40, 0x0F, 0xED, 0x51, 0x00, 0xEB,  // !2@..Q..
26972                 /* 0138 */  0x70, 0x32, 0x3A, 0x07, 0x94, 0x2A, 0xC0, 0xEC,  // p2:..*..
26973                 /* 0140 */  0x99, 0x40, 0x33, 0x4B, 0x70, 0x3C, 0x3E, 0x00,  // .@3Kp<>.
26974                 /* 0148 */  0x78, 0x3E, 0x27, 0x9C, 0xC0, 0xF2, 0x07, 0x81,  // x>'.....
26975                 /* 0150 */  0x1A, 0x99, 0xA1, 0x3D, 0xE3, 0xD3, 0x7A, 0x0F,  // ...=..z.
26976                 /* 0158 */  0xF0, 0xF1, 0xE0, 0xB0, 0x98, 0x58, 0x08, 0x29,  // .....X.)
26977                 /* 0160 */  0x80, 0xD0, 0x78, 0xC0, 0xAF, 0xF8, 0x68, 0x20,  // ..x...h 
26978                 /* 0168 */  0x84, 0x97, 0x05, 0xCF, 0xD7, 0x87, 0x04, 0x03,  // ........
26979                 /* 0170 */  0x63, 0x07, 0x64, 0xBF, 0x02, 0x10, 0x82, 0xBF,  // c.d.....
26980                 /* 0178 */  0x2E, 0x1C, 0xD1, 0x43, 0x43, 0x84, 0x04, 0x2F,  // ...CC../
26981                 /* 0180 */  0x03, 0x47, 0x50, 0x29, 0xBE, 0xB0, 0x0E, 0x21,  // .GP)...!
26982                 /* 0188 */  0x46, 0xA4, 0x18, 0x51, 0x82, 0xD4, 0x0A, 0xA1,  // F..Q....
26983                 /* 0190 */  0xE9, 0x87, 0x49, 0x50, 0xE4, 0xC9, 0x01, 0x3D,  // ..IP...=
26984                 /* 0198 */  0x02, 0x8E, 0x77, 0x02, 0xC7, 0x13, 0xD9, 0xE3,  // ..w.....
26985                 /* 01A0 */  0x89, 0x72, 0x12, 0x07, 0xE4, 0x33, 0x85, 0x11,  // .r...3..
26986                 /* 01A8 */  0x4E, 0xF3, 0x51, 0xE2, 0xD1, 0xC2, 0x9A, 0x67,  // N.Q....g
26987                 /* 01B0 */  0xA4, 0x13, 0xC3, 0x39, 0xBD, 0x0D, 0x98, 0xA0,  // ...9....
26988                 /* 01B8 */  0xB2, 0xE7, 0x80, 0x8E, 0x1F, 0x56, 0x05, 0x22,  // .....V."
26989                 /* 01C0 */  0x1B, 0x4B, 0xF5, 0x39, 0x83, 0x6A, 0x5E, 0xAE,  // .K.9.j^.
26990                 /* 01C8 */  0x46, 0x74, 0xCC, 0xC7, 0xEA, 0x11, 0x9C, 0xB4,  // Ft......
26991                 /* 01D0 */  0xA7, 0x17, 0xD9, 0x4A, 0xC1, 0x04, 0xEC, 0x61,  // ...J...a
26992                 /* 01D8 */  0x5B, 0x23, 0x85, 0xD4, 0xD0, 0x68, 0x3C, 0x06,  // [#...h<.
26993                 /* 01E0 */  0x77, 0xFE, 0x13, 0x09, 0x05, 0x31, 0xA0, 0xC3,  // w....1..
26994                 /* 01E8 */  0x41, 0xC8, 0xC9, 0x49, 0x00, 0xA5, 0x62, 0xBC,  // A..I..b.
26995                 /* 01F0 */  0xE4, 0x68, 0xC1, 0x08, 0xA6, 0x81, 0xD0, 0xDD,  // .h......
26996                 /* 01F8 */  0xC1, 0xF3, 0xF3, 0x3D, 0x80, 0xDF, 0x4C, 0x7C,  // ...=..L|
26997                 /* 0200 */  0x32, 0x30, 0xB0, 0xEF, 0x13, 0x6F, 0x1C, 0xF0,  // 20...o..
26998                 /* 0208 */  0xFF, 0xFF, 0x37, 0x0E, 0x36, 0x09, 0x8C, 0x9A,  // ..7.6...
26999                 /* 0210 */  0x23, 0x04, 0x9D, 0x02, 0xBF, 0x00, 0xBC, 0x0A,  // #.......
27000                 /* 0218 */  0x98, 0xC0, 0xBA, 0x2E, 0x06, 0xD0, 0x4F, 0x1D,  // ......O.
27001                 /* 0220 */  0x1E, 0xA8, 0xAF, 0x1C, 0x67, 0x63, 0x7D, 0x07,  // ....gc}.
27002                 /* 0228 */  0x03, 0x50, 0x00, 0xF9, 0x22, 0xE0, 0x93, 0xC1,  // .P.."...
27003                 /* 0230 */  0xC3, 0x00, 0xBB, 0x19, 0x18, 0x26, 0x9A, 0xD1,  // .....&..
27004                 /* 0238 */  0xB9, 0xA8, 0x69, 0xA3, 0x64, 0xC0, 0x68, 0xDA,  // ..i.d.h.
27005                 /* 0240 */  0x06, 0xF1, 0xB4, 0x1D, 0x71, 0xDA, 0x68, 0x68,  // ....q.hh
27006                 /* 0248 */  0x5F, 0x05, 0x7C, 0x11, 0x70, 0xA8, 0x61, 0xD3,  // _.|.p.a.
27007                 /* 0250 */  0x3B, 0x07, 0x7E, 0xAE, 0x67, 0x16, 0xD0, 0x93,  // ;.~.g...
27008                 /* 0258 */  0xF0, 0x91, 0xE4, 0xB8, 0xC1, 0x32, 0x0A, 0x06,  // .....2..
27009                 /* 0260 */  0x1E, 0x24, 0x8E, 0x47, 0xC1, 0x26, 0xCE, 0x07,  // .$.G.&..
27010                 /* 0268 */  0xE0, 0x89, 0xF3, 0x71, 0xF9, 0x86, 0x01, 0x7F,  // ...q....
27011                 /* 0270 */  0xE4, 0x58, 0x82, 0x02, 0x67, 0x0E, 0x72, 0x78,  // .X..g.rx
27012                 /* 0278 */  0x4C, 0xB0, 0x51, 0x51, 0x59, 0xE3, 0x42, 0x8D,  // L.QQY.B.
27013                 /* 0280 */  0xD2, 0x57, 0x20, 0x86, 0x7D, 0x82, 0x16, 0x3D,  // .W .}..=
27014                 /* 0288 */  0x48, 0x9D, 0x2F, 0x0E, 0xEA, 0x69, 0xC4, 0x63,  // H./..i.c
27015                 /* 0290 */  0x33, 0xAC, 0xC7, 0xFD, 0xFF, 0x0F, 0x8B, 0x41,  // 3......A
27016                 /* 0298 */  0x0B, 0x7B, 0xB8, 0x2F, 0x22, 0x3E, 0xC5, 0x78,  // .{./">.x
27017                 /* 02A0 */  0x66, 0xC6, 0x08, 0xEB, 0xB1, 0x7B, 0x40, 0x8F,  // f....{@.
27018                 /* 02A8 */  0x10, 0xE0, 0x01, 0x7B, 0x35, 0x39, 0xD3, 0x07,  // ...{59..
27019                 /* 02B0 */  0x97, 0x3F, 0x8E, 0xEA, 0x20, 0x74, 0xDF, 0xE0,  // .?.. t..
27020                 /* 02B8 */  0x28, 0x21, 0x1E, 0x38, 0x30, 0x04, 0x15, 0xDA,  // (!.80...
27021                 /* 02C0 */  0xF4, 0xA9, 0xD1, 0xA8, 0x55, 0x83, 0x32, 0x35,  // ....U.25
27022                 /* 02C8 */  0xCA, 0x34, 0xA8, 0xD5, 0xA7, 0x52, 0x63, 0xC6,  // .4...Rc.
27023                 /* 02D0 */  0x3C, 0x5C, 0x8E, 0xE8, 0x41, 0x81, 0xBC, 0x13,  // <\..A...
27024                 /* 02D8 */  0x34, 0x42, 0x87, 0x00, 0xA1, 0x42, 0x9E, 0x08,  // 4B...B..
27025                 /* 02E0 */  0x32, 0x72, 0x0F, 0x31, 0x88, 0x80, 0xAC, 0xCC,  // 2r.1....
27026                 /* 02E8 */  0x02, 0x10, 0xD3, 0x09, 0x22, 0x20, 0xFF, 0xFF,  // ...." ..
27027                 /* 02F0 */  0x01                                             // .
27028             })
27029         }
27030 
27031         Method (USSV, 1, Serialized)
27032         {
27033             PDAT = Arg0
27034         }
27035 
27036         Method (GSSV, 0, Serialized)
27037         {
27038             Return (PDAT) /* \_SB_.PDAT */
27039         }
27040     }
27041 
27042     Device (PSM)
27043     {
27044         Name (_HID, EisaId ("INT3420") /* Intel Bluetooth RF Kill */)  // _HID: Hardware ID
27045         Name (_UID, 0x00)  // _UID: Unique ID
27046         Name (_STR, Unicode ("Power Sharing Manager"))  // _STR: Description String
27047         Method (_STA, 0, NotSerialized)  // _STA: Status
27048         {
27049             If ((PSME == 0x01))
27050             {
27051                 Return (0x0F)
27052             }
27053             Else
27054             {
27055                 Return (0x00)
27056             }
27057         }
27058 
27059         Name (SPLX, Package (0x02)
27060         {
27061             0x00, 
27062             Package (0x03)
27063             {
27064                 0x80000000, 
27065                 0x80000000, 
27066                 0x80000000
27067             }
27068         })
27069         Method (SPLC, 0, Serialized)
27070         {
27071             DerefOf (SPLX [0x01]) [0x00] = \PDT1
27072             DerefOf (SPLX [0x01]) [0x01] = \PLM1
27073             DerefOf (SPLX [0x01]) [0x02] = \PTW1
27074             Return (SPLX) /* \PSM_.SPLX */
27075         }
27076 
27077         Name (DPLX, Package (0x02)
27078         {
27079             0x00, 
27080             Package (0x03)
27081             {
27082                 0x80000000, 
27083                 0x80000000, 
27084                 Package (0x06)
27085                 {
27086                     0x80000000, 
27087                     0x80000000, 
27088                     0x80000000, 
27089                     0x80000000, 
27090                     0x80000000, 
27091                     0x80000000
27092                 }
27093             }
27094         })
27095         Method (DPLC, 0, Serialized)
27096         {
27097             DerefOf (DPLX [0x01]) [0x00] = \DDT1
27098             DerefOf (DPLX [0x01]) [0x01] = \DDP1
27099             DerefOf (DerefOf (DPLX [0x01]) [0x02]) [0x00]
27100                  = \DLI1
27101             DerefOf (DerefOf (DPLX [0x01]) [0x02]) [0x01]
27102                  = \DPL1
27103             DerefOf (DerefOf (DPLX [0x01]) [0x02]) [0x02]
27104                  = \DTW1
27105             DerefOf (DerefOf (DPLX [0x01]) [0x02]) [0x03]
27106                  = \DMI1
27107             DerefOf (DerefOf (DPLX [0x01]) [0x02]) [0x04]
27108                  = \DMA1
27109             DerefOf (DerefOf (DPLX [0x01]) [0x02]) [0x05]
27110                  = \DMT1
27111             Return (DPLX) /* \PSM_.DPLX */
27112         }
27113     }
27114 
27115     Scope (\_SB)
27116     {
27117         Method (BTRK, 1, Serialized)
27118         {
27119             \_SB.SGOV (GBTK, Arg0)
27120         }
27121 
27122         Method (GBTR, 0, NotSerialized)
27123         {
27124             Return (\_SB.GGOV (GBTK))
27125         }
27126     }
27127 
27128     If (\_SB.PCI0.CNIP ())
27129     {
27130         Scope (\_SB.PCI0.CNVW)
27131         {
27132             Name (SPLX, Package (0x02)
27133             {
27134                 0x00, 
27135                 Package (0x03)
27136                 {
27137                     0x80000000, 
27138                     0x80000000, 
27139                     0x80000000
27140                 }
27141             })
27142             Method (SPLC, 0, Serialized)
27143             {
27144                 DerefOf (SPLX [0x01]) [0x00] = \DOM1
27145                 DerefOf (SPLX [0x01]) [0x01] = \LIM1
27146                 DerefOf (SPLX [0x01]) [0x02] = \TIM1
27147                 Return (SPLX) /* \_SB_.PCI0.CNVW.SPLX */
27148             }
27149 
27150             Name (WANX, Package (0x03)
27151             {
27152                 0x00, 
27153                 Package (0x03)
27154                 {
27155                     0x80000000, 
27156                     0x80000000, 
27157                     0x80000000
27158                 }, 
27159 
27160                 Package (0x03)
27161                 {
27162                     0x80000000, 
27163                     0x80000000, 
27164                     0x80000000
27165                 }
27166             })
27167             Method (WAND, 0, Serialized)
27168             {
27169                 DerefOf (WANX [0x01]) [0x00] = 0x00
27170                 DerefOf (WANX [0x01]) [0x01] = \TRD0
27171                 DerefOf (WANX [0x01]) [0x02] = \TRL0
27172                 DerefOf (WANX [0x02]) [0x00] = 0x01
27173                 DerefOf (WANX [0x02]) [0x01] = \TRD1
27174                 DerefOf (WANX [0x02]) [0x02] = \TRL1
27175                 Return (WANX) /* \_SB_.PCI0.CNVW.WANX */
27176             }
27177 
27178             OperationRegion (RPXY, PCI_Config, 0x2C, 0x10)
27179             Field (RPXY, AnyAcc, NoLock, Preserve)
27180             {
27181                 SVID,   32
27182             }
27183 
27184             Name (WRDX, Package (0x02)
27185             {
27186                 0x00, 
27187                 Package (0x02)
27188                 {
27189                     0x80000000, 
27190                     0x8000
27191                 }
27192             })
27193             Method (WRDD, 0, Serialized)
27194             {
27195             }
27196 
27197             Name (WRDY, Package (0x02)
27198             {
27199                 0x00, 
27200                 Package (0x0C)
27201                 {
27202                     0x07, 
27203                     0x80, 
27204                     0x80, 
27205                     0x80, 
27206                     0x80, 
27207                     0x80, 
27208                     0x80, 
27209                     0x80, 
27210                     0x80, 
27211                     0x80, 
27212                     0x80, 
27213                     0x80
27214                 }
27215             })
27216             Method (WRDS, 0, Serialized)
27217             {
27218             }
27219 
27220             Name (EWRY, Package (0x02)
27221             {
27222                 0x00, 
27223                 Package (0x21)
27224                 {
27225                     0x07, 
27226                     0x80, 
27227                     0x80, 
27228                     0x80, 
27229                     0x80, 
27230                     0x80, 
27231                     0x80, 
27232                     0x80, 
27233                     0x80, 
27234                     0x80, 
27235                     0x80, 
27236                     0x80, 
27237                     0x80, 
27238                     0x80, 
27239                     0x80, 
27240                     0x80, 
27241                     0x80, 
27242                     0x80, 
27243                     0x80, 
27244                     0x80, 
27245                     0x80, 
27246                     0x80, 
27247                     0x80, 
27248                     0x80, 
27249                     0x80, 
27250                     0x80, 
27251                     0x80, 
27252                     0x80, 
27253                     0x80, 
27254                     0x80, 
27255                     0x80, 
27256                     0x80, 
27257                     0x80
27258                 }
27259             })
27260             Method (EWRD, 0, Serialized)
27261             {
27262                 DerefOf (EWRY [0x01]) [0x01] = \STDE
27263                 DerefOf (EWRY [0x01]) [0x02] = \STRS
27264                 DerefOf (EWRY [0x01]) [0x03] = \ST20
27265                 DerefOf (EWRY [0x01]) [0x04] = \ST21
27266                 DerefOf (EWRY [0x01]) [0x05] = \ST22
27267                 DerefOf (EWRY [0x01]) [0x06] = \ST23
27268                 DerefOf (EWRY [0x01]) [0x07] = \ST24
27269                 DerefOf (EWRY [0x01]) [0x08] = \ST25
27270                 DerefOf (EWRY [0x01]) [0x09] = \ST26
27271                 DerefOf (EWRY [0x01]) [0x0A] = \ST27
27272                 DerefOf (EWRY [0x01]) [0x0B] = \ST28
27273                 DerefOf (EWRY [0x01]) [0x0C] = \ST29
27274                 DerefOf (EWRY [0x01]) [0x0D] = \ST30
27275                 DerefOf (EWRY [0x01]) [0x0E] = \ST31
27276                 DerefOf (EWRY [0x01]) [0x0F] = \ST32
27277                 DerefOf (EWRY [0x01]) [0x10] = \ST33
27278                 DerefOf (EWRY [0x01]) [0x11] = \ST34
27279                 DerefOf (EWRY [0x01]) [0x12] = \ST35
27280                 DerefOf (EWRY [0x01]) [0x13] = \ST36
27281                 DerefOf (EWRY [0x01]) [0x14] = \ST37
27282                 DerefOf (EWRY [0x01]) [0x15] = \ST38
27283                 DerefOf (EWRY [0x01]) [0x16] = \ST39
27284                 DerefOf (EWRY [0x01]) [0x17] = \ST40
27285                 DerefOf (EWRY [0x01]) [0x18] = \ST41
27286                 DerefOf (EWRY [0x01]) [0x19] = \ST42
27287                 DerefOf (EWRY [0x01]) [0x1A] = \ST43
27288                 DerefOf (EWRY [0x01]) [0x1B] = \ST44
27289                 DerefOf (EWRY [0x01]) [0x1C] = \ST45
27290                 DerefOf (EWRY [0x01]) [0x1D] = \ST46
27291                 DerefOf (EWRY [0x01]) [0x1E] = \ST47
27292                 DerefOf (EWRY [0x01]) [0x1F] = \ST48
27293                 DerefOf (EWRY [0x01]) [0x20] = \ST49
27294                 Return (EWRY) /* \_SB_.PCI0.CNVW.EWRY */
27295             }
27296 
27297             Name (WGDY, Package (0x02)
27298             {
27299                 0x00, 
27300                 Package (0x13)
27301                 {
27302                     0x07, 
27303                     0x80, 
27304                     0x80, 
27305                     0x80, 
27306                     0x80, 
27307                     0x80, 
27308                     0x80, 
27309                     0x80, 
27310                     0x80, 
27311                     0x80, 
27312                     0x80, 
27313                     0x80, 
27314                     0x80, 
27315                     0x80, 
27316                     0x80, 
27317                     0x80, 
27318                     0x80, 
27319                     0x80, 
27320                     0x80
27321                 }
27322             })
27323             Method (WGDS, 0, Serialized)
27324             {
27325                 DerefOf (WGDY [0x01]) [0x01] = \SD11
27326                 DerefOf (WGDY [0x01]) [0x02] = \SD12
27327                 DerefOf (WGDY [0x01]) [0x03] = \SD13
27328                 DerefOf (WGDY [0x01]) [0x04] = \SD14
27329                 DerefOf (WGDY [0x01]) [0x05] = \SD15
27330                 DerefOf (WGDY [0x01]) [0x06] = \SD16
27331                 DerefOf (WGDY [0x01]) [0x07] = \SD21
27332                 DerefOf (WGDY [0x01]) [0x08] = \SD22
27333                 DerefOf (WGDY [0x01]) [0x09] = \SD23
27334                 DerefOf (WGDY [0x01]) [0x0A] = \SD24
27335                 DerefOf (WGDY [0x01]) [0x0B] = \SD25
27336                 DerefOf (WGDY [0x01]) [0x0C] = \SD26
27337                 DerefOf (WGDY [0x01]) [0x0D] = \SD31
27338                 DerefOf (WGDY [0x01]) [0x0E] = \SD32
27339                 DerefOf (WGDY [0x01]) [0x0F] = \SD33
27340                 DerefOf (WGDY [0x01]) [0x10] = \SD34
27341                 DerefOf (WGDY [0x01]) [0x11] = \SD35
27342                 DerefOf (WGDY [0x01]) [0x12] = \SD36
27343                 Return (WGDY) /* \_SB_.PCI0.CNVW.WGDY */
27344             }
27345 
27346             Name (SADX, Package (0x03)
27347             {
27348                 0x00, 
27349                 Package (0x02)
27350                 {
27351                     0x07, 
27352                     0x80000000
27353                 }, 
27354 
27355                 Package (0x02)
27356                 {
27357                     0x12, 
27358                     0x80000000
27359                 }
27360             })
27361             Method (SADS, 0, Serialized)
27362             {
27363                 DerefOf (SADX [0x01]) [0x01] = \ATDV
27364                 DerefOf (SADX [0x02]) [0x01] = \ATDV
27365                 Return (SADX) /* \_SB_.PCI0.CNVW.SADX */
27366             }
27367 
27368             Name (GPCX, Package (0x03)
27369             {
27370                 0x00, 
27371                 Package (0x02)
27372                 {
27373                     0x07, 
27374                     Package (0x03)
27375                     {
27376                         0x00, 
27377                         0x00, 
27378                         0x00
27379                     }
27380                 }, 
27381 
27382                 Package (0x02)
27383                 {
27384                     0x12, 
27385                     Package (0x03)
27386                     {
27387                         0x00, 
27388                         0x00, 
27389                         0x00
27390                     }
27391                 }
27392             })
27393             Method (GPC, 0, Serialized)
27394             {
27395                 Return (GPCX) /* \_SB_.PCI0.CNVW.GPCX */
27396             }
27397         }
27398 
27399         If ((PCHS == 0x02))
27400         {
27401             Scope (\_SB.PCI0.XHC.RHUB.HS10)
27402             {
27403                 Name (SADX, Package (0x03)
27404                 {
27405                     0x00, 
27406                     Package (0x02)
27407                     {
27408                         0x07, 
27409                         0x80000000
27410                     }, 
27411 
27412                     Package (0x02)
27413                     {
27414                         0x12, 
27415                         0x80000000
27416                     }
27417                 })
27418                 Method (SADS, 0, Serialized)
27419                 {
27420                     DerefOf (SADX [0x01]) [0x01] = \ATDV
27421                     DerefOf (SADX [0x02]) [0x01] = \ATDV
27422                     Return (SADX) /* \_SB_.PCI0.XHC_.RHUB.HS10.SADX */
27423                 }
27424 
27425                 Name (BRDY, Package (0x02)
27426                 {
27427                     0x00, 
27428                     Package (0x08)
27429                     {
27430                         0x12, 
27431                         0x80, 
27432                         0x80, 
27433                         0x80, 
27434                         0x80, 
27435                         0x80, 
27436                         0x80, 
27437                         0x80
27438                     }
27439                 })
27440                 Method (BRDS, 0, Serialized)
27441                 {
27442                     DerefOf (BRDY [0x01]) [0x01] = \BTSE
27443                     DerefOf (BRDY [0x01]) [0x02] = \BTBR
27444                     DerefOf (BRDY [0x01]) [0x03] = \BED2
27445                     DerefOf (BRDY [0x01]) [0x04] = \BED3
27446                     DerefOf (BRDY [0x01]) [0x05] = \BTLE
27447                     DerefOf (BRDY [0x01]) [0x06] = \BTL2
27448                     DerefOf (BRDY [0x01]) [0x07] = \BTLL
27449                     Return (BRDY) /* \_SB_.PCI0.XHC_.RHUB.HS10.BRDY */
27450                 }
27451 
27452                 Name (GPCX, Package (0x03)
27453                 {
27454                     0x00, 
27455                     Package (0x02)
27456                     {
27457                         0x07, 
27458                         Package (0x03)
27459                         {
27460                             0x00, 
27461                             0x00, 
27462                             0x00
27463                         }
27464                     }, 
27465 
27466                     Package (0x02)
27467                     {
27468                         0x12, 
27469                         Package (0x03)
27470                         {
27471                             0x00, 
27472                             0x00, 
27473                             0x00
27474                         }
27475                     }
27476                 })
27477                 Method (GPC, 0, Serialized)
27478                 {
27479                     Return (GPCX) /* \_SB_.PCI0.XHC_.RHUB.HS10.GPCX */
27480                 }
27481             }
27482         }
27483         Else
27484         {
27485             Scope (\_SB.PCI0.XHC.RHUB.HS14)
27486             {
27487                 Name (SADX, Package (0x03)
27488                 {
27489                     0x00, 
27490                     Package (0x02)
27491                     {
27492                         0x07, 
27493                         0x80000000
27494                     }, 
27495 
27496                     Package (0x02)
27497                     {
27498                         0x12, 
27499                         0x80000000
27500                     }
27501                 })
27502                 Method (SADS, 0, Serialized)
27503                 {
27504                     DerefOf (SADX [0x01]) [0x01] = \ATDV
27505                     DerefOf (SADX [0x02]) [0x01] = \ATDV
27506                     Return (SADX) /* \_SB_.PCI0.XHC_.RHUB.HS14.SADX */
27507                 }
27508 
27509                 Name (BRDY, Package (0x02)
27510                 {
27511                     0x00, 
27512                     Package (0x08)
27513                     {
27514                         0x12, 
27515                         0x80, 
27516                         0x80, 
27517                         0x80, 
27518                         0x80, 
27519                         0x80, 
27520                         0x80, 
27521                         0x80
27522                     }
27523                 })
27524                 Method (BRDS, 0, Serialized)
27525                 {
27526                     DerefOf (BRDY [0x01]) [0x01] = \BTSE
27527                     DerefOf (BRDY [0x01]) [0x02] = \BTBR
27528                     DerefOf (BRDY [0x01]) [0x03] = \BED2
27529                     DerefOf (BRDY [0x01]) [0x04] = \BED3
27530                     DerefOf (BRDY [0x01]) [0x05] = \BTLE
27531                     DerefOf (BRDY [0x01]) [0x06] = \BTL2
27532                     DerefOf (BRDY [0x01]) [0x07] = \BTLL
27533                     Return (BRDY) /* \_SB_.PCI0.XHC_.RHUB.HS14.BRDY */
27534                 }
27535 
27536                 Name (GPCX, Package (0x03)
27537                 {
27538                     0x00, 
27539                     Package (0x02)
27540                     {
27541                         0x07, 
27542                         Package (0x03)
27543                         {
27544                             0x00, 
27545                             0x00, 
27546                             0x00
27547                         }
27548                     }, 
27549 
27550                     Package (0x02)
27551                     {
27552                         0x12, 
27553                         Package (0x03)
27554                         {
27555                             0x00, 
27556                             0x00, 
27557                             0x00
27558                         }
27559                     }
27560                 })
27561                 Method (GPC, 0, Serialized)
27562                 {
27563                     Return (GPCX) /* \_SB_.PCI0.XHC_.RHUB.HS14.GPCX */
27564                 }
27565             }
27566         }
27567     }
27568 
27569     Scope (\_SB.PCI0.HDAS)
27570     {
27571         Method (PPMS, 1, Serialized)
27572         {
27573             If ((Arg0 == ToUUID ("7c708106-3aff-40fe-88be-8c999b3f7445")))
27574             {
27575                 Return ((ADPM & 0x04))
27576             }
27577 
27578             If ((Arg0 == ToUUID ("ec774fa9-28d3-424a-90e4-69f984f1eeb7")))
27579             {
27580                 Return ((ADPM & 0x0100))
27581             }
27582 
27583             If ((Arg0 == ToUUID ("849f0d73-1678-4d57-8c78-61c548253993")))
27584             {
27585                 Return ((ADPM & 0x08))
27586             }
27587 
27588             If ((Arg0 == ACCG (AG1L, AG1H)))
27589             {
27590                 Return ((ADPM & 0x20000000))
27591             }
27592 
27593             If ((Arg0 == ACCG (AG2L, AG2H)))
27594             {
27595                 Return ((ADPM & 0x40000000))
27596             }
27597 
27598             If ((Arg0 == ACCG (AG3L, AG3H)))
27599             {
27600                 Return ((ADPM & 0x80000000))
27601             }
27602 
27603             Return (0x00)
27604         }
27605 
27606         Method (ACCG, 2, NotSerialized)
27607         {
27608             Name (GBUF, Buffer (0x10){})
27609             Concatenate (Arg0, Arg1, GBUF) /* \_SB_.PCI0.HDAS.ACCG.GBUF */
27610             Return (GBUF) /* \_SB_.PCI0.HDAS.ACCG.GBUF */
27611         }
27612     }
27613 
27614     Scope (\)
27615     {
27616         PowerResource (PIN, 0x00, 0x0000)
27617         {
27618             Method (STA, 1, Serialized)
27619             {
27620                 If ((\_SB.GGOV (DerefOf (Arg0 [0x00])) == DerefOf (Arg0 [0x01]
27621                     )))
27622                 {
27623                     Return (0x01)
27624                 }
27625                 Else
27626                 {
27627                     Return (0x00)
27628                 }
27629             }
27630 
27631             Method (ON, 1, Serialized)
27632             {
27633                 ADBG (Concatenate ("PINH GPIO=", ToHexString (DerefOf (Arg0 [0x00]))))
27634                 \_SB.SGOV (DerefOf (Arg0 [0x00]), DerefOf (Arg0 [0x01]))
27635             }
27636 
27637             Method (OFF, 1, Serialized)
27638             {
27639                 ADBG (Concatenate ("PINL GPIO=", ToHexString (DerefOf (Arg0 [0x00]))))
27640                 \_SB.SGOV (DerefOf (Arg0 [0x00]), ~DerefOf (Arg0 [0x01])
27641                     )
27642             }
27643 
27644             Method (_STA, 0, NotSerialized)  // _STA: Status
27645             {
27646                 Return (0x00)
27647             }
27648 
27649             Method (_ON, 0, NotSerialized)  // _ON_: Power On
27650             {
27651             }
27652 
27653             Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
27654             {
27655             }
27656         }
27657     }
27658 
27659     Scope (\)
27660     {
27661         PowerResource (PINP, 0x00, 0x0000)
27662         {
27663             Method (STA, 1, Serialized)
27664             {
27665                 If (((\_SB.GPC0 (DerefOf (Arg0 [0x00])) && 0x0200) == 0x00))
27666                 {
27667                     If ((\_SB.GGOV (DerefOf (Arg0 [0x00])) == DerefOf (Arg0 [0x01]
27668                         )))
27669                     {
27670                         Return (0x01)
27671                     }
27672                     Else
27673                     {
27674                         Return (0x00)
27675                     }
27676                 }
27677                 ElseIf (((\_SB.GPC0 (DerefOf (Arg0 [0x00])) && 0x0100) != 
27678                     0x00))
27679                 {
27680                     Return (DerefOf (Arg0 [0x01]))
27681                 }
27682                 Else
27683                 {
27684                     Return (~DerefOf (Arg0 [0x01]))
27685                 }
27686             }
27687 
27688             Method (ON, 1, Serialized)
27689             {
27690                 ADBG (Concatenate ("PINH GPIO=", ToHexString (DerefOf (Arg0 [0x00]))))
27691                 If ((DerefOf (Arg0 [0x01]) == 0x00))
27692                 {
27693                     \_SB.SPC0 (DerefOf (Arg0 [0x00]), (\_SB.GPC0 (DerefOf (Arg0 [0x00]
27694                         )) & ~0x0100))
27695                 }
27696                 Else
27697                 {
27698                     \_SB.SPC0 (DerefOf (Arg0 [0x00]), (\_SB.GPC0 (DerefOf (Arg0 [0x00]
27699                         )) | 0x0100))
27700                 }
27701             }
27702 
27703             Method (OFF, 1, Serialized)
27704             {
27705                 ADBG (Concatenate ("PINL GPIO=", ToHexString (DerefOf (Arg0 [0x00]))))
27706                 If ((DerefOf (Arg0 [0x01]) == 0x00))
27707                 {
27708                     \_SB.SPC0 (DerefOf (Arg0 [0x00]), (\_SB.GPC0 (DerefOf (Arg0 [0x00]
27709                         )) | 0x0100))
27710                 }
27711                 Else
27712                 {
27713                     \_SB.SPC0 (DerefOf (Arg0 [0x00]), (\_SB.GPC0 (DerefOf (Arg0 [0x00]
27714                         )) & ~0x0100))
27715                 }
27716             }
27717 
27718             Method (_STA, 0, NotSerialized)  // _STA: Status
27719             {
27720                 Return (0x00)
27721             }
27722 
27723             Method (_ON, 0, NotSerialized)  // _ON_: Power On
27724             {
27725             }
27726 
27727             Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
27728             {
27729             }
27730         }
27731     }
27732 
27733     If ((GBES != 0x00))
27734     {
27735         Scope (\_SB.PCI0.GLAN)
27736         {
27737             Method (FGEN, 0, Serialized)
27738             {
27739                 Return (GSEN) /* \GSEN */
27740             }
27741         }
27742     }
27743 
27744     Scope (\_SB.PCI0.SAT0)
27745     {
27746         Method (SATC, 1, Serialized)
27747         {
27748             If ((Arg0 == ToUUID ("e4db149b-fcfe-425b-a6d8-92357d78fc7f") /* SATA Controller */))
27749             {
27750                 Return (CondRefOf (ZPOD))
27751             }
27752             Else
27753             {
27754                 Return (0x00)
27755             }
27756         }
27757 
27758         Method (SATD, 4, Serialized)
27759         {
27760             If ((Arg0 == ToUUID ("e4db149b-fcfe-425b-a6d8-92357d78fc7f") /* SATA Controller */))
27761             {
27762                 If (CondRefOf (ZPOD))
27763                 {
27764                     Return (ZPOD (Arg1, Arg2, Arg3))
27765                 }
27766             }
27767 
27768             Return (Buffer (0x01)
27769             {
27770                  0x00                                             // .
27771             })
27772         }
27773     }
27774 
27775     Name (\_S0, Package (0x04)  // _S0_: S0 System State
27776     {
27777         0x00, 
27778         0x00, 
27779         0x00, 
27780         0x00
27781     })
27782     Name (\_S3, Package (0x04)  // _S3_: S3 System State
27783     {
27784         0x05, 
27785         0x05, 
27786         0x00, 
27787         0x00
27788     })
27789     Name (\_S4, Package (0x04)  // _S4_: S4 System State
27790     {
27791         0x06, 
27792         0x06, 
27793         0x00, 
27794         0x00
27795     })
27796     Name (\_S5, Package (0x04)  // _S5_: S5 System State
27797     {
27798         0x07, 
27799         0x07, 
27800         0x00, 
27801         0x00
27802     })
27803     Method (PTS, 1, NotSerialized)
27804     {
27805         If (Arg0){}
27806     }
27807 
27808     Method (WAK, 1, NotSerialized)
27809     {
27810     }
27811 
27812     OperationRegion (MNVS, SystemMemory, 0x5FB78018, 0x1000)
27813     Field (MNVS, DWordAcc, NoLock, Preserve)
27814     {
27815         Offset (0xD00), 
27816         GAPA,   32, 
27817         GAPL,   32, 
27818         DCKI,   32, 
27819         DCKS,   32, 
27820         VCDL,   1, 
27821         VCDC,   1, 
27822         VCDT,   1, 
27823         VCDD,   1, 
27824             ,   1, 
27825         VCSS,   1, 
27826         VCDB,   1, 
27827         VCIN,   1, 
27828         VVPO,   8, 
27829         BNTN,   8, 
27830         BRLV,   8, 
27831         CDFL,   8, 
27832         CDAH,   8, 
27833         PMOD,   2, 
27834         PDIR,   1, 
27835         PDMA,   1, 
27836         Offset (0xD17), 
27837         LFDC,   1, 
27838         Offset (0xD18), 
27839         C2NA,   1, 
27840         C3NA,   1, 
27841         C4NA,   1, 
27842         C6NA,   1, 
27843         C7NA,   1, 
27844         Offset (0xD19), 
27845         Offset (0xD1A), 
27846             ,   2, 
27847             ,   1, 
27848         NHPS,   1, 
27849         NPMS,   1, 
27850         Offset (0xD1B), 
27851         UOPT,   8, 
27852         BTID,   32, 
27853         DPP0,   1, 
27854         DPP1,   1, 
27855         DPP2,   1, 
27856         DPP3,   1, 
27857         DPP4,   1, 
27858         DPP5,   1, 
27859         Offset (0xD21), 
27860         Offset (0xD22), 
27861         TCRT,   16, 
27862         TPSV,   16, 
27863         TTC1,   16, 
27864         TTC2,   16, 
27865         TTSP,   16, 
27866         SRAH,   8, 
27867         SRHE,   8, 
27868         SRE1,   8, 
27869         SRE2,   8, 
27870         SRE3,   8, 
27871         SRE4,   8, 
27872         SRE5,   8, 
27873         SRE6,   8, 
27874         SRU1,   8, 
27875         SRU2,   8, 
27876         SRU3,   8, 
27877         SRU7,   8, 
27878         SRU4,   8, 
27879         SRU5,   8, 
27880         SRU8,   8, 
27881         SRPB,   8, 
27882         SRLP,   8, 
27883         SRSA,   8, 
27884         SRSM,   8, 
27885         CWAC,   1, 
27886         CWAS,   1, 
27887         CWUE,   1, 
27888         CWUS,   1, 
27889         Offset (0xD40), 
27890         CWAP,   16, 
27891         CWAT,   16, 
27892         DBGC,   1, 
27893         Offset (0xD45), 
27894         FS1L,   16, 
27895         FS1M,   16, 
27896         FS1H,   16, 
27897         FS2L,   16, 
27898         FS2M,   16, 
27899         FS2H,   16, 
27900         FS3L,   16, 
27901         FS3M,   16, 
27902         FS3H,   16, 
27903         TATC,   1, 
27904             ,   6, 
27905         TATL,   1, 
27906         TATW,   8, 
27907         TNFT,   4, 
27908         TNTT,   4, 
27909         TDFA,   4, 
27910         TDTA,   4, 
27911         TDFD,   4, 
27912         TDTD,   4, 
27913         TCFA,   4, 
27914         TCTA,   4, 
27915         TCFD,   4, 
27916         TCTD,   4, 
27917         TSFT,   4, 
27918         TSTT,   4, 
27919         TIT0,   8, 
27920         TCR0,   16, 
27921         TPS0,   16, 
27922         TIT1,   8, 
27923         TCR1,   16, 
27924         TPS1,   16, 
27925         TIT2,   8, 
27926         TCR2,   16, 
27927         TPS2,   16, 
27928         TIF0,   8, 
27929         TIF1,   8, 
27930         TIF2,   8, 
27931         Offset (0xD78), 
27932         BTHI,   1, 
27933         Offset (0xD79), 
27934         HDIR,   1, 
27935         HDEH,   1, 
27936         HDSP,   1, 
27937         HDPP,   1, 
27938         HDUB,   1, 
27939         HDMC,   1, 
27940         NFCF,   1, 
27941         Offset (0xD7A), 
27942         TPME,   8, 
27943         BIDE,   4, 
27944         IDET,   4, 
27945             ,   1, 
27946             ,   1, 
27947         Offset (0xD7D), 
27948         DTS0,   8, 
27949         Offset (0xD7F), 
27950         DT00,   1, 
27951         DT01,   1, 
27952         DT02,   1, 
27953         DT03,   1, 
27954         Offset (0xD80), 
27955         LIDB,   1, 
27956         C4WR,   1, 
27957         C4AC,   1, 
27958         ODDX,   1, 
27959         CMPR,   1, 
27960         ILNF,   1, 
27961         PLUX,   1, 
27962         Offset (0xD81), 
27963         Offset (0xD8A), 
27964         WLAC,   8, 
27965         WIWK,   1, 
27966         Offset (0xD8C), 
27967             ,   4, 
27968             ,   1, 
27969         IDMM,   1, 
27970         Offset (0xD8D), 
27971             ,   3, 
27972             ,   1, 
27973             ,   1, 
27974             ,   1, 
27975         Offset (0xD8E), 
27976         Offset (0xD8F), 
27977             ,   4, 
27978         Offset (0xD90), 
27979         Offset (0xD91), 
27980         SWGP,   8, 
27981         IPMS,   8, 
27982         IPMB,   120, 
27983         IPMR,   24, 
27984         IPMO,   24, 
27985         IPMA,   8, 
27986         VIGD,   1, 
27987         VDSC,   1, 
27988         VMSH,   1, 
27989             ,   1, 
27990         VDSP,   1, 
27991         Offset (0xDAA), 
27992         Offset (0xDAD), 
27993         ASFT,   8, 
27994         PL1L,   8, 
27995         PL1M,   8, 
27996         CHKC,   32, 
27997         CHKE,   32, 
27998         ATRB,   32, 
27999         Offset (0xDBD), 
28000         PPCR,   8, 
28001         TPCR,   5, 
28002         Offset (0xDBF), 
28003         Offset (0xDCE), 
28004         CTPR,   8, 
28005         PPCA,   8, 
28006         TPCA,   5, 
28007         Offset (0xDD1), 
28008         BFWB,   296, 
28009         OSPX,   1, 
28010         OSC4,   1, 
28011         CPPX,   1, 
28012         Offset (0xDF7), 
28013         SPEN,   1, 
28014         SCRM,   1, 
28015             ,   1, 
28016         ETAU,   1, 
28017         IHBC,   1, 
28018         APMD,   1, 
28019         APMF,   1, 
28020         Offset (0xDF8), 
28021         FTPS,   8, 
28022         HIST,   8, 
28023         LPST,   8, 
28024         LWST,   8, 
28025         Offset (0xDFF), 
28026         Offset (0xE00), 
28027         Offset (0xE20), 
28028         HPET,   32, 
28029         PKLI,   16, 
28030         VLCX,   16, 
28031         VNIT,   8, 
28032         VBD0,   8, 
28033         VBDT,   128, 
28034         VBPL,   16, 
28035         VBPH,   16, 
28036         VBML,   8, 
28037         VBMH,   8, 
28038         VEDI,   1024, 
28039         PDCI,   16, 
28040         ISCG,   32, 
28041         ISSP,   1, 
28042         ISWK,   2, 
28043         ISFS,   3, 
28044         Offset (0xEC7), 
28045         SHA1,   160, 
28046         Offset (0xEDC), 
28047         LWCP,   1, 
28048         LWEN,   1, 
28049         IOCP,   1, 
28050         IOEN,   1, 
28051         IOST,   1, 
28052         Offset (0xEDD), 
28053         USBR,   1, 
28054         Offset (0xEDE), 
28055         Offset (0xEDF), 
28056         Offset (0xEE1), 
28057         BT2T,   1, 
28058         Offset (0xEE2), 
28059         TPPP,   8, 
28060         TPPC,   8, 
28061         CTPC,   8, 
28062         FNWK,   8, 
28063         Offset (0xEE7), 
28064         XHCC,   8, 
28065         FCAP,   16, 
28066         VSTD,   1, 
28067         VCQL,   1, 
28068         VTIO,   1, 
28069         VMYH,   1, 
28070         VSTP,   1, 
28071         VCQH,   1, 
28072         VDCC,   1, 
28073         VSFN,   1, 
28074         VDMC,   1, 
28075         VFHP,   1, 
28076         VIFC,   1, 
28077         VMMC,   1, 
28078         VMSC,   1, 
28079         VPSC,   1, 
28080         VCSC,   1, 
28081         Offset (0xEEC), 
28082         CICF,   4, 
28083         CICM,   4, 
28084         MYHC,   8, 
28085         MMCC,   8, 
28086         PT1D,   15, 
28087         Offset (0xEF1), 
28088         PT2D,   15, 
28089         Offset (0xEF3), 
28090         PT0D,   15, 
28091         Offset (0xEF5), 
28092         DVS0,   1, 
28093         DVS1,   1, 
28094         DVS2,   1, 
28095         DVS3,   1, 
28096         Offset (0xEF7), 
28097         DSTD,   15, 
28098         Offset (0xEF9), 
28099         DCQL,   15, 
28100         Offset (0xEFB), 
28101         DTIO,   15, 
28102         Offset (0xEFD), 
28103         DMYH,   15, 
28104         Offset (0xEFF), 
28105         DPST,   15, 
28106         Offset (0xF01), 
28107         DCQH,   15, 
28108         Offset (0xF03), 
28109         DDCC,   15, 
28110         Offset (0xF05), 
28111         DSFN,   15, 
28112         Offset (0xF07), 
28113         DDMC,   15, 
28114         Offset (0xF09), 
28115         DFHP,   15, 
28116         Offset (0xF0B), 
28117         DIFC,   15, 
28118         Offset (0xF0D), 
28119         DMMC,   15, 
28120         Offset (0xF0F), 
28121         DMSC,   15, 
28122         Offset (0xF11), 
28123         DPSC,   15, 
28124         Offset (0xF13), 
28125         DCSC,   15, 
28126         Offset (0xF15), 
28127         SMYH,   4, 
28128         SMMC,   4, 
28129         SPSC,   4, 
28130         Offset (0xF17), 
28131         STDV,   8, 
28132         SCRB,   8, 
28133         PMOF,   8, 
28134         EGPE,   8, 
28135         MMOP,   16, 
28136         MMCO,   16, 
28137         MMPE,   16, 
28138         MMQU,   16, 
28139         PSM1,   16, 
28140         PSM2,   16, 
28141         PSM3,   16, 
28142         PSM4,   16, 
28143         PSM5,   16, 
28144         PSM6,   16, 
28145         PSM7,   16, 
28146         PSM8,   16, 
28147         VEDX,   1024, 
28148         SHDW,   8
28149     }
28150 
28151     Field (MNVS, ByteAcc, NoLock, Preserve)
28152     {
28153         Offset (0xB00), 
28154         WITM,   8, 
28155         WSEL,   8, 
28156         WLS0,   8, 
28157         WLS1,   8, 
28158         WLS2,   8, 
28159         WLS3,   8, 
28160         WLS4,   8, 
28161         WLS5,   8, 
28162         WLS6,   8, 
28163         WLS7,   8, 
28164         WLS8,   8, 
28165         WLS9,   8, 
28166         WLSA,   8, 
28167         WLSB,   8, 
28168         WLSC,   8, 
28169         WLSD,   8, 
28170         WENC,   8, 
28171         WKBD,   8, 
28172         WPTY,   8, 
28173         WPAS,   1032, 
28174         WPNW,   1032, 
28175         WSPM,   8, 
28176         WSPS,   8, 
28177         WSMN,   8, 
28178         WSMX,   8, 
28179         WSEN,   8, 
28180         WSKB,   8, 
28181         WASB,   8, 
28182         WASI,   16, 
28183         WASD,   8, 
28184         WASS,   32
28185     }
28186 
28187     Field (MNVS, ByteAcc, NoLock, Preserve)
28188     {
28189         Offset (0xA00), 
28190         DBGB,   1024
28191     }
28192 
28193     Name (SPS, 0x00)
28194     Name (OSIF, 0x00)
28195     Name (WNTF, 0x00)
28196     Name (WXPF, 0x00)
28197     Name (WVIS, 0x00)
28198     Name (WIN7, 0x00)
28199     Name (WIN8, 0x00)
28200     Name (WSPV, 0x00)
28201     Name (LNUX, 0x00)
28202     Name (H8DR, 0x00)
28203     Name (MEMX, 0x00)
28204     Name (ACST, 0x00)
28205     Name (FMBL, 0x01)
28206     Name (FDTP, 0x02)
28207     Name (FUPS, 0x03)
28208     Name (FNID, 0x00)
28209     Name (RRBF, 0x00)
28210     Name (NBCF, 0x00)
28211     OperationRegion (SMI0, SystemIO, 0xB2, 0x01)
28212     Field (SMI0, ByteAcc, NoLock, Preserve)
28213     {
28214         APMC,   8
28215     }
28216 
28217     Field (MNVS, AnyAcc, NoLock, Preserve)
28218     {
28219         Offset (0xFC0), 
28220         CMD,    8, 
28221         ERR,    32, 
28222         PAR0,   32, 
28223         PAR1,   32, 
28224         PAR2,   32, 
28225         PAR3,   32
28226     }
28227 
28228     Mutex (MSMI, 0x00)
28229     Method (SMI, 5, Serialized)
28230     {
28231         Acquire (MSMI, 0xFFFF)
28232         CMD = Arg0
28233         ERR = 0x01
28234         PAR0 = Arg1
28235         PAR1 = Arg2
28236         PAR2 = Arg3
28237         PAR3 = Arg4
28238         APMC = 0xF5
28239         While ((ERR == 0x01))
28240         {
28241             Sleep (0x01)
28242             APMC = 0xF5
28243         }
28244 
28245         Local0 = PAR0 /* \PAR0 */
28246         Release (MSMI)
28247         Return (Local0)
28248     }
28249 
28250     Method (RPCI, 1, NotSerialized)
28251     {
28252         Return (SMI (0x00, 0x00, Arg0, 0x00, 0x00))
28253     }
28254 
28255     Method (WPCI, 2, NotSerialized)
28256     {
28257         SMI (0x00, 0x01, Arg0, Arg1, 0x00)
28258     }
28259 
28260     Method (MPCI, 3, NotSerialized)
28261     {
28262         SMI (0x00, 0x02, Arg0, Arg1, Arg2)
28263     }
28264 
28265     Method (RBEC, 1, NotSerialized)
28266     {
28267         Return (SMI (0x00, 0x03, Arg0, 0x00, 0x00))
28268     }
28269 
28270     Method (WBEC, 2, NotSerialized)
28271     {
28272         SMI (0x00, 0x04, Arg0, Arg1, 0x00)
28273     }
28274 
28275     Method (MBEC, 3, NotSerialized)
28276     {
28277         SMI (0x00, 0x05, Arg0, Arg1, Arg2)
28278     }
28279 
28280     Method (RISA, 1, NotSerialized)
28281     {
28282         Return (SMI (0x00, 0x06, Arg0, 0x00, 0x00))
28283     }
28284 
28285     Method (WISA, 2, NotSerialized)
28286     {
28287         SMI (0x00, 0x07, Arg0, Arg1, 0x00)
28288     }
28289 
28290     Method (MISA, 3, NotSerialized)
28291     {
28292         SMI (0x00, 0x08, Arg0, Arg1, Arg2)
28293     }
28294 
28295     Method (VEXP, 0, NotSerialized)
28296     {
28297         SMI (0x01, 0x00, 0x00, 0x00, 0x00)
28298     }
28299 
28300     Method (VUPS, 1, NotSerialized)
28301     {
28302         SMI (0x01, 0x01, Arg0, 0x00, 0x00)
28303     }
28304 
28305     Method (VSDS, 2, NotSerialized)
28306     {
28307         SMI (0x01, 0x02, Arg0, Arg1, 0x00)
28308     }
28309 
28310     Method (VDDC, 0, NotSerialized)
28311     {
28312         SMI (0x01, 0x03, 0x00, 0x00, 0x00)
28313     }
28314 
28315     Method (VVPD, 1, NotSerialized)
28316     {
28317         SMI (0x01, 0x04, Arg0, 0x00, 0x00)
28318     }
28319 
28320     Method (VNRS, 1, NotSerialized)
28321     {
28322         SMI (0x01, 0x05, Arg0, 0x00, 0x00)
28323     }
28324 
28325     Method (GLPW, 0, NotSerialized)
28326     {
28327         Return (SMI (0x01, 0x06, 0x00, 0x00, 0x00))
28328     }
28329 
28330     Method (VSLD, 1, NotSerialized)
28331     {
28332         SMI (0x01, 0x07, Arg0, 0x00, 0x00)
28333     }
28334 
28335     Method (VEVT, 1, NotSerialized)
28336     {
28337         Return (SMI (0x01, 0x08, Arg0, 0x00, 0x00))
28338     }
28339 
28340     Method (VTHR, 0, NotSerialized)
28341     {
28342         Return (SMI (0x01, 0x09, 0x00, 0x00, 0x00))
28343     }
28344 
28345     Method (VBRC, 1, NotSerialized)
28346     {
28347         SMI (0x01, 0x0A, Arg0, 0x00, 0x00)
28348     }
28349 
28350     Method (VBRG, 0, NotSerialized)
28351     {
28352         Return (SMI (0x01, 0x0E, 0x00, 0x00, 0x00))
28353     }
28354 
28355     Method (VCMS, 2, NotSerialized)
28356     {
28357         Return (SMI (0x01, 0x0B, Arg0, Arg1, 0x00))
28358     }
28359 
28360     Method (VBTD, 0, NotSerialized)
28361     {
28362         Return (SMI (0x01, 0x0F, 0x00, 0x00, 0x00))
28363     }
28364 
28365     Method (VHYB, 2, NotSerialized)
28366     {
28367         Return (SMI (0x01, 0x10, Arg0, Arg1, 0x00))
28368     }
28369 
28370     Method (VDYN, 2, NotSerialized)
28371     {
28372         Return (SMI (0x01, 0x11, Arg0, Arg1, 0x00))
28373     }
28374 
28375     Method (SDPS, 2, NotSerialized)
28376     {
28377         Return (SMI (0x01, 0x12, Arg0, Arg1, 0x00))
28378     }
28379 
28380     Method (SCMS, 1, NotSerialized)
28381     {
28382         Return (SMI (0x02, Arg0, 0x00, 0x00, 0x00))
28383     }
28384 
28385     Method (BHDP, 2, NotSerialized)
28386     {
28387         Return (SMI (0x03, 0x00, Arg0, Arg1, 0x00))
28388     }
28389 
28390     Method (STEP, 1, NotSerialized)
28391     {
28392         SMI (0x04, Arg0, 0x00, 0x00, 0x00)
28393     }
28394 
28395     Method (SLTP, 0, NotSerialized)
28396     {
28397         SMI (0x05, 0x00, 0x00, 0x00, 0x00)
28398     }
28399 
28400     Method (CBRI, 0, NotSerialized)
28401     {
28402         SMI (0x05, 0x01, 0x00, 0x00, 0x00)
28403     }
28404 
28405     Method (BCHK, 0, NotSerialized)
28406     {
28407         Return (SMI (0x05, 0x04, 0x00, 0x00, 0x00))
28408     }
28409 
28410     Method (BYRS, 0, NotSerialized)
28411     {
28412         SMI (0x05, 0x05, 0x00, 0x00, 0x00)
28413     }
28414 
28415     Method (LCHK, 1, NotSerialized)
28416     {
28417         Return (SMI (0x05, 0x06, Arg0, 0x00, 0x00))
28418     }
28419 
28420     Method (BLTH, 1, NotSerialized)
28421     {
28422         Return (SMI (0x06, Arg0, 0x00, 0x00, 0x00))
28423     }
28424 
28425     Method (PRSM, 2, NotSerialized)
28426     {
28427         Return (SMI (0x07, 0x00, Arg0, Arg1, 0x00))
28428     }
28429 
28430     Method (ISOC, 1, NotSerialized)
28431     {
28432         Return (SMI (0x07, 0x03, Arg0, 0x00, 0x00))
28433     }
28434 
28435     Method (EZRC, 1, NotSerialized)
28436     {
28437         Return (SMI (0x07, 0x04, Arg0, 0x00, 0x00))
28438     }
28439 
28440     Method (WGSV, 1, NotSerialized)
28441     {
28442         Return (SMI (0x09, Arg0, 0x00, 0x00, 0x00))
28443     }
28444 
28445     Method (SWTT, 1, NotSerialized)
28446     {
28447         If (!CondRefOf (\_SB.IETM.DPTE))
28448         {
28449             Local0 = 0x01
28450         }
28451         ElseIf ((\_SB.IETM.DPTE == 0x00))
28452         {
28453             Local0 = 0x01
28454         }
28455         Else
28456         {
28457             Local0 = 0x00
28458         }
28459 
28460         If (SMI (0x0A, 0x02, Arg0, Local0, 0x00))
28461         {
28462             If (\_SB.PCI0.LPCB.EC.HKEY.DHKC)
28463             {
28464                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6030)
28465             }
28466         }
28467     }
28468 
28469     Method (TSDL, 0, NotSerialized)
28470     {
28471         Return (SMI (0x0A, 0x03, 0x00, 0x00, 0x00))
28472     }
28473 
28474     Method (FLPF, 1, NotSerialized)
28475     {
28476         Return (SMI (0x0A, 0x04, Arg0, 0x00, 0x00))
28477     }
28478 
28479     Method (GTST, 0, NotSerialized)
28480     {
28481         ADBG ("GTST")
28482         Return (SMI (0x0A, 0x05, 0x00, 0x00, 0x00))
28483     }
28484 
28485     Method (CSUM, 1, NotSerialized)
28486     {
28487         Return (SMI (0x0E, Arg0, 0x00, 0x00, 0x00))
28488     }
28489 
28490     Method (NVSS, 1, NotSerialized)
28491     {
28492         Return (SMI (0x0F, Arg0, 0x00, 0x00, 0x00))
28493     }
28494 
28495     Method (WMIS, 2, NotSerialized)
28496     {
28497         Return (SMI (0x10, Arg0, Arg1, 0x00, 0x00))
28498     }
28499 
28500     Method (AWON, 1, NotSerialized)
28501     {
28502         Return (SMI (0x12, Arg0, 0x00, 0x00, 0x00))
28503     }
28504 
28505     Method (PMON, 2, NotSerialized)
28506     {
28507         Local0 = SizeOf (Arg0)
28508         Name (TSTR, Buffer (Local0){})
28509         TSTR = Arg0
28510         \DBGB = TSTR /* \PMON.TSTR */
28511         SMI (0x11, Arg1, 0x00, 0x00, 0x00)
28512     }
28513 
28514     Method (UAWS, 1, NotSerialized)
28515     {
28516         Return (SMI (0x13, Arg0, 0x00, 0x00, 0x00))
28517     }
28518 
28519     Method (BFWC, 1, NotSerialized)
28520     {
28521         Return (SMI (0x14, 0x00, Arg0, 0x00, 0x00))
28522     }
28523 
28524     Method (BFWP, 0, NotSerialized)
28525     {
28526         Return (SMI (0x14, 0x01, 0x00, 0x00, 0x00))
28527     }
28528 
28529     Method (BFWL, 0, NotSerialized)
28530     {
28531         SMI (0x14, 0x02, 0x00, 0x00, 0x00)
28532     }
28533 
28534     Method (BFWG, 1, NotSerialized)
28535     {
28536         SMI (0x14, 0x03, Arg0, 0x00, 0x00)
28537     }
28538 
28539     Method (BDMC, 1, NotSerialized)
28540     {
28541         SMI (0x14, 0x04, Arg0, 0x00, 0x00)
28542     }
28543 
28544     Method (PSIF, 2, NotSerialized)
28545     {
28546         Return (SMI (0x14, 0x05, Arg0, Arg1, 0x00))
28547     }
28548 
28549     Method (FNSC, 2, NotSerialized)
28550     {
28551         Return (SMI (0x14, 0x06, Arg0, Arg1, 0x00))
28552     }
28553 
28554     Method (AUDC, 2, NotSerialized)
28555     {
28556         Return (SMI (0x14, 0x07, Arg0, Arg1, 0x00))
28557     }
28558 
28559     Method (SYBC, 2, NotSerialized)
28560     {
28561         Return (SMI (0x14, 0x08, Arg0, Arg1, 0x00))
28562     }
28563 
28564     Method (KBLS, 2, NotSerialized)
28565     {
28566         Return (SMI (0x14, 0x09, Arg0, Arg1, 0x00))
28567     }
28568 
28569     Method (FPCI, 2, NotSerialized)
28570     {
28571         Return (SMI (0x14, 0x0A, Arg0, Arg1, 0x00))
28572     }
28573 
28574     Method (UBIS, 1, NotSerialized)
28575     {
28576         Return (SMI (0x15, 0x00, Arg0, 0x00, 0x00))
28577     }
28578 
28579     Method (DIEH, 1, NotSerialized)
28580     {
28581         Return (SMI (0x16, 0x00, Arg0, 0x00, 0x00))
28582     }
28583 
28584     Method (OUTP, 2, NotSerialized)
28585     {
28586         SMI (0x17, Arg0, Arg1, 0x00, 0x00)
28587     }
28588 
28589     Method (SREQ, 3, NotSerialized)
28590     {
28591         SMI (0x18, (Arg0 & 0xFF), (Arg1 & 0xFF), (Arg2 & 
28592             0xFF), 0x00)
28593     }
28594 
28595     Method (SPMS, 1, NotSerialized)
28596     {
28597         SMI (0x19, (Arg0 & 0xFF), 0x00, 0x00, 0x00)
28598     }
28599 
28600     Method (LVSS, 2, NotSerialized)
28601     {
28602         Return (SMI (0x1A, (Arg0 & 0xFF), Arg1, 0x00, 0x00))
28603     }
28604 
28605     Method (SCMP, 2, NotSerialized)
28606     {
28607         Local0 = SizeOf (Arg0)
28608         If ((Local0 != SizeOf (Arg1)))
28609         {
28610             Return (One)
28611         }
28612 
28613         Local0++
28614         Name (STR1, Buffer (Local0){})
28615         Name (STR2, Buffer (Local0){})
28616         STR1 = Arg0
28617         STR2 = Arg1
28618         Local1 = Zero
28619         While ((Local1 < Local0))
28620         {
28621             Local2 = DerefOf (STR1 [Local1])
28622             Local3 = DerefOf (STR2 [Local1])
28623             If ((Local2 != Local3))
28624             {
28625                 Return (One)
28626             }
28627 
28628             Local1++
28629         }
28630 
28631         Return (Zero)
28632     }
28633 
28634     Name (ONVA, 0x5FB33000)
28635     Name (ONVL, 0x0100)
28636     OperationRegion (ONVS, SystemMemory, ONVA, ONVL)
28637     Field (ONVS, AnyAcc, Lock, Preserve)
28638     {
28639         Offset (0x04), 
28640         PBID,   8, 
28641         Offset (0x06), 
28642         MIAC,   16, 
28643         Offset (0x10), 
28644         GVDI,   32, 
28645         DNPF,   8, 
28646         GCPI,   8, 
28647         NPBF,   16
28648     }
28649 
28650     Name (MACA, "_AUXMAX_#XXXXXXXXXXXX#")
28651     Name (WOLD, "_S5WOL_#0117EF00000000#")
28652     Scope (\_SB)
28653     {
28654         Name (RID, 0x00)
28655         Device (MEM)
28656         {
28657             Name (_HID, EisaId ("PNP0C01") /* System Board */)  // _HID: Hardware ID
28658             Name (MEMS, ResourceTemplate ()
28659             {
28660                 Memory32Fixed (ReadWrite,
28661                     0x00000000,         // Address Base
28662                     0x000A0000,         // Address Length
28663                     )
28664                 Memory32Fixed (ReadOnly,
28665                     0x000C0000,         // Address Base
28666                     0x00000000,         // Address Length
28667                     _Y30)
28668                 Memory32Fixed (ReadOnly,
28669                     0x000C4000,         // Address Base
28670                     0x00000000,         // Address Length
28671                     _Y31)
28672                 Memory32Fixed (ReadOnly,
28673                     0x000C8000,         // Address Base
28674                     0x00000000,         // Address Length
28675                     _Y32)
28676                 Memory32Fixed (ReadOnly,
28677                     0x000CC000,         // Address Base
28678                     0x00000000,         // Address Length
28679                     _Y33)
28680                 Memory32Fixed (ReadOnly,
28681                     0x000D0000,         // Address Base
28682                     0x00000000,         // Address Length
28683                     _Y34)
28684                 Memory32Fixed (ReadOnly,
28685                     0x000D4000,         // Address Base
28686                     0x00000000,         // Address Length
28687                     _Y35)
28688                 Memory32Fixed (ReadOnly,
28689                     0x000D8000,         // Address Base
28690                     0x00000000,         // Address Length
28691                     _Y36)
28692                 Memory32Fixed (ReadOnly,
28693                     0x000DC000,         // Address Base
28694                     0x00000000,         // Address Length
28695                     _Y37)
28696                 Memory32Fixed (ReadOnly,
28697                     0x000E0000,         // Address Base
28698                     0x00000000,         // Address Length
28699                     _Y38)
28700                 Memory32Fixed (ReadOnly,
28701                     0x000E4000,         // Address Base
28702                     0x00000000,         // Address Length
28703                     _Y39)
28704                 Memory32Fixed (ReadOnly,
28705                     0x000E8000,         // Address Base
28706                     0x00000000,         // Address Length
28707                     _Y3A)
28708                 Memory32Fixed (ReadOnly,
28709                     0x000EC000,         // Address Base
28710                     0x00000000,         // Address Length
28711                     _Y3B)
28712                 Memory32Fixed (ReadOnly,
28713                     0x000F0000,         // Address Base
28714                     0x00010000,         // Address Length
28715                     )
28716                 Memory32Fixed (ReadWrite,
28717                     0x00100000,         // Address Base
28718                     0x01EE0000,         // Address Length
28719                     _Y3C)
28720                 Memory32Fixed (ReadOnly,
28721                     0xFEC00000,         // Address Base
28722                     0x00140000,         // Address Length
28723                     )
28724                 Memory32Fixed (ReadOnly,
28725                     0xFED4C000,         // Address Base
28726                     0x012B4000,         // Address Length
28727                     )
28728             })
28729             CreateDWordField (MEMS, \_SB.MEM._Y30._LEN, MC0L)  // _LEN: Length
28730             CreateDWordField (MEMS, \_SB.MEM._Y31._LEN, MC4L)  // _LEN: Length
28731             CreateDWordField (MEMS, \_SB.MEM._Y32._LEN, MC8L)  // _LEN: Length
28732             CreateDWordField (MEMS, \_SB.MEM._Y33._LEN, MCCL)  // _LEN: Length
28733             CreateDWordField (MEMS, \_SB.MEM._Y34._LEN, MD0L)  // _LEN: Length
28734             CreateDWordField (MEMS, \_SB.MEM._Y35._LEN, MD4L)  // _LEN: Length
28735             CreateDWordField (MEMS, \_SB.MEM._Y36._LEN, MD8L)  // _LEN: Length
28736             CreateDWordField (MEMS, \_SB.MEM._Y37._LEN, MDCL)  // _LEN: Length
28737             CreateDWordField (MEMS, \_SB.MEM._Y38._LEN, ME0L)  // _LEN: Length
28738             CreateDWordField (MEMS, \_SB.MEM._Y39._LEN, ME4L)  // _LEN: Length
28739             CreateDWordField (MEMS, \_SB.MEM._Y3A._LEN, ME8L)  // _LEN: Length
28740             CreateDWordField (MEMS, \_SB.MEM._Y3B._LEN, MECL)  // _LEN: Length
28741             CreateBitField (MEMS, \_SB.MEM._Y30._RW, MC0W)  // _RW_: Read-Write Status
28742             CreateBitField (MEMS, \_SB.MEM._Y31._RW, MC4W)  // _RW_: Read-Write Status
28743             CreateBitField (MEMS, \_SB.MEM._Y32._RW, MC8W)  // _RW_: Read-Write Status
28744             CreateBitField (MEMS, \_SB.MEM._Y33._RW, MCCW)  // _RW_: Read-Write Status
28745             CreateBitField (MEMS, \_SB.MEM._Y34._RW, MD0W)  // _RW_: Read-Write Status
28746             CreateBitField (MEMS, \_SB.MEM._Y35._RW, MD4W)  // _RW_: Read-Write Status
28747             CreateBitField (MEMS, \_SB.MEM._Y36._RW, MD8W)  // _RW_: Read-Write Status
28748             CreateBitField (MEMS, \_SB.MEM._Y37._RW, MDCW)  // _RW_: Read-Write Status
28749             CreateBitField (MEMS, \_SB.MEM._Y38._RW, ME0W)  // _RW_: Read-Write Status
28750             CreateBitField (MEMS, \_SB.MEM._Y39._RW, ME4W)  // _RW_: Read-Write Status
28751             CreateBitField (MEMS, \_SB.MEM._Y3A._RW, ME8W)  // _RW_: Read-Write Status
28752             CreateBitField (MEMS, \_SB.MEM._Y3B._RW, MECW)  // _RW_: Read-Write Status
28753             CreateDWordField (MEMS, \_SB.MEM._Y3C._BAS, MEB1)  // _BAS: Base Address
28754             CreateDWordField (MEMS, \_SB.MEM._Y3C._LEN, MEL1)  // _LEN: Length
28755             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
28756             {
28757                 Local0 = (\_SB.PCI0.PM1L & 0x03)
28758                 If (Local0)
28759                 {
28760                     MC0L = 0x4000
28761                     If ((Local0 & 0x02))
28762                     {
28763                         MC0W = 0x01
28764                     }
28765                 }
28766 
28767                 Local0 = (\_SB.PCI0.PM1H & 0x30)
28768                 If (Local0)
28769                 {
28770                     MC4L = 0x4000
28771                     If ((Local0 & 0x20))
28772                     {
28773                         MC4W = 0x01
28774                     }
28775                 }
28776 
28777                 Local0 = (\_SB.PCI0.PM2L & 0x03)
28778                 If (Local0)
28779                 {
28780                     MC8L = 0x4000
28781                     If ((Local0 & 0x02))
28782                     {
28783                         MC8W = 0x01
28784                     }
28785                 }
28786 
28787                 Local0 = (\_SB.PCI0.PM2H & 0x30)
28788                 If (Local0)
28789                 {
28790                     MCCL = 0x4000
28791                     If ((Local0 & 0x20))
28792                     {
28793                         MCCW = 0x01
28794                     }
28795                 }
28796 
28797                 Local0 = (\_SB.PCI0.PM3L & 0x03)
28798                 If (Local0)
28799                 {
28800                     MD0L = 0x4000
28801                     If ((Local0 & 0x02))
28802                     {
28803                         MD0W = 0x01
28804                     }
28805                 }
28806 
28807                 Local0 = (\_SB.PCI0.PM3H & 0x30)
28808                 If (Local0)
28809                 {
28810                     MD4L = 0x4000
28811                     If ((Local0 & 0x20))
28812                     {
28813                         MD4W = 0x01
28814                     }
28815                 }
28816 
28817                 Local0 = (\_SB.PCI0.PM4L & 0x03)
28818                 If (Local0)
28819                 {
28820                     MD8L = 0x4000
28821                     If ((Local0 & 0x02))
28822                     {
28823                         MD8W = 0x01
28824                     }
28825                 }
28826 
28827                 Local0 = (\_SB.PCI0.PM4H & 0x30)
28828                 If (Local0)
28829                 {
28830                     MDCL = 0x4000
28831                     If ((Local0 & 0x20))
28832                     {
28833                         MDCW = 0x01
28834                     }
28835                 }
28836 
28837                 Local0 = (\_SB.PCI0.PM5L & 0x03)
28838                 If (Local0)
28839                 {
28840                     ME0L = 0x4000
28841                     If ((Local0 & 0x02))
28842                     {
28843                         ME0W = 0x01
28844                     }
28845                 }
28846 
28847                 Local0 = (\_SB.PCI0.PM5H & 0x30)
28848                 If (Local0)
28849                 {
28850                     ME4L = 0x4000
28851                     If ((Local0 & 0x20))
28852                     {
28853                         ME4W = 0x01
28854                     }
28855                 }
28856 
28857                 Local0 = (\_SB.PCI0.PM6L & 0x03)
28858                 If (Local0)
28859                 {
28860                     ME8L = 0x4000
28861                     If ((Local0 & 0x02))
28862                     {
28863                         ME8W = 0x01
28864                     }
28865                 }
28866 
28867                 Local0 = (\_SB.PCI0.PM6H & 0x30)
28868                 If (Local0)
28869                 {
28870                     MECL = 0x4000
28871                     If ((Local0 & 0x20))
28872                     {
28873                         MECW = 0x01
28874                     }
28875                 }
28876 
28877                 \MEMX = (\_SB.PCI0.TLUD << 0x14)
28878                 MEL1 = (\MEMX - MEB1) /* \_SB_.MEM_.MEB1 */
28879                 Return (MEMS) /* \_SB_.MEM_.MEMS */
28880             }
28881         }
28882 
28883         Device (LID)
28884         {
28885             Name (_HID, EisaId ("PNP0C0D") /* Lid Device */)  // _HID: Hardware ID
28886             Method (_LID, 0, NotSerialized)  // _LID: Lid Status
28887             {
28888                 If (((\ILNF == 0x00) && (\PLUX == 0x00)))
28889                 {
28890                     If (\H8DR)
28891                     {
28892                         Return (\_SB.PCI0.LPCB.EC.HPLD)
28893                     }
28894                     ElseIf ((\RBEC (0x46) & 0x04))
28895                     {
28896                         Return (0x01)
28897                     }
28898                     Else
28899                     {
28900                         Return (0x00)
28901                     }
28902                 }
28903                 Else
28904                 {
28905                     Return (0x01)
28906                 }
28907             }
28908 
28909             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
28910             {
28911                 If (\LWCP)
28912                 {
28913                     Return (Package (0x02)
28914                     {
28915                         0x17, 
28916                         0x04
28917                     })
28918                 }
28919                 Else
28920                 {
28921                     Return (Package (0x02)
28922                     {
28923                         0x17, 
28924                         0x03
28925                     })
28926                 }
28927             }
28928 
28929             Method (_PSW, 1, NotSerialized)  // _PSW: Power State Wake
28930             {
28931                 If (\H8DR)
28932                 {
28933                     If (Arg0)
28934                     {
28935                         \_SB.PCI0.LPCB.EC.HWLO = 0x01
28936                     }
28937                     Else
28938                     {
28939                         \_SB.PCI0.LPCB.EC.HWLO = 0x00
28940                     }
28941                 }
28942                 ElseIf (Arg0)
28943                 {
28944                     \MBEC (0x32, 0xFF, 0x04)
28945                 }
28946                 Else
28947                 {
28948                     \MBEC (0x32, 0xFB, 0x00)
28949                 }
28950 
28951                 If (\LWCP)
28952                 {
28953                     If (Arg0)
28954                     {
28955                         \LWEN = 0x01
28956                     }
28957                     Else
28958                     {
28959                         \LWEN = 0x00
28960                     }
28961                 }
28962             }
28963         }
28964 
28965         Device (WMI1)
28966         {
28967             Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */)  // _HID: Hardware ID
28968             Name (_UID, 0x01)  // _UID: Unique ID
28969             Name (_WDG, Buffer (0xB4)
28970             {
28971                 /* 0000 */  0x0E, 0x23, 0xF5, 0x51, 0x77, 0x96, 0xCD, 0x46,  // .#.Qw..F
28972                 /* 0008 */  0xA1, 0xCF, 0xC0, 0xB2, 0x3E, 0xE3, 0x4D, 0xB7,  // ....>.M.
28973                 /* 0010 */  0x41, 0x30, 0x5A, 0x05, 0x64, 0x9A, 0x47, 0x98,  // A0Z.d.G.
28974                 /* 0018 */  0xF5, 0x33, 0x33, 0x4E, 0xA7, 0x07, 0x8E, 0x25,  // .33N...%
28975                 /* 0020 */  0x1E, 0xBB, 0xC3, 0xA1, 0x41, 0x31, 0x01, 0x06,  // ....A1..
28976                 /* 0028 */  0xEF, 0x54, 0x4B, 0x6A, 0xED, 0xA5, 0x33, 0x4D,  // .TKj..3M
28977                 /* 0030 */  0x94, 0x55, 0xB0, 0xD9, 0xB4, 0x8D, 0xF4, 0xB3,  // .U......
28978                 /* 0038 */  0x41, 0x32, 0x01, 0x06, 0xB6, 0xEB, 0xF1, 0x74,  // A2.....t
28979                 /* 0040 */  0x7A, 0x92, 0x7D, 0x4C, 0x95, 0xDF, 0x69, 0x8E,  // z.}L..i.
28980                 /* 0048 */  0x21, 0xE8, 0x0E, 0xB5, 0x41, 0x33, 0x01, 0x06,  // !...A3..
28981                 /* 0050 */  0xFF, 0x04, 0xEF, 0x7E, 0x28, 0x43, 0x7C, 0x44,  // ...~(C|D
28982                 /* 0058 */  0xB5, 0xBB, 0xD4, 0x49, 0x92, 0x5D, 0x53, 0x8D,  // ...I.]S.
28983                 /* 0060 */  0x41, 0x34, 0x01, 0x06, 0x9E, 0x15, 0xDB, 0x8A,  // A4......
28984                 /* 0068 */  0x32, 0x1E, 0x5C, 0x45, 0xBC, 0x93, 0x30, 0x8A,  // 2.\E..0.
28985                 /* 0070 */  0x7E, 0xD9, 0x82, 0x46, 0x41, 0x35, 0x01, 0x01,  // ~..FA5..
28986                 /* 0078 */  0xFD, 0xD9, 0x51, 0x26, 0x1C, 0x91, 0x69, 0x4B,  // ..Q&..iK
28987                 /* 0080 */  0xB9, 0x4E, 0xD0, 0xDE, 0xD5, 0x96, 0x3B, 0xD7,  // .N....;.
28988                 /* 0088 */  0x41, 0x36, 0x01, 0x06, 0x1A, 0x65, 0x64, 0x73,  // A6...eds
28989                 /* 0090 */  0x2F, 0x13, 0xE7, 0x4F, 0xAD, 0xAA, 0x40, 0xC6,  // /..O..@.
28990                 /* 0098 */  0xC7, 0xEE, 0x2E, 0x3B, 0x41, 0x37, 0x01, 0x06,  // ...;A7..
28991                 /* 00A0 */  0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11,  // !...f...
28992                 /* 00A8 */  0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10,  // ......).
28993                 /* 00B0 */  0x42, 0x41, 0x01, 0x00                           // BA..
28994             })
28995             Name (RETN, Package (0x05)
28996             {
28997                 "Success", 
28998                 "Not Supported", 
28999                 "Invalid Parameter", 
29000                 "Access Denied", 
29001                 "System Busy"
29002             })
29003             Name (ITEM, Package (0x7B)
29004             {
29005                 Package (0x02)
29006                 {
29007                     0x0E, 
29008                     "WakeOnLAN"
29009                 }, 
29010 
29011                 Package (0x02)
29012                 {
29013                     0x00, 
29014                     "EthernetLANOptionROM"
29015                 }, 
29016 
29017                 Package (0x02)
29018                 {
29019                     0x00, 
29020                     "USBBIOSSupport"
29021                 }, 
29022 
29023                 Package (0x02)
29024                 {
29025                     0x00, 
29026                     "AlwaysOnUSB"
29027                 }, 
29028 
29029                 Package (0x02)
29030                 {
29031                     0x01, 
29032                     "TrackPoint"
29033                 }, 
29034 
29035                 Package (0x02)
29036                 {
29037                     0x01, 
29038                     "TouchPad"
29039                 }, 
29040 
29041                 Package (0x02)
29042                 {
29043                     0x00, 
29044                     "FnSticky"
29045                 }, 
29046 
29047                 Package (0x02)
29048                 {
29049                     0x04, 
29050                     "ThinkPadNumLock"
29051                 }, 
29052 
29053                 Package (0x02)
29054                 {
29055                     0x0C, 
29056                     "PowerOnNumLock"
29057                 }, 
29058 
29059                 Package (0x02)
29060                 {
29061                     0x05, 
29062                     "BootDisplayDevice"
29063                 }, 
29064 
29065                 Package (0x02)
29066                 {
29067                     0x00, 
29068                     "SpeedStep"
29069                 }, 
29070 
29071                 Package (0x02)
29072                 {
29073                     0x09, 
29074                     "AdaptiveThermalManagementAC"
29075                 }, 
29076 
29077                 Package (0x02)
29078                 {
29079                     0x09, 
29080                     "AdaptiveThermalManagementBattery"
29081                 }, 
29082 
29083                 Package (0x02)
29084                 {
29085                     0x06, 
29086                     "CDROMSpeed"
29087                 }, 
29088 
29089                 Package (0x02)
29090                 {
29091                     0x00, 
29092                     "CPUPowerManagement"
29093                 }, 
29094 
29095                 Package (0x02)
29096                 {
29097                     0x00, 
29098                     "PowerControlBeep"
29099                 }, 
29100 
29101                 Package (0x02)
29102                 {
29103                     0x00, 
29104                     "LowBatteryAlarm"
29105                 }, 
29106 
29107                 Package (0x02)
29108                 {
29109                     0x00, 
29110                     "PasswordBeep"
29111                 }, 
29112 
29113                 Package (0x02)
29114                 {
29115                     0x00, 
29116                     "KeyboardBeep"
29117                 }, 
29118 
29119                 Package (0x02)
29120                 {
29121                     0x00, 
29122                     "ExtendedMemoryTest"
29123                 }, 
29124 
29125                 Package (0x02)
29126                 {
29127                     0x00, 
29128                     "Reserved"
29129                 }, 
29130 
29131                 Package (0x02)
29132                 {
29133                     0x00, 
29134                     "CoreMultiProcessing"
29135                 }, 
29136 
29137                 Package (0x02)
29138                 {
29139                     0x00, 
29140                     "VirtualizationTechnology"
29141                 }, 
29142 
29143                 Package (0x02)
29144                 {
29145                     0x00, 
29146                     "LockBIOSSetting"
29147                 }, 
29148 
29149                 Package (0x02)
29150                 {
29151                     0x0B, 
29152                     "MinimumPasswordLength"
29153                 }, 
29154 
29155                 Package (0x02)
29156                 {
29157                     0x00, 
29158                     "BIOSPasswordAtUnattendedBoot"
29159                 }, 
29160 
29161                 Package (0x02)
29162                 {
29163                     0x00, 
29164                     "FingerprintPredesktopAuthentication"
29165                 }, 
29166 
29167                 Package (0x02)
29168                 {
29169                     0x00, 
29170                     "Reserved"
29171                 }, 
29172 
29173                 Package (0x02)
29174                 {
29175                     0x03, 
29176                     "FingerprintSecurityMode"
29177                 }, 
29178 
29179                 Package (0x02)
29180                 {
29181                     0x02, 
29182                     "SecurityChip"
29183                 }, 
29184 
29185                 Package (0x02)
29186                 {
29187                     0x00, 
29188                     "BIOSUpdateByEndUsers"
29189                 }, 
29190 
29191                 Package (0x02)
29192                 {
29193                     0x00, 
29194                     "DataExecutionPrevention"
29195                 }, 
29196 
29197                 Package (0x02)
29198                 {
29199                     0x00, 
29200                     "EthernetLANAccess"
29201                 }, 
29202 
29203                 Package (0x02)
29204                 {
29205                     0x00, 
29206                     "WirelessLANAccess"
29207                 }, 
29208 
29209                 Package (0x02)
29210                 {
29211                     0x00, 
29212                     "WirelessWANAccess"
29213                 }, 
29214 
29215                 Package (0x02)
29216                 {
29217                     0x00, 
29218                     "BluetoothAccess"
29219                 }, 
29220 
29221                 Package (0x02)
29222                 {
29223                     0x00, 
29224                     "WirelessUSBAccess"
29225                 }, 
29226 
29227                 Package (0x02)
29228                 {
29229                     0x00, 
29230                     "ModemAccess"
29231                 }, 
29232 
29233                 Package (0x02)
29234                 {
29235                     0x00, 
29236                     "USBPortAccess"
29237                 }, 
29238 
29239                 Package (0x02)
29240                 {
29241                     0x00, 
29242                     "IEEE1394Access"
29243                 }, 
29244 
29245                 Package (0x02)
29246                 {
29247                     0x00, 
29248                     "ExpressCardAccess"
29249                 }, 
29250 
29251                 Package (0x02)
29252                 {
29253                     0x00, 
29254                     "PCIExpressSlotAccess"
29255                 }, 
29256 
29257                 Package (0x02)
29258                 {
29259                     0x00, 
29260                     "UltrabayAccess"
29261                 }, 
29262 
29263                 Package (0x02)
29264                 {
29265                     0x00, 
29266                     "MemoryCardSlotAccess"
29267                 }, 
29268 
29269                 Package (0x02)
29270                 {
29271                     0x00, 
29272                     "SmartCardSlotAccess"
29273                 }, 
29274 
29275                 Package (0x02)
29276                 {
29277                     0x00, 
29278                     "IntegratedCameraAccess"
29279                 }, 
29280 
29281                 Package (0x02)
29282                 {
29283                     0x00, 
29284                     "MicrophoneAccess"
29285                 }, 
29286 
29287                 Package (0x02)
29288                 {
29289                     0x0A, 
29290                     "BootMode"
29291                 }, 
29292 
29293                 Package (0x02)
29294                 {
29295                     0x00, 
29296                     "StartupOptionKeys"
29297                 }, 
29298 
29299                 Package (0x02)
29300                 {
29301                     0x00, 
29302                     "BootDeviceListF12Option"
29303                 }, 
29304 
29305                 Package (0x02)
29306                 {
29307                     0x64, 
29308                     "BootOrder"
29309                 }, 
29310 
29311                 Package (0x02)
29312                 {
29313                     0x00, 
29314                     "WiMAXAccess"
29315                 }, 
29316 
29317                 Package (0x02)
29318                 {
29319                     0x0D, 
29320                     "GraphicsDevice"
29321                 }, 
29322 
29323                 Package (0x02)
29324                 {
29325                     0x00, 
29326                     "TXTFeature"
29327                 }, 
29328 
29329                 Package (0x02)
29330                 {
29331                     0x00, 
29332                     "VTdFeature"
29333                 }, 
29334 
29335                 Package (0x02)
29336                 {
29337                     0x0F, 
29338                     "AMTControl"
29339                 }, 
29340 
29341                 Package (0x02)
29342                 {
29343                     0x00, 
29344                     "FingerprintPasswordAuthentication"
29345                 }, 
29346 
29347                 Package (0x02)
29348                 {
29349                     0x00, 
29350                     "FingerprintReaderAccess"
29351                 }, 
29352 
29353                 Package (0x02)
29354                 {
29355                     0x00, 
29356                     "OsDetectionForSwitchableGraphics"
29357                 }, 
29358 
29359                 Package (0x02)
29360                 {
29361                     0x0F, 
29362                     "AbsolutePersistenceModuleActivation"
29363                 }, 
29364 
29365                 Package (0x02)
29366                 {
29367                     0x01, 
29368                     "PCIExpressPowerManagement"
29369                 }, 
29370 
29371                 Package (0x02)
29372                 {
29373                     0x00, 
29374                     "Reserved"
29375                 }, 
29376 
29377                 Package (0x02)
29378                 {
29379                     0x00, 
29380                     "eSATAPortAccess"
29381                 }, 
29382 
29383                 Package (0x02)
29384                 {
29385                     0x00, 
29386                     "HardwarePasswordManager"
29387                 }, 
29388 
29389                 Package (0x02)
29390                 {
29391                     0x00, 
29392                     "HyperThreadingTechnology"
29393                 }, 
29394 
29395                 Package (0x02)
29396                 {
29397                     0x00, 
29398                     "FnCtrlKeySwap"
29399                 }, 
29400 
29401                 Package (0x02)
29402                 {
29403                     0x00, 
29404                     "BIOSPasswordAtReboot"
29405                 }, 
29406 
29407                 Package (0x02)
29408                 {
29409                     0x00, 
29410                     "OnByAcAttach"
29411                 }, 
29412 
29413                 Package (0x02)
29414                 {
29415                     0x64, 
29416                     "NetworkBoot"
29417                 }, 
29418 
29419                 Package (0x02)
29420                 {
29421                     0x00, 
29422                     "BootOrderLock"
29423                 }, 
29424 
29425                 Package (0x02)
29426                 {
29427                     0x10, 
29428                     "SharedDisplayPriority"
29429                 }, 
29430 
29431                 Package (0x02)
29432                 {
29433                     0x11, 
29434                     "ExpressCardSpeed"
29435                 }, 
29436 
29437                 Package (0x02)
29438                 {
29439                     0x00, 
29440                     "RapidStartTechnology"
29441                 }, 
29442 
29443                 Package (0x02)
29444                 {
29445                     0x12, 
29446                     "KeyboardIllumination"
29447                 }, 
29448 
29449                 Package (0x02)
29450                 {
29451                     0x00, 
29452                     "IPv4NetworkStack"
29453                 }, 
29454 
29455                 Package (0x02)
29456                 {
29457                     0x00, 
29458                     "IPv6NetworkStack"
29459                 }, 
29460 
29461                 Package (0x02)
29462                 {
29463                     0x13, 
29464                     "UefiPxeBootPriority"
29465                 }, 
29466 
29467                 Package (0x02)
29468                 {
29469                     0x00, 
29470                     "Reserved"
29471                 }, 
29472 
29473                 Package (0x02)
29474                 {
29475                     0x00, 
29476                     "PhysicalPresenceForTpmClear"
29477                 }, 
29478 
29479                 Package (0x02)
29480                 {
29481                     0x00, 
29482                     "SecureRollBackPrevention"
29483                 }, 
29484 
29485                 Package (0x02)
29486                 {
29487                     0x00, 
29488                     "SecureBoot"
29489                 }, 
29490 
29491                 Package (0x02)
29492                 {
29493                     0x00, 
29494                     "NfcAccess"
29495                 }, 
29496 
29497                 Package (0x02)
29498                 {
29499                     0x00, 
29500                     "BottomCoverTamperDetected"
29501                 }, 
29502 
29503                 Package (0x02)
29504                 {
29505                     0x00, 
29506                     "PasswordCountExceededError"
29507                 }, 
29508 
29509                 Package (0x02)
29510                 {
29511                     0x00, 
29512                     "BIOSPasswordAtBootDeviceList"
29513                 }, 
29514 
29515                 Package (0x02)
29516                 {
29517                     0x14, 
29518                     "TotalGraphicsMemory"
29519                 }, 
29520 
29521                 Package (0x02)
29522                 {
29523                     0x15, 
29524                     "BootTimeExtension"
29525                 }, 
29526 
29527                 Package (0x02)
29528                 {
29529                     0x00, 
29530                     "FnKeyAsPrimary"
29531                 }, 
29532 
29533                 Package (0x02)
29534                 {
29535                     0x00, 
29536                     "WiGig"
29537                 }, 
29538 
29539                 Package (0x02)
29540                 {
29541                     0x00, 
29542                     "BIOSPasswordAtPowerOn"
29543                 }, 
29544 
29545                 Package (0x02)
29546                 {
29547                     0x16, 
29548                     "SGXControl"
29549                 }, 
29550 
29551                 Package (0x02)
29552                 {
29553                     0x00, 
29554                     "Reserved"
29555                 }, 
29556 
29557                 Package (0x02)
29558                 {
29559                     0x00, 
29560                     "InternalStorageTamper"
29561                 }, 
29562 
29563                 Package (0x02)
29564                 {
29565                     0x00, 
29566                     "WirelessAutoDisconnection"
29567                 }, 
29568 
29569                 Package (0x02)
29570                 {
29571                     0x00, 
29572                     "Reserved"
29573                 }, 
29574 
29575                 Package (0x02)
29576                 {
29577                     0x00, 
29578                     "USBKeyProvisioning"
29579                 }, 
29580 
29581                 Package (0x02)
29582                 {
29583                     0x1B, 
29584                     "MACAddressPassThrough"
29585                 }, 
29586 
29587                 Package (0x02)
29588                 {
29589                     0x00, 
29590                     "ThunderboltAccess"
29591                 }, 
29592 
29593                 Package (0x02)
29594                 {
29595                     0x00, 
29596                     "WindowsUEFIFirmwareUpdate"
29597                 }, 
29598 
29599                 Package (0x02)
29600                 {
29601                     0x00, 
29602                     "WakeOnLANDock"
29603                 }, 
29604 
29605                 Package (0x02)
29606                 {
29607                     0x00, 
29608                     "WakeByThunderbolt"
29609                 }, 
29610 
29611                 Package (0x02)
29612                 {
29613                     0x17, 
29614                     "ThunderboltSecurityLevel"
29615                 }, 
29616 
29617                 Package (0x02)
29618                 {
29619                     0x1A, 
29620                     "PreBootForThunderboltDevice"
29621                 }, 
29622 
29623                 Package (0x02)
29624                 {
29625                     0x00, 
29626                     "PreBootForThunderboltUSBDevice"
29627                 }, 
29628 
29629                 Package (0x02)
29630                 {
29631                     0x00, 
29632                     "DeviceGuard"
29633                 }, 
29634 
29635                 Package (0x02)
29636                 {
29637                     0x18, 
29638                     "I8254ClockGating"
29639                 }, 
29640 
29641                 Package (0x02)
29642                 {
29643                     0x19, 
29644                     "ThunderboltBIOSAssistMode"
29645                 }, 
29646 
29647                 Package (0x02)
29648                 {
29649                     0x00, 
29650                     "WiFiNetworkBoot"
29651                 }, 
29652 
29653                 Package (0x02)
29654                 {
29655                     0x00, 
29656                     "LenovoCloudServices"
29657                 }, 
29658 
29659                 Package (0x02)
29660                 {
29661                     0x00, 
29662                     "IntegratedAudioAccess"
29663                 }, 
29664 
29665                 Package (0x02)
29666                 {
29667                     0x00, 
29668                     "HTTPsBoot"
29669                 }, 
29670 
29671                 Package (0x02)
29672                 {
29673                     0x00, 
29674                     "Reserved"
29675                 }, 
29676 
29677                 Package (0x02)
29678                 {
29679                     0x0F, 
29680                     "ComputraceModuleActivation"
29681                 }, 
29682 
29683                 Package (0x02)
29684                 {
29685                     0x1C, 
29686                     "MaxPasswordAttempts"
29687                 }, 
29688 
29689                 Package (0x02)
29690                 {
29691                     0x1D, 
29692                     "PasswordChangeTime"
29693                 }, 
29694 
29695                 Package (0x02)
29696                 {
29697                     0x00, 
29698                     "SystemManagementPasswordControl"
29699                 }, 
29700 
29701                 Package (0x02)
29702                 {
29703                     0x00, 
29704                     "PowerOnPasswordControl"
29705                 }, 
29706 
29707                 Package (0x02)
29708                 {
29709                     0x00, 
29710                     "HardDiskPasswordControl"
29711                 }, 
29712 
29713                 Package (0x02)
29714                 {
29715                     0x00, 
29716                     "BIOSSetupConfigurations"
29717                 }, 
29718 
29719                 Package (0x02)
29720                 {
29721                     0x00, 
29722                     "EnhancedWindowsBiometricSecurity"
29723                 }, 
29724 
29725                 Package (0x02)
29726                 {
29727                     0x00, 
29728                     "ThinkShieldsecurewipe"
29729                 }, 
29730 
29731                 Package (0x02)
29732                 {
29733                     0x00, 
29734                     "KernelDMAProtection"
29735                 }, 
29736 
29737                 Package (0x02)
29738                 {
29739                     0x1E, 
29740                     "SetupUI"
29741                 }
29742             })
29743             Name (VSEL, Package (0x1F)
29744             {
29745                 Package (0x02)
29746                 {
29747                     "Disable", 
29748                     "Enable"
29749                 }, 
29750 
29751                 Package (0x02)
29752                 {
29753                     "Disable", 
29754                     "Automatic"
29755                 }, 
29756 
29757                 Package (0x04)
29758                 {
29759                     "Active", 
29760                     "Inactive", 
29761                     "Disable", 
29762                     "Enable"
29763                 }, 
29764 
29765                 Package (0x02)
29766                 {
29767                     "Normal", 
29768                     "High"
29769                 }, 
29770 
29771                 Package (0x02)
29772                 {
29773                     "Independent", 
29774                     "Synchronized"
29775                 }, 
29776 
29777                 Package (0x02)
29778                 {
29779                     "LCD", 
29780                     "ExternalDisplay"
29781                 }, 
29782 
29783                 Package (0x03)
29784                 {
29785                     "High", 
29786                     "Normal", 
29787                     "Silent"
29788                 }, 
29789 
29790                 Package (0x03)
29791                 {
29792                     "Compatibility", 
29793                     "AHCI", 
29794                     "RAID"
29795                 }, 
29796 
29797                 Package (0x02)
29798                 {
29799                     "External", 
29800                     "InternalOnly"
29801                 }, 
29802 
29803                 Package (0x02)
29804                 {
29805                     "MaximizePerformance", 
29806                     "Balanced"
29807                 }, 
29808 
29809                 Package (0x02)
29810                 {
29811                     "Quick", 
29812                     "Diagnostics"
29813                 }, 
29814 
29815                 Package (0x0A)
29816                 {
29817                     "Disable", 
29818                     "4", 
29819                     "5", 
29820                     "6", 
29821                     "7", 
29822                     "8", 
29823                     "9", 
29824                     "10", 
29825                     "11", 
29826                     "12"
29827                 }, 
29828 
29829                 Package (0x03)
29830                 {
29831                     "Auto", 
29832                     "On", 
29833                     "Off"
29834                 }, 
29835 
29836                 Package (0x03)
29837                 {
29838                     "IntegratedGfx", 
29839                     "DiscreteGfx", 
29840                     "SwitchableGfx"
29841                 }, 
29842 
29843                 Package (0x04)
29844                 {
29845                     "Disable", 
29846                     "ACOnly", 
29847                     "ACandBattery", 
29848                     "Enable"
29849                 }, 
29850 
29851                 Package (0x03)
29852                 {
29853                     "Disable", 
29854                     "Enable", 
29855                     "Disable"
29856                 }, 
29857 
29858                 Package (0x02)
29859                 {
29860                     "HDMI", 
29861                     "USBTypeC"
29862                 }, 
29863 
29864                 Package (0x02)
29865                 {
29866                     "Generation1", 
29867                     "Automatic"
29868                 }, 
29869 
29870                 Package (0x03)
29871                 {
29872                     "ThinkLightOnly", 
29873                     "BacklightOnly", 
29874                     "Both"
29875                 }, 
29876 
29877                 Package (0x02)
29878                 {
29879                     "IPv6First", 
29880                     "IPv4First"
29881                 }, 
29882 
29883                 Package (0x02)
29884                 {
29885                     "256MB", 
29886                     "512MB"
29887                 }, 
29888 
29889                 Package (0x0B)
29890                 {
29891                     "Disable", 
29892                     "1", 
29893                     "2", 
29894                     "3", 
29895                     "", 
29896                     "5", 
29897                     "", 
29898                     "", 
29899                     "", 
29900                     "", 
29901                     "10"
29902                 }, 
29903 
29904                 Package (0x03)
29905                 {
29906                     "Disable", 
29907                     "Enable", 
29908                     "SoftwareControl"
29909                 }, 
29910 
29911                 Package (0x04)
29912                 {
29913                     "NoSecurity", 
29914                     "UserAuthorization", 
29915                     "SecureConnect", 
29916                     "DisplayPortandUSB"
29917                 }, 
29918 
29919                 Package (0x02)
29920                 {
29921                     "Disable", 
29922                     "Auto"
29923                 }, 
29924 
29925                 Package (0x03)
29926                 {
29927                     "Enable", 
29928                     "", 
29929                     "Disable"
29930                 }, 
29931 
29932                 Package (0x03)
29933                 {
29934                     "Disable", 
29935                     "Enable", 
29936                     "Pre-BootACL"
29937                 }, 
29938 
29939                 Package (0x03)
29940                 {
29941                     "Disable", 
29942                     "Enable", 
29943                     "Second"
29944                 }, 
29945 
29946                 Package (0x04)
29947                 {
29948                     "Unlimited", 
29949                     "1", 
29950                     "3", 
29951                     "100"
29952                 }, 
29953 
29954                 Package (0x02)
29955                 {
29956                     "Immediately", 
29957                     "AfterReboot"
29958                 }, 
29959 
29960                 Package (0x02)
29961                 {
29962                     "SimpleText", 
29963                     "Graphical"
29964                 }
29965             })
29966             Name (VLST, Package (0x13)
29967             {
29968                 "HDD0", 
29969                 "HDD1", 
29970                 "HDD2", 
29971                 "HDD3", 
29972                 "HDD4", 
29973                 "PXEBOOT", 
29974                 "ATAPICD0", 
29975                 "ATAPICD1", 
29976                 "ATAPICD2", 
29977                 "USBFDD", 
29978                 "USBCD", 
29979                 "USBHDD", 
29980                 "OtherHDD", 
29981                 "OtherCD", 
29982                 "NVMe0", 
29983                 "NVMe1", 
29984                 "HTTPSBOOT", 
29985                 "LENOVOCLOUD", 
29986                 "NODEV"
29987             })
29988             Name (PENC, Package (0x02)
29989             {
29990                 "ascii", 
29991                 "scancode"
29992             })
29993             Name (PKBD, Package (0x03)
29994             {
29995                 "us", 
29996                 "fr", 
29997                 "gr"
29998             })
29999             Name (PTYP, Package (0x0B)
30000             {
30001                 "pap", 
30002                 "pop", 
30003                 "uhdp1", 
30004                 "mhdp1", 
30005                 "uhdp2", 
30006                 "mhdp2", 
30007                 "uhdp3", 
30008                 "mhdp3", 
30009                 "uhdp4", 
30010                 "mhdp4", 
30011                 "smp"
30012             })
30013             Mutex (MWMI, 0x00)
30014             Name (PCFG, Buffer (0x18){})
30015             Name (IBUF, Buffer (0x0100){})
30016             Name (ILEN, 0x00)
30017             Name (PSTR, Buffer (0x81){})
30018             Method (WQA0, 1, NotSerialized)
30019             {
30020                 Acquire (MWMI, 0xFFFF)
30021                 If ((\WMIS (0x00, Arg0) != 0x00))
30022                 {
30023                     Release (MWMI)
30024                     Return ("")
30025                 }
30026 
30027                 Local0 = DerefOf (ITEM [\WITM])
30028                 Local1 = DerefOf (Local0 [0x00])
30029                 Local2 = DerefOf (Local0 [0x01])
30030                 If ((Local1 < 0x64))
30031                 {
30032                     Concatenate (Local2, ",", Local6)
30033                     Local3 = DerefOf (VSEL [Local1])
30034                     Concatenate (Local6, DerefOf (Local3 [\WSEL]), Local7)
30035                 }
30036                 Else
30037                 {
30038                     Local3 = SizeOf (VLST)
30039                     If ((\WLS0 <= Local3))
30040                     {
30041                         Concatenate (Local2, ",", Local7)
30042                         Concatenate (Local7, DerefOf (VLST [\WLS0]), Local2)
30043                     }
30044 
30045                     If ((\WLS1 <= Local3))
30046                     {
30047                         Concatenate (Local2, ":", Local7)
30048                         Concatenate (Local7, DerefOf (VLST [\WLS1]), Local2)
30049                     }
30050 
30051                     If ((\WLS2 <= Local3))
30052                     {
30053                         Concatenate (Local2, ":", Local7)
30054                         Concatenate (Local7, DerefOf (VLST [\WLS2]), Local2)
30055                     }
30056 
30057                     If ((\WLS3 <= Local3))
30058                     {
30059                         Concatenate (Local2, ":", Local7)
30060                         Concatenate (Local7, DerefOf (VLST [\WLS3]), Local2)
30061                     }
30062 
30063                     If ((\WLS4 <= Local3))
30064                     {
30065                         Concatenate (Local2, ":", Local7)
30066                         Concatenate (Local7, DerefOf (VLST [\WLS4]), Local2)
30067                     }
30068 
30069                     If ((\WLS5 <= Local3))
30070                     {
30071                         Concatenate (Local2, ":", Local7)
30072                         Concatenate (Local7, DerefOf (VLST [\WLS5]), Local2)
30073                     }
30074 
30075                     If ((\WLS6 <= Local3))
30076                     {
30077                         Concatenate (Local2, ":", Local7)
30078                         Concatenate (Local7, DerefOf (VLST [\WLS6]), Local2)
30079                     }
30080 
30081                     If ((\WLS7 <= Local3))
30082                     {
30083                         Concatenate (Local2, ":", Local7)
30084                         Concatenate (Local7, DerefOf (VLST [\WLS7]), Local2)
30085                     }
30086 
30087                     If ((\WLS8 <= Local3))
30088                     {
30089                         Concatenate (Local2, ":", Local7)
30090                         Concatenate (Local7, DerefOf (VLST [\WLS8]), Local2)
30091                     }
30092 
30093                     If ((\WLS9 <= Local3))
30094                     {
30095                         Concatenate (Local2, ":", Local7)
30096                         Concatenate (Local7, DerefOf (VLST [\WLS9]), Local2)
30097                     }
30098 
30099                     If ((\WLSA <= Local3))
30100                     {
30101                         Concatenate (Local2, ":", Local7)
30102                         Concatenate (Local7, DerefOf (VLST [\WLSA]), Local2)
30103                     }
30104 
30105                     If ((\WLSB <= Local3))
30106                     {
30107                         Concatenate (Local2, ":", Local7)
30108                         Concatenate (Local7, DerefOf (VLST [\WLSB]), Local2)
30109                     }
30110 
30111                     If ((\WLSC <= Local3))
30112                     {
30113                         Concatenate (Local2, ":", Local7)
30114                         Concatenate (Local7, DerefOf (VLST [\WLSC]), Local2)
30115                     }
30116 
30117                     If ((\WLSD <= Local3))
30118                     {
30119                         Concatenate (Local2, ":", Local7)
30120                         Concatenate (Local7, DerefOf (VLST [\WLSD]), Local2)
30121                     }
30122 
30123                     Local7 = Local2
30124                 }
30125 
30126                 Release (MWMI)
30127                 Return (Local7)
30128             }
30129 
30130             Method (WMA1, 3, NotSerialized)
30131             {
30132                 Acquire (MWMI, 0xFFFF)
30133                 If ((SizeOf (Arg2) == 0x00))
30134                 {
30135                     Local0 = 0x02
30136                 }
30137                 Else
30138                 {
30139                     Local0 = CARG (Arg2)
30140                     If ((Local0 == 0x00))
30141                     {
30142                         Local0 = WSET (ITEM, VSEL)
30143                         If ((Local0 == 0x00))
30144                         {
30145                             Local0 = \WMIS (0x01, 0x00)
30146                         }
30147                     }
30148                 }
30149 
30150                 Release (MWMI)
30151                 Return (DerefOf (RETN [Local0]))
30152             }
30153 
30154             Method (WMA2, 3, NotSerialized)
30155             {
30156                 Acquire (MWMI, 0xFFFF)
30157                 Local0 = CARG (Arg2)
30158                 If ((Local0 == 0x00))
30159                 {
30160                     If ((ILEN != 0x00))
30161                     {
30162                         Local0 = CPAS (IBUF, 0x00)
30163                     }
30164 
30165                     If ((Local0 == 0x00))
30166                     {
30167                         Local0 = \WMIS (0x02, 0x00)
30168                     }
30169                 }
30170 
30171                 Release (MWMI)
30172                 Return (DerefOf (RETN [Local0]))
30173             }
30174 
30175             Method (WMA3, 3, NotSerialized)
30176             {
30177                 Acquire (MWMI, 0xFFFF)
30178                 Local0 = CARG (Arg2)
30179                 If ((Local0 == 0x00))
30180                 {
30181                     If ((ILEN != 0x00))
30182                     {
30183                         Local0 = CPAS (IBUF, 0x00)
30184                     }
30185 
30186                     If ((Local0 == 0x00))
30187                     {
30188                         Local0 = \WMIS (0x03, 0x00)
30189                     }
30190                 }
30191 
30192                 Release (MWMI)
30193                 Return (DerefOf (RETN [Local0]))
30194             }
30195 
30196             Method (WMA4, 3, NotSerialized)
30197             {
30198                 Acquire (MWMI, 0xFFFF)
30199                 Local0 = CARG (Arg2)
30200                 If ((Local0 == 0x00))
30201                 {
30202                     If ((ILEN != 0x00))
30203                     {
30204                         Local0 = CPAS (IBUF, 0x00)
30205                     }
30206 
30207                     If ((Local0 == 0x00))
30208                     {
30209                         Local0 = \WMIS (0x04, 0x00)
30210                     }
30211                 }
30212 
30213                 Release (MWMI)
30214                 Return (DerefOf (RETN [Local0]))
30215             }
30216 
30217             Method (WQA5, 1, NotSerialized)
30218             {
30219                 Acquire (MWMI, 0xFFFF)
30220                 Local0 = \WMIS (0x05, 0x00)
30221                 PCFG [0x00] = \WSPM
30222                 PCFG [0x04] = \WSPS
30223                 PCFG [0x08] = \WSMN
30224                 PCFG [0x0C] = \WSMX
30225                 PCFG [0x10] = \WSEN
30226                 PCFG [0x14] = \WSKB
30227                 Release (MWMI)
30228                 Return (PCFG) /* \_SB_.WMI1.PCFG */
30229             }
30230 
30231             Method (WMA6, 3, NotSerialized)
30232             {
30233                 Acquire (MWMI, 0xFFFF)
30234                 If ((SizeOf (Arg2) == 0x00))
30235                 {
30236                     Local0 = 0x02
30237                 }
30238                 Else
30239                 {
30240                     Local0 = CARG (Arg2)
30241                     If ((Local0 == 0x00))
30242                     {
30243                         If ((ILEN != 0x00))
30244                         {
30245                             Local0 = SPAS (IBUF)
30246                         }
30247 
30248                         If ((Local0 == 0x00))
30249                         {
30250                             Local0 = \WMIS (0x06, 0x00)
30251                         }
30252                     }
30253                 }
30254 
30255                 Release (MWMI)
30256                 Return (DerefOf (RETN [Local0]))
30257             }
30258 
30259             Method (WMA7, 3, NotSerialized)
30260             {
30261                 If ((SizeOf (Arg2) == 0x00))
30262                 {
30263                     Return ("")
30264                 }
30265 
30266                 Local0 = CARG (Arg2)
30267                 If ((Local0 == 0x00))
30268                 {
30269                     Local1 = GITM (IBUF, ITEM)
30270                     If ((Local1 == Ones))
30271                     {
30272                         Return ("")
30273                     }
30274 
30275                     Local0 = DerefOf (ITEM [Local1])
30276                     Local1 = DerefOf (Local0 [0x00])
30277                     If ((Local1 < 0x64))
30278                     {
30279                         Local3 = DerefOf (VSEL [Local1])
30280                         Local2 = DerefOf (Local3 [0x00])
30281                         Local4 = SizeOf (Local3)
30282                         Local5 = 0x01
30283                         While ((Local5 < Local4))
30284                         {
30285                             Local6 = DerefOf (Local3 [Local5])
30286                             If ((SizeOf (Local6) != 0x00))
30287                             {
30288                                 Concatenate (Local2, ",", Local7)
30289                                 Concatenate (Local7, Local6, Local2)
30290                             }
30291 
30292                             Local5++
30293                         }
30294                     }
30295                     Else
30296                     {
30297                         Local2 = DerefOf (VLST [0x00])
30298                         Local4 = SizeOf (VLST)
30299                         Local5 = 0x01
30300                         While ((Local5 < Local4))
30301                         {
30302                             Local6 = DerefOf (VLST [Local5])
30303                             Concatenate (Local2, ",", Local7)
30304                             Concatenate (Local7, Local6, Local2)
30305                             Local5++
30306                         }
30307                     }
30308                 }
30309 
30310                 Return (Local2)
30311             }
30312 
30313             Method (CARG, 1, NotSerialized)
30314             {
30315                 Local0 = SizeOf (Arg0)
30316                 If ((Local0 == 0x00))
30317                 {
30318                     IBUF = 0x00
30319                     ILEN = 0x00
30320                     Return (0x00)
30321                 }
30322 
30323                 If ((ObjectType (Arg0) != 0x02))
30324                 {
30325                     Return (0x02)
30326                 }
30327 
30328                 If ((Local0 >= 0xFF))
30329                 {
30330                     Return (0x02)
30331                 }
30332 
30333                 IBUF = Arg0
30334                 Local0--
30335                 Local1 = DerefOf (IBUF [Local0])
30336                 If (((Local1 == 0x3B) || (Local1 == 0x2A)))
30337                 {
30338                     IBUF [Local0] = 0x00
30339                     ILEN = Local0
30340                 }
30341                 Else
30342                 {
30343                     ILEN = SizeOf (Arg0)
30344                 }
30345 
30346                 Return (0x00)
30347             }
30348 
30349             Method (SCMP, 3, NotSerialized)
30350             {
30351                 Local0 = SizeOf (Arg0)
30352                 If ((Local0 == 0x00))
30353                 {
30354                     Return (0x00)
30355                 }
30356 
30357                 Local0++
30358                 Name (STR1, Buffer (Local0){})
30359                 STR1 = Arg0
30360                 Local0--
30361                 Local1 = 0x00
30362                 Local2 = Arg2
30363                 While ((Local1 < Local0))
30364                 {
30365                     Local3 = DerefOf (STR1 [Local1])
30366                     Local4 = DerefOf (Arg1 [Local2])
30367                     If ((Local3 != Local4))
30368                     {
30369                         Return (0x00)
30370                     }
30371 
30372                     Local1++
30373                     Local2++
30374                 }
30375 
30376                 Local4 = DerefOf (Arg1 [Local2])
30377                 If ((Local4 == 0x00))
30378                 {
30379                     Return (0x01)
30380                 }
30381 
30382                 If (((Local4 == 0x2C) || (Local4 == 0x3A)))
30383                 {
30384                     Return (0x01)
30385                 }
30386 
30387                 Return (0x00)
30388             }
30389 
30390             Method (GITM, 2, NotSerialized)
30391             {
30392                 Local0 = 0x00
30393                 Local1 = SizeOf (Arg1)
30394                 While ((Local0 < Local1))
30395                 {
30396                     Local3 = DerefOf (DerefOf (Arg1 [Local0]) [0x01])
30397                     If (SCMP (Local3, Arg0, 0x00))
30398                     {
30399                         Return (Local0)
30400                     }
30401 
30402                     Local0++
30403                 }
30404 
30405                 Return (Ones)
30406             }
30407 
30408             Method (GSEL, 3, NotSerialized)
30409             {
30410                 Local0 = 0x00
30411                 Local1 = SizeOf (Arg0)
30412                 While ((Local0 < Local1))
30413                 {
30414                     Local2 = DerefOf (Arg0 [Local0])
30415                     If (SCMP (Local2, Arg1, Arg2))
30416                     {
30417                         Return (Local0)
30418                     }
30419 
30420                     Local0++
30421                 }
30422 
30423                 Return (Ones)
30424             }
30425 
30426             Method (SLEN, 2, NotSerialized)
30427             {
30428                 Local0 = DerefOf (Arg0 [Arg1])
30429                 Return (SizeOf (Local0))
30430             }
30431 
30432             Method (CLRP, 0, NotSerialized)
30433             {
30434                 \WPAS = 0x00
30435                 \WPNW = 0x00
30436             }
30437 
30438             Method (GPAS, 2, NotSerialized)
30439             {
30440                 Local0 = Arg1
30441                 Local1 = 0x00
30442                 While ((Local1 <= 0x80))
30443                 {
30444                     Local2 = DerefOf (Arg0 [Local0])
30445                     If (((Local2 == 0x2C) || (Local2 == 0x00)))
30446                     {
30447                         PSTR [Local1] = 0x00
30448                         Return (Local1)
30449                     }
30450 
30451                     PSTR [Local1] = Local2
30452                     Local0++
30453                     Local1++
30454                 }
30455 
30456                 PSTR [Local1] = 0x00
30457                 Return (Ones)
30458             }
30459 
30460             Method (CPAS, 2, NotSerialized)
30461             {
30462                 CLRP ()
30463                 Local0 = Arg1
30464                 Local1 = GPAS (Arg0, Local0)
30465                 If ((Local1 == Ones))
30466                 {
30467                     Return (0x02)
30468                 }
30469 
30470                 If ((Local1 == 0x00))
30471                 {
30472                     Return (0x02)
30473                 }
30474 
30475                 \WPAS = PSTR /* \_SB_.WMI1.PSTR */
30476                 Local0 += Local1
30477                 Local0++
30478                 Local6 = GSEL (PENC, Arg0, Local0)
30479                 If ((Local6 == Ones))
30480                 {
30481                     Return (0x02)
30482                 }
30483 
30484                 \WENC = Local6
30485                 If ((Local6 == 0x00))
30486                 {
30487                     Local0 += SLEN (PENC, 0x00)
30488                     If ((DerefOf (Arg0 [Local0]) != 0x2C))
30489                     {
30490                         Return (0x02)
30491                     }
30492 
30493                     Local0++
30494                     Local6 = GSEL (PKBD, Arg0, Local0)
30495                     If ((Local6 == Ones))
30496                     {
30497                         Return (0x02)
30498                     }
30499 
30500                     \WKBD = Local6
30501                 }
30502 
30503                 Return (0x00)
30504             }
30505 
30506             Method (SPAS, 1, NotSerialized)
30507             {
30508                 CLRP ()
30509                 Local6 = GSEL (PTYP, Arg0, 0x00)
30510                 If ((Local6 == Ones))
30511                 {
30512                     Return (0x02)
30513                 }
30514 
30515                 \WPTY = Local6
30516                 Local0 = SLEN (PTYP, Local6)
30517                 If ((DerefOf (Arg0 [Local0]) != 0x2C))
30518                 {
30519                     Return (0x02)
30520                 }
30521 
30522                 Local0++
30523                 Local1 = GPAS (Arg0, Local0)
30524                 If (((Local1 == Ones) || (Local1 == 0x00)))
30525                 {
30526                     Return (0x02)
30527                 }
30528 
30529                 \WPAS = PSTR /* \_SB_.WMI1.PSTR */
30530                 Local0 += Local1
30531                 If ((DerefOf (Arg0 [Local0]) != 0x2C))
30532                 {
30533                     Return (0x02)
30534                 }
30535 
30536                 Local0++
30537                 Local1 = GPAS (Arg0, Local0)
30538                 If ((Local1 == Ones))
30539                 {
30540                     Return (0x02)
30541                 }
30542 
30543                 If ((Local1 == 0x00))
30544                 {
30545                     PSTR = 0x00
30546                 }
30547 
30548                 \WPNW = PSTR /* \_SB_.WMI1.PSTR */
30549                 Local0 += Local1
30550                 Local0++
30551                 Local6 = GSEL (PENC, Arg0, Local0)
30552                 If ((Local6 == Ones))
30553                 {
30554                     Return (0x02)
30555                 }
30556 
30557                 \WENC = Local6
30558                 If ((Local6 == 0x00))
30559                 {
30560                     Local0 += SLEN (PENC, 0x00)
30561                     If ((DerefOf (Arg0 [Local0]) != 0x2C))
30562                     {
30563                         Return (0x02)
30564                     }
30565 
30566                     Local0++
30567                     Local6 = GSEL (PKBD, Arg0, Local0)
30568                     If ((Local6 == Ones))
30569                     {
30570                         Return (0x02)
30571                     }
30572 
30573                     \WKBD = Local6
30574                 }
30575 
30576                 Return (0x00)
30577             }
30578 
30579             Method (WSET, 2, NotSerialized)
30580             {
30581                 Local0 = ILEN /* \_SB_.WMI1.ILEN */
30582                 Local0++
30583                 Local1 = GITM (IBUF, Arg0)
30584                 If ((Local1 == Ones))
30585                 {
30586                     Return (0x02)
30587                 }
30588 
30589                 \WITM = Local1
30590                 Local3 = DerefOf (Arg0 [Local1])
30591                 Local4 = DerefOf (Local3 [0x01])
30592                 Local2 = SizeOf (Local4)
30593                 Local2++
30594                 Local4 = DerefOf (Local3 [0x00])
30595                 If ((Local4 < 0x64))
30596                 {
30597                     Local5 = DerefOf (Arg1 [Local4])
30598                     Local6 = GSEL (Local5, IBUF, Local2)
30599                     If ((Local6 == Ones))
30600                     {
30601                         Return (0x02)
30602                     }
30603 
30604                     \WSEL = Local6
30605                     Local2 += SLEN (Local5, Local6)
30606                     Local4 = DerefOf (IBUF [Local2])
30607                 }
30608                 Else
30609                 {
30610                     \WLS0 = 0x3F
30611                     \WLS1 = 0x3F
30612                     \WLS2 = 0x3F
30613                     \WLS3 = 0x3F
30614                     \WLS4 = 0x3F
30615                     \WLS5 = 0x3F
30616                     \WLS6 = 0x3F
30617                     \WLS7 = 0x3F
30618                     \WLS8 = 0x3F
30619                     \WLS9 = 0x3F
30620                     \WLSA = 0x3F
30621                     \WLSB = 0x3F
30622                     \WLSC = 0x3F
30623                     \WLSD = 0x3F
30624                     Local6 = GSEL (VLST, IBUF, Local2)
30625                     If ((Local6 == Ones))
30626                     {
30627                         Return (0x02)
30628                     }
30629 
30630                     \WLS0 = Local6
30631                     Local2 += SLEN (VLST, Local6)
30632                     Local4 = DerefOf (IBUF [Local2])
30633                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30634                     {
30635                         Local2++
30636                         Local6 = GSEL (VLST, IBUF, Local2)
30637                         If ((Local6 == Ones))
30638                         {
30639                             Return (0x02)
30640                         }
30641 
30642                         \WLS1 = Local6
30643                         Local2 += SLEN (VLST, Local6)
30644                         Local4 = DerefOf (IBUF [Local2])
30645                     }
30646 
30647                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30648                     {
30649                         Local2++
30650                         Local6 = GSEL (VLST, IBUF, Local2)
30651                         If ((Local6 == Ones))
30652                         {
30653                             Return (0x02)
30654                         }
30655 
30656                         \WLS2 = Local6
30657                         Local2 += SLEN (VLST, Local6)
30658                         Local4 = DerefOf (IBUF [Local2])
30659                     }
30660 
30661                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30662                     {
30663                         Local2++
30664                         Local6 = GSEL (VLST, IBUF, Local2)
30665                         If ((Local6 == Ones))
30666                         {
30667                             Return (0x02)
30668                         }
30669 
30670                         \WLS3 = Local6
30671                         Local2 += SLEN (VLST, Local6)
30672                         Local4 = DerefOf (IBUF [Local2])
30673                     }
30674 
30675                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30676                     {
30677                         Local2++
30678                         Local6 = GSEL (VLST, IBUF, Local2)
30679                         If ((Local6 == Ones))
30680                         {
30681                             Return (0x02)
30682                         }
30683 
30684                         \WLS4 = Local6
30685                         Local2 += SLEN (VLST, Local6)
30686                         Local4 = DerefOf (IBUF [Local2])
30687                     }
30688 
30689                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30690                     {
30691                         Local2++
30692                         Local6 = GSEL (VLST, IBUF, Local2)
30693                         If ((Local6 == Ones))
30694                         {
30695                             Return (0x02)
30696                         }
30697 
30698                         \WLS5 = Local6
30699                         Local2 += SLEN (VLST, Local6)
30700                         Local4 = DerefOf (IBUF [Local2])
30701                     }
30702 
30703                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30704                     {
30705                         Local2++
30706                         Local6 = GSEL (VLST, IBUF, Local2)
30707                         If ((Local6 == Ones))
30708                         {
30709                             Return (0x02)
30710                         }
30711 
30712                         \WLS6 = Local6
30713                         Local2 += SLEN (VLST, Local6)
30714                         Local4 = DerefOf (IBUF [Local2])
30715                     }
30716 
30717                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30718                     {
30719                         Local2++
30720                         Local6 = GSEL (VLST, IBUF, Local2)
30721                         If ((Local6 == Ones))
30722                         {
30723                             Return (0x02)
30724                         }
30725 
30726                         \WLS7 = Local6
30727                         Local2 += SLEN (VLST, Local6)
30728                         Local4 = DerefOf (IBUF [Local2])
30729                     }
30730 
30731                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30732                     {
30733                         Local2++
30734                         Local6 = GSEL (VLST, IBUF, Local2)
30735                         If ((Local6 == Ones))
30736                         {
30737                             Return (0x02)
30738                         }
30739 
30740                         \WLS8 = Local6
30741                         Local2 += SLEN (VLST, Local6)
30742                         Local4 = DerefOf (IBUF [Local2])
30743                     }
30744 
30745                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30746                     {
30747                         Local2++
30748                         Local6 = GSEL (VLST, IBUF, Local2)
30749                         If ((Local6 == Ones))
30750                         {
30751                             Return (0x02)
30752                         }
30753 
30754                         \WLS9 = Local6
30755                         Local2 += SLEN (VLST, Local6)
30756                         Local4 = DerefOf (IBUF [Local2])
30757                     }
30758 
30759                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30760                     {
30761                         Local2++
30762                         Local6 = GSEL (VLST, IBUF, Local2)
30763                         If ((Local6 == Ones))
30764                         {
30765                             Return (0x02)
30766                         }
30767 
30768                         \WLSA = Local6
30769                         Local2 += SLEN (VLST, Local6)
30770                         Local4 = DerefOf (IBUF [Local2])
30771                     }
30772 
30773                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30774                     {
30775                         Local2++
30776                         Local6 = GSEL (VLST, IBUF, Local2)
30777                         If ((Local6 == Ones))
30778                         {
30779                             Return (0x02)
30780                         }
30781 
30782                         \WLSB = Local6
30783                         Local2 += SLEN (VLST, Local6)
30784                         Local4 = DerefOf (IBUF [Local2])
30785                     }
30786 
30787                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30788                     {
30789                         Local2++
30790                         Local6 = GSEL (VLST, IBUF, Local2)
30791                         If ((Local6 == Ones))
30792                         {
30793                             Return (0x02)
30794                         }
30795 
30796                         \WLSC = Local6
30797                         Local2 += SLEN (VLST, Local6)
30798                         Local4 = DerefOf (IBUF [Local2])
30799                     }
30800 
30801                     If (((Local2 < Local0) && (Local4 == 0x3A)))
30802                     {
30803                         Local2++
30804                         Local6 = GSEL (VLST, IBUF, Local2)
30805                         If ((Local6 == Ones))
30806                         {
30807                             Return (0x02)
30808                         }
30809 
30810                         \WLSD = Local6
30811                         Local2 += SLEN (VLST, Local6)
30812                         Local4 = DerefOf (IBUF [Local2])
30813                     }
30814                 }
30815 
30816                 If (((Local4 == 0x2C) && (Local2 < Local0)))
30817                 {
30818                     Local2++
30819                     Local0 = CPAS (IBUF, Local2)
30820                     If ((Local0 != 0x00))
30821                     {
30822                         Return (Local0)
30823                     }
30824                 }
30825 
30826                 Return (0x00)
30827             }
30828 
30829             Name (WQBA, Buffer (0x089D)
30830             {
30831                 /* 0000 */  0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00,  // FOMB....
30832                 /* 0008 */  0x8D, 0x08, 0x00, 0x00, 0xF2, 0x36, 0x00, 0x00,  // .....6..
30833                 /* 0010 */  0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54,  // DS...}.T
30834                 /* 0018 */  0xA8, 0xC9, 0x9A, 0x00, 0x01, 0x06, 0x18, 0x42,  // .......B
30835                 /* 0020 */  0x10, 0x13, 0x10, 0x0A, 0x0D, 0x21, 0x02, 0x0B,  // .....!..
30836                 /* 0028 */  0x83, 0x50, 0x4C, 0x18, 0x14, 0xA0, 0x45, 0x41,  // .PL...EA
30837                 /* 0030 */  0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02,  // .....!..
30838                 /* 0038 */  0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5,  // ..p.@...
30839                 /* 0040 */  0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F,  // (r."....
30840                 /* 0048 */  0x31, 0x0E, 0x88, 0x14, 0x40, 0x48, 0x26, 0x84,  // 1...@H&.
30841                 /* 0050 */  0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F,  // D.S!p.._
30842                 /* 0058 */  0x01, 0x08, 0x1D, 0xA2, 0xC9, 0xA0, 0x00, 0xA7,  // ........
30843                 /* 0060 */  0x08, 0x82, 0xB4, 0x65, 0x01, 0xBA, 0x05, 0xF8,  // ...e....
30844                 /* 0068 */  0x16, 0xA0, 0x1D, 0x42, 0x68, 0x15, 0x0A, 0x30,  // ...Bh..0
30845                 /* 0070 */  0x29, 0xC0, 0x27, 0x98, 0x2C, 0x0A, 0x90, 0x0D,  // ).'.,...
30846                 /* 0078 */  0x26, 0xDB, 0x70, 0x64, 0x18, 0x4C, 0xE4, 0x18,  // &.pd.L..
30847                 /* 0080 */  0x50, 0x62, 0xC6, 0x80, 0xD2, 0x39, 0x05, 0xD9,  // Pb...9..
30848                 /* 0088 */  0x04, 0x16, 0x74, 0xA1, 0x28, 0x9A, 0x46, 0x94,  // ..t.(.F.
30849                 /* 0090 */  0x04, 0x07, 0x75, 0x0C, 0x11, 0x82, 0x97, 0x2B,  // ..u....+
30850                 /* 0098 */  0x40, 0xF2, 0x04, 0xA4, 0x79, 0x5E, 0xB2, 0x3E,  // @...y^.>
30851                 /* 00A0 */  0x08, 0x0D, 0x81, 0x8D, 0x80, 0x47, 0x91, 0x00,  // .....G..
30852                 /* 00A8 */  0xC2, 0x62, 0x2C, 0x53, 0xE2, 0x61, 0x50, 0x1E,  // .b,S.aP.
30853                 /* 00B0 */  0x40, 0x24, 0x67, 0xA8, 0x28, 0x60, 0x7B, 0x9D,  // @$g.(`{.
30854                 /* 00B8 */  0x88, 0x86, 0x75, 0x9C, 0x4C, 0x12, 0x1C, 0x6A,  // ..u.L..j
30855                 /* 00C0 */  0x94, 0x96, 0x28, 0xC0, 0xFC, 0xC8, 0x34, 0x91,  // ..(...4.
30856                 /* 00C8 */  0x63, 0x6B, 0x7A, 0xC4, 0x82, 0x64, 0xD2, 0x86,  // ckz..d..
30857                 /* 00D0 */  0x82, 0x1A, 0xBA, 0xA7, 0x75, 0x52, 0x9E, 0x68,  // ....uR.h
30858                 /* 00D8 */  0xC4, 0x83, 0x32, 0x4C, 0x02, 0x8F, 0x82, 0xA1,  // ..2L....
30859                 /* 00E0 */  0x71, 0x82, 0xB2, 0x20, 0xE4, 0x60, 0xA0, 0x28,  // q.. .`.(
30860                 /* 00E8 */  0xC0, 0x93, 0xF0, 0x1C, 0x8B, 0x17, 0x20, 0x7C,  // ...... |
30861                 /* 00F0 */  0xC6, 0xE4, 0x28, 0x10, 0x23, 0x81, 0x8F, 0x04,  // ..(.#...
30862                 /* 00F8 */  0x1E, 0xCD, 0x31, 0x63, 0x81, 0xC2, 0x05, 0x3C,  // ..1c...<
30863                 /* 0100 */  0x9F, 0x63, 0x88, 0x1C, 0xF7, 0x50, 0x63, 0x1C,  // .c...Pc.
30864                 /* 0108 */  0x45, 0xE4, 0x04, 0xEF, 0x00, 0x51, 0x8C, 0x56,  // E....Q.V
30865                 /* 0110 */  0xD0, 0xBC, 0x85, 0x18, 0x2C, 0x9A, 0xC1, 0x7A,  // ....,..z
30866                 /* 0118 */  0x06, 0x27, 0x83, 0x4E, 0xF0, 0xFF, 0x3F, 0x02,  // .'.N..?.
30867                 /* 0120 */  0x2E, 0x03, 0x42, 0x1E, 0x05, 0x58, 0x1D, 0x94,  // ..B..X..
30868                 /* 0128 */  0xA6, 0x61, 0x82, 0xEE, 0x05, 0xBC, 0x1A, 0x1A,  // .a......
30869                 /* 0130 */  0x13, 0xA0, 0x11, 0x43, 0xCA, 0x04, 0x38, 0xBB,  // ...C..8.
30870                 /* 0138 */  0x2F, 0x68, 0x46, 0x6D, 0x09, 0x30, 0x27, 0x40,  // /hFm.0'@
30871                 /* 0140 */  0x9B, 0x00, 0x6F, 0x08, 0x42, 0x39, 0xCF, 0x28,  // ..o.B9.(
30872                 /* 0148 */  0xC7, 0x72, 0x8A, 0x51, 0x1E, 0x06, 0x62, 0xBE,  // .r.Q..b.
30873                 /* 0150 */  0x0C, 0x04, 0x8D, 0x12, 0x23, 0xE6, 0xB9, 0xC4,  // ....#...
30874                 /* 0158 */  0x35, 0x6C, 0x84, 0x18, 0x21, 0x4F, 0x21, 0x50,  // 5l..!O!P
30875                 /* 0160 */  0xDC, 0xF6, 0x07, 0x41, 0x06, 0x8D, 0x1B, 0xBD,  // ...A....
30876                 /* 0168 */  0x4F, 0x0B, 0x67, 0x75, 0x02, 0x47, 0xFF, 0xA4,  // O.gu.G..
30877                 /* 0170 */  0x60, 0x02, 0x4F, 0xF9, 0xC0, 0x9E, 0x0D, 0x4E,  // `.O....N
30878                 /* 0178 */  0xE0, 0x58, 0xA3, 0xC6, 0x38, 0x95, 0x04, 0x8E,  // .X..8...
30879                 /* 0180 */  0xFD, 0x80, 0x90, 0x06, 0x10, 0x45, 0x82, 0x47,  // .....E.G
30880                 /* 0188 */  0x9D, 0x16, 0x7C, 0x2E, 0xF0, 0xD0, 0x0E, 0xDA,  // ..|.....
30881                 /* 0190 */  0x73, 0x3C, 0x81, 0x20, 0x87, 0x70, 0x04, 0x4F,  // s<. .p.O
30882                 /* 0198 */  0x0C, 0x0F, 0x04, 0x1E, 0x03, 0xBB, 0x29, 0xF8,  // ......).
30883                 /* 01A0 */  0x08, 0xE0, 0x13, 0x02, 0xDE, 0x35, 0xA0, 0xAE,  // .....5..
30884                 /* 01A8 */  0x06, 0x0F, 0x06, 0x6C, 0xD0, 0xE1, 0x30, 0xE3,  // ...l..0.
30885                 /* 01B0 */  0xF5, 0xF0, 0xC3, 0x9D, 0xC0, 0x49, 0x3E, 0x60,  // .....I>`
30886                 /* 01B8 */  0xF0, 0xC3, 0x86, 0x07, 0x87, 0x9B, 0xE7, 0xC9,  // ........
30887                 /* 01C0 */  0x1C, 0x59, 0xA9, 0x02, 0xCC, 0x1E, 0x0E, 0x74,  // .Y.....t
30888                 /* 01C8 */  0x90, 0xF0, 0x69, 0x83, 0x9D, 0x01, 0x30, 0xF2,  // ..i...0.
30889                 /* 01D0 */  0x07, 0x81, 0x1A, 0x99, 0xA1, 0x3D, 0xEE, 0x97,  // .....=..
30890                 /* 01D8 */  0x0E, 0x43, 0x3E, 0x27, 0x1C, 0x16, 0x13, 0x7B,  // .C>'...{
30891                 /* 01E0 */  0xEA, 0xA0, 0xE3, 0x01, 0xFF, 0x65, 0xE4, 0x39,  // .....e.9
30892                 /* 01E8 */  0xC3, 0xD3, 0xF7, 0x7C, 0x4D, 0x30, 0xEC, 0xC0,  // ...|M0..
30893                 /* 01F0 */  0xD1, 0x03, 0x31, 0xF4, 0xC3, 0xC6, 0x61, 0x9C,  // ..1...a.
30894                 /* 01F8 */  0x86, 0xEF, 0x1F, 0x3E, 0x2F, 0xC0, 0x38, 0x05,  // ...>/.8.
30895                 /* 0200 */  0x78, 0xE4, 0xFE, 0xFF, 0x1F, 0x52, 0x7C, 0x9A,  // x....R|.
30896                 /* 0208 */  0xE0, 0x47, 0x0B, 0x9F, 0x26, 0xD8, 0xF5, 0xE0,  // .G..&...
30897                 /* 0210 */  0x34, 0x9E, 0x03, 0x3C, 0x9C, 0xB3, 0xF2, 0x61,  // 4..<...a
30898                 /* 0218 */  0x02, 0x6C, 0xF7, 0x13, 0x36, 0xA2, 0x77, 0x0B,  // .l..6.w.
30899                 /* 0220 */  0x8F, 0x06, 0x7B, 0x0A, 0x00, 0xDF, 0xF9, 0x05,  // ..{.....
30900                 /* 0228 */  0x9C, 0x77, 0x0D, 0x36, 0x58, 0x18, 0xE7, 0x17,  // .w.6X...
30901                 /* 0230 */  0xE0, 0x71, 0x42, 0xF0, 0x10, 0xF8, 0x41, 0xC2,  // .qB...A.
30902                 /* 0238 */  0x43, 0xE0, 0x03, 0x78, 0xFE, 0x38, 0x43, 0x2B,  // C..x.8C+
30903                 /* 0240 */  0x9D, 0x17, 0x72, 0x60, 0xF0, 0xCE, 0x39, 0x30,  // ..r`..90
30904                 /* 0248 */  0x46, 0xC1, 0xF3, 0x3C, 0x36, 0x4C, 0xA0, 0x20,  // F..<6L. 
30905                 /* 0250 */  0xAF, 0x01, 0x85, 0x7A, 0x16, 0x50, 0x18, 0x9F,  // ...z.P..
30906                 /* 0258 */  0x6A, 0x80, 0xD7, 0xFF, 0xFF, 0x54, 0x03, 0x5C,  // j....T.\
30907                 /* 0260 */  0x0E, 0x07, 0xB8, 0x93, 0x03, 0xDC, 0x7B, 0x01,  // ......{.
30908                 /* 0268 */  0xBB, 0x38, 0x3C, 0xD7, 0xC0, 0x15, 0x7D, 0xAE,  // .8<...}.
30909                 /* 0270 */  0x81, 0x7A, 0x6F, 0x29, 0x6E, 0x8C, 0xBA, 0xC6,  // .zo)n...
30910                 /* 0278 */  0x04, 0x79, 0x14, 0x78, 0xA4, 0x89, 0xF2, 0x3C,  // .y.x...<
30911                 /* 0280 */  0xF3, 0x2E, 0x13, 0xE1, 0xD9, 0xC6, 0xD7, 0x1A,  // ........
30912                 /* 0288 */  0x4F, 0x21, 0x8E, 0xAF, 0x35, 0x46, 0x7C, 0x99,  // O!..5F|.
30913                 /* 0290 */  0x78, 0xB7, 0x31, 0xEE, 0xC1, 0x3D, 0xD6, 0x3C,  // x.1..=.<
30914                 /* 0298 */  0xE4, 0x18, 0xE4, 0x68, 0x22, 0xBC, 0x18, 0x04,  // ...h"...
30915                 /* 02A0 */  0x7C, 0xBC, 0xF1, 0xB1, 0x06, 0xBC, 0x62, 0x5E,  // |.....b^
30916                 /* 02A8 */  0x28, 0xB2, 0x70, 0xAC, 0x01, 0x34, 0xFE, 0xFF,  // (.p..4..
30917                 /* 02B0 */  0x8F, 0x35, 0xC0, 0x0D, 0xEB, 0x01, 0x05, 0x7C,  // .5.....|
30918                 /* 02B8 */  0x47, 0x06, 0x76, 0x43, 0x81, 0x77, 0x42, 0x01,  // G.vC.wB.
30919                 /* 02C0 */  0xFC, 0x24, 0x7E, 0x01, 0xE8, 0xC8, 0xE1, 0xB4,  // .$~.....
30920                 /* 02C8 */  0x20, 0xB2, 0xF1, 0x06, 0xF0, 0x29, 0x80, 0xAA,  //  ....)..
30921                 /* 02D0 */  0x01, 0xD2, 0x34, 0x61, 0x13, 0x4C, 0x4F, 0x2E,  // ..4a.LO.
30922                 /* 02D8 */  0x78, 0x1F, 0x09, 0x9C, 0x9B, 0x44, 0xC9, 0x87,  // x....D..
30923                 /* 02E0 */  0x45, 0xE1, 0x9C, 0xF5, 0x20, 0x42, 0x41, 0x0C,  // E... BA.
30924                 /* 02E8 */  0xE8, 0x20, 0xC7, 0x09, 0xF4, 0x19, 0xC5, 0x07,  // . ......
30925                 /* 02F0 */  0x91, 0x13, 0x7D, 0x22, 0xF4, 0xA0, 0x3C, 0x8C,  // ..}"..<.
30926                 /* 02F8 */  0x77, 0x14, 0x76, 0x02, 0xF1, 0x61, 0xC2, 0x63,  // w.v..a.c
30927                 /* 0300 */  0xF7, 0x31, 0x81, 0xFF, 0x63, 0x3C, 0x1B, 0xA3,  // .1..c<..
30928                 /* 0308 */  0x5B, 0x0D, 0x86, 0xFE, 0xFF, 0xE7, 0x14, 0x0E,  // [.......
30929                 /* 0310 */  0xE6, 0x83, 0x08, 0x27, 0xA8, 0xEB, 0x26, 0x01,  // ...'..&.
30930                 /* 0318 */  0x32, 0x7D, 0x47, 0x05, 0x50, 0x00, 0xF9, 0x5E,  // 2}G.P..^
30931                 /* 0320 */  0xE0, 0x73, 0xC0, 0xB3, 0x01, 0x1B, 0xC3, 0xA3,  // .s......
30932                 /* 0328 */  0x80, 0xD1, 0x8C, 0xCE, 0xC3, 0x4F, 0x16, 0x15,  // .....O..
30933                 /* 0330 */  0x77, 0xB2, 0x14, 0xC4, 0x93, 0x75, 0x94, 0xC9,  // w....u..
30934                 /* 0338 */  0xA2, 0x67, 0xE2, 0x7B, 0x85, 0x67, 0xF4, 0xA6,  // .g.{.g..
30935                 /* 0340 */  0xE5, 0x39, 0x7A, 0xC2, 0xBE, 0x87, 0xC0, 0x3A,  // .9z....:
30936                 /* 0348 */  0x0C, 0x84, 0x7C, 0x30, 0xF0, 0x34, 0x0C, 0xE7,  // ..|0.4..
30937                 /* 0350 */  0xC9, 0x72, 0x38, 0x4F, 0x96, 0x8F, 0xC5, 0xD7,  // .r8O....
30938                 /* 0358 */  0x10, 0xF0, 0x09, 0x9C, 0x2D, 0xC8, 0xE1, 0x31,  // ....-..1
30939                 /* 0360 */  0xB1, 0x46, 0x45, 0xAF, 0x42, 0x1E, 0x1E, 0xBF,  // .FE.B...
30940                 /* 0368 */  0x1C, 0x78, 0x3E, 0xCF, 0x08, 0x47, 0xF9, 0x24,  // .x>..G.$
30941                 /* 0370 */  0x81, 0xC3, 0x78, 0x26, 0xF1, 0x10, 0x7D, 0x2B,  // ..x&..}+
30942                 /* 0378 */  0x82, 0x35, 0x91, 0x93, 0xF6, 0x6D, 0xE1, 0x64,  // .5...m.d
30943                 /* 0380 */  0x83, 0xBE, 0x9E, 0x61, 0x6E, 0x45, 0xB0, 0xFF,  // ...anE..
30944                 /* 0388 */  0xFF, 0xB7, 0x22, 0x38, 0x17, 0x34, 0x98, 0x99,  // .."8.4..
30945                 /* 0390 */  0xEE, 0x55, 0xA8, 0x58, 0xF7, 0x2A, 0x40, 0xEC,  // .U.X.*@.
30946                 /* 0398 */  0xB0, 0x5E, 0x7B, 0x7C, 0xB0, 0x82, 0x7B, 0xAF,  // .^{|..{.
30947                 /* 03A0 */  0x82, 0x7B, 0xA9, 0x7A, 0x56, 0x38, 0xC6, 0xF0,  // .{.zV8..
30948                 /* 03A8 */  0x0F, 0x53, 0x31, 0x4E, 0xE9, 0xB5, 0xD3, 0x40,  // .S1N...@
30949                 /* 03B0 */  0x61, 0xA2, 0xC4, 0x7B, 0xAF, 0xF2, 0x18, 0xDF,  // a..{....
30950                 /* 03B8 */  0xAB, 0xD8, 0x15, 0x2A, 0x4C, 0xAC, 0x97, 0x2B,  // ...*L..+
30951                 /* 03C0 */  0xA3, 0xBE, 0x4E, 0x84, 0x0B, 0x14, 0x24, 0xD2,  // ..N...$.
30952                 /* 03C8 */  0xAB, 0x55, 0x94, 0xC8, 0xF1, 0x0D, 0xF9, 0x5E,  // .U.....^
30953                 /* 03D0 */  0x05, 0x5E, 0x39, 0xF7, 0x2A, 0x90, 0xFD, 0xFF,  // .^9.*...
30954                 /* 03D8 */  0xEF, 0x55, 0x80, 0x79, 0xB4, 0xF7, 0x2A, 0x30,  // .U.y..*0
30955                 /* 03E0 */  0x5E, 0x1B, 0xD8, 0x0D, 0x09, 0x16, 0xD0, 0x8B,  // ^.......
30956                 /* 03E8 */  0x15, 0x60, 0x28, 0xF3, 0xC5, 0x8A, 0xE6, 0xBD,  // .`(.....
30957                 /* 03F0 */  0x58, 0x21, 0xFE, 0xFF, 0xE7, 0x12, 0xA6, 0xE7,  // X!......
30958                 /* 03F8 */  0x62, 0x45, 0xE6, 0x09, 0xFF, 0x66, 0x05, 0x70,  // bE...f.p
30959                 /* 0400 */  0xFA, 0xFF, 0x7F, 0xB3, 0x02, 0x8C, 0xDD, 0x8B,  // ........
30960                 /* 0408 */  0x30, 0x47, 0x2B, 0x78, 0x29, 0x6F, 0x56, 0x34,  // 0G+x)oV4
30961                 /* 0410 */  0xCE, 0x32, 0x14, 0x70, 0x41, 0x14, 0xC6, 0x37,  // .2.pA..7
30962                 /* 0418 */  0x2B, 0xC0, 0xD1, 0x75, 0x05, 0x37, 0x64, 0xB8,  // +..u.7d.
30963                 /* 0420 */  0x60, 0x51, 0x82, 0xF9, 0x10, 0xE2, 0xE9, 0x1C,  // `Q......
30964                 /* 0428 */  0xF1, 0x43, 0xC2, 0x4B, 0xC0, 0x63, 0x8E, 0x07,  // .C.K.c..
30965                 /* 0430 */  0xFC, 0x40, 0xE0, 0xCB, 0x15, 0x98, 0xFE, 0xFF,  // .@......
30966                 /* 0438 */  0x04, 0x3E, 0xF9, 0x9E, 0xE5, 0xDB, 0xD4, 0x7B,  // .>.....{
30967                 /* 0440 */  0x2F, 0x3F, 0x60, 0xBD, 0x57, 0xF9, 0xF0, 0x1B,  // /?`.W...
30968                 /* 0448 */  0xEB, 0x9D, 0xE1, 0xE5, 0xCA, 0x23, 0x89, 0x72,  // .....#.r
30969                 /* 0450 */  0x12, 0xA1, 0x7C, 0xB7, 0x7A, 0xAF, 0x32, 0x4A,  // ..|.z.2J
30970                 /* 0458 */  0xC4, 0x17, 0x62, 0x9F, 0x82, 0x0D, 0x6D, 0x94,  // ..b...m.
30971                 /* 0460 */  0xA7, 0x8A, 0xE8, 0xC6, 0x7B, 0xB9, 0x02, 0xAF,  // ....{...
30972                 /* 0468 */  0xA4, 0xCB, 0x15, 0x40, 0x93, 0xE1, 0xBF, 0x5C,  // ...@...\
30973                 /* 0470 */  0x81, 0xEF, 0xE6, 0x80, 0xBD, 0x26, 0xC1, 0xF9,  // .....&..
30974                 /* 0478 */  0xFF, 0x5F, 0x93, 0xF8, 0xF5, 0x0A, 0xF0, 0x93,  // ._......
30975                 /* 0480 */  0xFD, 0x7A, 0x45, 0x73, 0x5F, 0xAF, 0x50, 0xA2,  // .zEs_.P.
30976                 /* 0488 */  0x20, 0xA4, 0x08, 0x48, 0x33, 0x05, 0xCF, 0xFD,  //  ..H3...
30977                 /* 0490 */  0x0A, 0xE0, 0xC4, 0xFF, 0xFF, 0x7E, 0x05, 0x58,  // .....~.X
30978                 /* 0498 */  0x0E, 0x77, 0xBF, 0x02, 0x7A, 0xB7, 0x23, 0xF0,  // .w..z.#.
30979                 /* 04A0 */  0xA2, 0xBC, 0x1D, 0x61, 0xAF, 0x58, 0xF8, 0x8C,  // ...a.X..
30980                 /* 04A8 */  0x57, 0x2C, 0x1A, 0x66, 0x25, 0x8A, 0xB7, 0x26,  // W,.f%..&
30981                 /* 04B0 */  0x0A, 0xE3, 0x2B, 0x16, 0x30, 0xF9, 0xFF, 0x5F,  // ..+.0.._
30982                 /* 04B8 */  0xB1, 0x80, 0xD9, 0x41, 0x14, 0x37, 0x6A, 0xB8,  // ...A.7j.
30983                 /* 04C0 */  0x17, 0x27, 0xDF, 0x7A, 0x3C, 0xDF, 0x88, 0xBE,  // .'.z<...
30984                 /* 04C8 */  0xC3, 0x60, 0x4E, 0x58, 0x30, 0x6E, 0x58, 0xF0,  // .`NX0nX.
30985                 /* 04D0 */  0x87, 0xF4, 0x30, 0xEC, 0x93, 0xC4, 0x3B, 0x96,  // ..0...;.
30986                 /* 04D8 */  0x8F, 0x56, 0x06, 0x79, 0x03, 0x7E, 0xB2, 0x7A,  // .V.y.~.z
30987                 /* 04E0 */  0xB0, 0x8A, 0x62, 0x84, 0x80, 0xC7, 0xF3, 0x2E,  // ..b.....
30988                 /* 04E8 */  0xEC, 0xA3, 0xD5, 0x9B, 0x96, 0x51, 0x62, 0xC7,  // .....Qb.
30989                 /* 04F0 */  0xF2, 0x85, 0xEA, 0x59, 0xCB, 0xD7, 0x2C, 0x43,  // ...Y..,C
30990                 /* 04F8 */  0xC4, 0x7D, 0x20, 0xF6, 0x0D, 0x0B, 0xB0, 0xFD,  // .} .....
30991                 /* 0500 */  0xFF, 0xBF, 0x61, 0x01, 0x8E, 0x2E, 0x0E, 0xFC,  // ..a.....
30992                 /* 0508 */  0xE0, 0x80, 0xBD, 0x61, 0x01, 0x3E, 0x67, 0x0A,  // ...a.>g.
30993                 /* 0510 */  0x9E, 0x1B, 0x16, 0xB0, 0xF9, 0xFF, 0xDF, 0xB0,  // ........
30994                 /* 0518 */  0x00, 0xFE, 0xFF, 0xFF, 0x6F, 0x58, 0xC0, 0xE1,  // ....oX..
30995                 /* 0520 */  0x76, 0x85, 0xBD, 0x65, 0x61, 0x6F, 0x2F, 0x64,  // v..eao/d
30996                 /* 0528 */  0x15, 0x34, 0xD4, 0x4A, 0x14, 0xFC, 0x7B, 0x65,  // .4.J..{e
30997                 /* 0530 */  0x18, 0x7A, 0xC3, 0x02, 0x1C, 0x8D, 0xDB, 0xA3,  // .z......
30998                 /* 0538 */  0x06, 0xC7, 0xD9, 0xE0, 0x49, 0x02, 0x73, 0xAE,  // ....I.s.
30999                 /* 0540 */  0xC6, 0xCD, 0xE6, 0xE0, 0x02, 0x47, 0xE8, 0x1D,  // .....G..
31000                 /* 0548 */  0x54, 0x73, 0x67, 0x97, 0x14, 0x18, 0xB7, 0x2C,  // Tsg....,
31001                 /* 0550 */  0xB8, 0x97, 0xAA, 0x87, 0x86, 0x28, 0x07, 0xF1,  // .....(..
31002                 /* 0558 */  0x2A, 0xFC, 0x60, 0xF5, 0x28, 0x75, 0x64, 0x8F,  // *.`.(ud.
31003                 /* 0560 */  0x57, 0x4F, 0xC3, 0x3E, 0x66, 0xF9, 0x96, 0x65,  // WO.>f..e
31004                 /* 0568 */  0xA8, 0x08, 0x6F, 0x59, 0xEC, 0x0C, 0x11, 0x2F,  // ..oY.../
31005                 /* 0570 */  0x56, 0x94, 0x10, 0xEF, 0x15, 0xA1, 0x7D, 0xE7,  // V.....}.
31006                 /* 0578 */  0x32, 0xF8, 0xA3, 0xB1, 0x51, 0x83, 0xBE, 0x1C,  // 2...Q...
31007                 /* 0580 */  0xBF, 0x65, 0xC1, 0xFB, 0xFF, 0xDF, 0xB2, 0xE0,  // .e......
31008                 /* 0588 */  0x8B, 0xFC, 0xAB, 0xE8, 0x44, 0xE0, 0x5B, 0x16,  // ....D.[.
31009                 /* 0590 */  0xC0, 0x8F, 0x60, 0x10, 0x72, 0x32, 0x70, 0xF4,  // ..`.r2p.
31010                 /* 0598 */  0x79, 0x01, 0x3F, 0x80, 0x87, 0x11, 0x0F, 0x89,  // y.?.....
31011                 /* 05A0 */  0x05, 0x18, 0x38, 0xBD, 0x2F, 0xF9, 0x4C, 0xC1,  // ..8./.L.
31012                 /* 05A8 */  0x0F, 0x18, 0x3E, 0x53, 0xB0, 0xEB, 0x41, 0xF4,  // ..>S..A.
31013                 /* 05B0 */  0xC7, 0x00, 0x9F, 0x4B, 0x30, 0x83, 0x03, 0xFF,  // ...K0...
31014                 /* 05B8 */  0xB5, 0xE2, 0xD0, 0x3D, 0x8A, 0xD7, 0x07, 0x13,  // ...=....
31015                 /* 05C0 */  0x78, 0x70, 0xFC, 0xFF, 0x3F, 0x38, 0xB8, 0x77,  // xp..?8.w
31016                 /* 05C8 */  0x86, 0x23, 0xF2, 0x1D, 0xC6, 0x83, 0x03, 0xDB,  // .#......
31017                 /* 05D0 */  0x41, 0x00, 0x38, 0x0C, 0x0E, 0x1F, 0x6A, 0x70,  // A.8...jp
31018                 /* 05D8 */  0xE8, 0xF1, 0x18, 0x38, 0xA4, 0xCF, 0x63, 0xEC,  // ...8..c.
31019                 /* 05E0 */  0xC2, 0xF0, 0x90, 0xE3, 0xA1, 0x81, 0x0D, 0xD0,  // ........
31020                 /* 05E8 */  0x43, 0x03, 0x96, 0x93, 0x78, 0x0A, 0x39, 0x34,  // C...x.94
31021                 /* 05F0 */  0x30, 0x4B, 0x18, 0x1A, 0x50, 0x8A, 0x37, 0x34,  // 0K..P.74
31022                 /* 05F8 */  0xFA, 0xFF, 0x1F, 0x1A, 0x1F, 0x92, 0x0F, 0x0B,  // ........
31023                 /* 0600 */  0x31, 0x9F, 0x72, 0x22, 0xBC, 0x2F, 0xF8, 0x04,  // 1.r"./..
31024                 /* 0608 */  0xC5, 0xD0, 0x5F, 0x53, 0x7C, 0xBB, 0xF0, 0x4D,  // .._S|..M
31025                 /* 0610 */  0x10, 0x37, 0x3E, 0x70, 0x5D, 0x3A, 0x3D, 0x3E,  // .7>p]:=>
31026                 /* 0618 */  0xE0, 0x73, 0xE4, 0xF2, 0xF8, 0x70, 0x47, 0x27,  // .s...pG'
31027                 /* 0620 */  0x8F, 0x0F, 0x86, 0xCB, 0xAB, 0x0C, 0x39, 0x9A,  // ......9.
31028                 /* 0628 */  0xF8, 0x68, 0xC5, 0x86, 0x07, 0xB6, 0x9B, 0x9E,  // .h......
31029                 /* 0630 */  0x87, 0x07, 0x7C, 0xAE, 0x9B, 0x60, 0xBC, 0x42,  // ..|..`.B
31030                 /* 0638 */  0xF2, 0x6B, 0x09, 0x8C, 0x13, 0x14, 0xFE, 0xBA,  // .k......
31031                 /* 0640 */  0x09, 0xDE, 0xFF, 0xFF, 0x75, 0x13, 0x78, 0x8E,  // ....u.x.
31032                 /* 0648 */  0x82, 0x6B, 0xBD, 0x64, 0xD3, 0x20, 0xAF, 0x1C,  // .k.d. ..
31033                 /* 0650 */  0xC5, 0x7A, 0x11, 0x50, 0x18, 0x9F, 0xD9, 0x00,  // .z.P....
31034                 /* 0658 */  0x47, 0x63, 0x7D, 0x66, 0x03, 0xCB, 0xBD, 0x80,  // Gc}f....
31035                 /* 0660 */  0xDD, 0xD8, 0xE0, 0x9E, 0xD6, 0x60, 0xDF, 0x1D,  // .....`..
31036                 /* 0668 */  0x1E, 0xCE, 0x1E, 0xD3, 0x1E, 0xD5, 0x1E, 0xD0,  // ........
31037                 /* 0670 */  0x7C, 0xC4, 0x8E, 0xF1, 0x96, 0x16, 0x24, 0x4E,  // |.....$N
31038                 /* 0678 */  0x84, 0xD7, 0x81, 0xA7, 0x35, 0x5F, 0x32, 0xE2,  // ....5_2.
31039                 /* 0680 */  0x05, 0x7A, 0x5A, 0x33, 0x46, 0x9C, 0x97, 0x36,  // .zZ3F..6
31040                 /* 0688 */  0x23, 0xBE, 0x52, 0x84, 0x78, 0x58, 0xF3, 0xC9,  // #.R.xX..
31041                 /* 0690 */  0xCD, 0x78, 0x0F, 0x13, 0xE1, 0xC2, 0xBC, 0xB0,  // .x......
31042                 /* 0698 */  0x3D, 0xAD, 0x81, 0xE3, 0xFF, 0x7F, 0x5A, 0x83,  // =.....Z.
31043                 /* 06A0 */  0x23, 0xE7, 0x8A, 0x0D, 0xD0, 0xE4, 0xA2, 0x8F,  // #.......
31044                 /* 06A8 */  0x3B, 0xA4, 0x80, 0xE5, 0xDA, 0xC0, 0x6E, 0x29,  // ;.....n)
31045                 /* 06B0 */  0xF0, 0x2E, 0xD8, 0xC0, 0xF9, 0xFF, 0x7F, 0x44,  // .......D
31046                 /* 06B8 */  0x01, 0x5F, 0x96, 0x0B, 0x36, 0xCD, 0x71, 0xC1,  // ._..6.q.
31047                 /* 06C0 */  0x46, 0x71, 0x58, 0x0D, 0x90, 0xE6, 0x09, 0xFF,  // FqX.....
31048                 /* 06C8 */  0x7A, 0x0D, 0xFE, 0x49, 0xF8, 0x7A, 0x0D, 0xD8,  // z..I.z..
31049                 /* 06D0 */  0xBE, 0xC5, 0xE2, 0xAE, 0xD7, 0xC0, 0xEA, 0xFF,  // ........
31050                 /* 06D8 */  0x7F, 0xBD, 0x06, 0x96, 0x82, 0x47, 0x4A, 0xEF,  // .....GJ.
31051                 /* 06E0 */  0xD4, 0xE0, 0xBA, 0x69, 0xE3, 0x41, 0xDF, 0xB4,  // ...i.A..
31052                 /* 06E8 */  0x61, 0x0A, 0xBE, 0x45, 0xD1, 0x28, 0xE4, 0x8A,  // a..E.(..
31053                 /* 06F0 */  0xB6, 0x10, 0x0A, 0xE3, 0x5B, 0x14, 0xE0, 0x08,  // ....[...
31054                 /* 06F8 */  0xFB, 0x2D, 0x0A, 0x2C, 0x17, 0xA7, 0xB7, 0x28,  // .-.,...(
31055                 /* 0700 */  0xFC, 0x0C, 0x3C, 0x68, 0xDF, 0x75, 0x18, 0xA6,  // ..<h.u..
31056                 /* 0708 */  0xEF, 0xD0, 0xF0, 0x4F, 0x4D, 0xCF, 0x4D, 0x0F,  // ...OM.M.
31057                 /* 0710 */  0x4E, 0x0F, 0xCD, 0x3E, 0x48, 0xF9, 0x70, 0xF0,  // N..>H.p.
31058                 /* 0718 */  0xFC, 0xF4, 0xFF, 0x8F, 0xF1, 0x5E, 0xE7, 0x9B,  // .....^..
31059                 /* 0720 */  0xD4, 0x6B, 0x94, 0x2F, 0x30, 0xC7, 0x10, 0x31,  // .k./0..1
31060                 /* 0728 */  0xCA, 0xCB, 0xB4, 0x21, 0xE2, 0xF9, 0xD4, 0xE4,  // ...!....
31061                 /* 0730 */  0xB3, 0x42, 0xDC, 0x10, 0x0F, 0xD1, 0x46, 0x88,  // .B....F.
31062                 /* 0738 */  0xFA, 0x3C, 0xED, 0x09, 0xBD, 0x46, 0x81, 0x57,  // .<...F.W
31063                 /* 0740 */  0xD0, 0x35, 0x0A, 0xA0, 0xC9, 0xFD, 0x08, 0x77,  // .5.....w
31064                 /* 0748 */  0x8D, 0x02, 0xCB, 0xBD, 0x81, 0x9D, 0x87, 0xF8,  // ........
31065                 /* 0750 */  0x95, 0xC8, 0xD7, 0x06, 0x18, 0xF7, 0x28, 0x38,  // ......(8
31066                 /* 0758 */  0xFF, 0xFF, 0x7B, 0x14, 0x60, 0x23, 0xCC, 0x3D,  // ..{.`#.=
31067                 /* 0760 */  0x8A, 0x06, 0xB9, 0x47, 0xA1, 0x4E, 0x26, 0xBE,  // ...G.N&.
31068                 /* 0768 */  0xD4, 0x79, 0xA2, 0xE0, 0x08, 0x7F, 0x91, 0x42,  // .y.....B
31069                 /* 0770 */  0xC5, 0x26, 0x51, 0xE8, 0xC3, 0x10, 0x2A, 0xE6,  // .&Q...*.
31070                 /* 0778 */  0x61, 0x84, 0x82, 0x18, 0xD0, 0x19, 0x4E, 0x14,  // a.....N.
31071                 /* 0780 */  0x68, 0x15, 0x27, 0x0A, 0x72, 0x8B, 0xF1, 0xA4,  // h.'.r...
31072                 /* 0788 */  0x1E, 0xA3, 0x00, 0x5F, 0xCB, 0xF4, 0x50, 0x79,  // ..._..Py
31073                 /* 0790 */  0xE4, 0xA1, 0x52, 0x10, 0x0F, 0xD5, 0x71, 0x86,  // ..R...q.
31074                 /* 0798 */  0x8A, 0x9E, 0xA4, 0xE7, 0x8F, 0xF9, 0xFF, 0x1F,  // ........
31075                 /* 07A0 */  0x1C, 0xB0, 0x07, 0x29, 0x80, 0x17, 0x0A, 0x6D,  // ...)...m
31076                 /* 07A8 */  0xFA, 0xD4, 0x68, 0xD4, 0xAA, 0x41, 0x99, 0x1A,  // ..h..A..
31077                 /* 07B0 */  0x65, 0x1A, 0xD4, 0xEA, 0x53, 0xA9, 0x31, 0x63,  // e...S.1c
31078                 /* 07B8 */  0xE7, 0x50, 0x4B, 0x3B, 0x4B, 0x50, 0x31, 0x8B,  // .PK;KP1.
31079                 /* 07C0 */  0xD1, 0x68, 0x1C, 0x05, 0x84, 0xCA, 0xFE, 0x9B,  // .h......
31080                 /* 07C8 */  0x0B, 0xC4, 0x21, 0x9F, 0x3A, 0x02, 0x74, 0xB0,  // ..!.:.t.
31081                 /* 07D0 */  0x17, 0x95, 0x80, 0x2C, 0x6B, 0x6D, 0x02, 0x71,  // ...,km.q
31082                 /* 07D8 */  0x7C, 0x13, 0x10, 0x8D, 0x80, 0x48, 0xCB, 0x63,  // |....H.c
31083                 /* 07E0 */  0x42, 0x40, 0xCE, 0x0D, 0x22, 0x20, 0xAB, 0x58,  // B@.." .X
31084                 /* 07E8 */  0x93, 0x80, 0xAC, 0xF9, 0x01, 0x23, 0x70, 0xEB,  // .....#p.
31085                 /* 07F0 */  0xD4, 0x01, 0xC4, 0x52, 0x82, 0xD0, 0x44, 0x0B,  // ...R..D.
31086                 /* 07F8 */  0x17, 0xA8, 0xE3, 0x81, 0x68, 0x30, 0x84, 0x46,  // ....h0.F
31087                 /* 0800 */  0x40, 0x0E, 0x46, 0x21, 0x20, 0xCB, 0xF8, 0x74,  // @.F! ..t
31088                 /* 0808 */  0x0B, 0xDC, 0x02, 0xAC, 0x00, 0x31, 0xF9, 0x20,  // .....1. 
31089                 /* 0810 */  0x54, 0xB0, 0x17, 0x50, 0xA6, 0x1E, 0x44, 0x40,  // T..P..D@
31090                 /* 0818 */  0x56, 0xBA, 0x56, 0x01, 0x59, 0x37, 0x88, 0x80,  // V.V.Y7..
31091                 /* 0820 */  0xFE, 0xFF, 0x2F, 0x83, 0x32, 0x03, 0xCE, 0x32,  // ../.2..2
31092                 /* 0828 */  0xBA, 0x01, 0x62, 0x0A, 0x1F, 0x0A, 0x02, 0xB1,  // ..b.....
31093                 /* 0830 */  0x26, 0x3D, 0xA0, 0x4C, 0x20, 0x88, 0xAE, 0x1C,  // &=.L ...
31094                 /* 0838 */  0xC4, 0x0F, 0x10, 0x93, 0x06, 0x22, 0x20, 0xC7,  // ....." .
31095                 /* 0840 */  0x39, 0x98, 0x08, 0xDC, 0x71, 0x14, 0x01, 0x52,  // 9...q..R
31096                 /* 0848 */  0x47, 0xC3, 0xA5, 0x20, 0x54, 0xFC, 0xF3, 0x44,  // G.. T..D
31097                 /* 0850 */  0x20, 0x16, 0x64, 0x09, 0x8C, 0x82, 0xD0, 0x08,  //  .d.....
31098                 /* 0858 */  0x9A, 0x40, 0x98, 0x3C, 0x4F, 0x20, 0x2C, 0xD4,  // .@.<O ,.
31099                 /* 0860 */  0x9F, 0x5C, 0xA7, 0x15, 0xA2, 0x6A, 0x88, 0xD4,  // .\...j..
31100                 /* 0868 */  0x15, 0x08, 0x0B, 0xFC, 0x30, 0xD0, 0x60, 0x9C,  // ....0.`.
31101                 /* 0870 */  0x1E, 0x44, 0x40, 0x4E, 0xFA, 0xA7, 0x0A, 0x44,  // .D@N...D
31102                 /* 0878 */  0x72, 0x83, 0x08, 0xC8, 0xF9, 0x9F, 0x22, 0x02,  // r.....".
31103                 /* 0880 */  0x77, 0xEA, 0xD7, 0x84, 0x86, 0x4F, 0xBE, 0x58,  // w....O.X
31104                 /* 0888 */  0x41, 0x88, 0xB8, 0x87, 0x55, 0x50, 0xA2, 0x14,  // A...UP..
31105                 /* 0890 */  0x44, 0x40, 0x56, 0xF6, 0xB4, 0x12, 0x90, 0x75,  // D@V....u
31106                 /* 0898 */  0x82, 0x08, 0xC8, 0xFF, 0x7F                     // .....
31107             })
31108         }
31109 
31110         Device (WMI2)
31111         {
31112             Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */)  // _HID: Hardware ID
31113             Name (_UID, 0x02)  // _UID: Unique ID
31114             Name (_WDG, Buffer (0x64)
31115             {
31116                 /* 0000 */  0xF1, 0x24, 0xB4, 0xFC, 0x5A, 0x07, 0x0E, 0x4E,  // .$..Z..N
31117                 /* 0008 */  0xBF, 0xC4, 0x62, 0xF3, 0xE7, 0x17, 0x71, 0xFA,  // ..b...q.
31118                 /* 0010 */  0x41, 0x37, 0x01, 0x01, 0xE3, 0x5E, 0xBE, 0xE2,  // A7...^..
31119                 /* 0018 */  0xDA, 0x42, 0xDB, 0x49, 0x83, 0x78, 0x1F, 0x52,  // .B.I.x.R
31120                 /* 0020 */  0x47, 0x38, 0x82, 0x02, 0x41, 0x38, 0x01, 0x02,  // G8..A8..
31121                 /* 0028 */  0x9A, 0x01, 0x30, 0x74, 0xE9, 0xDC, 0x48, 0x45,  // ..0t..HE
31122                 /* 0030 */  0xBA, 0xB0, 0x9F, 0xDE, 0x09, 0x35, 0xCA, 0xFF,  // .....5..
31123                 /* 0038 */  0x41, 0x39, 0x0A, 0x05, 0x03, 0x70, 0xF4, 0x7F,  // A9...p..
31124                 /* 0040 */  0x6C, 0x3B, 0x5E, 0x4E, 0xA2, 0x27, 0xE9, 0x79,  // l;^N.'.y
31125                 /* 0048 */  0x82, 0x4A, 0x85, 0xD1, 0x41, 0x41, 0x01, 0x06,  // .J..AA..
31126                 /* 0050 */  0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11,  // !...f...
31127                 /* 0058 */  0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10,  // ......).
31128                 /* 0060 */  0x42, 0x42, 0x01, 0x00                           // BB..
31129             })
31130             Name (PREL, Buffer (0x08)
31131             {
31132                  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
31133             })
31134             Method (WQA7, 1, NotSerialized)
31135             {
31136                 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
31137                 \WMIS (0x07, 0x00)
31138                 PREL [0x00] = \WLS0
31139                 PREL [0x01] = \WLS1
31140                 PREL [0x02] = \WLS2
31141                 PREL [0x03] = \WLS3
31142                 PREL [0x04] = \WLS4
31143                 PREL [0x05] = \WLS5
31144                 PREL [0x06] = \WLS6
31145                 PREL [0x07] = \WLS7
31146                 Release (\_SB.WMI1.MWMI)
31147                 Return (PREL) /* \_SB_.WMI2.PREL */
31148             }
31149 
31150             Method (WMA8, 3, NotSerialized)
31151             {
31152                 CreateByteField (Arg2, 0x00, PRE0)
31153                 CreateByteField (Arg2, 0x01, PRE1)
31154                 CreateByteField (Arg2, 0x02, PRE2)
31155                 CreateByteField (Arg2, 0x03, PRE3)
31156                 CreateByteField (Arg2, 0x04, PRE4)
31157                 CreateByteField (Arg2, 0x05, PRE5)
31158                 CreateByteField (Arg2, 0x06, PRE6)
31159                 CreateByteField (Arg2, 0x07, PRE7)
31160                 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
31161                 \WLS0 = PRE0 /* \_SB_.WMI2.WMA8.PRE0 */
31162                 \WLS1 = PRE1 /* \_SB_.WMI2.WMA8.PRE1 */
31163                 \WLS2 = PRE2 /* \_SB_.WMI2.WMA8.PRE2 */
31164                 \WLS3 = PRE3 /* \_SB_.WMI2.WMA8.PRE3 */
31165                 \WLS4 = PRE4 /* \_SB_.WMI2.WMA8.PRE4 */
31166                 \WLS5 = PRE5 /* \_SB_.WMI2.WMA8.PRE5 */
31167                 \WLS6 = PRE6 /* \_SB_.WMI2.WMA8.PRE6 */
31168                 \WLS7 = PRE7 /* \_SB_.WMI2.WMA8.PRE7 */
31169                 \WMIS (0x08, 0x00)
31170                 Release (\_SB.WMI1.MWMI)
31171             }
31172 
31173             Name (ITEM, Package (0x08)
31174             {
31175                 Package (0x02)
31176                 {
31177                     0x00, 
31178                     "InhibitEnteringThinkPadSetup"
31179                 }, 
31180 
31181                 Package (0x02)
31182                 {
31183                     0x03, 
31184                     "MTMSerialConcatenation"
31185                 }, 
31186 
31187                 Package (0x02)
31188                 {
31189                     0x00, 
31190                     "SwapProductName"
31191                 }, 
31192 
31193                 Package (0x02)
31194                 {
31195                     0x00, 
31196                     "ComputraceMsgDisable"
31197                 }, 
31198 
31199                 Package (0x02)
31200                 {
31201                     0x00, 
31202                     "CpuDebugEnable"
31203                 }, 
31204 
31205                 Package (0x02)
31206                 {
31207                     0x00, 
31208                     "PasswordAfterBootDeviceList"
31209                 }, 
31210 
31211                 Package (0x02)
31212                 {
31213                     0x02, 
31214                     "SpecialCharForPassword"
31215                 }, 
31216 
31217                 Package (0x02)
31218                 {
31219                     0x00, 
31220                     "CustomPasswordMode"
31221                 }
31222             })
31223             Name (VSEL, Package (0x04)
31224             {
31225                 Package (0x02)
31226                 {
31227                     "Disable", 
31228                     "Enable"
31229                 }, 
31230 
31231                 Package (0x02)
31232                 {
31233                     "Off", 
31234                     "On"
31235                 }, 
31236 
31237                 Package (0x02)
31238                 {
31239                     "Disable", 
31240                     "412"
31241                 }, 
31242 
31243                 Package (0x06)
31244                 {
31245                     "Disable", 
31246                     "Enable", 
31247                     "Default", 
31248                     "MTMSN", 
31249                     "1SMTMSN", 
31250                     "MTSN"
31251                 }
31252             })
31253             Method (WQA9, 1, NotSerialized)
31254             {
31255                 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
31256                 If ((\WMIS (0x09, Arg0) != 0x00))
31257                 {
31258                     Release (\_SB.WMI1.MWMI)
31259                     Return ("")
31260                 }
31261 
31262                 Local0 = DerefOf (ITEM [\WITM])
31263                 Local1 = DerefOf (Local0 [0x00])
31264                 Local2 = DerefOf (Local0 [0x01])
31265                 Concatenate (Local2, ",", Local6)
31266                 Local3 = DerefOf (VSEL [Local1])
31267                 Concatenate (Local6, DerefOf (Local3 [\WSEL]), Local7)
31268                 Release (\_SB.WMI1.MWMI)
31269                 Return (Local7)
31270             }
31271 
31272             Method (WMAA, 3, NotSerialized)
31273             {
31274                 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
31275                 If ((SizeOf (Arg2) == 0x00))
31276                 {
31277                     Local0 = 0x02
31278                 }
31279                 Else
31280                 {
31281                     Local0 = \_SB.WMI1.CARG (Arg2)
31282                     If ((Local0 == 0x00))
31283                     {
31284                         Local0 = \_SB.WMI1.WSET (ITEM, VSEL)
31285                         If ((Local0 == 0x00))
31286                         {
31287                             Local0 = \WMIS (0x0A, 0x00)
31288                         }
31289                     }
31290                 }
31291 
31292                 Release (\_SB.WMI1.MWMI)
31293                 Return (DerefOf (\_SB.WMI1.RETN [Local0]))
31294             }
31295 
31296             Name (WQBB, Buffer (0x0538)
31297             {
31298                 /* 0000 */  0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00,  // FOMB....
31299                 /* 0008 */  0x28, 0x05, 0x00, 0x00, 0xAE, 0x18, 0x00, 0x00,  // (.......
31300                 /* 0010 */  0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54,  // DS...}.T
31301                 /* 0018 */  0x98, 0xDE, 0x8B, 0x00, 0x01, 0x06, 0x18, 0x42,  // .......B
31302                 /* 0020 */  0x10, 0x0D, 0x10, 0x8A, 0x0D, 0x21, 0x02, 0x0B,  // .....!..
31303                 /* 0028 */  0x83, 0x50, 0x50, 0x18, 0x14, 0xA0, 0x45, 0x41,  // .PP...EA
31304                 /* 0030 */  0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02,  // .....!..
31305                 /* 0038 */  0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5,  // ..p.@...
31306                 /* 0040 */  0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F,  // (r."....
31307                 /* 0048 */  0x31, 0x10, 0x88, 0x14, 0x40, 0x48, 0x28, 0x84,  // 1...@H(.
31308                 /* 0050 */  0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F,  // D.S!p.._
31309                 /* 0058 */  0x01, 0x08, 0x1D, 0x0A, 0x90, 0x29, 0xC0, 0xA0,  // .....)..
31310                 /* 0060 */  0x00, 0xA7, 0x08, 0x22, 0x88, 0xD2, 0xB2, 0x00,  // ..."....
31311                 /* 0068 */  0xDD, 0x02, 0x7C, 0x0B, 0xD0, 0x0E, 0x21, 0xB4,  // ..|...!.
31312                 /* 0070 */  0xC8, 0x95, 0x0A, 0xB0, 0x08, 0x25, 0x9F, 0x80,  // .....%..
31313                 /* 0078 */  0x92, 0x88, 0x22, 0xD9, 0x78, 0xB2, 0x8D, 0x48,  // ..".x..H
31314                 /* 0080 */  0xE6, 0x61, 0x91, 0x83, 0x40, 0x89, 0x19, 0x04,  // .a..@...
31315                 /* 0088 */  0x4A, 0x27, 0xAE, 0x6C, 0xE2, 0x6A, 0x10, 0x07,  // J'.l.j..
31316                 /* 0090 */  0x10, 0xE5, 0x3C, 0xA2, 0x24, 0x38, 0xAA, 0x83,  // ..<.$8..
31317                 /* 0098 */  0x88, 0x10, 0xBB, 0x5C, 0x01, 0x92, 0x07, 0x20,  // ...\... 
31318                 /* 00A0 */  0xCD, 0x13, 0x93, 0xF5, 0x39, 0x68, 0x64, 0x6C,  // ....9hdl
31319                 /* 00A8 */  0x04, 0x3C, 0x98, 0x04, 0x10, 0x16, 0x65, 0x9D,  // .<....e.
31320                 /* 00B0 */  0x8A, 0x02, 0x83, 0xF2, 0x00, 0x22, 0x39, 0x63,  // ....."9c
31321                 /* 00B8 */  0x45, 0x01, 0xDB, 0xEB, 0x44, 0x64, 0x72, 0xA0,  // E...Ddr.
31322                 /* 00C0 */  0x54, 0x12, 0x1C, 0x6A, 0x98, 0x9E, 0x5A, 0xF3,  // T..j..Z.
31323                 /* 00C8 */  0x13, 0xD3, 0x44, 0x4E, 0xAD, 0xE9, 0x21, 0x0B,  // ..DN..!.
31324                 /* 00D0 */  0x92, 0x49, 0x1B, 0x0A, 0x6A, 0xEC, 0x9E, 0xD6,  // .I..j...
31325                 /* 00D8 */  0x49, 0x79, 0xA6, 0x11, 0x0F, 0xCA, 0x30, 0x09,  // Iy....0.
31326                 /* 00E0 */  0x3C, 0x0A, 0x86, 0xC6, 0x09, 0xCA, 0x82, 0x90,  // <.......
31327                 /* 00E8 */  0x83, 0x81, 0xA2, 0x00, 0x4F, 0xC2, 0x73, 0x2C,  // ....O.s,
31328                 /* 00F0 */  0x5E, 0x80, 0xF0, 0x11, 0x93, 0xB3, 0x40, 0x8C,  // ^.....@.
31329                 /* 00F8 */  0x04, 0x3E, 0x13, 0x78, 0xE4, 0xC7, 0x8C, 0x1D,  // .>.x....
31330                 /* 0100 */  0x51, 0xB8, 0x80, 0xE7, 0x73, 0x0C, 0x91, 0xE3,  // Q...s...
31331                 /* 0108 */  0x1E, 0x6A, 0x8C, 0xA3, 0x88, 0x7C, 0x38, 0x0C,  // .j...|8.
31332                 /* 0110 */  0xED, 0x74, 0xE3, 0x1C, 0xD8, 0xE9, 0x14, 0x04,  // .t......
31333                 /* 0118 */  0x2E, 0x90, 0x60, 0x3D, 0xCF, 0x59, 0x20, 0xFF,  // ..`=.Y .
31334                 /* 0120 */  0xFF, 0x18, 0x07, 0xC1, 0xF0, 0x8E, 0x01, 0x23,  // .......#
31335                 /* 0128 */  0x03, 0x42, 0x1E, 0x05, 0x58, 0x1D, 0x96, 0x26,  // .B..X..&
31336                 /* 0130 */  0x91, 0xC0, 0xEE, 0x05, 0x68, 0xBC, 0x04, 0x48,  // ....h..H
31337                 /* 0138 */  0xE1, 0x20, 0xA5, 0x0C, 0x42, 0x30, 0x8D, 0x09,  // . ..B0..
31338                 /* 0140 */  0xB0, 0x75, 0x68, 0x90, 0x37, 0x01, 0xD6, 0xAE,  // .uh.7...
31339                 /* 0148 */  0x02, 0x42, 0x89, 0x74, 0x02, 0x71, 0x42, 0x44,  // .B.t.qBD
31340                 /* 0150 */  0x89, 0x18, 0xD4, 0x40, 0x51, 0x6A, 0x43, 0x15,  // ...@QjC.
31341                 /* 0158 */  0x4C, 0x67, 0xC3, 0x13, 0x66, 0xDC, 0x10, 0x31,  // Lg..f..1
31342                 /* 0160 */  0x0C, 0x14, 0xB7, 0xFD, 0x41, 0x90, 0x61, 0xE3,  // ....A.a.
31343                 /* 0168 */  0xC6, 0xEF, 0x41, 0x9D, 0xD6, 0xD9, 0x1D, 0xD3,  // ..A.....
31344                 /* 0170 */  0xAB, 0x82, 0x09, 0x3C, 0xE9, 0x37, 0x84, 0xA7,  // ...<.7..
31345                 /* 0178 */  0x83, 0xA3, 0x38, 0xDA, 0xA8, 0x31, 0x9A, 0x23,  // ..8..1.#
31346                 /* 0180 */  0x65, 0xAB, 0xD6, 0xB9, 0xC2, 0x91, 0xE0, 0x51,  // e......Q
31347                 /* 0188 */  0xE7, 0x05, 0x9F, 0x0C, 0x3C, 0xB4, 0xC3, 0xF6,  // ....<...
31348                 /* 0190 */  0x60, 0xCF, 0xD2, 0x43, 0x38, 0x82, 0x67, 0x86,  // `..C8.g.
31349                 /* 0198 */  0x47, 0x02, 0x8F, 0x81, 0xDD, 0x15, 0x7C, 0x08,  // G.....|.
31350                 /* 01A0 */  0xF0, 0x19, 0x01, 0xEF, 0x1A, 0x50, 0x97, 0x83,  // .....P..
31351                 /* 01A8 */  0x47, 0x03, 0x36, 0xE9, 0x70, 0x98, 0xF1, 0x7A,  // G.6.p..z
31352                 /* 01B0 */  0xEE, 0x9E, 0xBA, 0xCF, 0x18, 0xFC, 0xBC, 0xE1,  // ........
31353                 /* 01B8 */  0xC1, 0xE1, 0x46, 0x7A, 0x32, 0x47, 0x56, 0xAA,  // ..Fz2GV.
31354                 /* 01C0 */  0x00, 0xB3, 0xD7, 0x00, 0x1D, 0x25, 0x7C, 0xE0,  // .....%|.
31355                 /* 01C8 */  0x60, 0x77, 0x81, 0xA7, 0x00, 0x13, 0x58, 0xFE,  // `w....X.
31356                 /* 01D0 */  0x20, 0x50, 0x23, 0x33, 0xB4, 0xC7, 0xFB, 0xDE,  //  P#3....
31357                 /* 01D8 */  0x61, 0xC8, 0x27, 0x85, 0xC3, 0x62, 0x62, 0x0F,  // a.'..bb.
31358                 /* 01E0 */  0x1E, 0x74, 0x3C, 0xE0, 0xBF, 0x8F, 0x3C, 0x69,  // .t<...<i
31359                 /* 01E8 */  0x78, 0xFA, 0x9E, 0xAF, 0x09, 0x06, 0x86, 0x90,  // x.......
31360                 /* 01F0 */  0x95, 0xF1, 0xA0, 0x06, 0x62, 0xE8, 0x57, 0x85,  // ....b.W.
31361                 /* 01F8 */  0xC3, 0x38, 0x0D, 0x9F, 0x40, 0x7C, 0x0E, 0x08,  // .8..@|..
31362                 /* 0200 */  0x12, 0xE3, 0x98, 0x3C, 0x38, 0xFF, 0xFF, 0x09,  // ...<8...
31363                 /* 0208 */  0x1C, 0x6B, 0xE4, 0xF4, 0x9C, 0xE2, 0xF3, 0x04,  // .k......
31364                 /* 0210 */  0x3F, 0x5C, 0xF8, 0x3C, 0xC1, 0x4E, 0x0C, 0xA7,  // ?\.<.N..
31365                 /* 0218 */  0xF1, 0x1C, 0xE0, 0xE1, 0x9C, 0x95, 0x8F, 0x13,  // ........
31366                 /* 0220 */  0xC0, 0x02, 0xE2, 0x75, 0x82, 0x0F, 0x14, 0x3E,  // ...u...>
31367                 /* 0228 */  0xEC, 0xA1, 0x79, 0x14, 0x2F, 0x11, 0x6F, 0x0F,  // ..y./.o.
31368                 /* 0230 */  0x26, 0x88, 0xF6, 0x10, 0x03, 0xC6, 0x19, 0xE1,  // &.......
31369                 /* 0238 */  0xCE, 0x1B, 0x70, 0x4E, 0x31, 0xC0, 0x03, 0xEA,  // ..pN1...
31370                 /* 0240 */  0x10, 0x30, 0x87, 0x09, 0x0F, 0x81, 0x0F, 0xE0,  // .0......
31371                 /* 0248 */  0x19, 0xE4, 0x1C, 0x7D, 0xCC, 0x39, 0x33, 0xDC,  // ...}.93.
31372                 /* 0250 */  0x71, 0x07, 0x6C, 0xC3, 0xE0, 0x91, 0x2D, 0x80,  // q.l...-.
31373                 /* 0258 */  0xB0, 0x38, 0x4F, 0x02, 0x05, 0x7C, 0x1B, 0x50,  // .8O..|.P
31374                 /* 0260 */  0x18, 0x1F, 0x6E, 0xC0, 0xFB, 0xFF, 0x3F, 0xDC,  // ..n...?.
31375                 /* 0268 */  0x00, 0xD7, 0xF3, 0x01, 0xEE, 0xF8, 0x00, 0xF7,  // ........
31376                 /* 0270 */  0x62, 0xC1, 0x0E, 0x0F, 0x8F, 0x37, 0xC0, 0x60,  // b....7.`
31377                 /* 0278 */  0x48, 0x8F, 0x34, 0x6F, 0x35, 0x31, 0x5E, 0x6D,  // H.4o51^m
31378                 /* 0280 */  0x42, 0x44, 0x78, 0xA8, 0x79, 0xB7, 0x31, 0x52,  // BDx.y.1R
31379                 /* 0288 */  0xBC, 0xC7, 0x1B, 0x76, 0x8D, 0x39, 0x8B, 0x07,  // ...v.9..
31380                 /* 0290 */  0x90, 0x28, 0xC5, 0xA1, 0xE9, 0x62, 0x13, 0x23,  // .(...b.#
31381                 /* 0298 */  0xCA, 0x9B, 0x8D, 0x61, 0xDF, 0x74, 0x0C, 0x14,  // ...a.t..
31382                 /* 02A0 */  0x2A, 0x52, 0x84, 0x30, 0x2F, 0x16, 0x21, 0x1E,  // *R.0/.!.
31383                 /* 02A8 */  0x6F, 0xC0, 0x2C, 0xE9, 0xA5, 0xA2, 0xCF, 0x81,  // o.,.....
31384                 /* 02B0 */  0x8F, 0x37, 0x80, 0x97, 0xFF, 0xFF, 0xF1, 0x06,  // .7......
31385                 /* 02B8 */  0xF0, 0x30, 0x0C, 0x1F, 0x53, 0xC0, 0x76, 0x73,  // .0..S.vs
31386                 /* 02C0 */  0x60, 0xF7, 0x14, 0xF8, 0xE7, 0x14, 0xC0, 0x91,  // `.......
31387                 /* 02C8 */  0x90, 0x47, 0x80, 0x0E, 0x1E, 0x16, 0x01, 0x22,  // .G....."
31388                 /* 02D0 */  0x1B, 0xCF, 0x00, 0x9F, 0x89, 0xA8, 0x40, 0x2A,  // ......@*
31389                 /* 02D8 */  0xCD, 0x14, 0x2C, 0xE3, 0x14, 0xAC, 0x4E, 0x88,  // ..,...N.
31390                 /* 02E0 */  0x5C, 0x06, 0x85, 0x44, 0x40, 0x68, 0x64, 0x86,  // \..D@hd.
31391                 /* 02E8 */  0xF3, 0x21, 0xD1, 0x60, 0x06, 0xF1, 0xF9, 0xC0,  // .!.`....
31392                 /* 02F0 */  0x67, 0x0A, 0x9F, 0x9C, 0xF8, 0xFF, 0xFF, 0xE4,  // g.......
31393                 /* 02F8 */  0x04, 0x9E, 0x83, 0xC9, 0x43, 0x05, 0x2C, 0x44,  // ....C.,D
31394                 /* 0300 */  0x9F, 0x16, 0x38, 0x9C, 0xCF, 0x2C, 0x1C, 0xCE,  // ..8..,..
31395                 /* 0308 */  0x47, 0x12, 0x7E, 0x80, 0xE4, 0x47, 0x25, 0x70,  // G.~..G%p
31396                 /* 0310 */  0x09, 0x3C, 0x34, 0x80, 0x02, 0xC8, 0xF7, 0x03,  // .<4.....
31397                 /* 0318 */  0x9F, 0x03, 0x9E, 0x11, 0xD8, 0x1C, 0x1E, 0x09,  // ........
31398                 /* 0320 */  0x7C, 0x20, 0x60, 0xF0, 0x3C, 0xDA, 0xA8, 0xE8,  // | `.<...
31399                 /* 0328 */  0xD1, 0xC6, 0xC3, 0xE3, 0x47, 0x06, 0xCF, 0xE7,  // ....G...
31400                 /* 0330 */  0x81, 0xE0, 0x28, 0x1F, 0x09, 0x70, 0x18, 0xEF,  // ..(..p..
31401                 /* 0338 */  0x17, 0x1E, 0xA2, 0x4F, 0x39, 0xB0, 0x26, 0x72,  // ...O9.&r
31402                 /* 0340 */  0xD4, 0x16, 0x7D, 0x22, 0x10, 0xE8, 0x33, 0x17,  // ..}"..3.
31403                 /* 0348 */  0xE6, 0x94, 0x03, 0x9C, 0x82, 0x8F, 0x1E, 0x15,  // ........
31404                 /* 0350 */  0xF5, 0x40, 0x0A, 0xDA, 0x93, 0x82, 0xCF, 0x0A,  // .@......
31405                 /* 0358 */  0x3E, 0x7C, 0xC1, 0xFF, 0xFF, 0x1F, 0xBE, 0xE0,  // >|......
31406                 /* 0360 */  0xCC, 0xEB, 0x65, 0xCD, 0x07, 0x8E, 0x38, 0x67,  // ..e...8g
31407                 /* 0368 */  0x71, 0xBA, 0xEF, 0x16, 0xF8, 0x13, 0x29, 0x30,  // q.....)0
31408                 /* 0370 */  0x0B, 0x72, 0x22, 0x45, 0xC1, 0xF8, 0x44, 0x0A,  // .r"E..D.
31409                 /* 0378 */  0xD8, 0xBC, 0x05, 0x60, 0xAF, 0x0B, 0x4F, 0x22,  // ...`..O"
31410                 /* 0380 */  0x30, 0xCE, 0x11, 0xCF, 0x58, 0x30, 0x0F, 0x55,  // 0...X0.U
31411                 /* 0388 */  0xA7, 0xF8, 0x52, 0xF5, 0xC6, 0x10, 0xE1, 0xC9,  // ..R.....
31412                 /* 0390 */  0xEA, 0x35, 0xEA, 0x01, 0xCB, 0x60, 0x2F, 0x02,  // .5...`/.
31413                 /* 0398 */  0x86, 0x79, 0xC5, 0xF2, 0xE9, 0x2A, 0xC4, 0x03,  // .y...*..
31414                 /* 03A0 */  0x96, 0xCF, 0x5A, 0xD1, 0x42, 0x84, 0x8C, 0x12,  // ..Z.B...
31415                 /* 03A8 */  0xEC, 0x15, 0xEB, 0x55, 0xC6, 0x47, 0x2A, 0x83,  // ...U.G*.
31416                 /* 03B0 */  0x07, 0x0C, 0x1B, 0x2D, 0x52, 0x84, 0x47, 0x2C,  // ...-R.G,
31417                 /* 03B8 */  0xFC, 0xFF, 0xFF, 0x88, 0x05, 0x1E, 0x09, 0x07,  // ........
31418                 /* 03C0 */  0x52, 0x80, 0x2A, 0x03, 0xC7, 0x1D, 0x48, 0x81,  // R.*...H.
31419                 /* 03C8 */  0xFD, 0x69, 0x02, 0x7F, 0xBD, 0xF0, 0x78, 0xB0,  // .i....x.
31420                 /* 03D0 */  0xFF, 0xFF, 0x73, 0x00, 0xF8, 0x0E, 0x31, 0xC0,  // ..s...1.
31421                 /* 03D8 */  0x60, 0xC0, 0x30, 0x0E, 0x31, 0xC0, 0x43, 0xF0,  // `.0.1.C.
31422                 /* 03E0 */  0xC9, 0x0C, 0xF4, 0xC7, 0x1D, 0xF8, 0xE3, 0xE0,  // ........
31423                 /* 03E8 */  0x19, 0x9F, 0x1C, 0x26, 0x50, 0x98, 0x13, 0x29,  // ...&P..)
31424                 /* 03F0 */  0x0A, 0xC6, 0x27, 0x52, 0xC0, 0xD9, 0xFF, 0xFF,  // ..'R....
31425                 /* 03F8 */  0x70, 0x05, 0x86, 0xE3, 0x0D, 0xF8, 0x6F, 0x33,  // p.....o3
31426                 /* 0400 */  0x3E, 0x84, 0xFA, 0x7C, 0xE3, 0x0B, 0xA9, 0x21,  // >..|...!
31427                 /* 0408 */  0x5E, 0x6C, 0xDE, 0xD4, 0x5E, 0x09, 0x5E, 0xDF,  // ^l..^.^.
31428                 /* 0410 */  0xD9, 0xB5, 0xE6, 0xF5, 0xDD, 0xA7, 0x82, 0x27,  // .......'
31429                 /* 0418 */  0xD1, 0x08, 0x21, 0xA3, 0xBC, 0xE4, 0x18, 0x24,  // ..!....$
31430                 /* 0420 */  0xC4, 0xEB, 0xA8, 0x01, 0x83, 0x05, 0x89, 0x78,  // .......x
31431                 /* 0428 */  0x0A, 0x4F, 0x3B, 0x8F, 0x37, 0xE0, 0x15, 0x75,  // .O;.7..u
31432                 /* 0430 */  0x20, 0x05, 0xE8, 0xF1, 0xFF, 0x3F, 0x90, 0x02,  //  ....?..
31433                 /* 0438 */  0x83, 0x7B, 0x0A, 0xEC, 0x73, 0x0A, 0xE0, 0x29,  // .{..s..)
31434                 /* 0440 */  0xF9, 0x89, 0x94, 0xA6, 0x3E, 0x91, 0xA2, 0x15,  // ....>...
31435                 /* 0448 */  0x01, 0x69, 0xAA, 0x60, 0x21, 0x98, 0xFE, 0x44,  // .i.`!..D
31436                 /* 0450 */  0x4A, 0x0F, 0x06, 0xCE, 0x4D, 0xA2, 0xE4, 0x43,  // J...M..C
31437                 /* 0458 */  0xA3, 0x70, 0xCE, 0x7A, 0x20, 0xA1, 0x20, 0x06,  // .p.z . .
31438                 /* 0460 */  0x74, 0x90, 0x43, 0x05, 0xFA, 0xAC, 0xE2, 0x03,  // t.C.....
31439                 /* 0468 */  0xC9, 0x81, 0x3C, 0x22, 0x7A, 0x58, 0x3E, 0x54,  // ..<"zX>T
31440                 /* 0470 */  0xFA, 0xAE, 0xE2, 0x73, 0x88, 0x8F, 0x14, 0x1E,  // ...s....
31441                 /* 0478 */  0xBF, 0x0F, 0x0B, 0xFC, 0x3F, 0xE3, 0xE3, 0x28,  // ....?..(
31442                 /* 0480 */  0x03, 0xAF, 0xE6, 0xBC, 0x82, 0x02, 0xF3, 0x69,  // .......i
31443                 /* 0488 */  0x14, 0xA3, 0xEB, 0x3E, 0x01, 0x92, 0xFF, 0xFF,  // ...>....
31444                 /* 0490 */  0xFC, 0xB8, 0xBE, 0xC3, 0x28, 0xC8, 0xD1, 0x79,  // ....(..y
31445                 /* 0498 */  0xF8, 0xC9, 0xA2, 0xE2, 0x4E, 0x96, 0x82, 0x78,  // ....N..x
31446                 /* 04A0 */  0xB2, 0x8E, 0x32, 0x59, 0xF4, 0x4C, 0x7C, 0xBB,  // ..2Y.L|.
31447                 /* 04A8 */  0xF0, 0x8C, 0xDE, 0xBB, 0x7C, 0x83, 0x65, 0x37,  // ....|.e7
31448                 /* 04B0 */  0x59, 0x78, 0x97, 0x81, 0x90, 0x8F, 0x06, 0xBE,  // Yx......
31449                 /* 04B8 */  0xC9, 0xC2, 0x1D, 0x8B, 0x2F, 0x23, 0xE0, 0xBB,  // ..../#..
31450                 /* 04C0 */  0xC9, 0x02, 0x5E, 0x47, 0xE3, 0xB3, 0x05, 0x3B,  // ..^G...;
31451                 /* 04C8 */  0x85, 0xF8, 0xBA, 0x06, 0x4B, 0xA1, 0x4D, 0x9F,  // ....K.M.
31452                 /* 04D0 */  0x1A, 0x8D, 0x5A, 0xFD, 0xFF, 0x1B, 0x94, 0xA9,  // ..Z.....
31453                 /* 04D8 */  0x51, 0xA6, 0x41, 0xAD, 0x3E, 0x95, 0x1A, 0x33,  // Q.A.>..3
31454                 /* 04E0 */  0x76, 0xA1, 0xB0, 0xB8, 0x0B, 0x06, 0x95, 0xB4,  // v.......
31455                 /* 04E8 */  0x2C, 0x8D, 0xCB, 0x81, 0x40, 0x68, 0x80, 0x5B,  // ,...@h.[
31456                 /* 04F0 */  0xA9, 0x40, 0x1C, 0xFA, 0x0B, 0xA4, 0x53, 0x02,  // .@....S.
31457                 /* 04F8 */  0xF9, 0x6A, 0x09, 0xC8, 0x62, 0x57, 0x25, 0x10,  // .j..bW%.
31458                 /* 0500 */  0xCB, 0x54, 0x01, 0xD1, 0xC8, 0xDD, 0xC2, 0x20,  // .T..... 
31459                 /* 0508 */  0x02, 0x72, 0xBC, 0x4F, 0x8D, 0x40, 0x1D, 0x49,  // .r.O.@.I
31460                 /* 0510 */  0x07, 0x10, 0x13, 0xE4, 0x63, 0xAC, 0xF4, 0x25,  // ....c..%
31461                 /* 0518 */  0x20, 0x10, 0xCB, 0xA6, 0x15, 0xA0, 0xE5, 0x3A,  //  ......:
31462                 /* 0520 */  0x01, 0x62, 0x61, 0x41, 0x68, 0xC0, 0x5F, 0xB5,  // .baAh._.
31463                 /* 0528 */  0x86, 0xE0, 0xB4, 0x20, 0x02, 0x72, 0x32, 0x2D,  // ... .r2-
31464                 /* 0530 */  0x40, 0x2C, 0x27, 0x88, 0x80, 0xFC, 0xFF, 0x07   // @,'.....
31465             })
31466         }
31467 
31468         Device (WMI3)
31469         {
31470             Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */)  // _HID: Hardware ID
31471             Name (_UID, 0x03)  // _UID: Unique ID
31472             Name (_WDG, /**** Is ResourceTemplate, but EndTag not at buffer end ****/ Buffer (0x3C)
31473             {
31474                 /* 0000 */  0x79, 0x36, 0x4D, 0x8F, 0x9E, 0x74, 0x79, 0x44,  // y6M..tyD
31475                 /* 0008 */  0x9B, 0x16, 0xC6, 0x26, 0x01, 0xFD, 0x25, 0xF0,  // ...&..%.
31476                 /* 0010 */  0x41, 0x42, 0x01, 0x02, 0x69, 0xE8, 0xD2, 0x85,  // AB..i...
31477                 /* 0018 */  0x5A, 0x36, 0xCE, 0x4A, 0xA4, 0xD3, 0xCD, 0x69,  // Z6.J...i
31478                 /* 0020 */  0x2B, 0x16, 0x98, 0xA0, 0x41, 0x43, 0x01, 0x02,  // +...AC..
31479                 /* 0028 */  0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11,  // !...f...
31480                 /* 0030 */  0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10,  // ......).
31481                 /* 0038 */  0x42, 0x43, 0x01, 0x00                           // BC..
31482             })
31483             Method (WMAB, 3, NotSerialized)
31484             {
31485                 CreateByteField (Arg2, 0x00, ASS0)
31486                 CreateWordField (Arg2, 0x01, ASS1)
31487                 CreateByteField (Arg2, 0x03, ASS2)
31488                 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
31489                 \WASB = ASS0 /* \_SB_.WMI3.WMAB.ASS0 */
31490                 \WASI = ASS1 /* \_SB_.WMI3.WMAB.ASS1 */
31491                 \WASD = ASS2 /* \_SB_.WMI3.WMAB.ASS2 */
31492                 \WMIS (0x0B, 0x00)
31493                 Local0 = \WASS
31494                 Release (\_SB.WMI1.MWMI)
31495                 Return (Local0)
31496             }
31497 
31498             Method (WMAC, 3, NotSerialized)
31499             {
31500                 CreateByteField (Arg2, 0x00, ASS0)
31501                 CreateWordField (Arg2, 0x01, ASS1)
31502                 Acquire (\_SB.WMI1.MWMI, 0xFFFF)
31503                 \WASB = ASS0 /* \_SB_.WMI3.WMAC.ASS0 */
31504                 \WASI = ASS1 /* \_SB_.WMI3.WMAC.ASS1 */
31505                 \WMIS (0x0C, Arg1)
31506                 Local0 = \WASS
31507                 Release (\_SB.WMI1.MWMI)
31508                 Return (Local0)
31509             }
31510 
31511             Name (WQBC, Buffer (0x040A)
31512             {
31513                 /* 0000 */  0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00,  // FOMB....
31514                 /* 0008 */  0xFA, 0x03, 0x00, 0x00, 0x32, 0x12, 0x00, 0x00,  // ....2...
31515                 /* 0010 */  0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54,  // DS...}.T
31516                 /* 0018 */  0x98, 0xC3, 0x88, 0x00, 0x01, 0x06, 0x18, 0x42,  // .......B
31517                 /* 0020 */  0x10, 0x07, 0x10, 0x8A, 0x0D, 0x21, 0x02, 0x0B,  // .....!..
31518                 /* 0028 */  0x83, 0x50, 0x50, 0x18, 0x14, 0xA0, 0x45, 0x41,  // .PP...EA
31519                 /* 0030 */  0xC8, 0x05, 0x14, 0x95, 0x02, 0x21, 0xC3, 0x02,  // .....!..
31520                 /* 0038 */  0x14, 0x0B, 0x70, 0x2E, 0x40, 0xBA, 0x00, 0xE5,  // ..p.@...
31521                 /* 0040 */  0x28, 0x72, 0x0C, 0x22, 0x02, 0xF7, 0xEF, 0x0F,  // (r."....
31522                 /* 0048 */  0x31, 0x10, 0x88, 0x14, 0x40, 0x48, 0x28, 0x84,  // 1...@H(.
31523                 /* 0050 */  0x44, 0x00, 0x53, 0x21, 0x70, 0x84, 0xA0, 0x5F,  // D.S!p.._
31524                 /* 0058 */  0x01, 0x08, 0x1D, 0x0A, 0x90, 0x29, 0xC0, 0xA0,  // .....)..
31525                 /* 0060 */  0x00, 0xA7, 0x08, 0x22, 0x88, 0xD2, 0xB2, 0x00,  // ..."....
31526                 /* 0068 */  0xDD, 0x02, 0x7C, 0x0B, 0xD0, 0x0E, 0x21, 0xB4,  // ..|...!.
31527                 /* 0070 */  0x58, 0x07, 0x11, 0x21, 0xD2, 0x31, 0x34, 0x29,  // X..!.14)
31528                 /* 0078 */  0x40, 0xA2, 0x00, 0x8B, 0x02, 0x64, 0xC3, 0xC8,  // @....d..
31529                 /* 0080 */  0x36, 0x22, 0x99, 0x87, 0x45, 0x0E, 0x02, 0x25,  // 6"..E..%
31530                 /* 0088 */  0x66, 0x10, 0x28, 0x9D, 0xE0, 0xB2, 0x89, 0xAB,  // f.(.....
31531                 /* 0090 */  0x41, 0x9C, 0x4C, 0x94, 0xF3, 0x88, 0x92, 0xE0,  // A.L.....
31532                 /* 0098 */  0xA8, 0x0E, 0x22, 0x42, 0xEC, 0x72, 0x05, 0x48,  // .."B.r.H
31533                 /* 00A0 */  0x1E, 0x80, 0x34, 0x4F, 0x4C, 0xD6, 0xE7, 0xA0,  // ..4OL...
31534                 /* 00A8 */  0x91, 0xB1, 0x11, 0xF0, 0x94, 0x1A, 0x40, 0x58,  // ......@X
31535                 /* 00B0 */  0xA0, 0x75, 0x2A, 0xE0, 0x7A, 0x0D, 0x43, 0x3D,  // .u*.z.C=
31536                 /* 00B8 */  0x80, 0x48, 0xCE, 0x58, 0x51, 0xC0, 0xF6, 0x3A,  // .H.XQ..:
31537                 /* 00C0 */  0x11, 0x8D, 0xEA, 0x40, 0x99, 0x24, 0x38, 0xD4,  // ...@.$8.
31538                 /* 00C8 */  0x30, 0x3D, 0xB5, 0xE6, 0x27, 0xA6, 0x89, 0x9C,  // 0=..'...
31539                 /* 00D0 */  0x5A, 0xD3, 0x43, 0x16, 0x24, 0x93, 0x36, 0x14,  // Z.C.$.6.
31540                 /* 00D8 */  0xD4, 0xD8, 0x3D, 0xAD, 0x93, 0xF2, 0x4C, 0x23,  // ..=...L#
31541                 /* 00E0 */  0x1E, 0x94, 0x61, 0x12, 0x78, 0x14, 0x0C, 0x8D,  // ..a.x...
31542                 /* 00E8 */  0x13, 0x94, 0x75, 0x22, 0xA0, 0x03, 0xE5, 0x80,  // ..u"....
31543                 /* 00F0 */  0x27, 0xE1, 0x39, 0x16, 0x2F, 0x40, 0xF8, 0x88,  // '.9./@..
31544                 /* 00F8 */  0xC9, 0xB4, 0x4D, 0xE0, 0x33, 0x81, 0x87, 0x79,  // ..M.3..y
31545                 /* 0100 */  0xCC, 0xD8, 0x11, 0x85, 0x0B, 0x78, 0x3E, 0xC7,  // .....x>.
31546                 /* 0108 */  0x10, 0x39, 0xEE, 0xA1, 0xC6, 0x38, 0x8A, 0xC8,  // .9...8..
31547                 /* 0110 */  0x47, 0x60, 0x24, 0x03, 0xC5, 0x2B, 0x08, 0x89,  // G`$..+..
31548                 /* 0118 */  0x80, 0xF8, 0x76, 0x70, 0x70, 0x91, 0xFC, 0xFF,  // ..vpp...
31549                 /* 0120 */  0x47, 0x89, 0x11, 0x2A, 0xC6, 0xDB, 0x00, 0x6E,  // G..*...n
31550                 /* 0128 */  0x5E, 0x09, 0x8A, 0x1E, 0x07, 0x4A, 0x06, 0x84,  // ^....J..
31551                 /* 0130 */  0x3C, 0x0A, 0xB0, 0x7A, 0x28, 0x20, 0x04, 0x16,  // <..z( ..
31552                 /* 0138 */  0x27, 0x40, 0xE3, 0x38, 0x05, 0xD3, 0x99, 0x00,  // '@.8....
31553                 /* 0140 */  0x6D, 0x02, 0xBC, 0x09, 0x30, 0x27, 0xC0, 0x16,  // m...0'..
31554                 /* 0148 */  0x86, 0x80, 0x82, 0x9C, 0x59, 0x94, 0x20, 0x11,  // ....Y. .
31555                 /* 0150 */  0x42, 0x31, 0x88, 0x0A, 0x05, 0x18, 0x43, 0x14,  // B1....C.
31556                 /* 0158 */  0xCA, 0x3B, 0x41, 0x8C, 0xCA, 0x20, 0x74, 0x82,  // .;A.. t.
31557                 /* 0160 */  0x08, 0x14, 0x3D, 0x78, 0x98, 0xD6, 0x40, 0x74,  // ..=x..@t
31558                 /* 0168 */  0x89, 0xF0, 0xC8, 0xB1, 0x47, 0x00, 0x9F, 0x19,  // ....G...
31559                 /* 0170 */  0xCE, 0xE9, 0x04, 0x1F, 0x01, 0xDE, 0x16, 0x4C,  // .......L
31560                 /* 0178 */  0xE0, 0x79, 0xBF, 0x24, 0x1C, 0x6A, 0xD8, 0x03,  // .y.$.j..
31561                 /* 0180 */  0x8E, 0x1A, 0xE3, 0x28, 0x12, 0x58, 0xD0, 0x33,  // ...(.X.3
31562                 /* 0188 */  0x42, 0x16, 0x40, 0x14, 0x09, 0x1E, 0x75, 0x64,  // B.@...ud
31563                 /* 0190 */  0xF0, 0xE1, 0xC0, 0x23, 0x3B, 0x72, 0xCF, 0xF0,  // ...#;r..
31564                 /* 0198 */  0x04, 0x82, 0x1C, 0xC2, 0x11, 0x3C, 0x36, 0x3C,  // .....<6<
31565                 /* 01A0 */  0x15, 0x78, 0x0C, 0xEC, 0xBA, 0xE0, 0x73, 0x80,  // .x....s.
31566                 /* 01A8 */  0x8F, 0x09, 0x78, 0xD7, 0x80, 0x9A, 0xF3, 0xD3,  // ..x.....
31567                 /* 01B0 */  0x01, 0x9B, 0x72, 0x38, 0xCC, 0x70, 0x3D, 0xFD,  // ..r8.p=.
31568                 /* 01B8 */  0x70, 0x27, 0x70, 0xD2, 0x06, 0x64, 0xB3, 0xF3,  // p'p..d..
31569                 /* 01C0 */  0xE0, 0x70, 0xE3, 0x3C, 0x99, 0x23, 0x2B, 0x55,  // .p.<.#+U
31570                 /* 01C8 */  0x80, 0xD9, 0x13, 0x82, 0x4E, 0x13, 0x3E, 0x73,  // ....N.>s
31571                 /* 01D0 */  0xB0, 0xBB, 0xC0, 0xF9, 0xF4, 0x0C, 0x49, 0xE4,  // ......I.
31572                 /* 01D8 */  0x0F, 0x02, 0x35, 0x32, 0x43, 0xFB, 0x2C, 0xF0,  // ..52C.,.
31573                 /* 01E0 */  0xEA, 0x61, 0xC8, 0x87, 0x85, 0xC3, 0x62, 0x62,  // .a....bb
31574                 /* 01E8 */  0xCF, 0x1E, 0x74, 0x3C, 0xE0, 0x3F, 0x25, 0x3C,  // ..t<.?%<
31575                 /* 01F0 */  0x6C, 0x78, 0xFA, 0x9E, 0xAF, 0x09, 0xA2, 0x3D,  // lx.....=
31576                 /* 01F8 */  0x8F, 0x80, 0xE1, 0xFF, 0x7F, 0x1E, 0x81, 0x39,  // .......9
31577                 /* 0200 */  0x9C, 0x07, 0x84, 0x27, 0x07, 0x76, 0x80, 0xC0,  // ...'.v..
31578                 /* 0208 */  0x1C, 0x48, 0x80, 0xC9, 0xF9, 0x02, 0x77, 0x28,  // .H....w(
31579                 /* 0210 */  0xF0, 0x10, 0xF8, 0x00, 0x1E, 0x25, 0xCE, 0xD1,  // .....%..
31580                 /* 0218 */  0x4A, 0x67, 0x86, 0x3C, 0xB9, 0x80, 0x2D, 0xFB,  // Jg.<..-.
31581                 /* 0220 */  0x1B, 0x40, 0x07, 0x0F, 0xE7, 0x06, 0x91, 0x8D,  // .@......
31582                 /* 0228 */  0x57, 0x80, 0x09, 0x74, 0x38, 0xB1, 0x1E, 0x20,  // W..t8.. 
31583                 /* 0230 */  0x4D, 0x14, 0x0C, 0x04, 0xD3, 0xD3, 0x6B, 0x00,  // M.....k.
31584                 /* 0238 */  0x3E, 0x15, 0x38, 0x37, 0x89, 0x92, 0x0F, 0x8C,  // >.87....
31585                 /* 0240 */  0xC2, 0x39, 0xEB, 0x79, 0x84, 0x82, 0x18, 0xD0,  // .9.y....
31586                 /* 0248 */  0x41, 0x20, 0xE4, 0xE4, 0xA0, 0x80, 0x3A, 0xAA,  // A ....:.
31587                 /* 0250 */  0xF8, 0x3C, 0x72, 0xAA, 0x0F, 0x3D, 0x9E, 0x94,  // .<r..=..
31588                 /* 0258 */  0x47, 0xE1, 0xAB, 0x8A, 0x0F, 0x21, 0x3E, 0x4F,  // G....!>O
31589                 /* 0260 */  0x78, 0xF4, 0x3E, 0x29, 0xF0, 0xEF, 0x8C, 0xAF,  // x.>)....
31590                 /* 0268 */  0x0E, 0x46, 0xB7, 0x9A, 0xE3, 0x0A, 0x0A, 0xCC,  // .F......
31591                 /* 0270 */  0x67, 0x11, 0x4E, 0x50, 0xD7, 0x6D, 0x01, 0xFA,  // g.NP.m..
31592                 /* 0278 */  0x29, 0xE0, 0x08, 0x3C, 0x94, 0x77, 0x92, 0xC7,  // )..<.w..
31593                 /* 0280 */  0x90, 0x04, 0xF5, 0x9D, 0x16, 0x40, 0x01, 0xE4,  // .....@..
31594                 /* 0288 */  0x9B, 0x81, 0x4F, 0x02, 0x21, 0xFE, 0xFF, 0x4F,  // ..O.!..O
31595                 /* 0290 */  0x07, 0x1E, 0xC3, 0xC3, 0x80, 0xD1, 0x8C, 0xCE,  // ........
31596                 /* 0298 */  0xC3, 0x4F, 0x16, 0x15, 0x77, 0xB2, 0x14, 0xC4,  // .O..w...
31597                 /* 02A0 */  0x93, 0x75, 0x94, 0xC9, 0xA2, 0x67, 0xE2, 0xAB,  // .u...g..
31598                 /* 02A8 */  0x85, 0x27, 0x74, 0x4A, 0x41, 0xCE, 0xD1, 0x13,  // .'tJA...
31599                 /* 02B0 */  0xF6, 0x55, 0x04, 0xD6, 0xF9, 0x20, 0xE4, 0x8B,  // .U... ..
31600                 /* 02B8 */  0x81, 0xA7, 0x61, 0x38, 0x4F, 0x96, 0xC3, 0x79,  // ..a8O..y
31601                 /* 02C0 */  0xB2, 0x7C, 0x2C, 0xBE, 0x6A, 0xC0, 0x1F, 0x2D,  // .|,.j..-
31602                 /* 02C8 */  0x96, 0xA0, 0xC0, 0xD9, 0x82, 0x1C, 0x1E, 0x13,  // ........
31603                 /* 02D0 */  0x6F, 0x54, 0xF4, 0x46, 0xE4, 0xE1, 0xF1, 0xCB,  // oT.F....
31604                 /* 02D8 */  0x81, 0xE7, 0xF3, 0x8C, 0x70, 0x94, 0x6F, 0x12,  // ....p.o.
31605                 /* 02E0 */  0x38, 0x8C, 0xC7, 0x12, 0x0F, 0xD1, 0x97, 0x23,  // 8......#
31606                 /* 02E8 */  0x58, 0x13, 0x39, 0x69, 0xDF, 0x16, 0x4E, 0x36,  // X.9i..N6
31607                 /* 02F0 */  0xE8, 0x4B, 0x10, 0xBB, 0x1C, 0x01, 0xBF, 0x88,  // .K......
31608                 /* 02F8 */  0x26, 0x86, 0xC1, 0x22, 0x2D, 0x45, 0x11, 0x17,  // &.."-E..
31609                 /* 0300 */  0x45, 0x61, 0x7C, 0xC5, 0x82, 0xFD, 0xFF, 0xBF,  // Ea|.....
31610                 /* 0308 */  0x62, 0x01, 0x16, 0x04, 0x0F, 0x1B, 0x34, 0x87,  // b.....4.
31611                 /* 0310 */  0x83, 0x97, 0x1E, 0x36, 0x6B, 0x38, 0x07, 0x99,  // ...6k8..
31612                 /* 0318 */  0xD3, 0xF1, 0x48, 0x4E, 0x1B, 0xC6, 0x1D, 0x0B,  // ..HN....
31613                 /* 0320 */  0xFE, 0x9D, 0xEA, 0xA9, 0xCA, 0xD3, 0x8A, 0xF2,  // ........
31614                 /* 0328 */  0x64, 0xF5, 0x7A, 0xE5, 0x63, 0x96, 0xA1, 0xCE,  // d.z.c...
31615                 /* 0330 */  0xE0, 0x1D, 0xCB, 0xB7, 0x3C, 0x4F, 0x21, 0x4A,  // ....<O!J
31616                 /* 0338 */  0x9C, 0x97, 0x2D, 0x76, 0xC7, 0x32, 0x48, 0x50,  // ..-v.2HP
31617                 /* 0340 */  0x23, 0x3F, 0x68, 0x31, 0x94, 0xE0, 0xF1, 0xDE,  // #?h1....
31618                 /* 0348 */  0xB1, 0x00, 0x6F, 0xFF, 0xFF, 0x3B, 0x16, 0x60,  // ..o..;.`
31619                 /* 0350 */  0xFC, 0x04, 0xC1, 0x09, 0x7C, 0xC7, 0x02, 0x1C,  // ....|...
31620                 /* 0358 */  0xC5, 0x7E, 0x37, 0xE8, 0x4A, 0x45, 0xEE, 0x58,  // .~7.JE.X
31621                 /* 0360 */  0x28, 0x0E, 0xAB, 0xB9, 0x63, 0x41, 0x9C, 0x28,  // (...cA.(
31622                 /* 0368 */  0xE6, 0x8A, 0x05, 0x86, 0xFF, 0xFF, 0x15, 0x0B,  // ........
31623                 /* 0370 */  0xE0, 0x75, 0xC0, 0x2B, 0x16, 0x68, 0xFE, 0xFF,  // .u.+.h..
31624                 /* 0378 */  0x57, 0x2C, 0xF0, 0x5E, 0x8E, 0x80, 0xDF, 0x09,  // W,.^....
31625                 /* 0380 */  0xD1, 0x77, 0x0D, 0x7E, 0x9A, 0xB6, 0xA2, 0xBB,  // .w.~....
31626                 /* 0388 */  0x06, 0x94, 0x19, 0xBE, 0x07, 0xF9, 0xB0, 0x13,  // ........
31627                 /* 0390 */  0x2C, 0xD2, 0xA3, 0x8D, 0x6F, 0x49, 0xE1, 0x7C,  // ,...oI.|
31628                 /* 0398 */  0xDB, 0x00, 0xD8, 0xF2, 0xFF, 0xBF, 0x6D, 0x00,  // ......m.
31629                 /* 03A0 */  0x4C, 0x19, 0xBF, 0x6F, 0x1B, 0xC0, 0x4F, 0xA1,  // L..o..O.
31630                 /* 03A8 */  0x4D, 0x9F, 0x1A, 0x8D, 0x5A, 0x35, 0x28, 0x53,  // M...Z5(S
31631                 /* 03B0 */  0xA3, 0x4C, 0x83, 0x5A, 0x7D, 0x2A, 0x35, 0x66,  // .L.Z}*5f
31632                 /* 03B8 */  0x4C, 0xC9, 0xC1, 0xCE, 0x77, 0x0C, 0x2A, 0x6C,  // L...w.*l
31633                 /* 03C0 */  0x65, 0x1A, 0x9A, 0x63, 0x81, 0xD0, 0x10, 0xC7,  // e..c....
31634                 /* 03C8 */  0x26, 0x19, 0x01, 0x51, 0x22, 0x10, 0x01, 0x59,  // &..Q"..Y
31635                 /* 03D0 */  0xFD, 0x6F, 0x42, 0x40, 0xCE, 0x02, 0x22, 0x20,  // .oB@.." 
31636                 /* 03D8 */  0x2B, 0x58, 0x9A, 0xC0, 0x9D, 0xFF, 0xD8, 0x28,  // +X.....(
31637                 /* 03E0 */  0x40, 0xA2, 0x02, 0x84, 0x29, 0x7D, 0x93, 0x09,  // @...)}..
31638                 /* 03E8 */  0xD4, 0xB2, 0x41, 0x04, 0xF4, 0xFF, 0x3F, 0x42,  // ..A...?B
31639                 /* 03F0 */  0xD9, 0x00, 0x62, 0x82, 0x41, 0x04, 0x64, 0x91,  // ..b.A.d.
31640                 /* 03F8 */  0x3E, 0x80, 0x98, 0x62, 0x10, 0x01, 0x59, 0xDD,  // >..b..Y.
31641                 /* 0400 */  0xA3, 0x40, 0x40, 0xD6, 0x0A, 0x22, 0x20, 0xFF,  // .@@.." .
31642                 /* 0408 */  0xFF, 0x01                                       // ..
31643             })
31644         }
31645     }
31646 
31647     Scope (\_SB.PCI0)
31648     {
31649         Name (RID, 0x00)
31650         Scope (I2C0)
31651         {
31652             Device (NFC1)
31653             {
31654                 Name (_ADR, 0x00)  // _ADR: Address
31655                 Name (_HID, "NXP1001")  // _HID: Hardware ID
31656                 Name (_DDN, "NXP NFC For Win10")  // _DDN: DOS Device Name
31657                 Name (_UID, 0x01)  // _UID: Unique ID
31658                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
31659                 {
31660                     Name (RBUF, ResourceTemplate ()
31661                     {
31662                         I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80,
31663                             AddressingMode7Bit, "\\_SB.PCI0.I2C0",
31664                             0x00, ResourceConsumer, , Exclusive,
31665                             )
31666                         GpioInt (Level, ActiveHigh, Exclusive, PullNone, 0x0000,
31667                             "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
31668                             )
31669                             {   // Pin list
31670                                 0x0000
31671                             }
31672                         GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
31673                             "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
31674                             )
31675                             {   // Pin list
31676                                 0x0000
31677                             }
31678                         GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
31679                             "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
31680                             )
31681                             {   // Pin list
31682                                 0x0000
31683                             }
31684                     })
31685                     CreateWordField (RBUF, 0x38, NFIP)
31686                     CreateWordField (RBUF, 0x60, NFEQ)
31687                     CreateWordField (RBUF, 0x88, NFON)
31688                     NFIP = GNUM (0x0404000A)
31689                     NFEQ = GNUM (0x0401000F)
31690                     NFON = GNUM (0x04040005)
31691                     Return (RBUF) /* \_SB_.PCI0.I2C0.NFC1._CRS.RBUF */
31692                 }
31693 
31694                 Method (_STA, 0, NotSerialized)  // _STA: Status
31695                 {
31696                     If ((\OSYS >= 0x07DF))
31697                     {
31698                         If (((\_SB.GGIV (0x04030016) == 0x00) && (\NFCF == 0x00)))
31699                         {
31700                             Return (0x0F)
31701                         }
31702                     }
31703 
31704                     Return (0x00)
31705                 }
31706             }
31707         }
31708     }
31709 
31710     Scope (\_SB.PCI0.SBUS)
31711     {
31712         Name (RID, 0x00)
31713         Name (_S3D, 0x03)  // _S3D: S3 Device State
31714         OperationRegion (SMBP, PCI_Config, 0x50, 0x04)
31715         Field (SMBP, DWordAcc, NoLock, Preserve)
31716         {
31717                 ,   5, 
31718             TCOB,   11, 
31719             Offset (0x04)
31720         }
31721 
31722         Name (TCBV, 0x00)
31723         Method (TCBS, 0, NotSerialized)
31724         {
31725             If ((TCBV == 0x00))
31726             {
31727                 TCBV = (\_SB.PCI0.SBUS.TCOB << 0x05)
31728             }
31729 
31730             Return (TCBV) /* \_SB_.PCI0.SBUS.TCBV */
31731         }
31732 
31733         OperationRegion (TCBA, SystemIO, TCBS (), 0x10)
31734         Field (TCBA, ByteAcc, NoLock, Preserve)
31735         {
31736             Offset (0x04), 
31737                 ,   9, 
31738             CPSC,   1
31739         }
31740     }
31741 
31742     Scope (\_SB.PCI0.PEG0)
31743     {
31744         Name (RID, 0x00)
31745     }
31746 
31747     Scope (\_SB.PCI0.GFX0)
31748     {
31749         Name (RID, 0x00)
31750     }
31751 
31752     Scope (\_SB.PCI0.SAT0)
31753     {
31754         Name (RID, 0x00)
31755     }
31756 
31757     Scope (\_SB.PCI0.LPCB)
31758     {
31759         Name (RID, 0x00)
31760         Device (SIO)
31761         {
31762             Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
31763             Name (_UID, 0x00)  // _UID: Unique ID
31764             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
31765             {
31766                 Name (BUF, ResourceTemplate ()
31767                 {
31768                     IO (Decode16,
31769                         0x0010,             // Range Minimum
31770                         0x0010,             // Range Maximum
31771                         0x01,               // Alignment
31772                         0x10,               // Length
31773                         )
31774                     IO (Decode16,
31775                         0x0090,             // Range Minimum
31776                         0x0090,             // Range Maximum
31777                         0x01,               // Alignment
31778                         0x10,               // Length
31779                         )
31780                     IO (Decode16,
31781                         0x0024,             // Range Minimum
31782                         0x0024,             // Range Maximum
31783                         0x01,               // Alignment
31784                         0x02,               // Length
31785                         )
31786                     IO (Decode16,
31787                         0x0028,             // Range Minimum
31788                         0x0028,             // Range Maximum
31789                         0x01,               // Alignment
31790                         0x02,               // Length
31791                         )
31792                     IO (Decode16,
31793                         0x002C,             // Range Minimum
31794                         0x002C,             // Range Maximum
31795                         0x01,               // Alignment
31796                         0x02,               // Length
31797                         )
31798                     IO (Decode16,
31799                         0x0030,             // Range Minimum
31800                         0x0030,             // Range Maximum
31801                         0x01,               // Alignment
31802                         0x02,               // Length
31803                         )
31804                     IO (Decode16,
31805                         0x0034,             // Range Minimum
31806                         0x0034,             // Range Maximum
31807                         0x01,               // Alignment
31808                         0x02,               // Length
31809                         )
31810                     IO (Decode16,
31811                         0x0038,             // Range Minimum
31812                         0x0038,             // Range Maximum
31813                         0x01,               // Alignment
31814                         0x02,               // Length
31815                         )
31816                     IO (Decode16,
31817                         0x003C,             // Range Minimum
31818                         0x003C,             // Range Maximum
31819                         0x01,               // Alignment
31820                         0x02,               // Length
31821                         )
31822                     IO (Decode16,
31823                         0x00A4,             // Range Minimum
31824                         0x00A4,             // Range Maximum
31825                         0x01,               // Alignment
31826                         0x02,               // Length
31827                         )
31828                     IO (Decode16,
31829                         0x00A8,             // Range Minimum
31830                         0x00A8,             // Range Maximum
31831                         0x01,               // Alignment
31832                         0x02,               // Length
31833                         )
31834                     IO (Decode16,
31835                         0x00AC,             // Range Minimum
31836                         0x00AC,             // Range Maximum
31837                         0x01,               // Alignment
31838                         0x02,               // Length
31839                         )
31840                     IO (Decode16,
31841                         0x00B0,             // Range Minimum
31842                         0x00B0,             // Range Maximum
31843                         0x01,               // Alignment
31844                         0x06,               // Length
31845                         )
31846                     IO (Decode16,
31847                         0x00B8,             // Range Minimum
31848                         0x00B8,             // Range Maximum
31849                         0x01,               // Alignment
31850                         0x02,               // Length
31851                         )
31852                     IO (Decode16,
31853                         0x00BC,             // Range Minimum
31854                         0x00BC,             // Range Maximum
31855                         0x01,               // Alignment
31856                         0x02,               // Length
31857                         )
31858                     IO (Decode16,
31859                         0x0050,             // Range Minimum
31860                         0x0050,             // Range Maximum
31861                         0x01,               // Alignment
31862                         0x04,               // Length
31863                         )
31864                     IO (Decode16,
31865                         0x0072,             // Range Minimum
31866                         0x0072,             // Range Maximum
31867                         0x01,               // Alignment
31868                         0x06,               // Length
31869                         )
31870                     IO (Decode16,
31871                         0x1800,             // Range Minimum
31872                         0x1800,             // Range Maximum
31873                         0x01,               // Alignment
31874                         0xA0,               // Length
31875                         )
31876                     IO (Decode16,
31877                         0x0800,             // Range Minimum
31878                         0x0800,             // Range Maximum
31879                         0x01,               // Alignment
31880                         0x80,               // Length
31881                         )
31882                     IO (Decode16,
31883                         0x0880,             // Range Minimum
31884                         0x0880,             // Range Maximum
31885                         0x01,               // Alignment
31886                         0x80,               // Length
31887                         )
31888                     IO (Decode16,
31889                         0x0900,             // Range Minimum
31890                         0x0900,             // Range Maximum
31891                         0x01,               // Alignment
31892                         0x80,               // Length
31893                         )
31894                     IO (Decode16,
31895                         0x0980,             // Range Minimum
31896                         0x0980,             // Range Maximum
31897                         0x01,               // Alignment
31898                         0x80,               // Length
31899                         )
31900                     IO (Decode16,
31901                         0x0A00,             // Range Minimum
31902                         0x0A00,             // Range Maximum
31903                         0x01,               // Alignment
31904                         0x80,               // Length
31905                         )
31906                     IO (Decode16,
31907                         0x0A80,             // Range Minimum
31908                         0x0A80,             // Range Maximum
31909                         0x01,               // Alignment
31910                         0x80,               // Length
31911                         )
31912                     IO (Decode16,
31913                         0x0B00,             // Range Minimum
31914                         0x0B00,             // Range Maximum
31915                         0x01,               // Alignment
31916                         0x80,               // Length
31917                         )
31918                     IO (Decode16,
31919                         0x0B80,             // Range Minimum
31920                         0x0B80,             // Range Maximum
31921                         0x01,               // Alignment
31922                         0x80,               // Length
31923                         )
31924                     IO (Decode16,
31925                         0x15E0,             // Range Minimum
31926                         0x15E0,             // Range Maximum
31927                         0x01,               // Alignment
31928                         0x10,               // Length
31929                         )
31930                     IO (Decode16,
31931                         0x1600,             // Range Minimum
31932                         0x1600,             // Range Maximum
31933                         0x01,               // Alignment
31934                         0x80,               // Length
31935                         )
31936                     IO (Decode16,
31937                         0x1640,             // Range Minimum
31938                         0x1640,             // Range Maximum
31939                         0x01,               // Alignment
31940                         0x20,               // Length
31941                         )
31942                     Memory32Fixed (ReadWrite,
31943                         0xE0000000,         // Address Base
31944                         0x10000000,         // Address Length
31945                         )
31946                     Memory32Fixed (ReadWrite,
31947                         0xFED10000,         // Address Base
31948                         0x00004000,         // Address Length
31949                         )
31950                     Memory32Fixed (ReadWrite,
31951                         0xFED18000,         // Address Base
31952                         0x00001000,         // Address Length
31953                         )
31954                     Memory32Fixed (ReadWrite,
31955                         0xFED19000,         // Address Base
31956                         0x00001000,         // Address Length
31957                         )
31958                     Memory32Fixed (ReadWrite,
31959                         0xFEB00000,         // Address Base
31960                         0x00100000,         // Address Length
31961                         )
31962                     Memory32Fixed (ReadWrite,
31963                         0xFED20000,         // Address Base
31964                         0x00020000,         // Address Length
31965                         )
31966                     Memory32Fixed (ReadOnly,
31967                         0xFED90000,         // Address Base
31968                         0x00004000,         // Address Length
31969                         )
31970                     Memory32Fixed (ReadWrite,
31971                         0x00000000,         // Address Base
31972                         0x00000000,         // Address Length
31973                         )
31974                 })
31975                 Return (BUF) /* \_SB_.PCI0.LPCB.SIO_._CRS.BUF_ */
31976             }
31977         }
31978 
31979         OperationRegion (LPCS, PCI_Config, 0x00, 0x0100)
31980         Field (LPCS, AnyAcc, NoLock, Preserve)
31981         {
31982             Offset (0x60), 
31983             PIRA,   8, 
31984             PIRB,   8, 
31985             PIRC,   8, 
31986             PIRD,   8, 
31987             SERQ,   8, 
31988             Offset (0x68), 
31989             PIRE,   8, 
31990             PIRF,   8, 
31991             PIRG,   8, 
31992             PIRH,   8, 
31993             Offset (0x80), 
31994             XU1A,   3, 
31995                 ,   1, 
31996             XU2A,   3, 
31997             Offset (0x81), 
31998             XPA,    2, 
31999                 ,   2, 
32000             XFA,    1, 
32001             Offset (0x82), 
32002             XU1E,   1, 
32003             XU2E,   1, 
32004             XPE,    1, 
32005             XFE,    1, 
32006             Offset (0x84), 
32007             XG1E,   1, 
32008                 ,   1, 
32009             XG1A,   14, 
32010             Offset (0x88), 
32011             XG2E,   1, 
32012                 ,   1, 
32013             XG2A,   14, 
32014             Offset (0xA0), 
32015                 ,   2, 
32016             CLKR,   1, 
32017                 ,   7, 
32018             EXPE,   1, 
32019             Offset (0xA2), 
32020             Offset (0xAC), 
32021             Offset (0xAD), 
32022             Offset (0xAE), 
32023             XUSB,   1, 
32024             Offset (0xB8), 
32025             GR00,   2, 
32026                 ,   10, 
32027             GR06,   2
32028         }
32029 
32030         OperationRegion (GDIO, SystemMemory, 0xFDAF04C0, 0x10)
32031         Field (GDIO, DWordAcc, NoLock, Preserve)
32032         {
32033                 ,   30, 
32034             DOI0,   1, 
32035             Offset (0x04), 
32036                 ,   30, 
32037             DOI1,   1, 
32038             Offset (0x08), 
32039                 ,   30, 
32040             DOI2,   1, 
32041             Offset (0x0C), 
32042                 ,   30, 
32043             DOI3,   1
32044         }
32045 
32046         OperationRegion (LPIO, SystemIO, 0x0800, 0x0400)
32047         Field (LPIO, DWordAcc, NoLock, Preserve)
32048         {
32049             Offset (0x180), 
32050                 ,   3, 
32051             XHPD,   1, 
32052             Offset (0x1B0), 
32053                 ,   31, 
32054             GLIS,   1, 
32055             Offset (0x308), 
32056             Offset (0x30C)
32057         }
32058 
32059         OperationRegion (PMIO, SystemIO, 0x1800, 0x0100)
32060         Field (PMIO, AnyAcc, NoLock, Preserve)
32061         {
32062             Offset (0x2A), 
32063                 ,   6, 
32064             XHPE,   1, 
32065             Offset (0x42), 
32066                 ,   1, 
32067             SWGE,   1, 
32068             Offset (0x64), 
32069                 ,   9, 
32070             Offset (0x8C), 
32071             SCIS,   1, 
32072                 ,   6
32073         }
32074 
32075         OperationRegion (IMGA, SystemIO, 0x15E0, 0x10)
32076         Field (IMGA, ByteAcc, NoLock, Preserve)
32077         {
32078             Offset (0x01), 
32079             Offset (0x02), 
32080             Offset (0x03), 
32081             WAKR,   16, 
32082             Offset (0x0C), 
32083             GAIX,   8, 
32084             Offset (0x0E), 
32085             GADT,   8, 
32086             Offset (0x10)
32087         }
32088 
32089         IndexField (GAIX, GADT, ByteAcc, NoLock, Preserve)
32090         {
32091             Offset (0x60), 
32092             EPWG,   1, 
32093                 ,   1, 
32094             CSON,   1, 
32095             DSCI,   1, 
32096             DSCS,   1, 
32097             DLAN,   1, 
32098             Offset (0xC2), 
32099             GAID,   8
32100         }
32101     }
32102 
32103     Scope (\_SB.PCI0.LPCB.EC)
32104     {
32105         Mutex (MCPU, 0x00)
32106         Method (_Q1F, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32107         {
32108             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x00020000))
32109             {
32110                 If ((PKLI & 0x0C00))
32111                 {
32112                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1012)
32113                 }
32114             }
32115 
32116             \SCMS (0x0E)
32117         }
32118 
32119         Method (_Q16, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32120         {
32121             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x40))
32122             {
32123                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1007)
32124             }
32125         }
32126 
32127         Method (_Q1C, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32128         {
32129             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x01000000))
32130             {
32131                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1019)
32132             }
32133         }
32134 
32135         Method (_Q1D, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32136         {
32137             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x02000000))
32138             {
32139                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x101A)
32140             }
32141         }
32142 
32143         Method (_Q13, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32144         {
32145             If (\_SB.PCI0.LPCB.EC.HKEY.DHKC)
32146             {
32147                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1004)
32148             }
32149             Else
32150             {
32151                 Notify (\_SB.SLPB, 0x80) // Status Change
32152             }
32153         }
32154 
32155         Method (_Q66, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32156         {
32157             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x10000000))
32158             {
32159                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x101D)
32160             }
32161         }
32162 
32163         Method (_Q64, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32164         {
32165             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x10))
32166             {
32167                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1005)
32168             }
32169         }
32170 
32171         Method (_Q60, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32172         {
32173             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x03, 0x00080000))
32174             {
32175                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1314)
32176             }
32177         }
32178 
32179         Method (_Q61, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32180         {
32181             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x03, 0x00100000))
32182             {
32183                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1315)
32184             }
32185         }
32186 
32187         Method (_Q62, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32188         {
32189             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x03, 0x00010000))
32190             {
32191                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1311)
32192             }
32193         }
32194 
32195         Method (_Q6B, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32196         {
32197             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x03, 0x4000))
32198             {
32199                 \_SB.PCI0.LPCB.EC.HKEY.TSSS ()
32200             }
32201         }
32202 
32203         Method (_Q65, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32204         {
32205             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x03, 0x00020000))
32206             {
32207                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1312)
32208             }
32209         }
32210 
32211         Method (_Q6C, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32212         {
32213             If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x03, 0x00040000))
32214             {
32215                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1313)
32216             }
32217         }
32218 
32219         Method (_Q26, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32220         {
32221             If (VIGD)
32222             {
32223                 If (\WVIS)
32224                 {
32225                     \VBTD ()
32226                 }
32227 
32228                 \_SB.PCI0.LPCB.EC.BRNS ()
32229             }
32230             Else
32231             {
32232                 \SCMS (0x12)
32233             }
32234 
32235             Sleep (0x01F4)
32236             Notify (AC, 0x80) // Status Change
32237             Notify (\_TZ.THM0, 0x80) // Status Change
32238             If (\WXPF)
32239             {
32240                 Acquire (MCPU, 0xFFFF)
32241             }
32242 
32243             PWRS = 0x01
32244             If ((\_SB.CFGD & 0x01))
32245             {
32246                 If ((\OSPX || \CPPX))
32247                 {
32248                     \PNTF (0x80)
32249                 }
32250             }
32251 
32252             If (\WXPF)
32253             {
32254                 Sleep (0x64)
32255             }
32256 
32257             If (\OSC4)
32258             {
32259                 \PNTF (0x81)
32260             }
32261 
32262             If (\WXPF)
32263             {
32264                 Release (MCPU)
32265             }
32266 
32267             \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6040)
32268             ATMC ()
32269         }
32270 
32271         Method (_Q27, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32272         {
32273             If (VIGD)
32274             {
32275                 If (\WVIS)
32276                 {
32277                     \VBTD ()
32278                 }
32279 
32280                 \_SB.PCI0.LPCB.EC.BRNS ()
32281             }
32282             Else
32283             {
32284                 \SCMS (0x12)
32285             }
32286 
32287             Sleep (0x01F4)
32288             Notify (AC, 0x80) // Status Change
32289             Notify (\_TZ.THM0, 0x80) // Status Change
32290             If (\WXPF)
32291             {
32292                 Acquire (MCPU, 0xFFFF)
32293             }
32294 
32295             PWRS = 0x00
32296             If ((\_SB.CFGD & 0x01))
32297             {
32298                 If ((\OSPX || \CPPX))
32299                 {
32300                     \PNTF (0x80)
32301                 }
32302             }
32303 
32304             If (\WXPF)
32305             {
32306                 Sleep (0x64)
32307             }
32308 
32309             If (\OSC4)
32310             {
32311                 \PNTF (0x81)
32312             }
32313 
32314             If (\WXPF)
32315             {
32316                 Release (MCPU)
32317             }
32318 
32319             \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6040)
32320             ATMC ()
32321         }
32322 
32323         Method (_Q2A, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32324         {
32325             ADBG ("LIDO")
32326             \VCMS (0x01, \_SB.LID._LID ())
32327             If ((\ILNF == 0x00))
32328             {
32329                 If (\IOST)
32330                 {
32331                     If (!\ISOC (0x00))
32332                     {
32333                         \IOST = 0x00
32334                         \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x60D0)
32335                     }
32336                 }
32337 
32338                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x5002)
32339                 If ((\PLUX == 0x00))
32340                 {
32341                     If (VIGD)
32342                     {
32343                         \_SB.PCI0.GFX0.VLOC (0x01)
32344                     }
32345 
32346                     Notify (\_SB.LID, 0x80) // Status Change
32347                 }
32348             }
32349         }
32350 
32351         Method (_Q2B, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32352         {
32353             ADBG ("LIDC")
32354             \SCMS (0x0D)
32355             \VCMS (0x01, \_SB.LID._LID ())
32356             If ((\ILNF == 0x00))
32357             {
32358                 If ((\IOEN && !\IOST))
32359                 {
32360                     If (!\ISOC (0x01))
32361                     {
32362                         \IOST = 0x01
32363                         \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x60D0)
32364                     }
32365                 }
32366 
32367                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x5001)
32368                 If ((\PLUX == 0x00))
32369                 {
32370                     If (VIGD)
32371                     {
32372                         \_SB.PCI0.GFX0.VLOC (0x00)
32373                     }
32374 
32375                     Notify (\_SB.LID, 0x80) // Status Change
32376                 }
32377             }
32378         }
32379 
32380         Method (_Q3D, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32381         {
32382         }
32383 
32384         Method (_Q48, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32385         {
32386             If ((\_SB.CFGD & 0x01))
32387             {
32388                 If ((\OSPX || \CPPX))
32389                 {
32390                     \PNTF (0x80)
32391                 }
32392                 Else
32393                 {
32394                     \STEP (0x04)
32395                 }
32396 
32397                 \_SB.PCI0.LPCB.EC.CALM = 0x01
32398             }
32399         }
32400 
32401         Method (_Q49, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32402         {
32403             If ((\_SB.CFGD & 0x01))
32404             {
32405                 If ((\OSPX || \CPPX))
32406                 {
32407                     \PNTF (0x80)
32408                 }
32409                 Else
32410                 {
32411                     \STEP (0x05)
32412                 }
32413             }
32414         }
32415 
32416         Method (_Q7F, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32417         {
32418             Fatal (0x01, 0x80010000, 0x00015973)
32419         }
32420 
32421         Method (_Q46, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32422         {
32423             \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6012)
32424         }
32425 
32426         Method (_Q3B, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32427         {
32428             If ((\WLAC == 0x02)){}
32429             ElseIf ((ELNK && (\WLAC == 0x01)))
32430             {
32431                 DCWL = 0x00
32432             }
32433             Else
32434             {
32435                 DCWL = 0x01
32436             }
32437         }
32438 
32439         Method (_Q4F, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32440         {
32441             ADBG ("QUERY_METHOD_UCSI")
32442             If (CondRefOf (\_SB.UBTC.NTFY))
32443             {
32444                 \_SB.UBTC.NTFY ()
32445             }
32446         }
32447 
32448         Method (_Q2F, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32449         {
32450             \_SB.PCI0.LPCB.EC.BFCC ()
32451         }
32452 
32453         Method (_Q3A, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32454         {
32455             If (\_SB.PCI0.LPCB.EC.HKEY.DHKC)
32456             {
32457                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6031)
32458             }
32459         }
32460 
32461         Scope (\_SB.PCI0.LPCB.EC)
32462         {
32463             Method (_Q6A, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32464             {
32465                 If (HDMC)
32466                 {
32467                     Noop
32468                 }
32469                 ElseIf (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x04000000))
32470                 {
32471                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x101B)
32472                 }
32473             }
32474         }
32475 
32476         Scope (\_SB.PCI0.LPCB.EC.HKEY)
32477         {
32478             Method (MMTG, 0, NotSerialized)
32479             {
32480                 Local0 = 0x0101
32481                 If (HDMC)
32482                 {
32483                     Local0 |= 0x00010000
32484                 }
32485 
32486                 Return (Local0)
32487             }
32488 
32489             Method (MMTS, 1, NotSerialized)
32490             {
32491                 If (HDMC)
32492                 {
32493                     Noop
32494                 }
32495                 ElseIf ((Arg0 == 0x02))
32496                 {
32497                     \_SB.PCI0.LPCB.EC.LED (0x0E, 0x80)
32498                 }
32499                 ElseIf ((Arg0 == 0x03))
32500                 {
32501                     \_SB.PCI0.LPCB.EC.LED (0x0E, 0xC0)
32502                 }
32503                 Else
32504                 {
32505                     \_SB.PCI0.LPCB.EC.LED (0x0E, 0x00)
32506                 }
32507             }
32508         }
32509 
32510         Scope (\_SB.PCI0.LPCB.EC)
32511         {
32512             Method (_Q3F, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32513             {
32514                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6000)
32515             }
32516 
32517             Method (_Q74, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
32518             {
32519                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6060)
32520             }
32521         }
32522 
32523         Scope (\_SB.PCI0.LPCB.EC.HKEY)
32524         {
32525         }
32526 
32527         Scope (\_SB.PCI0.LPCB.EC)
32528         {
32529             Name (BRTW, Package (0x12)
32530             {
32531                 0x64, 
32532                 0x64, 
32533                 0x05, 
32534                 0x0A, 
32535                 0x14, 
32536                 0x19, 
32537                 0x1E, 
32538                 0x23, 
32539                 0x28, 
32540                 0x2D, 
32541                 0x32, 
32542                 0x37, 
32543                 0x3C, 
32544                 0x41, 
32545                 0x46, 
32546                 0x50, 
32547                 0x5A, 
32548                 0x64
32549             })
32550             Name (BRTB, Package (0x02)
32551             {
32552                 Package (0x16)
32553                 {
32554                     0x19, 
32555                     0x04, 
32556                     0x04, 
32557                     0x07, 
32558                     0x0B, 
32559                     0x11, 
32560                     0x17, 
32561                     0x1E, 
32562                     0x25, 
32563                     0x2C, 
32564                     0x37, 
32565                     0x42, 
32566                     0x4E, 
32567                     0x5C, 
32568                     0x6E, 
32569                     0x8A, 
32570                     0xB9, 
32571                     0xFF, 
32572                     0x0587, 
32573                     0x0587, 
32574                     0x04, 
32575                     0x04
32576                 }, 
32577 
32578                 Package (0x16)
32579                 {
32580                     0x1E, 
32581                     0x03, 
32582                     0x03, 
32583                     0x05, 
32584                     0x08, 
32585                     0x0A, 
32586                     0x0D, 
32587                     0x0F, 
32588                     0x12, 
32589                     0x19, 
32590                     0x22, 
32591                     0x2E, 
32592                     0x3E, 
32593                     0x54, 
32594                     0x6E, 
32595                     0x93, 
32596                     0xC1, 
32597                     0xFF, 
32598                     0x0587, 
32599                     0x0587, 
32600                     0x03, 
32601                     0x03
32602                 }
32603             })
32604             Name (BRTD, Package (0x07)
32605             {
32606                 Package (0x65)
32607                 {
32608                     0x04, 
32609                     0x04, 
32610                     0x05, 
32611                     0x06, 
32612                     0x07, 
32613                     0x08, 
32614                     0x09, 
32615                     0x0A, 
32616                     0x0B, 
32617                     0x0C, 
32618                     0x0D, 
32619                     0x0E, 
32620                     0x0F, 
32621                     0x10, 
32622                     0x11, 
32623                     0x12, 
32624                     0x13, 
32625                     0x14, 
32626                     0x15, 
32627                     0x16, 
32628                     0x17, 
32629                     0x18, 
32630                     0x19, 
32631                     0x1A, 
32632                     0x1B, 
32633                     0x1C, 
32634                     0x1D, 
32635                     0x1E, 
32636                     0x1F, 
32637                     0x20, 
32638                     0x21, 
32639                     0x22, 
32640                     0x23, 
32641                     0x25, 
32642                     0x26, 
32643                     0x28, 
32644                     0x2A, 
32645                     0x2C, 
32646                     0x2E, 
32647                     0x2F, 
32648                     0x31, 
32649                     0x33, 
32650                     0x35, 
32651                     0x37, 
32652                     0x3A, 
32653                     0x3C, 
32654                     0x3E, 
32655                     0x40, 
32656                     0x42, 
32657                     0x45, 
32658                     0x47, 
32659                     0x4A, 
32660                     0x4C, 
32661                     0x4E, 
32662                     0x51, 
32663                     0x54, 
32664                     0x56, 
32665                     0x59, 
32666                     0x5C, 
32667                     0x5E, 
32668                     0x61, 
32669                     0x64, 
32670                     0x67, 
32671                     0x6A, 
32672                     0x6D, 
32673                     0x70, 
32674                     0x73, 
32675                     0x76, 
32676                     0x79, 
32677                     0x7D, 
32678                     0x80, 
32679                     0x83, 
32680                     0x86, 
32681                     0x8A, 
32682                     0x8D, 
32683                     0x91, 
32684                     0x94, 
32685                     0x98, 
32686                     0x9C, 
32687                     0x9F, 
32688                     0xA3, 
32689                     0xA7, 
32690                     0xAB, 
32691                     0xAF, 
32692                     0xB4, 
32693                     0xB8, 
32694                     0xBC, 
32695                     0xC1, 
32696                     0xC5, 
32697                     0xCA, 
32698                     0xCE, 
32699                     0xD3, 
32700                     0xD8, 
32701                     0xDC, 
32702                     0xE1, 
32703                     0xE6, 
32704                     0xEB, 
32705                     0xF0, 
32706                     0xF5, 
32707                     0xFA, 
32708                     0xFF
32709                 }, 
32710 
32711                 Package (0x65)
32712                 {
32713                     0x04, 
32714                     0x04, 
32715                     0x05, 
32716                     0x06, 
32717                     0x07, 
32718                     0x08, 
32719                     0x09, 
32720                     0x0A, 
32721                     0x0B, 
32722                     0x0C, 
32723                     0x0D, 
32724                     0x0E, 
32725                     0x0F, 
32726                     0x10, 
32727                     0x11, 
32728                     0x12, 
32729                     0x13, 
32730                     0x14, 
32731                     0x15, 
32732                     0x16, 
32733                     0x17, 
32734                     0x18, 
32735                     0x19, 
32736                     0x1A, 
32737                     0x1B, 
32738                     0x1C, 
32739                     0x1D, 
32740                     0x1E, 
32741                     0x1F, 
32742                     0x20, 
32743                     0x21, 
32744                     0x22, 
32745                     0x23, 
32746                     0x25, 
32747                     0x26, 
32748                     0x28, 
32749                     0x2A, 
32750                     0x2C, 
32751                     0x2E, 
32752                     0x2F, 
32753                     0x31, 
32754                     0x33, 
32755                     0x35, 
32756                     0x37, 
32757                     0x3A, 
32758                     0x3C, 
32759                     0x3E, 
32760                     0x40, 
32761                     0x42, 
32762                     0x45, 
32763                     0x47, 
32764                     0x4A, 
32765                     0x4C, 
32766                     0x4E, 
32767                     0x51, 
32768                     0x54, 
32769                     0x56, 
32770                     0x59, 
32771                     0x5C, 
32772                     0x5E, 
32773                     0x61, 
32774                     0x64, 
32775                     0x67, 
32776                     0x6A, 
32777                     0x6D, 
32778                     0x70, 
32779                     0x73, 
32780                     0x76, 
32781                     0x79, 
32782                     0x7D, 
32783                     0x80, 
32784                     0x83, 
32785                     0x86, 
32786                     0x8A, 
32787                     0x8D, 
32788                     0x91, 
32789                     0x94, 
32790                     0x98, 
32791                     0x9C, 
32792                     0x9F, 
32793                     0xA3, 
32794                     0xA7, 
32795                     0xAB, 
32796                     0xAF, 
32797                     0xB4, 
32798                     0xB8, 
32799                     0xBC, 
32800                     0xC1, 
32801                     0xC5, 
32802                     0xCA, 
32803                     0xCE, 
32804                     0xD3, 
32805                     0xD8, 
32806                     0xDC, 
32807                     0xE1, 
32808                     0xE6, 
32809                     0xEB, 
32810                     0xF0, 
32811                     0xF5, 
32812                     0xFA, 
32813                     0xFF
32814                 }, 
32815 
32816                 Package (0x65)
32817                 {
32818                     0x04, 
32819                     0x05, 
32820                     0x06, 
32821                     0x07, 
32822                     0x08, 
32823                     0x09, 
32824                     0x0A, 
32825                     0x0B, 
32826                     0x0C, 
32827                     0x0D, 
32828                     0x0E, 
32829                     0x0F, 
32830                     0x10, 
32831                     0x11, 
32832                     0x12, 
32833                     0x13, 
32834                     0x14, 
32835                     0x15, 
32836                     0x16, 
32837                     0x17, 
32838                     0x17, 
32839                     0x18, 
32840                     0x19, 
32841                     0x1A, 
32842                     0x1B, 
32843                     0x1D, 
32844                     0x1E, 
32845                     0x1F, 
32846                     0x20, 
32847                     0x21, 
32848                     0x22, 
32849                     0x23, 
32850                     0x24, 
32851                     0x25, 
32852                     0x26, 
32853                     0x27, 
32854                     0x28, 
32855                     0x29, 
32856                     0x2A, 
32857                     0x2B, 
32858                     0x2C, 
32859                     0x2D, 
32860                     0x2F, 
32861                     0x31, 
32862                     0x32, 
32863                     0x33, 
32864                     0x35, 
32865                     0x37, 
32866                     0x38, 
32867                     0x3A, 
32868                     0x3C, 
32869                     0x3E, 
32870                     0x41, 
32871                     0x43, 
32872                     0x45, 
32873                     0x47, 
32874                     0x49, 
32875                     0x4B, 
32876                     0x4E, 
32877                     0x50, 
32878                     0x52, 
32879                     0x54, 
32880                     0x57, 
32881                     0x59, 
32882                     0x5B, 
32883                     0x5E, 
32884                     0x60, 
32885                     0x62, 
32886                     0x65, 
32887                     0x68, 
32888                     0x6B, 
32889                     0x6E, 
32890                     0x71, 
32891                     0x75, 
32892                     0x77, 
32893                     0x79, 
32894                     0x7C, 
32895                     0x7F, 
32896                     0x82, 
32897                     0x85, 
32898                     0x88, 
32899                     0x8D, 
32900                     0x93, 
32901                     0x98, 
32902                     0x9D, 
32903                     0xA2, 
32904                     0xA7, 
32905                     0xAD, 
32906                     0xB2, 
32907                     0xB8, 
32908                     0xBE, 
32909                     0xC5, 
32910                     0xCB, 
32911                     0xD1, 
32912                     0xD7, 
32913                     0xDD, 
32914                     0xE4, 
32915                     0xEA, 
32916                     0xF1, 
32917                     0xF8, 
32918                     0xFF
32919                 }, 
32920 
32921                 Package (0x65)
32922                 {
32923                     0x04, 
32924                     0x05, 
32925                     0x06, 
32926                     0x07, 
32927                     0x08, 
32928                     0x09, 
32929                     0x0A, 
32930                     0x0B, 
32931                     0x0C, 
32932                     0x0D, 
32933                     0x0E, 
32934                     0x0F, 
32935                     0x10, 
32936                     0x11, 
32937                     0x12, 
32938                     0x13, 
32939                     0x14, 
32940                     0x15, 
32941                     0x16, 
32942                     0x17, 
32943                     0x17, 
32944                     0x18, 
32945                     0x19, 
32946                     0x1A, 
32947                     0x1B, 
32948                     0x1D, 
32949                     0x1E, 
32950                     0x1F, 
32951                     0x20, 
32952                     0x21, 
32953                     0x22, 
32954                     0x23, 
32955                     0x24, 
32956                     0x25, 
32957                     0x26, 
32958                     0x27, 
32959                     0x28, 
32960                     0x29, 
32961                     0x2A, 
32962                     0x2B, 
32963                     0x2C, 
32964                     0x2D, 
32965                     0x2F, 
32966                     0x31, 
32967                     0x32, 
32968                     0x33, 
32969                     0x35, 
32970                     0x37, 
32971                     0x38, 
32972                     0x3A, 
32973                     0x3C, 
32974                     0x3E, 
32975                     0x41, 
32976                     0x43, 
32977                     0x45, 
32978                     0x47, 
32979                     0x49, 
32980                     0x4B, 
32981                     0x4E, 
32982                     0x50, 
32983                     0x52, 
32984                     0x54, 
32985                     0x57, 
32986                     0x59, 
32987                     0x5B, 
32988                     0x5E, 
32989                     0x60, 
32990                     0x62, 
32991                     0x65, 
32992                     0x68, 
32993                     0x6B, 
32994                     0x6E, 
32995                     0x71, 
32996                     0x75, 
32997                     0x77, 
32998                     0x79, 
32999                     0x7C, 
33000                     0x7F, 
33001                     0x82, 
33002                     0x85, 
33003                     0x88, 
33004                     0x8D, 
33005                     0x93, 
33006                     0x98, 
33007                     0x9D, 
33008                     0xA2, 
33009                     0xA7, 
33010                     0xAD, 
33011                     0xB2, 
33012                     0xB8, 
33013                     0xBE, 
33014                     0xC5, 
33015                     0xCB, 
33016                     0xD1, 
33017                     0xD7, 
33018                     0xDD, 
33019                     0xE4, 
33020                     0xEA, 
33021                     0xF1, 
33022                     0xF8, 
33023                     0xFF
33024                 }, 
33025 
33026                 Package (0x65)
33027                 {
33028                     0x04, 
33029                     0x04, 
33030                     0x05, 
33031                     0x06, 
33032                     0x07, 
33033                     0x08, 
33034                     0x09, 
33035                     0x0A, 
33036                     0x0B, 
33037                     0x0C, 
33038                     0x0D, 
33039                     0x0E, 
33040                     0x0F, 
33041                     0x10, 
33042                     0x11, 
33043                     0x12, 
33044                     0x13, 
33045                     0x14, 
33046                     0x15, 
33047                     0x16, 
33048                     0x17, 
33049                     0x18, 
33050                     0x19, 
33051                     0x1A, 
33052                     0x1B, 
33053                     0x1C, 
33054                     0x1D, 
33055                     0x1E, 
33056                     0x1F, 
33057                     0x20, 
33058                     0x21, 
33059                     0x22, 
33060                     0x23, 
33061                     0x25, 
33062                     0x26, 
33063                     0x28, 
33064                     0x2A, 
33065                     0x2C, 
33066                     0x2E, 
33067                     0x2F, 
33068                     0x31, 
33069                     0x33, 
33070                     0x35, 
33071                     0x37, 
33072                     0x3A, 
33073                     0x3C, 
33074                     0x3E, 
33075                     0x40, 
33076                     0x42, 
33077                     0x45, 
33078                     0x47, 
33079                     0x4A, 
33080                     0x4C, 
33081                     0x4E, 
33082                     0x51, 
33083                     0x54, 
33084                     0x56, 
33085                     0x59, 
33086                     0x5C, 
33087                     0x5E, 
33088                     0x61, 
33089                     0x64, 
33090                     0x67, 
33091                     0x6A, 
33092                     0x6D, 
33093                     0x70, 
33094                     0x73, 
33095                     0x76, 
33096                     0x79, 
33097                     0x7D, 
33098                     0x80, 
33099                     0x83, 
33100                     0x86, 
33101                     0x8A, 
33102                     0x8D, 
33103                     0x91, 
33104                     0x94, 
33105                     0x98, 
33106                     0x9C, 
33107                     0x9F, 
33108                     0xA3, 
33109                     0xA7, 
33110                     0xAB, 
33111                     0xAF, 
33112                     0xB4, 
33113                     0xB8, 
33114                     0xBC, 
33115                     0xC1, 
33116                     0xC5, 
33117                     0xCA, 
33118                     0xCE, 
33119                     0xD3, 
33120                     0xD8, 
33121                     0xDC, 
33122                     0xE1, 
33123                     0xE6, 
33124                     0xEB, 
33125                     0xF0, 
33126                     0xF5, 
33127                     0xFA, 
33128                     0xFF
33129                 }, 
33130 
33131                 Package (0x65)
33132                 {
33133                     0x04, 
33134                     0x04, 
33135                     0x05, 
33136                     0x06, 
33137                     0x07, 
33138                     0x08, 
33139                     0x09, 
33140                     0x0A, 
33141                     0x0B, 
33142                     0x0C, 
33143                     0x0D, 
33144                     0x0E, 
33145                     0x0F, 
33146                     0x10, 
33147                     0x11, 
33148                     0x12, 
33149                     0x13, 
33150                     0x14, 
33151                     0x15, 
33152                     0x16, 
33153                     0x17, 
33154                     0x18, 
33155                     0x19, 
33156                     0x1A, 
33157                     0x1B, 
33158                     0x1C, 
33159                     0x1D, 
33160                     0x1E, 
33161                     0x1F, 
33162                     0x20, 
33163                     0x21, 
33164                     0x22, 
33165                     0x23, 
33166                     0x25, 
33167                     0x26, 
33168                     0x28, 
33169                     0x2A, 
33170                     0x2C, 
33171                     0x2E, 
33172                     0x2F, 
33173                     0x31, 
33174                     0x33, 
33175                     0x35, 
33176                     0x37, 
33177                     0x3A, 
33178                     0x3C, 
33179                     0x3E, 
33180                     0x40, 
33181                     0x42, 
33182                     0x45, 
33183                     0x47, 
33184                     0x4A, 
33185                     0x4C, 
33186                     0x4E, 
33187                     0x51, 
33188                     0x54, 
33189                     0x56, 
33190                     0x59, 
33191                     0x5C, 
33192                     0x5E, 
33193                     0x61, 
33194                     0x64, 
33195                     0x67, 
33196                     0x6A, 
33197                     0x6D, 
33198                     0x70, 
33199                     0x73, 
33200                     0x76, 
33201                     0x79, 
33202                     0x7D, 
33203                     0x80, 
33204                     0x83, 
33205                     0x86, 
33206                     0x8A, 
33207                     0x8D, 
33208                     0x91, 
33209                     0x94, 
33210                     0x98, 
33211                     0x9C, 
33212                     0x9F, 
33213                     0xA3, 
33214                     0xA7, 
33215                     0xAB, 
33216                     0xAF, 
33217                     0xB4, 
33218                     0xB8, 
33219                     0xBC, 
33220                     0xC1, 
33221                     0xC5, 
33222                     0xCA, 
33223                     0xCE, 
33224                     0xD3, 
33225                     0xD8, 
33226                     0xDC, 
33227                     0xE1, 
33228                     0xE6, 
33229                     0xEB, 
33230                     0xF0, 
33231                     0xF5, 
33232                     0xFA, 
33233                     0xFF
33234                 }, 
33235 
33236                 Package (0x65)
33237                 {
33238                     0x04, 
33239                     0x05, 
33240                     0x06, 
33241                     0x07, 
33242                     0x08, 
33243                     0x09, 
33244                     0x0A, 
33245                     0x0B, 
33246                     0x0C, 
33247                     0x0D, 
33248                     0x0E, 
33249                     0x0F, 
33250                     0x10, 
33251                     0x11, 
33252                     0x12, 
33253                     0x13, 
33254                     0x14, 
33255                     0x15, 
33256                     0x16, 
33257                     0x17, 
33258                     0x17, 
33259                     0x18, 
33260                     0x19, 
33261                     0x1A, 
33262                     0x1B, 
33263                     0x1C, 
33264                     0x1D, 
33265                     0x1E, 
33266                     0x1F, 
33267                     0x20, 
33268                     0x21, 
33269                     0x22, 
33270                     0x23, 
33271                     0x24, 
33272                     0x25, 
33273                     0x26, 
33274                     0x27, 
33275                     0x28, 
33276                     0x29, 
33277                     0x2A, 
33278                     0x2B, 
33279                     0x2C, 
33280                     0x2D, 
33281                     0x2E, 
33282                     0x2F, 
33283                     0x30, 
33284                     0x31, 
33285                     0x32, 
33286                     0x33, 
33287                     0x34, 
33288                     0x35, 
33289                     0x36, 
33290                     0x38, 
33291                     0x39, 
33292                     0x3B, 
33293                     0x3C, 
33294                     0x3D, 
33295                     0x3F, 
33296                     0x40, 
33297                     0x42, 
33298                     0x43, 
33299                     0x45, 
33300                     0x46, 
33301                     0x48, 
33302                     0x49, 
33303                     0x4B, 
33304                     0x4C, 
33305                     0x4E, 
33306                     0x50, 
33307                     0x52, 
33308                     0x54, 
33309                     0x55, 
33310                     0x57, 
33311                     0x58, 
33312                     0x5A, 
33313                     0x5C, 
33314                     0x5E, 
33315                     0x60, 
33316                     0x62, 
33317                     0x64, 
33318                     0x66, 
33319                     0x69, 
33320                     0x6D, 
33321                     0x72, 
33322                     0x78, 
33323                     0x7E, 
33324                     0x84, 
33325                     0x8A, 
33326                     0x91, 
33327                     0x97, 
33328                     0x9E, 
33329                     0xA5, 
33330                     0xAC, 
33331                     0xB4, 
33332                     0xBC, 
33333                     0xC5, 
33334                     0xCF, 
33335                     0xDA, 
33336                     0xE6, 
33337                     0xF2, 
33338                     0xFF
33339                 }
33340             })
33341             Method (_Q14, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33342             {
33343                 If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x8000))
33344                 {
33345                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1010)
33346                 }
33347 
33348                 If (\VIGD)
33349                 {
33350                     Notify (\_SB.PCI0.GFX0.DD1F, 0x86) // Device-Specific
33351                 }
33352             }
33353 
33354             Method (_Q15, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33355             {
33356                 If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x00010000))
33357                 {
33358                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1011)
33359                 }
33360 
33361                 If (\VIGD)
33362                 {
33363                     Notify (\_SB.PCI0.GFX0.DD1F, 0x87) // Device-Specific
33364                 }
33365 
33366                 Return (Zero)
33367             }
33368 
33369             Method (BRNS, 0, NotSerialized)
33370             {
33371                 If ((OSYS < 0x07DC))
33372                 {
33373                     Local0 = (\BRLV + 0x02)
33374                     Local3 = \BNTN
33375                     If (\_SB.PCI0.GFX0.DRDY)
33376                     {
33377                         Local2 = DerefOf (DerefOf (BRTB [Local3]) [Local0])
33378                         \_SB.PCI0.GFX0.AINT (0x01, Local2)
33379                     }
33380                 }
33381             }
33382 
33383             Method (BFRQ, 0, NotSerialized)
33384             {
33385                 Local0 = 0x80000100
33386                 Local1 = DerefOf (DerefOf (BRTB [\BNTN]) [0x13])
33387                 Local0 |= (Local1 << 0x09)
33388                 Local1 = DerefOf (DerefOf (BRTB [\BNTN]) [0x15])
33389                 Local0 |= Local1
33390                 Return (Local0)
33391             }
33392         }
33393 
33394         Scope (\_SB.PCI0.LPCB.EC)
33395         {
33396             Name (BDEV, 0xFF)
33397             Name (BSTS, 0x00)
33398             Name (BHKE, 0x00)
33399             Method (_Q2C, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33400             {
33401                 If ((BSTS == 0x00))
33402                 {
33403                     BDEV = BGID (0x00)
33404                     NBRE (BDEV)
33405                 }
33406             }
33407 
33408             Method (_Q2D, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33409             {
33410                 BDEV = BGID (0x00)
33411                 NBIN (BDEV)
33412             }
33413 
33414             Method (_Q38, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33415             {
33416                 Local0 = BGID (0x00)
33417                 If ((Local0 == 0x0F))
33418                 {
33419                     BDIS ()
33420                     \BHDP (0x01, 0x00)
33421                     NBEJ (BDEV)
33422                     BDEV = Local0
33423                     If ((\BIDE == 0x03))
33424                     {
33425                         \_SB.PCI0.SAT0.PRIM.GTME = 0x00
33426                         \_SB.PCI0.SAT0.SCND.GTME = 0x00
33427                     }
33428                 }
33429                 ElseIf (HPBU){}
33430                 Else
33431                 {
33432                     BDEV = Local0
33433                     NBIN (Local0)
33434                 }
33435             }
33436 
33437             Method (NBRE, 1, NotSerialized)
33438             {
33439                 If ((Arg0 < 0x0C))
33440                 {
33441                     If ((\BIDE == 0x03))
33442                     {
33443                         Notify (\_SB.PCI0.SAT0.SCND.MSTR, 0x03) // Eject Request
33444                     }
33445                     Else
33446                     {
33447                         Notify (\_SB.PCI0.SAT0.PRT1, 0x03) // Eject Request
33448                     }
33449                 }
33450             }
33451 
33452             Method (NBEJ, 1, NotSerialized)
33453             {
33454                 If ((BSTS == 0x00))
33455                 {
33456                     If ((Arg0 < 0x0C))
33457                     {
33458                         If ((\BIDE == 0x03))
33459                         {
33460                             Notify (\_SB.PCI0.SAT0.SCND.MSTR, 0x01) // Device Check
33461                         }
33462                         Else
33463                         {
33464                             Notify (\_SB.PCI0.SAT0.PRT1, 0x01) // Device Check
33465                         }
33466                     }
33467                 }
33468 
33469                 BEEP (0x00)
33470                 BSTS = 0x00
33471             }
33472 
33473             Method (NBIN, 1, NotSerialized)
33474             {
33475                 If ((Arg0 < 0x0C))
33476                 {
33477                     BEN (0x01)
33478                     If ((\BIDE == 0x03))
33479                     {
33480                         Notify (\_SB.PCI0.SAT0.SCND.MSTR, 0x01) // Device Check
33481                     }
33482                     Else
33483                     {
33484                         Notify (\_SB.PCI0.SAT0.PRT1, 0x01) // Device Check
33485                     }
33486                 }
33487 
33488                 BEEP (0x00)
33489                 BSTS = 0x00
33490             }
33491 
33492             Method (BEJ0, 1, NotSerialized)
33493             {
33494                 If (Arg0)
33495                 {
33496                     BDIS ()
33497                     \BHDP (0x01, 0x00)
33498                     BSTS = 0x01
33499                     If (BHKE)
33500                     {
33501                         BHKE = 0x00
33502                         \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x3003)
33503                     }
33504                 }
33505                 Else
33506                 {
33507                     BSTS = 0x00
33508                 }
33509             }
33510 
33511             Method (BEJ3, 1, NotSerialized)
33512             {
33513                 If (Arg0)
33514                 {
33515                     BDIS ()
33516                     BSTS = 0x01
33517                 }
33518                 Else
33519                 {
33520                     BSTS = 0x00
33521                 }
33522             }
33523 
33524             Method (BPTS, 1, NotSerialized)
33525             {
33526                 HDBM = 0x01
33527                 If ((BSTS != 0x00))
33528                 {
33529                     BDEV = 0x0F
33530                     BSTS = 0x00
33531                 }
33532 
33533                 BHKE = 0x00
33534                 BUWK (0x00)
33535             }
33536 
33537             Method (BWAK, 1, NotSerialized)
33538             {
33539                 BUWK (0x00)
33540                 Local0 = BGID (0x00)
33541                 If ((BSTS == 0x00))
33542                 {
33543                     If ((Local0 != BDEV))
33544                     {
33545                         NBEJ (BDEV)
33546                         BDEV = Local0
33547                         NBIN (Local0)
33548                     }
33549                     ElseIf ((\LFDC || (BDEV != 0x0D)))
33550                     {
33551                         If ((Local0 != 0x0F))
33552                         {
33553                             If (HPBU)
33554                             {
33555                                 If ((Arg0 <= 0x02)){}
33556                                 Else
33557                                 {
33558                                     NBRE (Local0)
33559                                 }
33560                             }
33561                         }
33562                     }
33563                 }
33564 
33565                 If ((BDEV < 0x0C))
33566                 {
33567                     \UBIS (0x00)
33568                 }
33569                 Else
33570                 {
33571                     \UBIS (0x01)
33572                 }
33573             }
33574 
33575             Method (BDIS, 0, NotSerialized)
33576             {
33577                 If (!\_SB.PCI0.LPCB.CSON)
33578                 {
33579                     If (!\_SB.PCI0.LPCB.GLIS)
33580                     {
33581                         \UBIS (0x01)
33582                     }
33583 
33584                     \_SB.PCI0.LPCB.CSON = 0x01
33585                     \IDET = 0x0F
33586                 }
33587             }
33588 
33589             Method (BPON, 1, NotSerialized)
33590             {
33591                 If (\_SB.PCI0.LPCB.CSON)
33592                 {
33593                     \_SB.PCI0.LPCB.CSON = 0x00
33594                     If (\_SB.PCI0.LPCB.GLIS)
33595                     {
33596                         \UBIS (0x00)
33597                     }
33598                 }
33599             }
33600 
33601             Method (BEN, 1, NotSerialized)
33602             {
33603                 If (\_SB.PCI0.LPCB.CSON)
33604                 {
33605                     BPON (Arg0)
33606                     If (Arg0)
33607                     {
33608                         IRDY ()
33609                     }
33610                 }
33611             }
33612 
33613             Method (BSTA, 1, NotSerialized)
33614             {
33615                 If (\_SB.PCI0.LPCB.CSON)
33616                 {
33617                     Return (0x00)
33618                 }
33619 
33620                 BINI ()
33621                 If ((Arg0 == 0x01))
33622                 {
33623                     Return ((BDEV < 0x0C))
33624                 }
33625 
33626                 Return (0x00)
33627             }
33628 
33629             Method (BUWK, 1, NotSerialized)
33630             {
33631                 If (\H8DR)
33632                 {
33633                     If (Arg0)
33634                     {
33635                         \_SB.PCI0.LPCB.EC.HWBU = 0x01
33636                     }
33637                     Else
33638                     {
33639                         \_SB.PCI0.LPCB.EC.HWBU = 0x00
33640                     }
33641                 }
33642                 ElseIf (Arg0)
33643                 {
33644                     \MBEC (0x32, 0xFF, 0x80)
33645                 }
33646                 Else
33647                 {
33648                     \MBEC (0x32, 0x7F, 0x00)
33649                 }
33650             }
33651 
33652             Method (BINI, 0, NotSerialized)
33653             {
33654                 If ((BDEV == 0xFF))
33655                 {
33656                     BDEV = BGID (0x00)
33657                 }
33658             }
33659 
33660             Method (BGID, 1, NotSerialized)
33661             {
33662                 If (Arg0)
33663                 {
33664                     Local0 = 0xFF
33665                 }
33666                 Else
33667                 {
33668                     If (\H8DR)
33669                     {
33670                         Local1 = HPBU /* \_SB_.PCI0.LPCB.EC__.HPBU */
33671                         Local2 = HBID /* \_SB_.PCI0.LPCB.EC__.HBID */
33672                     }
33673                     Else
33674                     {
33675                         Local2 = RBEC (0x47)
33676                         Local1 = (Local2 & 0x01)
33677                         Local2 &= 0x04
33678                         Local2 >>= 0x02
33679                     }
33680 
33681                     If (Local2)
33682                     {
33683                         Local0 = 0x0F
33684                     }
33685                     ElseIf (HDUB)
33686                     {
33687                         Local0 = 0x0F
33688                     }
33689                     ElseIf (((\IDET == 0x03) || (\IDET == 0x06)))
33690                     {
33691                         Local0 = \IDET
33692                     }
33693                     Else
33694                     {
33695                         Local0 = 0x07
33696                     }
33697 
33698                     If ((Local0 == 0x0F)){}
33699                 }
33700 
33701                 If ((\HDUB && (Local0 < 0x0C)))
33702                 {
33703                     Local0 = 0x0F
33704                 }
33705 
33706                 Return (Local0)
33707             }
33708 
33709             Method (IRDY, 0, NotSerialized)
33710             {
33711                 Local0 = 0x01F4
33712                 Local1 = 0x3C
33713                 Local2 = Zero
33714                 While (Local1)
33715                 {
33716                     Sleep (Local0)
33717                     Local3 = \BCHK ()
33718                     If (!Local3)
33719                     {
33720                         Break
33721                     }
33722 
33723                     If ((Local3 == 0x02))
33724                     {
33725                         Local2 = One
33726                         Break
33727                     }
33728 
33729                     Local1--
33730                 }
33731 
33732                 Return (Local2)
33733             }
33734         }
33735 
33736         Scope (\_SB.PCI0.LPCB.EC)
33737         {
33738             Method (_Q43, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33739             {
33740                 \SCMS (0x18)
33741             }
33742 
33743             Method (SAUM, 1, NotSerialized)
33744             {
33745                 If ((Arg0 > 0x03))
33746                 {
33747                     Noop
33748                 }
33749                 ElseIf (\H8DR)
33750                 {
33751                     HAUM = Arg0
33752                 }
33753                 Else
33754                 {
33755                     \MBEC (0x03, 0x9F, (Arg0 << 0x05))
33756                 }
33757             }
33758         }
33759 
33760         Scope (\_SB.PCI0.LPCB.EC.HKEY)
33761         {
33762             Method (GSMS, 1, NotSerialized)
33763             {
33764                 Return (\AUDC (0x00, 0x00))
33765             }
33766 
33767             Method (SSMS, 1, NotSerialized)
33768             {
33769                 If (CondRefOf (\_SB.PCI0.LPCB.EC.SLED))
33770                 {
33771                     \_SB.PCI0.LPCB.EC.SLED (Arg0)
33772                 }
33773 
33774                 Return (\AUDC (0x01, (Arg0 & 0x01)))
33775             }
33776 
33777             Method (SHDA, 1, NotSerialized)
33778             {
33779                 Local0 = Arg0
33780                 If (((OSYS >= 0x07DF) && (Local0 == 0x01)))
33781                 {
33782                     Local0 = 0x02
33783                 }
33784 
33785                 Return (\AUDC (0x02, (Local0 & 0x03)))
33786             }
33787         }
33788 
33789         Scope (\_SB.PCI0.LPCB.EC)
33790         {
33791             Method (_Q19, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33792             {
33793                 If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x00800000))
33794                 {
33795                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1018)
33796                 }
33797 
33798                 \SCMS (0x03)
33799             }
33800         }
33801 
33802         Scope (\_SB.PCI0.LPCB.EC)
33803         {
33804             Method (_Q63, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33805             {
33806                 If (\_SB.PCI0.LPCB.EC.HKEY.MHKK (0x01, 0x00080000))
33807                 {
33808                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x1014)
33809                 }
33810 
33811                 \SCMS (0x0B)
33812             }
33813         }
33814 
33815         Scope (\_SB.PCI0.LPCB.EC)
33816         {
33817             Method (_Q70, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33818             {
33819                 FNST ()
33820             }
33821 
33822             Method (_Q72, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33823             {
33824                 FNST ()
33825             }
33826 
33827             Method (_Q73, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
33828             {
33829                 FNST ()
33830             }
33831 
33832             Method (FNST, 0, NotSerialized)
33833             {
33834                 If (\H8DR)
33835                 {
33836                     Local0 = HFNS /* \_SB_.PCI0.LPCB.EC__.HFNS */
33837                     Local1 = HFNE /* \_SB_.PCI0.LPCB.EC__.HFNE */
33838                 }
33839                 Else
33840                 {
33841                     Local0 = (\RBEC (0x0E) & 0x03)
33842                     Local1 = (\RBEC (0x00) & 0x08)
33843                 }
33844 
33845                 If (Local1)
33846                 {
33847                     If ((Local0 == 0x00))
33848                     {
33849                         \SCMS (0x11)
33850                     }
33851 
33852                     If ((Local0 == 0x01))
33853                     {
33854                         \SCMS (0x0F)
33855                     }
33856 
33857                     If ((Local0 == 0x02))
33858                     {
33859                         \SCMS (0x10)
33860                     }
33861 
33862                     \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6005)
33863                 }
33864             }
33865         }
33866 
33867         Scope (\_SB.PCI0.LPCB.EC.HKEY)
33868         {
33869             Method (GHSL, 1, NotSerialized)
33870             {
33871                 Return (\FNSC (0x00, 0x00))
33872             }
33873 
33874             Method (SHSL, 1, NotSerialized)
33875             {
33876                 Return (\FNSC (0x01, (Arg0 & 0x00010001)))
33877             }
33878         }
33879 
33880         Scope (\_SB.PCI0.LPCB.EC.HKEY)
33881         {
33882             Name (INDV, 0x00)
33883             Method (MHQI, 0, NotSerialized)
33884             {
33885                 If ((\IPMS & 0x01))
33886                 {
33887                     INDV |= 0x01
33888                 }
33889 
33890                 If ((\IPMS & 0x02))
33891                 {
33892                     INDV |= 0x02
33893                 }
33894 
33895                 If ((\IPMS & 0x04))
33896                 {
33897                     INDV |= 0x0100
33898                 }
33899 
33900                 If ((\IPMS & 0x08))
33901                 {
33902                     INDV |= 0x0200
33903                 }
33904 
33905                 If ((\IPMS & 0x10))
33906                 {
33907                     INDV |= 0x04
33908                 }
33909 
33910                 Return (INDV) /* \_SB_.PCI0.LPCB.EC__.HKEY.INDV */
33911             }
33912 
33913             Method (MHGI, 1, NotSerialized)
33914             {
33915                 Name (RETB, Buffer (0x10){})
33916                 CreateByteField (RETB, 0x00, MHGS)
33917                 Local0 = (0x01 << Arg0)
33918                 If ((INDV & Local0))
33919                 {
33920                     If ((Arg0 == 0x00))
33921                     {
33922                         CreateField (RETB, 0x08, 0x78, BRBU)
33923                         BRBU = \IPMB
33924                         MHGS = 0x10
33925                     }
33926                     ElseIf ((Arg0 == 0x01))
33927                     {
33928                         CreateField (RETB, 0x08, 0x18, RRBU)
33929                         RRBU = \IPMR
33930                         MHGS = 0x04
33931                     }
33932                     ElseIf ((Arg0 == 0x08))
33933                     {
33934                         CreateField (RETB, 0x10, 0x18, ODBU)
33935                         CreateByteField (RETB, 0x01, MHGZ)
33936                         ODBU = \IPMO
33937                         If (((^^BSTS == 0x00) && (^^BDEV == 0x03)))
33938                         {
33939                             MHGZ |= 0x01 /* \_SB_.PCI0.LPCB.EC__.HKEY.MHGI.MHGZ */
33940                             MHGZ |= 0x02 /* \_SB_.PCI0.LPCB.EC__.HKEY.MHGI.MHGZ */
33941                         }
33942 
33943                         MHGS = 0x05
33944                     }
33945                     ElseIf ((Arg0 == 0x09))
33946                     {
33947                         CreateField (RETB, 0x10, 0x08, AUBU)
33948                         AUBU = \IPMA
33949                         RETB [0x01] = 0x01
33950                         MHGS = 0x03
33951                     }
33952                     ElseIf ((Arg0 == 0x02))
33953                     {
33954                         Local1 = \VDYN (0x00, 0x00)
33955                         RETB [0x02] = (Local1 & 0x0F)
33956                         Local1 >>= 0x04
33957                         RETB [0x01] = (Local1 & 0x0F)
33958                         MHGS = 0x03
33959                     }
33960                 }
33961 
33962                 Return (RETB) /* \_SB_.PCI0.LPCB.EC__.HKEY.MHGI.RETB */
33963             }
33964 
33965             Method (MHSI, 2, NotSerialized)
33966             {
33967                 Local0 = (0x01 << Arg0)
33968                 If ((INDV & Local0))
33969                 {
33970                     If ((Arg0 == 0x08))
33971                     {
33972                         If (Arg1)
33973                         {
33974                             If (\H8DR)
33975                             {
33976                                 Local1 = ^^HPBU /* \_SB_.PCI0.LPCB.EC__.HPBU */
33977                             }
33978                             Else
33979                             {
33980                                 Local1 = (\RBEC (0x47) & 0x01)
33981                             }
33982 
33983                             If (!Local1)
33984                             {
33985                                 ^^BDEV = ^^BGID (0x00)
33986                                 ^^NBIN (Local1)
33987                             }
33988                         }
33989                     }
33990                     ElseIf ((Arg0 == 0x02))
33991                     {
33992                         \VDYN (0x01, Arg1)
33993                     }
33994                 }
33995             }
33996         }
33997 
33998         Scope (\_SB.PCI0.LPCB.EC.HKEY)
33999         {
34000             Method (PWMC, 0, NotSerialized)
34001             {
34002                 Return (0x00)
34003             }
34004 
34005             Method (PWMG, 0, NotSerialized)
34006             {
34007                 Local0 = \_SB.PCI0.LPCB.EC.PWMH
34008                 Local0 <<= 0x08
34009                 Local0 |= \_SB.PCI0.LPCB.EC.PWML
34010                 Return (Local0)
34011             }
34012         }
34013 
34014         Scope (\_SB.PCI0.LPCB.EC.HKEY)
34015         {
34016             Name (WGFL, 0x00)
34017             Method (WSIF, 0, NotSerialized)
34018             {
34019                 Return (0x00)
34020             }
34021 
34022             Method (WLSW, 0, NotSerialized)
34023             {
34024                 Return (0x10010001)
34025             }
34026 
34027             Method (GWAN, 0, NotSerialized)
34028             {
34029                 Local0 = 0x00
34030                 If ((WGFL & 0x01))
34031                 {
34032                     Local0 |= 0x01
34033                 }
34034 
34035                 If ((WGFL & 0x08))
34036                 {
34037                     Return (Local0)
34038                 }
34039 
34040                 If (WPWS ())
34041                 {
34042                     Local0 |= 0x02
34043                 }
34044 
34045                 Local0 |= 0x04
34046                 Return (Local0)
34047             }
34048 
34049             Method (SWAN, 1, NotSerialized)
34050             {
34051                 If ((Arg0 & 0x02))
34052                 {
34053                     WPWC (0x01)
34054                 }
34055                 Else
34056                 {
34057                     WPWC (0x00)
34058                 }
34059             }
34060 
34061             Method (GBDC, 0, NotSerialized)
34062             {
34063                 Local0 = 0x00
34064                 If ((WGFL & 0x10))
34065                 {
34066                     Local0 |= 0x01
34067                 }
34068 
34069                 If ((WGFL & 0x80))
34070                 {
34071                     Return (Local0)
34072                 }
34073 
34074                 If (BPWS ())
34075                 {
34076                     Local0 |= 0x02
34077                 }
34078 
34079                 Local0 |= 0x04
34080                 Return (Local0)
34081             }
34082 
34083             Method (SBDC, 1, NotSerialized)
34084             {
34085                 If ((Arg0 & 0x02))
34086                 {
34087                     BPWC (0x01)
34088                 }
34089                 Else
34090                 {
34091                     BPWC (0x00)
34092                 }
34093             }
34094 
34095             Method (WPWS, 0, NotSerialized)
34096             {
34097                 If ((\_SB.GGOV (0x04040007) == 0x00))
34098                 {
34099                     Local0 = 0x00
34100                 }
34101                 Else
34102                 {
34103                     Local0 = 0x01
34104                 }
34105 
34106                 Return (Local0)
34107             }
34108 
34109             Method (WPWC, 1, NotSerialized)
34110             {
34111                 If ((Arg0 && ((WGFL & 0x01) && !(WGFL & 0x08
34112                     ))))
34113                 {
34114                     \_SB.SGOV (0x04040007, 0x01)
34115                     WGFL |= 0x02
34116                 }
34117                 Else
34118                 {
34119                     \_SB.SGOV (0x04040007, 0x00)
34120                     WGFL &= ~0x02
34121                 }
34122             }
34123 
34124             Method (BPWS, 0, NotSerialized)
34125             {
34126                 If ((\_SB.GGOV (0x04040001) == 0x01))
34127                 {
34128                     Local0 = 0x01
34129                 }
34130                 Else
34131                 {
34132                     Local0 = 0x00
34133                 }
34134 
34135                 Return (Local0)
34136             }
34137 
34138             Method (BPWC, 1, NotSerialized)
34139             {
34140                 If ((Arg0 && ((WGFL & 0x10) && !(WGFL & 0x80
34141                     ))))
34142                 {
34143                     \_SB.SGOV (0x04040001, 0x01)
34144                     WGFL |= 0x20
34145                 }
34146                 Else
34147                 {
34148                     \_SB.SGOV (0x04040001, 0x00)
34149                     WGFL &= ~0x20
34150                 }
34151             }
34152 
34153             Method (WGIN, 0, NotSerialized)
34154             {
34155                 WGFL = 0x00
34156                 WGFL = \WGSV (0x01)
34157                 If (\WIN8)
34158                 {
34159                     If ((WGFL && 0x10))
34160                     {
34161                         BPWC (0x01)
34162                     }
34163                 }
34164 
34165                 If (WPWS ())
34166                 {
34167                     WGFL |= 0x02
34168                 }
34169 
34170                 If (BPWS ())
34171                 {
34172                     WGFL |= 0x20
34173                 }
34174             }
34175 
34176             Method (WGPS, 1, NotSerialized)
34177             {
34178                 If ((Arg0 >= 0x04))
34179                 {
34180                     \BLTH (0x05)
34181                 }
34182             }
34183 
34184             Method (WGWK, 1, NotSerialized)
34185             {
34186                 Noop
34187             }
34188         }
34189 
34190         Scope (\_SB.PCI0.LPCB.EC)
34191         {
34192             Method (_Q41, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
34193             {
34194                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x7000)
34195             }
34196         }
34197 
34198         Scope (\_SB.PCI0.LPCB.EC.HKEY)
34199         {
34200             Mutex (BFWM, 0x00)
34201             Method (MHCF, 1, NotSerialized)
34202             {
34203                 Local0 = \BFWC (Arg0)
34204                 \_SB.PCI0.LPCB.EC.BSWR = (Arg0 >> 0x05)
34205                 Return (Local0)
34206             }
34207 
34208             Method (MHPF, 1, NotSerialized)
34209             {
34210                 Name (RETB, Buffer (0x25){})
34211                 Acquire (BFWM, 0xFFFF)
34212                 If ((SizeOf (Arg0) <= 0x25))
34213                 {
34214                     \BFWB = Arg0
34215                     If (\BFWP ())
34216                     {
34217                         \_SB.PCI0.LPCB.EC.CHKS ()
34218                         \BFWL ()
34219                     }
34220 
34221                     RETB = \BFWB
34222                 }
34223 
34224                 Release (BFWM)
34225                 Return (RETB) /* \_SB_.PCI0.LPCB.EC__.HKEY.MHPF.RETB */
34226             }
34227 
34228             Method (MHIF, 1, NotSerialized)
34229             {
34230                 Name (RETB, Buffer (0x0A){})
34231                 Acquire (BFWM, 0xFFFF)
34232                 \BFWG (Arg0)
34233                 RETB = \BFWB
34234                 Release (BFWM)
34235                 Return (RETB) /* \_SB_.PCI0.LPCB.EC__.HKEY.MHIF.RETB */
34236             }
34237 
34238             Method (MHDM, 1, NotSerialized)
34239             {
34240                 \BDMC (Arg0)
34241             }
34242         }
34243 
34244         Scope (\_SB.PCI0.LPCB.EC.HKEY)
34245         {
34246             Method (PSSG, 1, NotSerialized)
34247             {
34248                 Return (\PSIF (0x00, 0x00))
34249             }
34250 
34251             Method (PSSS, 1, NotSerialized)
34252             {
34253                 Return (\PSIF (0x01, Arg0))
34254             }
34255 
34256             Method (PSBS, 1, NotSerialized)
34257             {
34258                 Return (\PSIF (0x02, Arg0))
34259             }
34260 
34261             Method (BICG, 1, NotSerialized)
34262             {
34263                 Return (\PSIF (0x03, Arg0))
34264             }
34265 
34266             Method (BICS, 1, NotSerialized)
34267             {
34268                 Return (\PSIF (0x04, Arg0))
34269             }
34270 
34271             Method (BCTG, 1, NotSerialized)
34272             {
34273                 Return (\PSIF (0x05, Arg0))
34274             }
34275 
34276             Method (BCCS, 1, NotSerialized)
34277             {
34278                 Return (\PSIF (0x06, Arg0))
34279             }
34280 
34281             Method (BCSG, 1, NotSerialized)
34282             {
34283                 Return (\PSIF (0x07, Arg0))
34284             }
34285 
34286             Method (BCSS, 1, NotSerialized)
34287             {
34288                 Return (\PSIF (0x08, Arg0))
34289             }
34290 
34291             Method (BDSG, 1, NotSerialized)
34292             {
34293                 Return (\PSIF (0x09, Arg0))
34294             }
34295 
34296             Method (BDSS, 1, NotSerialized)
34297             {
34298                 Return (\PSIF (0x0A, Arg0))
34299             }
34300         }
34301 
34302         Scope (\_SB.PCI0.LPCB.EC.HKEY)
34303         {
34304             Method (GILN, 0, NotSerialized)
34305             {
34306                 Return ((0x02 | \ILNF))
34307             }
34308 
34309             Method (SILN, 1, NotSerialized)
34310             {
34311                 If ((0x01 == Arg0))
34312                 {
34313                     \ILNF = 0x01
34314                     BBLS = 0x00
34315                     Return (0x00)
34316                 }
34317                 ElseIf ((0x02 == Arg0))
34318                 {
34319                     \ILNF = 0x00
34320                     BBLS = 0x01
34321                     Return (0x00)
34322                 }
34323                 Else
34324                 {
34325                     Return (0x01)
34326                 }
34327             }
34328 
34329             Method (GLSI, 0, NotSerialized)
34330             {
34331                 If (\H8DR)
34332                 {
34333                     Return ((0x02 + \_SB.PCI0.LPCB.EC.HPLD))
34334                 }
34335                 ElseIf ((\RBEC (0x46) & 0x04))
34336                 {
34337                     Return (0x03)
34338                 }
34339                 Else
34340                 {
34341                     Return (0x02)
34342                 }
34343             }
34344         }
34345 
34346         Scope (\_SB.PCI0.LPCB.EC.HKEY)
34347         {
34348             Method (GDLN, 0, NotSerialized)
34349             {
34350                 Return ((0x02 | \PLUX))
34351             }
34352 
34353             Method (SDLN, 1, NotSerialized)
34354             {
34355                 If ((0x01 == Arg0))
34356                 {
34357                     \PLUX = 0x01
34358                     Return (0x00)
34359                 }
34360                 ElseIf ((0x02 == Arg0))
34361                 {
34362                     \PLUX = 0x00
34363                     Return (0x00)
34364                 }
34365                 Else
34366                 {
34367                     Return (0x01)
34368                 }
34369             }
34370         }
34371 
34372         Scope (\_SB.PCI0.LPCB.EC.HKEY)
34373         {
34374             Method (GSSS, 1, NotSerialized)
34375             {
34376                 Local0 = 0x00
34377                 CreateByteField (\VEDI, 0x66, EFB1)
34378                 If ((((\SHDW & 0x80) == 0x00) && ((EFB1 & 0x80
34379                     ) == 0x80)))
34380                 {
34381                     Local0 |= 0x00010000
34382                     Local0 |= ((0x28 & 0xFF) << 0x18)
34383                 }
34384 
34385                 If ((\SHDW & 0x01))
34386                 {
34387                     Local0 |= 0x01
34388                 }
34389 
34390                 Return (Local0)
34391             }
34392 
34393             Method (SSSS, 1, NotSerialized)
34394             {
34395                 CreateByteField (\VEDI, 0x66, EFB1)
34396                 If ((((\SHDW & 0x80) == 0x00) && ((EFB1 & 0x80
34397                     ) == 0x80)))
34398                 {
34399                     If ((Arg0 == 0x00))
34400                     {
34401                         If (((\SHDW & 0x01) != 0x00))
34402                         {
34403                             \SCMS (0x1E)
34404                             \SHDW = (\SHDW & ~0x01)
34405                             \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x130F)
34406                             Return (0x00)
34407                         }
34408                     }
34409 
34410                     If ((Arg0 == 0x01))
34411                     {
34412                         If (((\SHDW & 0x01) == 0x00))
34413                         {
34414                             \SCMS (0x1F)
34415                             \SHDW = (\SHDW | 0x01)
34416                             \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x130F)
34417                             Return (0x00)
34418                         }
34419                     }
34420                 }
34421 
34422                 Return (0x80000000)
34423             }
34424 
34425             Method (TSSS, 0, NotSerialized)
34426             {
34427                 CreateByteField (\VEDI, 0x66, EFB1)
34428                 If ((((\SHDW & 0x80) == 0x00) && ((EFB1 & 0x80
34429                     ) == 0x80)))
34430                 {
34431                     If (((\SHDW & 0x01) != 0x00))
34432                     {
34433                         SSSS (0x00)
34434                         Return (0x00)
34435                     }
34436 
34437                     If (((\SHDW & 0x01) == 0x00))
34438                     {
34439                         SSSS (0x01)
34440                         Return (0x00)
34441                     }
34442                 }
34443 
34444                 Return (0x80000000)
34445             }
34446 
34447             Method (CSSS, 0, NotSerialized)
34448             {
34449                 If ((((\SHDW & 0x80) == 0x00) && ((\SHDW & 
34450                     0x01) != 0x00)))
34451                 {
34452                     Return (SSSS (0x01))
34453                 }
34454                 Else
34455                 {
34456                     Return (SSSS (0x00))
34457                 }
34458             }
34459         }
34460 
34461         Scope (HKEY)
34462         {
34463             Method (CHPD, 1, NotSerialized)
34464             {
34465                 Return (\LVSS (0x00, (Arg0 & 0x00300001)))
34466             }
34467         }
34468 
34469         Scope (\_SB.PCI0.LPCB.EC.HKEY)
34470         {
34471             Method (FPSW, 1, NotSerialized)
34472             {
34473                 Return (0x00)
34474             }
34475         }
34476     }
34477 
34478     Scope (\_SB.PCI0.LPCB.EC.HKEY)
34479     {
34480         Method (MHQT, 1, NotSerialized)
34481         {
34482             If ((\WNTF && \TATC))
34483             {
34484                 If ((Arg0 == 0x00))
34485                 {
34486                     Local0 = \TATC
34487                     Return (Local0)
34488                 }
34489                 ElseIf ((Arg0 == 0x01))
34490                 {
34491                     Local0 = \TDFA
34492                     Local0 += (\TDTA << 0x04)
34493                     Local0 += (\TDFD << 0x08)
34494                     Local0 += (\TDTD << 0x0C)
34495                     Local0 += (\TNFT << 0x10)
34496                     Local0 += (\TNTT << 0x14)
34497                     Return (Local0)
34498                 }
34499                 ElseIf ((Arg0 == 0x02))
34500                 {
34501                     Local0 = \TCFA
34502                     Local0 += (\TCTA << 0x04)
34503                     Local0 += (\TCFD << 0x08)
34504                     Local0 += (\TCTD << 0x0C)
34505                     Return (Local0)
34506                 }
34507                 ElseIf ((Arg0 == 0x03)){}
34508                 ElseIf ((Arg0 == 0x04))
34509                 {
34510                     Local0 = \TATW
34511                     Return (Local0)
34512                 }
34513                 Else
34514                 {
34515                     Noop
34516                 }
34517             }
34518 
34519             Return (0x00)
34520         }
34521 
34522         Method (MHAT, 1, NotSerialized)
34523         {
34524             If ((\WNTF && \TATC))
34525             {
34526                 Local0 = (Arg0 & 0xFF)
34527                 If (!ATMV (Local0))
34528                 {
34529                     Return (0x00)
34530                 }
34531 
34532                 Local0 = ((Arg0 >> 0x08) & 0xFF)
34533                 If (!ATMV (Local0))
34534                 {
34535                     Return (0x00)
34536                 }
34537 
34538                 \TCFA = (Arg0 & 0x0F)
34539                 \TCTA = ((Arg0 >> 0x04) & 0x0F)
34540                 \TCFD = ((Arg0 >> 0x08) & 0x0F)
34541                 \TCTD = ((Arg0 >> 0x0C) & 0x0F)
34542                 ATMC ()
34543                 If ((\_SB.CFGD & 0x0100))
34544                 {
34545                     Local1 = \FTPS /* External reference */
34546                     If ((Arg0 & 0x00010000))
34547                     {
34548                         \FTPS = 0x01
34549                     }
34550                     Else
34551                     {
34552                         \FTPS = 0x00
34553                     }
34554 
34555                     If ((\FTPS ^ Local1))
34556                     {
34557                         If ((\OSPX || \CPPX))
34558                         {
34559                             \PNTF (0x80)
34560                         }
34561                     }
34562                 }
34563 
34564                 Local2 = \SCRM
34565                 If ((\_SB.PCI0.LPCB.EC.HFSP == 0x40))
34566                 {
34567                     ADBG ("MAX FAN speed")
34568                     If ((Arg0 & 0x00040000))
34569                     {
34570                         \SCRM = 0x01
34571                     }
34572                     Else
34573                     {
34574                         \SCRM = 0x00
34575                     }
34576                 }
34577                 Else
34578                 {
34579                     ADBG ("Allow to change FAN speed")
34580                     If ((Arg0 & 0x00040000))
34581                     {
34582                         \SCRM = 0x01
34583                         \_SB.PCI0.LPCB.EC.HFSP = 0x07
34584                     }
34585                     Else
34586                     {
34587                         \SCRM = 0x00
34588                         \_SB.PCI0.LPCB.EC.HFSP = 0x80
34589                     }
34590                 }
34591 
34592                 Local3 = \ETAU
34593                 If ((Arg0 & 0x00020000))
34594                 {
34595                     \ETAU = 0x01
34596                 }
34597                 Else
34598                 {
34599                     \ETAU = 0x00
34600                 }
34601 
34602                 Return (0x01)
34603             }
34604 
34605             Return (0x00)
34606         }
34607 
34608         Method (MHGT, 1, NotSerialized)
34609         {
34610             If ((\WNTF && \TATC))
34611             {
34612                 Local0 = 0x01000000
34613                 If ((\_SB.CFGD & 0x0100))
34614                 {
34615                     Local0 |= 0x08000000
34616                 }
34617 
34618                 If (\SCRM)
34619                 {
34620                     Local0 |= 0x10000000
34621                 }
34622 
34623                 If (\ETAU)
34624                 {
34625                     Local0 |= 0x04000000
34626                 }
34627 
34628                 If (\FTPS)
34629                 {
34630                     Local0 |= 0x02000000
34631                 }
34632 
34633                 Local0 += (\TSFT << 0x10)
34634                 Local0 += (\TSTT << 0x14)
34635                 Local1 = (Arg0 & 0xFF)
34636                 If (!ATMV (Local1))
34637                 {
34638                     Local0 |= 0xFFFF
34639                     Return (Local0)
34640                 }
34641 
34642                 Local1 = (Arg0 & 0x0F)
34643                 If ((Local1 == 0x00))
34644                 {
34645                     Local0 += \TIF0
34646                 }
34647                 ElseIf ((Local1 == 0x01))
34648                 {
34649                     Local0 += \TIF1
34650                 }
34651                 ElseIf ((Local1 == 0x02))
34652                 {
34653                     Local0 += \TIF2
34654                 }
34655                 Else
34656                 {
34657                     Local0 += 0xFF
34658                 }
34659 
34660                 Local1 = ((Arg0 >> 0x04) & 0x0F)
34661                 If ((Local1 == 0x00))
34662                 {
34663                     Local0 += (\TIT0 << 0x08)
34664                 }
34665                 ElseIf ((Local1 == 0x01))
34666                 {
34667                     Local0 += (\TIT1 << 0x08)
34668                 }
34669                 ElseIf ((Local1 == 0x02))
34670                 {
34671                     Local0 += (\TIT2 << 0x08)
34672                 }
34673                 Else
34674                 {
34675                     Local0 += (0xFF << 0x08)
34676                 }
34677 
34678                 Return (Local0)
34679             }
34680 
34681             Return (0x00)
34682         }
34683 
34684         Method (ATMV, 1, NotSerialized)
34685         {
34686             Local1 = (Arg0 & 0x0F)
34687             Local0 = \TNFT
34688             If ((Local1 >= Local0))
34689             {
34690                 Return (0x00)
34691             }
34692 
34693             Local2 = ((Arg0 >> 0x04) & 0x0F)
34694             Local0 = \TNTT
34695             If ((Local2 >= Local0))
34696             {
34697                 Return (0x00)
34698             }
34699 
34700             If (\TATL)
34701             {
34702                 If ((Local1 ^ Local2))
34703                 {
34704                     Return (0x00)
34705                 }
34706             }
34707 
34708             Return (0x01)
34709         }
34710 
34711         Method (MHCT, 1, NotSerialized)
34712         {
34713             Local0 = 0x00
34714             If (\SPEN)
34715             {
34716                 Local0 = \LWST
34717                 Local0++
34718                 Local0 <<= 0x08
34719             }
34720 
34721             Local1 = 0x08
34722             Local1 <<= 0x08
34723             If ((Arg0 == 0xFFFFFFFF))
34724             {
34725                 Local1 |= \TPCR
34726                 If (\SPEN)
34727                 {
34728                     Local0 |= \PPCR
34729                     If (!(\_SB.CFGD && 0x02000000))
34730                     {
34731                         Local1 |= 0x80
34732                     }
34733 
34734                     If (!(\_SB.CFGD && 0x08000000))
34735                     {
34736                         Local1 |= 0x40
34737                     }
34738                 }
34739                 Else
34740                 {
34741                     Local1 |= 0xC0
34742                 }
34743             }
34744             Else
34745             {
34746                 If (((\OSPX || \CPPX) && \SPEN))
34747                 {
34748                     Local2 = (Arg0 & 0x00FF0000)
34749                     Local2 >>= 0x10
34750                     Local0 |= Local2
34751                     If ((Local2 ^ \PPCR))
34752                     {
34753                         \PPCA = Local2
34754                         \PNTF (0x80)
34755                     }
34756                 }
34757 
34758                 If (\WVIS)
34759                 {
34760                     Local2 = (Arg0 & 0x1F)
34761                     Local1 |= Local2
34762                     If ((Local2 ^ \TPCR))
34763                     {
34764                         \TPCA = Local2
34765                         \PNTF (0x82)
34766                     }
34767                 }
34768             }
34769 
34770             Local0 <<= 0x10
34771             Local0 |= Local1
34772             Return (Local0)
34773         }
34774 
34775         Name (OEMV, Buffer (0x14)
34776         {
34777             /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
34778             /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
34779             /* 0010 */  0x00, 0x00, 0x00, 0x00                           // ....
34780         })
34781         Name (DYTV, 0x00)
34782         Method (DYTC, 1, Serialized)
34783         {
34784             Local0 = Arg0
34785             Local1 = 0x00
34786             ADBG (Concatenate ("DYTC STT=", ToHexString (Local0)))
34787             If ((\WNTF && \TATC))
34788             {
34789                 Switch (ToInteger ((Local0 & 0x03FF)))
34790                 {
34791                     Case (0x00)
34792                     {
34793                         Local1 = (0x01 << 0x08)
34794                         Local1 |= (0x04 << 0x1C)
34795                         Local1 |= (0x02 << 0x10)
34796                         DYTV = 0x00
34797                         Local1 |= 0x01
34798                     }
34799                     Case (0x0200)
34800                     {
34801                         Local1 = (0x01 << 0x08)
34802                         Local1 |= (0x05 << 0x1C)
34803                         Local1 |= (0x00 << 0x10)
34804                         DYTV = 0x01
34805                         Local1 |= 0x01
34806                     }
34807                     Case (0x01)
34808                     {
34809                         Local2 = ((Local0 >> 0x0C) & 0x0F)
34810                         Local3 = ((Local0 >> 0x10) & 0x0F)
34811                         Local4 = ((Local0 >> 0x14) & 0x01)
34812                         ADBG ("DYTC_CMD_SET")
34813                         ADBG (Concatenate ("ICFunc=", ToHexString (Local2)))
34814                         ADBG (Concatenate ("ICMode=", ToHexString (Local3)))
34815                         ADBG (Concatenate ("ValidF=", ToHexString (Local4)))
34816                         Local5 = (0x01 << Local2)
34817                         If ((FCAP & Local5)){}
34818                         Else
34819                         {
34820                             Local1 = (0x03 << 0x01)
34821                             ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
34822                             Return (Local1)
34823                         }
34824 
34825                         Switch (Local2)
34826                         {
34827                             Case (0x01)
34828                             {
34829                                 If ((Local3 != 0x0F))
34830                                 {
34831                                     Local1 = (0x05 << 0x01)
34832                                     ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
34833                                     Return (Local1)
34834                                 }
34835 
34836                                 If ((Local4 == 0x00))
34837                                 {
34838                                     \VCQL = 0x00
34839                                 }
34840                                 Else
34841                                 {
34842                                     \VCQL = 0x01
34843                                 }
34844                             }
34845                             Case (0x04)
34846                             {
34847                                 If ((Local3 != 0x0F))
34848                                 {
34849                                     Local1 = (0x05 << 0x01)
34850                                     ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
34851                                     Return (Local1)
34852                                 }
34853 
34854                                 If ((Local4 == 0x00))
34855                                 {
34856                                     \VSTP = 0x00
34857                                 }
34858                                 Else
34859                                 {
34860                                     \VSTP = 0x01
34861                                 }
34862                             }
34863                             Case (0x0D)
34864                             {
34865                                 If (((Local3 <= 0x08) && (Local3 >= 0x01)))
34866                                 {
34867                                     If ((Local4 != 0x01))
34868                                     {
34869                                         Local1 = (0x05 << 0x01)
34870                                         ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
34871                                         Return (Local1)
34872                                     }
34873                                 }
34874                                 ElseIf ((Local3 == 0x0F))
34875                                 {
34876                                     If ((Local4 != 0x00))
34877                                     {
34878                                         Local1 = (0x05 << 0x01)
34879                                         ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
34880                                         Return (Local1)
34881                                     }
34882                                 }
34883                                 Else
34884                                 {
34885                                     Local1 = (0x05 << 0x01)
34886                                     ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
34887                                     Return (Local1)
34888                                 }
34889 
34890                                 If ((Local4 == 0x00))
34891                                 {
34892                                     \VPSC = 0x00
34893                                     \SPSC = 0x00
34894                                 }
34895                                 Else
34896                                 {
34897                                     \VPSC = 0x01
34898                                     \SPSC = Local3
34899                                 }
34900                             }
34901                             Case (0x00)
34902                             {
34903                                 If ((Local3 != 0x0F))
34904                                 {
34905                                     Local1 = (0x05 << 0x01)
34906                                     ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
34907                                     Return (Local1)
34908                                 }
34909                             }
34910                             Default
34911                             {
34912                                 Local1 = (0x01 << 0x01)
34913                                 ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
34914                                 Return (Local1)
34915                             }
34916 
34917                         }
34918 
34919                         ADBG (" Set ODM Variable")
34920                         If (CondRefOf (\_SB.IETM.DPTE))
34921                         {
34922                             If ((\_SB.IETM.DPTE & 0x01))
34923                             {
34924                                 OEMV [0x00] = \STDV /* External reference */
34925                                 OEMV [0x01] = \VCQL
34926                                 OEMV [0x02] = \VTIO
34927                                 If (((\VMYH == 0x01) && (\SMYH == 0x00)))
34928                                 {
34929                                     OEMV [0x03] = 0x01
34930                                 }
34931                                 Else
34932                                 {
34933                                     OEMV [0x03] = 0x00
34934                                 }
34935 
34936                                 If (((\VMYH == 0x01) && (\SMYH == 0x01)))
34937                                 {
34938                                     OEMV [0x04] = 0x01
34939                                 }
34940                                 Else
34941                                 {
34942                                     OEMV [0x04] = 0x00
34943                                 }
34944 
34945                                 If (((\VMYH == 0x01) && (\SMYH == 0x02)))
34946                                 {
34947                                     OEMV [0x05] = 0x01
34948                                 }
34949                                 Else
34950                                 {
34951                                     OEMV [0x05] = 0x00
34952                                 }
34953 
34954                                 OEMV [0x06] = \VSTP
34955                                 OEMV [0x07] = \VCQH
34956                                 OEMV [0x08] = \VDCC
34957                                 OEMV [0x09] = \VSFN
34958                                 OEMV [0x0A] = \VDMC
34959                                 OEMV [0x0B] = \VFHP
34960                                 OEMV [0x0C] = \VIFC
34961                                 If (((\VMMC == 0x01) && (\SMMC == 0x00)))
34962                                 {
34963                                     OEMV [0x0D] = 0x01
34964                                 }
34965                                 Else
34966                                 {
34967                                     OEMV [0x0D] = 0x00
34968                                 }
34969 
34970                                 If (((\VMMC == 0x01) && (\SMMC == 0x01)))
34971                                 {
34972                                     OEMV [0x0E] = 0x01
34973                                 }
34974                                 Else
34975                                 {
34976                                     OEMV [0x0E] = 0x00
34977                                 }
34978 
34979                                 If (((\VMMC == 0x01) && (\SMMC == 0x02)))
34980                                 {
34981                                     OEMV [0x0F] = 0x01
34982                                 }
34983                                 Else
34984                                 {
34985                                     OEMV [0x0F] = 0x00
34986                                 }
34987 
34988                                 If (((\VMMC == 0x01) && (\SMMC == 0x03)))
34989                                 {
34990                                     OEMV [0x11] = 0x01
34991                                 }
34992                                 Else
34993                                 {
34994                                     OEMV [0x11] = 0x00
34995                                 }
34996 
34997                                 OEMV [0x10] = \VMSC
34998                                 If ((\VPSC == 0x01))
34999                                 {
35000                                     OEMV [0x12] = \SPSC
35001                                 }
35002                                 Else
35003                                 {
35004                                     OEMV [0x12] = 0x00
35005                                 }
35006 
35007                                 OEMV [0x13] = \VCSC
35008                                 Notify (\_SB.IETM, 0x88) // Device-Specific
35009                             }
35010                         }
35011 
35012                         If ((\VSTP == 0x01))
35013                         {
35014                             SCPF (0x04, \DPST, 0x02, 0x4B)
35015                         }
35016                         ElseIf ((\VPSC == 0x01))
35017                         {
35018                             If ((\SPSC == 0x08))
35019                             {
35020                                 \DPSC = PSM8 /* \PSM8 */
35021                             }
35022                             ElseIf ((\SPSC == 0x07))
35023                             {
35024                                 \DPSC = PSM7 /* \PSM7 */
35025                             }
35026                             ElseIf ((\SPSC == 0x06))
35027                             {
35028                                 \DPSC = PSM6 /* \PSM6 */
35029                             }
35030                             ElseIf ((\SPSC == 0x05))
35031                             {
35032                                 \DPSC = PSM5 /* \PSM5 */
35033                             }
35034                             ElseIf ((\SPSC == 0x04))
35035                             {
35036                                 \DPSC = PSM4 /* \PSM4 */
35037                             }
35038                             ElseIf ((\SPSC == 0x03))
35039                             {
35040                                 \DPSC = PSM3 /* \PSM3 */
35041                             }
35042                             ElseIf ((\SPSC == 0x02))
35043                             {
35044                                 \DPSC = PSM2 /* \PSM2 */
35045                             }
35046                             ElseIf ((\SPSC == 0x01))
35047                             {
35048                                 \DPSC = PSM1 /* \PSM1 */
35049                             }
35050                             Else
35051                             {
35052                                 \DPSC = PSM7 /* \PSM7 */
35053                             }
35054 
35055                             If ((\SPSC <= 0x04))
35056                             {
35057                                 SCPF (0x0D, \DPSC, 0x03, 0x4B)
35058                             }
35059                             ElseIf (((\SPSC <= 0x06) && (\SPSC >= 0x05)))
35060                             {
35061                                 SCPF (0x0D, \DPSC, 0x04, 0x4B)
35062                             }
35063                             ElseIf (((\SPSC <= 0x08) && (\SPSC >= 0x07)))
35064                             {
35065                                 SCPF (0x0D, \DPSC, 0x05, 0x4B)
35066                             }
35067                         }
35068                         ElseIf ((\VCQL == 0x01))
35069                         {
35070                             SCPF (0x01, \DCQL, 0x06, 0x4B)
35071                         }
35072                         Else
35073                         {
35074                             SCPF (0x00, \DSTD, 0x00, 0x4B)
35075                         }
35076 
35077                         Local5 = 0x01
35078                         Local5 |= (\VCQL << 0x01)
35079                         Local5 |= (\VTIO << 0x02)
35080                         Local5 |= (\VMYH << 0x03)
35081                         Local5 |= (\VSTP << 0x04)
35082                         Local5 |= (\VCQH << 0x05)
35083                         Local5 |= (\VDCC << 0x06)
35084                         Local5 |= (\VSFN << 0x07)
35085                         Local5 |= (\VDMC << 0x08)
35086                         Local5 |= (\VFHP << 0x09)
35087                         Local5 |= (\VIFC << 0x0A)
35088                         Local5 |= (\VMMC << 0x0B)
35089                         Local5 |= (\VMSC << 0x0C)
35090                         Local5 |= (\VPSC << 0x0D)
35091                         Local5 |= (\VCSC << 0x0E)
35092                         Local1 = (\CICF << 0x08)
35093                         If ((\CICF == 0x03))
35094                         {
35095                             \CICM = \SMYH
35096                         }
35097                         ElseIf ((\CICF == 0x0B))
35098                         {
35099                             \CICM = \SMMC
35100                         }
35101                         ElseIf ((\CICF == 0x0D))
35102                         {
35103                             \CICM = \SPSC
35104                         }
35105                         Else
35106                         {
35107                             \CICM = 0x0F
35108                         }
35109 
35110                         Local1 |= (\CICM << 0x0C)
35111                         Local1 |= (Local5 << 0x10)
35112                         Local1 |= 0x01
35113                         If (\_SB.PCI0.LPCB.EC.HKEY.DHKC)
35114                         {
35115                             \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6032)
35116                         }
35117                     }
35118                     Case (0x02)
35119                     {
35120                         Local5 = 0x01
35121                         Local5 |= (\VCQL << 0x01)
35122                         Local5 |= (\VTIO << 0x02)
35123                         Local5 |= (\VMYH << 0x03)
35124                         Local5 |= (\VSTP << 0x04)
35125                         Local5 |= (\VCQH << 0x05)
35126                         Local5 |= (\VDCC << 0x06)
35127                         Local5 |= (\VSFN << 0x07)
35128                         Local5 |= (\VDMC << 0x08)
35129                         Local5 |= (\VFHP << 0x09)
35130                         Local5 |= (\VIFC << 0x0A)
35131                         Local5 |= (\VMMC << 0x0B)
35132                         Local5 |= (\VMSC << 0x0C)
35133                         Local5 |= (\VPSC << 0x0D)
35134                         Local5 |= (\VCSC << 0x0E)
35135                         Local1 = (\CICF << 0x08)
35136                         If ((\CICF == 0x03))
35137                         {
35138                             \CICM = \SMYH
35139                         }
35140                         ElseIf ((\CICF == 0x0B))
35141                         {
35142                             \CICM = \SMMC
35143                         }
35144                         ElseIf ((\CICF == 0x0D))
35145                         {
35146                             \CICM = \SPSC
35147                         }
35148                         Else
35149                         {
35150                             \CICM = 0x0F
35151                         }
35152 
35153                         Local1 |= (\CICM << 0x0C)
35154                         Local1 |= (Local5 << 0x10)
35155                         Local1 |= 0x01
35156                     }
35157                     Case (0x03)
35158                     {
35159                         If ((DYTV != 0x00))
35160                         {
35161                             Local1 = (FCAP << 0x10)
35162                         }
35163                         Else
35164                         {
35165                             Local6 = ((0x01 << 0x0B) | FCAP) /* \FCAP */
35166                             Local1 = (Local6 << 0x10)
35167                         }
35168 
35169                         Local1 |= 0x01
35170                     }
35171                     Case (0x04)
35172                     {
35173                         Local1 = (MYHC << 0x10)
35174                         Local1 |= 0x01
35175                     }
35176                     Case (0x06)
35177                     {
35178                         Local2 = ((Local0 >> 0x09) & 0x0F)
35179                         If ((Local2 != 0x01))
35180                         {
35181                             Local1 = (MMCC << 0x10)
35182                         }
35183                         Else
35184                         {
35185                             Local1 = (0x01 << 0x08)
35186                         }
35187 
35188                         Local1 |= 0x01
35189                     }
35190                     Case (0x05)
35191                     {
35192                         If ((0x00 != 0x01))
35193                         {
35194                             Local1 = (0x05 << 0x08)
35195                             Local1 |= (0x010E << 0x14)
35196                         }
35197 
35198                         Local1 |= 0x01
35199                     }
35200                     Case (0x0100)
35201                     {
35202                         Local1 = (0x1001 << 0x10)
35203                         Local1 |= 0x01
35204                     }
35205                     Case (0x01FF)
35206                     {
35207                         ADBG (" DYTC_CMD_RESET")
35208                         \VCQL = 0x00
35209                         \VTIO = 0x00
35210                         \VMYH = 0x00
35211                         \VSTP = 0x00
35212                         \VCQH = 0x00
35213                         \VDCC = 0x00
35214                         \VSFN = 0x00
35215                         \VDMC = 0x00
35216                         \VFHP = 0x00
35217                         \VIFC = 0x00
35218                         \VMMC = 0x00
35219                         \VMSC = 0x00
35220                         \VPSC = 0x00
35221                         \VCSC = 0x00
35222                         \SMYH = 0x00
35223                         \SMMC = 0x00
35224                         \SPSC = 0x00
35225                         SCPF (0x00, \DSTD, 0x00, 0x4B)
35226                         \CICM = 0x0F
35227                         Local5 = \VSTD
35228                         Local5 |= (\VCQL << 0x01)
35229                         Local5 |= (\VTIO << 0x02)
35230                         Local5 |= (\VMYH << 0x03)
35231                         Local5 |= (\VSTP << 0x04)
35232                         Local5 |= (\VCQH << 0x05)
35233                         Local5 |= (\VDCC << 0x06)
35234                         Local5 |= (\VSFN << 0x07)
35235                         Local5 |= (\VDMC << 0x08)
35236                         Local5 |= (\VFHP << 0x09)
35237                         Local5 |= (\VIFC << 0x0A)
35238                         Local5 |= (\VMMC << 0x0B)
35239                         Local5 |= (\VMSC << 0x0C)
35240                         Local5 |= (\VPSC << 0x0D)
35241                         Local5 |= (\VCSC << 0x0E)
35242                         Local1 = (\CICF << 0x08)
35243                         Local1 |= (\CICM << 0x0C)
35244                         Local1 |= (Local5 << 0x10)
35245                         If (CondRefOf (\_SB.IETM.DPTE))
35246                         {
35247                             If ((\_SB.IETM.DPTE & 0x01))
35248                             {
35249                                 Name (INDX, 0x00)
35250                                 While ((INDX < 0x14))
35251                                 {
35252                                     OEMV [INDX] = 0x00
35253                                     INDX++
35254                                 }
35255 
35256                                 OEMV [0x00] = \STDV /* External reference */
35257                                 Notify (\_SB.IETM, 0x88) // Device-Specific
35258                             }
35259                         }
35260 
35261                         Local1 |= 0x01
35262                     }
35263                     Default
35264                     {
35265                         Local1 = (0x02 << 0x01)
35266                     }
35267 
35268                 }
35269             }
35270             Else
35271             {
35272                 Local1 = (0x04 << 0x01)
35273             }
35274 
35275             ADBG (Concatenate ("DYTC END=", ToHexString (Local1)))
35276             Return (Local1)
35277         }
35278 
35279         Name (ANGN, 0x00)
35280         Method (SCPF, 4, Serialized)
35281         {
35282             \CICF = Arg0
35283             ADBG ("SCPF Start")
35284             If (!CondRefOf (\_SB.IETM.DPTE))
35285             {
35286                 ADBG (" No DPTE")
35287                 If ((\_SB.CLVL > 0x01))
35288                 {
35289                     \_SB.PCI0.PL1S (Arg1)
35290                 }
35291             }
35292             ElseIf ((\_SB.IETM.DPTE == 0x00))
35293             {
35294                 ADBG (" DPTE = 0 ")
35295                 If ((\_SB.CLVL > 0x01))
35296                 {
35297                     \_SB.PCI0.PL1S (Arg1)
35298                 }
35299             }
35300 
35301             If ((0x00 == Arg2))
35302             {
35303                 If (!CondRefOf (\_SB.IETM.DPTE))
35304                 {
35305                     ADBG (" No DPTE")
35306                     \FLPF (0x01)
35307                 }
35308                 ElseIf ((\_SB.IETM.DPTE == 0x00))
35309                 {
35310                     ADBG (" DPTE = 0 ")
35311                     \FLPF (0x01)
35312                 }
35313                 Else
35314                 {
35315                     ADBG (" DPTE = 1 ")
35316                     \FLPF (Arg2)
35317                 }
35318             }
35319             Else
35320             {
35321                 \FLPF (Arg2)
35322             }
35323         }
35324     }
35325 
35326     Scope (\_SB.PCI0)
35327     {
35328         Method (PL1S, 1, NotSerialized)
35329         {
35330             ADBG (Concatenate ("PL1S Value1=", ToHexString (Arg0)))
35331             ADBG (Concatenate ("PL1S PTDP1 =", ToHexString (\_SB.PCI0.PTDP)))
35332             If ((\_SB.PCI0.PTDP == Arg0))
35333             {
35334                 \PT0D = Arg0
35335                 \_SB.PCI0.CTCN ()
35336                 ADBG (" MMIO 1")
35337             }
35338             ElseIf ((\_SB.PCI0.PTDP > Arg0))
35339             {
35340                 If ((\_SB.CLVL >= 0x01))
35341                 {
35342                     \PT1D = Arg0
35343                     \_SB.PCI0.CTCD ()
35344                     ADBG (" MMIO 2")
35345                 }
35346                 Else
35347                 {
35348                     \PT0D = Arg0
35349                     \_SB.PCI0.CTCN ()
35350                     ADBG (" MMIO 3")
35351                 }
35352             }
35353             ElseIf ((\_SB.PCI0.PTDP < Arg0))
35354             {
35355                 If ((\_SB.CLVL > 0x02))
35356                 {
35357                     \PT0D = Arg0
35358                     \_SB.PCI0.CTCN ()
35359                     ADBG (" MMIO 4")
35360                 }
35361             }
35362         }
35363     }
35364 
35365     Scope (\_SB.PCI0)
35366     {
35367     }
35368 
35369     Scope (\_SB.PCI0.LPCB.EC)
35370     {
35371         Method (ATMC, 0, NotSerialized)
35372         {
35373             If ((\WNTF && \TATC))
35374             {
35375                 If (HPAC)
35376                 {
35377                     Local0 = \TCFA
35378                     Local1 = \TCTA
35379                     Local2 = ((Local1 << 0x04) | Local0)
35380                     Local3 = (Local2 ^ ATMX) /* \_SB_.PCI0.LPCB.EC__.ATMX */
35381                     ATMX = Local2
35382                     If ((\TCTA == 0x00))
35383                     {
35384                         \TCRT = \TCR0
35385                         \TPSV = \TPS0
35386                     }
35387                     ElseIf ((\TCTA == 0x01))
35388                     {
35389                         \TCRT = \TCR1
35390                         \TPSV = \TPS1
35391                     }
35392                     Else
35393                     {
35394                     }
35395                 }
35396                 Else
35397                 {
35398                     Local0 = \TCFD
35399                     Local1 = \TCTD
35400                     Local2 = ((Local1 << 0x04) | Local0)
35401                     Local3 = (Local2 ^ ATMX) /* \_SB_.PCI0.LPCB.EC__.ATMX */
35402                     ATMX = Local2
35403                     If ((\TCTD == 0x00))
35404                     {
35405                         \TCRT = \TCR0
35406                         \TPSV = \TPS0
35407                     }
35408                     ElseIf ((\TCTD == 0x01))
35409                     {
35410                         \TCRT = \TCR1
35411                         \TPSV = \TPS1
35412                     }
35413                     Else
35414                     {
35415                     }
35416                 }
35417 
35418                 If (Local3)
35419                 {
35420                     If (\_SB.PCI0.LPCB.EC.HKEY.DHKC)
35421                     {
35422                         \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6030)
35423                     }
35424                 }
35425 
35426                 Notify (\_TZ.THM0, 0x81) // Information Change
35427             }
35428         }
35429     }
35430 
35431     Scope (\_SB.PCI0.LPCB.EC)
35432     {
35433         Device (ITSD)
35434         {
35435             Name (_HID, EisaId ("LEN0100"))  // _HID: Hardware ID
35436             Method (_STA, 0, NotSerialized)  // _STA: Status
35437             {
35438                 Return (0x0F)
35439             }
35440         }
35441     }
35442 
35443     Scope (\_TZ)
35444     {
35445         ThermalZone (THM0)
35446         {
35447             Method (_CRT, 0, Serialized)  // _CRT: Critical Temperature
35448             {
35449                 Return (\TCRT)
35450             }
35451 
35452             Method (_TMP, 0, Serialized)  // _TMP: Temperature
35453             {
35454                 If (\H8DR)
35455                 {
35456                     Local0 = \_SB.PCI0.LPCB.EC.TMP0
35457                     Local1 = \_SB.PCI0.LPCB.EC.TSL2
35458                     Local2 = \_SB.PCI0.LPCB.EC.TSL3
35459                 }
35460                 Else
35461                 {
35462                     Local0 = \RBEC (0x78)
35463                     Local1 = (\RBEC (0x8A) & 0x7F)
35464                     Local2 = (\RBEC (0x8B) & 0x7F)
35465                 }
35466 
35467                 If ((Local0 == 0x80))
35468                 {
35469                     Local0 = 0x30
35470                 }
35471 
35472                 If (Local2)
35473                 {
35474                     \TSDL ()
35475                     Return (\TCRT)
35476                 }
35477 
35478                 If (!\_SB.PCI0.LPCB.EC.HKEY.DHKC)
35479                 {
35480                     If (Local1)
35481                     {
35482                         \TSDL ()
35483                         Return (\TCRT)
35484                     }
35485                 }
35486 
35487                 Return (_C2K (Local0))
35488             }
35489         }
35490 
35491         Method (_C2K, 1, Serialized)
35492         {
35493             Local0 = ((Arg0 * 0x0A) + 0x0AAC)
35494             If ((Local0 <= 0x0AAC))
35495             {
35496                 Local0 = 0x0C8C
35497             }
35498             ElseIf ((Local0 > 0x0FAC))
35499             {
35500                 Local0 = 0x0C8C
35501             }
35502 
35503             Return (Local0)
35504         }
35505     }
35506 
35507     Scope (\_SB.PCI0.LPCB.EC)
35508     {
35509         Method (_Q40, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
35510         {
35511             Notify (\_TZ.THM0, 0x80) // Status Change
35512             If (\H8DR)
35513             {
35514                 Local1 = \_SB.PCI0.LPCB.EC.TSL2
35515                 Local2 = \_SB.PCI0.LPCB.EC.TSL1
35516             }
35517             Else
35518             {
35519                 Local1 = (\RBEC (0x8A) & 0x7F)
35520                 Local2 = (\RBEC (0x89) & 0x7F)
35521             }
35522 
35523             If ((Local2 & 0x76))
35524             {
35525                 \_SB.PCI0.LPCB.EC.HKEY.DYTC (0x001F4001)
35526             }
35527             Else
35528             {
35529                 \_SB.PCI0.LPCB.EC.HKEY.DYTC (0x000F4001)
35530             }
35531 
35532             If ((\_SB.PCI0.LPCB.EC.HKEY.DHKC && Local1))
35533             {
35534                 \_SB.PCI0.LPCB.EC.HKEY.MHKQ (0x6022)
35535             }
35536 
35537             If (!\VIGD)
35538             {
35539                 \VTHR ()
35540             }
35541         }
35542     }
35543 
35544     Scope (\_SI)
35545     {
35546         Method (_SST, 1, NotSerialized)  // _SST: System Status
35547         {
35548             If ((Arg0 == 0x00))
35549             {
35550                 \_SB.PCI0.LPCB.EC.LED (0x00, 0x00)
35551                 \_SB.PCI0.LPCB.EC.LED (0x0A, 0x00)
35552                 \_SB.PCI0.LPCB.EC.LED (0x07, 0x00)
35553             }
35554 
35555             If ((Arg0 == 0x01))
35556             {
35557                 If ((\SPS || \WNTF))
35558                 {
35559                     \_SB.PCI0.LPCB.EC.BEEP (0x05)
35560                 }
35561 
35562                 \_SB.PCI0.LPCB.EC.LED (0x00, 0x80)
35563                 \_SB.PCI0.LPCB.EC.LED (0x0A, 0x80)
35564                 \_SB.PCI0.LPCB.EC.LED (0x07, 0x00)
35565             }
35566 
35567             If ((Arg0 == 0x02))
35568             {
35569                 \_SB.PCI0.LPCB.EC.LED (0x00, 0xC0)
35570                 \_SB.PCI0.LPCB.EC.LED (0x0A, 0xC0)
35571                 \_SB.PCI0.LPCB.EC.LED (0x07, 0xC0)
35572             }
35573 
35574             If ((Arg0 == 0x03))
35575             {
35576                 If ((\SPS > 0x03))
35577                 {
35578                     \_SB.PCI0.LPCB.EC.BEEP (0x07)
35579                 }
35580                 ElseIf ((\SPS == 0x03))
35581                 {
35582                     \_SB.PCI0.LPCB.EC.BEEP (0x03)
35583                 }
35584                 Else
35585                 {
35586                     \_SB.PCI0.LPCB.EC.BEEP (0x04)
35587                 }
35588 
35589                 If ((\SPS == 0x03)){}
35590                 Else
35591                 {
35592                     \_SB.PCI0.LPCB.EC.LED (0x00, 0x80)
35593                     \_SB.PCI0.LPCB.EC.LED (0x0A, 0x80)
35594                 }
35595 
35596                 \_SB.PCI0.LPCB.EC.LED (0x07, 0xC0)
35597                 \_SB.PCI0.LPCB.EC.LED (0x00, 0xC0)
35598                 \_SB.PCI0.LPCB.EC.LED (0x0A, 0xC0)
35599             }
35600 
35601             If ((Arg0 == 0x04))
35602             {
35603                 \_SB.PCI0.LPCB.EC.BEEP (0x03)
35604                 \_SB.PCI0.LPCB.EC.LED (0x07, 0xC0)
35605                 \_SB.PCI0.LPCB.EC.LED (0x00, 0xC0)
35606                 \_SB.PCI0.LPCB.EC.LED (0x0A, 0xC0)
35607             }
35608         }
35609     }
35610 
35611     Scope (\)
35612     {
35613         Name (SSDT, Package (0x1B)
35614         {
35615             "CPU0IST ", 
35616             0x5FA6C098, 
35617             0x000005BE, 
35618             "APIST   ", 
35619             0x5FA5D018, 
35620             0x000005FC, 
35621             "CPU0CST ", 
35622             0x5FA5D698, 
35623             0x00000400, 
35624             "APCST   ", 
35625             0x5FA5EA98, 
35626             0x0000030A, 
35627             "CPU0HWP ", 
35628             0x5FA6C898, 
35629             0x00000149, 
35630             "APHWP   ", 
35631             0x5FA6CB18, 
35632             0x00000317, 
35633             "HWPLVT  ", 
35634             0x5FA5E018, 
35635             0x00000724, 
35636             "CPU0PSD ", 
35637             0x5FA6C718, 
35638             0x000000F4, 
35639             "APPSD   ", 
35640             0x5FA5C018, 
35641             0x00000AB0
35642         })
35643         Name (\PC00, 0x80000000)
35644         Name (\PC01, 0x80000000)
35645         Name (\PC02, 0x80000000)
35646         Name (\PC03, 0x80000000)
35647         Name (\PC04, 0x80000000)
35648         Name (\PC05, 0x80000000)
35649         Name (\PC06, 0x80000000)
35650         Name (\PC07, 0x80000000)
35651         Name (\PC08, 0x80000000)
35652         Name (\PC09, 0x80000000)
35653         Name (\PC10, 0x80000000)
35654         Name (\PC11, 0x80000000)
35655         Name (\PC12, 0x80000000)
35656         Name (\PC13, 0x80000000)
35657         Name (\PC14, 0x80000000)
35658         Name (\PC15, 0x80000000)
35659         Name (\SDTL, Zero)
35660     }
35661 
35662     Scope (\_SB)
35663     {
35664         Name (CTPC, Zero)
35665         OperationRegion (PNVS, SystemMemory, 0x5FEF5000, 0x0072)
35666         Field (PNVS, AnyAcc, Lock, Preserve)
35667         {
35668             PGRV,   8, 
35669             CFGD,   32, 
35670             Offset (0x06), 
35671             ACRT,   8, 
35672             APSV,   8, 
35673             AAC0,   8, 
35674             CPID,   32, 
35675             CPPC,   8, 
35676             CLVL,   8, 
35677             CBMI,   8, 
35678             PL10,   16, 
35679             PL11,   16, 
35680             PL12,   16, 
35681             PL20,   16, 
35682             PL21,   16, 
35683             PL22,   16, 
35684             PLW0,   8, 
35685             PLW1,   8, 
35686             PLW2,   8, 
35687             CTC0,   8, 
35688             CTC1,   8, 
35689             CTC2,   8, 
35690             TAR0,   8, 
35691             TAR1,   8, 
35692             TAR2,   8, 
35693             PPC0,   8, 
35694             PPC1,   8, 
35695             PPC2,   8, 
35696             Offset (0x29), 
35697             C6MW,   8, 
35698             C7MW,   8, 
35699             CDMW,   8, 
35700             Offset (0x2E), 
35701             C6LT,   16, 
35702             C7LT,   16, 
35703             CDLT,   16, 
35704             CDLV,   16, 
35705             CDPW,   16, 
35706             MPMF,   8, 
35707             DTSE,   8, 
35708             DTS1,   8, 
35709             DTS2,   8, 
35710             DTSF,   8, 
35711             PDTS,   8, 
35712             PKGA,   8, 
35713             DTS3,   8, 
35714             DTS4,   8, 
35715             BGMA,   64, 
35716             BGMS,   8, 
35717             BGIA,   16, 
35718             BGIL,   16, 
35719             DSIA,   16, 
35720             DSIL,   8, 
35721             DSAE,   8, 
35722             EPCS,   8, 
35723             EMNA,   64, 
35724             ELNG,   64, 
35725             HWPV,   8, 
35726             HWPI,   8, 
35727             DTSI,   8, 
35728             HWPS,   8, 
35729             LMPS,   8, 
35730             ITBM,   8, 
35731             ITBD,   8, 
35732             ITBI,   8, 
35733             ITBS,   8, 
35734             OBIN,   8, 
35735             HWPE,   8, 
35736             TXTE,   8, 
35737             C3MW,   8, 
35738             C3LT,   16
35739         }
35740 
35741         OperationRegion (IO_D, SystemIO, \_SB.DSIA, \_SB.DSIL)
35742         Field (IO_D, ByteAcc, NoLock, Preserve)
35743         {
35744             TRPD,   8
35745         }
35746 
35747         OperationRegion (IO_P, SystemIO, \_SB.BGIA, \_SB.BGIL)
35748         Field (IO_P, ByteAcc, NoLock, Preserve)
35749         {
35750             TRPF,   8
35751         }
35752     }
35753 
35754     Scope (\_SB.PR00)
35755     {
35756         Name (HI0, Zero)
35757         Name (HC0, Zero)
35758         Name (HW0, Zero)
35759         Name (HW2, Zero)
35760         Name (HP0, Zero)
35761         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
35762         {
35763             Local0 = CPDC (Arg0)
35764             GCAP (Local0)
35765         }
35766 
35767         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
35768         {
35769             Local0 = COSC (Arg0, Arg1, Arg2, Arg3)
35770             GCAP (Local0)
35771             Return (Local0)
35772         }
35773 
35774         Method (CPDC, 1, NotSerialized)
35775         {
35776             CreateDWordField (Arg0, Zero, REVS)
35777             CreateDWordField (Arg0, 0x04, SIZE)
35778             Local0 = SizeOf (Arg0)
35779             Local1 = (Local0 - 0x08)
35780             CreateField (Arg0, 0x40, (Local1 * 0x08), TEMP)
35781             Local3 = Buffer (0x04)
35782                 {
35783                      0x00, 0x00, 0x00, 0x00                           // ....
35784                 }
35785             Concatenate (Local3, TEMP, Local2)
35786             Return (COSC (ToUUID ("4077a616-290c-47be-9ebd-d87058713953"), REVS, SIZE, Local2))
35787         }
35788 
35789         Method (COSC, 4, NotSerialized)
35790         {
35791             CreateDWordField (Arg3, Zero, STS0)
35792             CreateDWordField (Arg0, Zero, IID0)
35793             CreateDWordField (Arg0, 0x04, IID1)
35794             CreateDWordField (Arg0, 0x08, IID2)
35795             CreateDWordField (Arg0, 0x0C, IID3)
35796             Local0 = ToUUID ("4077a616-290c-47be-9ebd-d87058713953")
35797             CreateDWordField (Local0, Zero, EID0)
35798             CreateDWordField (Local0, 0x04, EID1)
35799             CreateDWordField (Local0, 0x08, EID2)
35800             CreateDWordField (Local0, 0x0C, EID3)
35801             If (!(((IID0 == EID0) && (IID1 == EID1)) && ((
35802                 IID2 == EID2) && (IID3 == EID3))))
35803             {
35804                 STS0 = 0x06
35805                 Return (Arg3)
35806             }
35807 
35808             If ((Arg1 != One))
35809             {
35810                 STS0 = 0x0A
35811                 Return (Arg3)
35812             }
35813 
35814             Return (Arg3)
35815         }
35816 
35817         Method (GCAP, 1, Serialized)
35818         {
35819             CreateDWordField (Arg0, Zero, STS0)
35820             CreateDWordField (Arg0, 0x04, CAP0)
35821             If (((STS0 == 0x06) || (STS0 == 0x0A)))
35822             {
35823                 Return (Zero)
35824             }
35825 
35826             If ((STS0 & One))
35827             {
35828                 CAP0 &= 0x0BFF
35829                 Return (Zero)
35830             }
35831 
35832             PC00 = ((PC00 & 0x7FFFFFFF) | CAP0) /* \_SB_.PR00.GCAP.CAP0 */
35833             If ((CFGD & 0x7A))
35834             {
35835                 If ((((CFGD & 0x0200) && (PC00 & 0x18)) && !
35836                     (SDTL & 0x02)))
35837                 {
35838                     SDTL |= 0x02
35839                     OperationRegion (CST0, SystemMemory, DerefOf (SSDT [0x07]), DerefOf (SSDT [0x08]))
35840                     Load (CST0, HC0) /* \_SB_.PR00.HC0_ */
35841                 }
35842             }
35843 
35844             If (((PC00 & 0x09) == 0x09))
35845             {
35846                 If (((CFGD & One) && !(SDTL & 0x08)))
35847                 {
35848                     SDTL |= 0x08
35849                     OperationRegion (IST0, SystemMemory, DerefOf (SSDT [One]), DerefOf (SSDT [0x02]))
35850                     Load (IST0, HI0) /* \_SB_.PR00.HI0_ */
35851                 }
35852             }
35853 
35854             If ((((CFGD & One) || (CFGD & 0x00400000)) && !
35855                 (SDTL & 0x0100)))
35856             {
35857                 SDTL |= 0x0100
35858                 OperationRegion (PSD0, SystemMemory, DerefOf (SSDT [0x16]), DerefOf (SSDT [0x17]))
35859                 Load (PSD0, HP0) /* \_SB_.PR00.HP0_ */
35860             }
35861 
35862             If ((OSYS >= 0x07DF))
35863             {
35864                 If (((CFGD & 0x00400000) && !(SDTL & 0x40)))
35865                 {
35866                     If ((\_SB.OSCP & 0x40))
35867                     {
35868                         SDTL |= 0x40
35869                         OperationRegion (HWP0, SystemMemory, DerefOf (SSDT [0x0D]), DerefOf (SSDT [0x0E]))
35870                         Load (HWP0, HW0) /* \_SB_.PR00.HW0_ */
35871                         If ((CFGD & 0x00800000))
35872                         {
35873                             OperationRegion (HWPL, SystemMemory, DerefOf (SSDT [0x13]), DerefOf (SSDT [0x14]))
35874                             Load (HWPL, HW2) /* \_SB_.PR00.HW2_ */
35875                         }
35876                     }
35877 
35878                     If ((\_SB.OSCP & 0x20))
35879                     {
35880                         If (!(\_SB.OSCP & 0x40))
35881                         {
35882                             HWPV = Zero
35883                         }
35884                     }
35885 
35886                     If ((\_SB.OSCP & 0x40))
35887                     {
35888                         HWPV = 0x02
35889                     }
35890                 }
35891             }
35892 
35893             OperationRegion (SMIP, SystemIO, 0xB2, One)
35894             Field (SMIP, ByteAcc, NoLock, Preserve)
35895             {
35896                 IOB2,   8
35897             }
35898 
35899             If (!(PC00 & 0x1000))
35900             {
35901                 IOB2 = HWPS /* \_SB_.HWPS */
35902             }
35903 
35904             If ((((\_SB.CFGD & 0x02000000) && (\_SB.CFGD & 0x00400000)) && 
35905                 (\_SB.OBIN != Zero)))
35906             {
35907                 If ((\_SB.OSCP & 0x1000))
35908                 {
35909                     IOB2 = ITBS /* \_SB_.ITBS */
35910                 }
35911             }
35912 
35913             Return (Zero)
35914         }
35915     }
35916 
35917     Scope (\_SB.PR01)
35918     {
35919         Name (HI1, Zero)
35920         Name (HC1, Zero)
35921         Name (HW1, Zero)
35922         Name (HP1, Zero)
35923         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
35924         {
35925             Local0 = \_SB.PR00.CPDC (Arg0)
35926             GCAP (Local0)
35927         }
35928 
35929         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
35930         {
35931             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
35932             GCAP (Local0)
35933             Return (Local0)
35934         }
35935 
35936         Method (GCAP, 1, NotSerialized)
35937         {
35938             CreateDWordField (Arg0, Zero, ST01)
35939             CreateDWordField (Arg0, 0x04, CP01)
35940             If (((ST01 == 0x06) || (ST01 == 0x0A)))
35941             {
35942                 Return (Zero)
35943             }
35944 
35945             If ((ST01 & One))
35946             {
35947                 CP01 &= 0x0BFF
35948                 Return (Zero)
35949             }
35950 
35951             PC01 = ((PC01 & 0x7FFFFFFF) | CP01) /* \_SB_.PR01.GCAP.CP01 */
35952             If (((PC01 & 0x09) == 0x09))
35953             {
35954                 APPT ()
35955             }
35956 
35957             If ((\_SB.OSCP & 0x20))
35958             {
35959                 HWPT ()
35960             }
35961 
35962             If ((((PC01 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
35963             {
35964                 APPS ()
35965             }
35966 
35967             If ((PC01 & 0x18))
35968             {
35969                 APCT ()
35970             }
35971 
35972             PC00 = PC01 /* \PC01 */
35973             Return (Zero)
35974         }
35975 
35976         Method (APCT, 0, Serialized)
35977         {
35978             If (((CFGD & 0x7A) && !(SDTL & 0x20)))
35979             {
35980                 SDTL |= 0x20
35981                 OperationRegion (CST1, SystemMemory, DerefOf (SSDT [0x0A]), DerefOf (SSDT [0x0B]))
35982                 Load (CST1, HC1) /* \_SB_.PR01.HC1_ */
35983             }
35984         }
35985 
35986         Method (APPT, 0, Serialized)
35987         {
35988             If (((CFGD & One) && !(SDTL & 0x10)))
35989             {
35990                 SDTL |= 0x10
35991                 OperationRegion (IST1, SystemMemory, DerefOf (SSDT [0x04]), DerefOf (SSDT [0x05]))
35992                 Load (IST1, HI1) /* \_SB_.PR01.HI1_ */
35993             }
35994         }
35995 
35996         Method (APPS, 0, Serialized)
35997         {
35998             If ((((CFGD & One) || (CFGD & 0x00400000)) && !
35999                 (SDTL & 0x0200)))
36000             {
36001                 SDTL |= 0x0200
36002                 OperationRegion (PSD1, SystemMemory, DerefOf (SSDT [0x19]), DerefOf (SSDT [0x1A]))
36003                 Load (PSD1, HP1) /* \_SB_.PR01.HP1_ */
36004             }
36005         }
36006 
36007         Method (HWPT, 0, Serialized)
36008         {
36009             If ((OSYS >= 0x07DF))
36010             {
36011                 If (((CFGD & 0x00400000) && !(SDTL & 0x80)))
36012                 {
36013                     SDTL |= 0x80
36014                     OperationRegion (HWP1, SystemMemory, DerefOf (SSDT [0x10]), DerefOf (SSDT [0x11]))
36015                     Load (HWP1, HW1) /* \_SB_.PR01.HW1_ */
36016                 }
36017             }
36018         }
36019     }
36020 
36021     Scope (\_SB.PR02)
36022     {
36023         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36024         {
36025             Local0 = \_SB.PR00.CPDC (Arg0)
36026             GCAP (Local0)
36027         }
36028 
36029         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36030         {
36031             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36032             GCAP (Local0)
36033             Return (Local0)
36034         }
36035 
36036         Method (GCAP, 1, NotSerialized)
36037         {
36038             CreateDWordField (Arg0, Zero, ST02)
36039             CreateDWordField (Arg0, 0x04, CP02)
36040             If (((ST02 == 0x06) || (ST02 == 0x0A)))
36041             {
36042                 Return (Zero)
36043             }
36044 
36045             If ((ST02 & One))
36046             {
36047                 CP02 &= 0x0BFF
36048                 Return (Zero)
36049             }
36050 
36051             PC02 = ((PC02 & 0x7FFFFFFF) | CP02) /* \_SB_.PR02.GCAP.CP02 */
36052             If (((PC02 & 0x09) == 0x09))
36053             {
36054                 \_SB.PR01.APPT ()
36055             }
36056 
36057             If ((\_SB.OSCP & 0x20))
36058             {
36059                 \_SB.PR01.HWPT ()
36060             }
36061 
36062             If ((((PC02 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36063             {
36064                 \_SB.PR01.APPS ()
36065             }
36066 
36067             If ((PC02 & 0x18))
36068             {
36069                 \_SB.PR01.APCT ()
36070             }
36071 
36072             PC00 = PC02 /* \PC02 */
36073             Return (Zero)
36074         }
36075     }
36076 
36077     Scope (\_SB.PR03)
36078     {
36079         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36080         {
36081             Local0 = \_SB.PR00.CPDC (Arg0)
36082             GCAP (Local0)
36083         }
36084 
36085         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36086         {
36087             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36088             GCAP (Local0)
36089             Return (Local0)
36090         }
36091 
36092         Method (GCAP, 1, NotSerialized)
36093         {
36094             CreateDWordField (Arg0, Zero, ST03)
36095             CreateDWordField (Arg0, 0x04, CP03)
36096             If (((ST03 == 0x06) || (ST03 == 0x0A)))
36097             {
36098                 Return (Zero)
36099             }
36100 
36101             If ((ST03 & One))
36102             {
36103                 CP03 &= 0x0BFF
36104                 Return (Zero)
36105             }
36106 
36107             PC03 = ((PC03 & 0x7FFFFFFF) | CP03) /* \_SB_.PR03.GCAP.CP03 */
36108             If (((PC03 & 0x09) == 0x09))
36109             {
36110                 \_SB.PR01.APPT ()
36111             }
36112 
36113             If ((\_SB.OSCP & 0x20))
36114             {
36115                 \_SB.PR01.HWPT ()
36116             }
36117 
36118             If ((((PC03 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36119             {
36120                 \_SB.PR01.APPS ()
36121             }
36122 
36123             If ((PC03 & 0x18))
36124             {
36125                 \_SB.PR01.APCT ()
36126             }
36127 
36128             PC00 = PC03 /* \PC03 */
36129             Return (Zero)
36130         }
36131     }
36132 
36133     Scope (\_SB.PR04)
36134     {
36135         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36136         {
36137             Local0 = \_SB.PR00.CPDC (Arg0)
36138             GCAP (Local0)
36139         }
36140 
36141         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36142         {
36143             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36144             GCAP (Local0)
36145             Return (Local0)
36146         }
36147 
36148         Method (GCAP, 1, NotSerialized)
36149         {
36150             CreateDWordField (Arg0, Zero, ST04)
36151             CreateDWordField (Arg0, 0x04, CP04)
36152             If (((ST04 == 0x06) || (ST04 == 0x0A)))
36153             {
36154                 Return (Zero)
36155             }
36156 
36157             If ((ST04 & One))
36158             {
36159                 CP04 &= 0x0BFF
36160                 Return (Zero)
36161             }
36162 
36163             PC04 = ((PC04 & 0x7FFFFFFF) | CP04) /* \_SB_.PR04.GCAP.CP04 */
36164             If (((PC04 & 0x09) == 0x09))
36165             {
36166                 \_SB.PR01.APPT ()
36167             }
36168 
36169             If ((\_SB.OSCP & 0x20))
36170             {
36171                 \_SB.PR01.HWPT ()
36172             }
36173 
36174             If ((((PC04 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36175             {
36176                 \_SB.PR01.APPS ()
36177             }
36178 
36179             If ((PC04 & 0x18))
36180             {
36181                 \_SB.PR01.APCT ()
36182             }
36183 
36184             PC00 = PC04 /* \PC04 */
36185             Return (Zero)
36186         }
36187     }
36188 
36189     Scope (\_SB.PR05)
36190     {
36191         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36192         {
36193             Local0 = \_SB.PR00.CPDC (Arg0)
36194             GCAP (Local0)
36195         }
36196 
36197         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36198         {
36199             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36200             GCAP (Local0)
36201             Return (Local0)
36202         }
36203 
36204         Method (GCAP, 1, NotSerialized)
36205         {
36206             CreateDWordField (Arg0, Zero, ST05)
36207             CreateDWordField (Arg0, 0x04, CP05)
36208             If (((ST05 == 0x06) || (ST05 == 0x0A)))
36209             {
36210                 Return (Zero)
36211             }
36212 
36213             If ((ST05 & One))
36214             {
36215                 CP05 &= 0x0BFF
36216                 Return (Zero)
36217             }
36218 
36219             PC05 = ((PC05 & 0x7FFFFFFF) | CP05) /* \_SB_.PR05.GCAP.CP05 */
36220             If (((PC05 & 0x09) == 0x09))
36221             {
36222                 \_SB.PR01.APPT ()
36223             }
36224 
36225             If ((\_SB.OSCP & 0x20))
36226             {
36227                 \_SB.PR01.HWPT ()
36228             }
36229 
36230             If ((((PC05 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36231             {
36232                 \_SB.PR01.APPS ()
36233             }
36234 
36235             If ((PC05 & 0x18))
36236             {
36237                 \_SB.PR01.APCT ()
36238             }
36239 
36240             PC00 = PC05 /* \PC05 */
36241             Return (Zero)
36242         }
36243     }
36244 
36245     Scope (\_SB.PR06)
36246     {
36247         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36248         {
36249             Local0 = \_SB.PR00.CPDC (Arg0)
36250             GCAP (Local0)
36251         }
36252 
36253         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36254         {
36255             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36256             GCAP (Local0)
36257             Return (Local0)
36258         }
36259 
36260         Method (GCAP, 1, NotSerialized)
36261         {
36262             CreateDWordField (Arg0, Zero, ST06)
36263             CreateDWordField (Arg0, 0x04, CP06)
36264             If (((ST06 == 0x06) || (ST06 == 0x0A)))
36265             {
36266                 Return (Zero)
36267             }
36268 
36269             If ((ST06 & One))
36270             {
36271                 CP06 &= 0x0BFF
36272                 Return (Zero)
36273             }
36274 
36275             PC06 = ((PC06 & 0x7FFFFFFF) | CP06) /* \_SB_.PR06.GCAP.CP06 */
36276             If (((PC06 & 0x09) == 0x09))
36277             {
36278                 \_SB.PR01.APPT ()
36279             }
36280 
36281             If ((\_SB.OSCP & 0x20))
36282             {
36283                 \_SB.PR01.HWPT ()
36284             }
36285 
36286             If ((((PC06 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36287             {
36288                 \_SB.PR01.APPS ()
36289             }
36290 
36291             If ((PC06 & 0x18))
36292             {
36293                 \_SB.PR01.APCT ()
36294             }
36295 
36296             PC00 = PC06 /* \PC06 */
36297             Return (Zero)
36298         }
36299     }
36300 
36301     Scope (\_SB.PR07)
36302     {
36303         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36304         {
36305             Local0 = \_SB.PR00.CPDC (Arg0)
36306             GCAP (Local0)
36307         }
36308 
36309         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36310         {
36311             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36312             GCAP (Local0)
36313             Return (Local0)
36314         }
36315 
36316         Method (GCAP, 1, NotSerialized)
36317         {
36318             CreateDWordField (Arg0, Zero, ST07)
36319             CreateDWordField (Arg0, 0x04, CP07)
36320             If (((ST07 == 0x06) || (ST07 == 0x0A)))
36321             {
36322                 Return (Zero)
36323             }
36324 
36325             If ((ST07 & One))
36326             {
36327                 CP07 &= 0x0BFF
36328                 Return (Zero)
36329             }
36330 
36331             PC07 = ((PC07 & 0x7FFFFFFF) | CP07) /* \_SB_.PR07.GCAP.CP07 */
36332             If (((PC07 & 0x09) == 0x09))
36333             {
36334                 \_SB.PR01.APPT ()
36335             }
36336 
36337             If ((\_SB.OSCP & 0x20))
36338             {
36339                 \_SB.PR01.HWPT ()
36340             }
36341 
36342             If ((((PC07 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36343             {
36344                 \_SB.PR01.APPS ()
36345             }
36346 
36347             If ((PC07 & 0x18))
36348             {
36349                 \_SB.PR01.APCT ()
36350             }
36351 
36352             PC00 = PC07 /* \PC07 */
36353             Return (Zero)
36354         }
36355     }
36356 
36357     Scope (\_SB.PR08)
36358     {
36359         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36360         {
36361             Local0 = \_SB.PR00.CPDC (Arg0)
36362             GCAP (Local0)
36363         }
36364 
36365         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36366         {
36367             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36368             GCAP (Local0)
36369             Return (Local0)
36370         }
36371 
36372         Method (GCAP, 1, NotSerialized)
36373         {
36374             CreateDWordField (Arg0, Zero, ST08)
36375             CreateDWordField (Arg0, 0x04, CP08)
36376             If (((ST08 == 0x06) || (ST08 == 0x0A)))
36377             {
36378                 Return (Zero)
36379             }
36380 
36381             If ((ST08 & One))
36382             {
36383                 CP08 &= 0x0BFF
36384                 Return (Zero)
36385             }
36386 
36387             PC08 = ((PC08 & 0x7FFFFFFF) | CP08) /* \_SB_.PR08.GCAP.CP08 */
36388             If (((PC08 & 0x09) == 0x09))
36389             {
36390                 \_SB.PR01.APPT ()
36391             }
36392 
36393             If ((\_SB.OSCP & 0x20))
36394             {
36395                 \_SB.PR01.HWPT ()
36396             }
36397 
36398             If ((((PC08 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36399             {
36400                 \_SB.PR01.APPS ()
36401             }
36402 
36403             If ((PC08 & 0x18))
36404             {
36405                 \_SB.PR01.APCT ()
36406             }
36407 
36408             PC00 = PC08 /* \PC08 */
36409             Return (Zero)
36410         }
36411     }
36412 
36413     Scope (\_SB.PR09)
36414     {
36415         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36416         {
36417             Local0 = \_SB.PR00.CPDC (Arg0)
36418             GCAP (Local0)
36419         }
36420 
36421         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36422         {
36423             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36424             GCAP (Local0)
36425             Return (Local0)
36426         }
36427 
36428         Method (GCAP, 1, NotSerialized)
36429         {
36430             CreateDWordField (Arg0, Zero, ST09)
36431             CreateDWordField (Arg0, 0x04, CP09)
36432             If (((ST09 == 0x06) || (ST09 == 0x0A)))
36433             {
36434                 Return (Zero)
36435             }
36436 
36437             If ((ST09 & One))
36438             {
36439                 CP09 &= 0x0BFF
36440                 Return (Zero)
36441             }
36442 
36443             PC09 = ((PC09 & 0x7FFFFFFF) | CP09) /* \_SB_.PR09.GCAP.CP09 */
36444             If (((PC09 & 0x09) == 0x09))
36445             {
36446                 \_SB.PR01.APPT ()
36447             }
36448 
36449             If ((\_SB.OSCP & 0x20))
36450             {
36451                 \_SB.PR01.HWPT ()
36452             }
36453 
36454             If ((((PC09 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36455             {
36456                 \_SB.PR01.APPS ()
36457             }
36458 
36459             If ((PC09 & 0x18))
36460             {
36461                 \_SB.PR01.APCT ()
36462             }
36463 
36464             PC00 = PC09 /* \PC09 */
36465             Return (Zero)
36466         }
36467     }
36468 
36469     Scope (\_SB.PR10)
36470     {
36471         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36472         {
36473             Local0 = \_SB.PR00.CPDC (Arg0)
36474             GCAP (Local0)
36475         }
36476 
36477         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36478         {
36479             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36480             GCAP (Local0)
36481             Return (Local0)
36482         }
36483 
36484         Method (GCAP, 1, NotSerialized)
36485         {
36486             CreateDWordField (Arg0, Zero, ST10)
36487             CreateDWordField (Arg0, 0x04, CP10)
36488             If (((ST10 == 0x06) || (ST10 == 0x0A)))
36489             {
36490                 Return (Zero)
36491             }
36492 
36493             If ((ST10 & One))
36494             {
36495                 CP10 = (ST10 & 0x0BFF)
36496                 Return (Zero)
36497             }
36498 
36499             PC10 = ((PC10 & 0x7FFFFFFF) | CP10) /* \_SB_.PR10.GCAP.CP10 */
36500             If (((PC10 & 0x09) == 0x09))
36501             {
36502                 \_SB.PR01.APPT ()
36503             }
36504 
36505             If ((\_SB.OSCP & 0x20))
36506             {
36507                 \_SB.PR01.HWPT ()
36508             }
36509 
36510             If ((((PC10 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36511             {
36512                 \_SB.PR01.APPS ()
36513             }
36514 
36515             If ((PC10 & 0x18))
36516             {
36517                 \_SB.PR01.APCT ()
36518             }
36519 
36520             PC00 = PC10 /* \PC10 */
36521             Return (Zero)
36522         }
36523     }
36524 
36525     Scope (\_SB.PR11)
36526     {
36527         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36528         {
36529             Local0 = \_SB.PR00.CPDC (Arg0)
36530             GCAP (Local0)
36531         }
36532 
36533         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36534         {
36535             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36536             GCAP (Local0)
36537             Return (Local0)
36538         }
36539 
36540         Method (GCAP, 1, NotSerialized)
36541         {
36542             CreateDWordField (Arg0, Zero, ST11)
36543             CreateDWordField (Arg0, 0x04, CP11)
36544             If (((ST11 == 0x06) || (ST11 == 0x0A)))
36545             {
36546                 Return (Zero)
36547             }
36548 
36549             If ((ST11 & One))
36550             {
36551                 CP11 = (ST11 & 0x0BFF)
36552                 Return (Zero)
36553             }
36554 
36555             PC11 = ((PC11 & 0x7FFFFFFF) | CP11) /* \_SB_.PR11.GCAP.CP11 */
36556             If (((PC11 & 0x09) == 0x09))
36557             {
36558                 \_SB.PR01.APPT ()
36559             }
36560 
36561             If ((\_SB.OSCP & 0x20))
36562             {
36563                 \_SB.PR01.HWPT ()
36564             }
36565 
36566             If ((((PC11 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36567             {
36568                 \_SB.PR01.APPS ()
36569             }
36570 
36571             If ((PC11 & 0x18))
36572             {
36573                 \_SB.PR01.APCT ()
36574             }
36575 
36576             PC00 = PC11 /* \PC11 */
36577             Return (Zero)
36578         }
36579     }
36580 
36581     Scope (\_SB.PR12)
36582     {
36583         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36584         {
36585             Local0 = \_SB.PR00.CPDC (Arg0)
36586             GCAP (Local0)
36587         }
36588 
36589         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36590         {
36591             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36592             GCAP (Local0)
36593             Return (Local0)
36594         }
36595 
36596         Method (GCAP, 1, NotSerialized)
36597         {
36598             CreateDWordField (Arg0, Zero, ST12)
36599             CreateDWordField (Arg0, 0x04, CP12)
36600             If (((ST12 == 0x06) || (ST12 == 0x0A)))
36601             {
36602                 Return (Zero)
36603             }
36604 
36605             If ((ST12 & One))
36606             {
36607                 CP12 = (ST12 & 0x0BFF)
36608                 Return (Zero)
36609             }
36610 
36611             PC12 = ((PC12 & 0x7FFFFFFF) | CP12) /* \_SB_.PR12.GCAP.CP12 */
36612             If (((PC12 & 0x09) == 0x09))
36613             {
36614                 \_SB.PR01.APPT ()
36615             }
36616 
36617             If ((\_SB.OSCP & 0x20))
36618             {
36619                 \_SB.PR01.HWPT ()
36620             }
36621 
36622             If ((((PC12 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36623             {
36624                 \_SB.PR01.APPS ()
36625             }
36626 
36627             If ((PC12 & 0x18))
36628             {
36629                 \_SB.PR01.APCT ()
36630             }
36631 
36632             PC00 = PC12 /* \PC12 */
36633             Return (Zero)
36634         }
36635     }
36636 
36637     Scope (\_SB.PR13)
36638     {
36639         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36640         {
36641             Local0 = \_SB.PR00.CPDC (Arg0)
36642             GCAP (Local0)
36643         }
36644 
36645         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36646         {
36647             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36648             GCAP (Local0)
36649             Return (Local0)
36650         }
36651 
36652         Method (GCAP, 1, NotSerialized)
36653         {
36654             CreateDWordField (Arg0, Zero, ST13)
36655             CreateDWordField (Arg0, 0x04, CP13)
36656             If (((ST13 == 0x06) || (ST13 == 0x0A)))
36657             {
36658                 Return (Zero)
36659             }
36660 
36661             If ((ST13 & One))
36662             {
36663                 CP13 = (ST13 & 0x0BFF)
36664                 Return (Zero)
36665             }
36666 
36667             PC13 = ((PC13 & 0x7FFFFFFF) | CP13) /* \_SB_.PR13.GCAP.CP13 */
36668             If (((PC13 & 0x09) == 0x09))
36669             {
36670                 \_SB.PR01.APPT ()
36671             }
36672 
36673             If ((\_SB.OSCP & 0x20))
36674             {
36675                 \_SB.PR01.HWPT ()
36676             }
36677 
36678             If ((((PC13 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36679             {
36680                 \_SB.PR01.APPS ()
36681             }
36682 
36683             If ((PC13 & 0x18))
36684             {
36685                 \_SB.PR01.APCT ()
36686             }
36687 
36688             PC00 = PC13 /* \PC13 */
36689             Return (Zero)
36690         }
36691     }
36692 
36693     Scope (\_SB.PR14)
36694     {
36695         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36696         {
36697             Local0 = \_SB.PR00.CPDC (Arg0)
36698             GCAP (Local0)
36699         }
36700 
36701         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36702         {
36703             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36704             GCAP (Local0)
36705             Return (Local0)
36706         }
36707 
36708         Method (GCAP, 1, NotSerialized)
36709         {
36710             CreateDWordField (Arg0, Zero, ST14)
36711             CreateDWordField (Arg0, 0x04, CP14)
36712             If (((ST14 == 0x06) || (ST14 == 0x0A)))
36713             {
36714                 Return (Zero)
36715             }
36716 
36717             If ((ST14 & One))
36718             {
36719                 CP14 = (ST14 & 0x0BFF)
36720                 Return (Zero)
36721             }
36722 
36723             PC14 = ((PC14 & 0x7FFFFFFF) | CP14) /* \_SB_.PR14.GCAP.CP14 */
36724             If (((PC14 & 0x09) == 0x09))
36725             {
36726                 \_SB.PR01.APPT ()
36727             }
36728 
36729             If ((\_SB.OSCP & 0x20))
36730             {
36731                 \_SB.PR01.HWPT ()
36732             }
36733 
36734             If ((((PC14 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36735             {
36736                 \_SB.PR01.APPS ()
36737             }
36738 
36739             If ((PC14 & 0x18))
36740             {
36741                 \_SB.PR01.APCT ()
36742             }
36743 
36744             PC00 = PC14 /* \PC14 */
36745             Return (Zero)
36746         }
36747     }
36748 
36749     Scope (\_SB.PR15)
36750     {
36751         Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
36752         {
36753             Local0 = \_SB.PR00.CPDC (Arg0)
36754             GCAP (Local0)
36755         }
36756 
36757         Method (_OSC, 4, NotSerialized)  // _OSC: Operating System Capabilities
36758         {
36759             Local0 = \_SB.PR00.COSC (Arg0, Arg1, Arg2, Arg3)
36760             GCAP (Local0)
36761             Return (Local0)
36762         }
36763 
36764         Method (GCAP, 1, NotSerialized)
36765         {
36766             CreateDWordField (Arg0, Zero, ST15)
36767             CreateDWordField (Arg0, 0x04, CP15)
36768             If (((ST15 == 0x06) || (ST15 == 0x0A)))
36769             {
36770                 Return (Zero)
36771             }
36772 
36773             If ((ST15 & One))
36774             {
36775                 CP15 = (ST15 & 0x0BFF)
36776                 Return (Zero)
36777             }
36778 
36779             PC15 = ((PC15 & 0x7FFFFFFF) | CP15) /* \_SB_.PR15.GCAP.CP15 */
36780             If (((PC15 & 0x09) == 0x09))
36781             {
36782                 \_SB.PR01.APPT ()
36783             }
36784 
36785             If ((\_SB.OSCP & 0x20))
36786             {
36787                 \_SB.PR01.HWPT ()
36788             }
36789 
36790             If ((((PC15 & 0x09) == 0x09) || (\_SB.OSCP & 0x20)))
36791             {
36792                 \_SB.PR01.APPS ()
36793             }
36794 
36795             If ((PC15 & 0x18))
36796             {
36797                 \_SB.PR01.APCT ()
36798             }
36799 
36800             PC00 = PC15 /* \PC15 */
36801             Return (Zero)
36802         }
36803     }
36804 
36805     Scope (\_SB)
36806     {
36807         If ((TXTE == One))
36808         {
36809             Device (ACM)
36810             {
36811                 Name (_HID, "INTC1025")  // _HID: Hardware ID
36812                 Name (_CID, "INT_WHL_SINIT")  // _CID: Compatible ID
36813             }
36814         }
36815     }
36816 
36817     Scope (\_SB.PCI0)
36818     {
36819         OperationRegion (MBAR, SystemMemory, 0xFED15000, 0x1000)
36820         Field (MBAR, ByteAcc, NoLock, Preserve)
36821         {
36822             Offset (0x930), 
36823             PTDP,   15, 
36824             Offset (0x932), 
36825             PMIN,   15, 
36826             Offset (0x934), 
36827             PMAX,   15, 
36828             Offset (0x936), 
36829             TMAX,   7, 
36830             Offset (0x938), 
36831             PWRU,   4, 
36832             Offset (0x939), 
36833             EGYU,   5, 
36834             Offset (0x93A), 
36835             TIMU,   4, 
36836             Offset (0x958), 
36837             Offset (0x95C), 
36838             LPMS,   1, 
36839             CTNL,   2, 
36840             Offset (0x9A0), 
36841             PPL1,   15, 
36842             PL1E,   1, 
36843                 ,   1, 
36844             PL1T,   7, 
36845             Offset (0x9A4), 
36846             PPL2,   15, 
36847             PL2E,   1, 
36848                 ,   1, 
36849             PL2T,   7, 
36850             Offset (0xF3C), 
36851             TARN,   8, 
36852             Offset (0xF40), 
36853             PTD1,   15, 
36854             Offset (0xF42), 
36855             TAR1,   8, 
36856             Offset (0xF44), 
36857             PMX1,   15, 
36858             Offset (0xF46), 
36859             PMN1,   15, 
36860             Offset (0xF48), 
36861             PTD2,   15, 
36862             Offset (0xF4A), 
36863             TAR2,   8, 
36864             Offset (0xF4C), 
36865             PMX2,   15, 
36866             Offset (0xF4E), 
36867             PMN2,   15, 
36868             Offset (0xF50), 
36869             CTCL,   2, 
36870                 ,   29, 
36871             CLCK,   1, 
36872             TAR,    8
36873         }
36874 
36875         Method (CTCU, 0, NotSerialized)
36876         {
36877             PPL1 = PT2D /* External reference */
36878             PL1E = One
36879             \CTPC = One
36880             If ((Zero == \FTPS))
36881             {
36882                 \CTPR = \CTPC /* External reference */
36883             }
36884             ElseIf ((\CTPR == \FTPS))
36885             {
36886                 \CTPR = \CTPC /* External reference */
36887                 \FTPS = \CTPC /* External reference */
36888             }
36889             Else
36890             {
36891                 \CTPR = \CTPC /* External reference */
36892                 \FTPS = \CTPC /* External reference */
36893                 \FTPS++
36894             }
36895 
36896             \PNTF (0x80)
36897             TAR = (TAR2 - One)
36898             CTCL = 0x02
36899         }
36900 
36901         Method (CTCN, 0, NotSerialized)
36902         {
36903             If ((CTCL == One))
36904             {
36905                 PPL1 = PT0D /* External reference */
36906                 PL1E = One
36907                 NPPC (TARN)
36908                 TAR = (TARN - One)
36909                 CTCL = Zero
36910             }
36911             ElseIf ((CTCL == 0x02))
36912             {
36913                 CTCL = Zero
36914                 TAR = (TARN - One)
36915                 NPPC (TARN)
36916                 PPL1 = PT0D /* External reference */
36917                 PL1E = One
36918             }
36919             Else
36920             {
36921                 CTCL = Zero
36922                 TAR = (TARN - One)
36923                 NPPC (TARN)
36924                 PPL1 = PT0D /* External reference */
36925                 PL1E = One
36926             }
36927         }
36928 
36929         Method (CTCD, 0, NotSerialized)
36930         {
36931             CTCL = One
36932             TAR = (TAR1 - One)
36933             NPPC (TAR1)
36934             PPL1 = PT1D /* External reference */
36935             PL1E = One
36936         }
36937 
36938         Method (NPPC, 1, NotSerialized)
36939         {
36940             Name (TRAT, Zero)
36941             Name (PRAT, Zero)
36942             Name (TMPI, Zero)
36943             TRAT = Arg0
36944             If (CondRefOf (\_SB.PR00._PSS))
36945             {
36946                 If ((\_SB.OSCP & 0x0400))
36947                 {
36948                     TMPI = SizeOf (\_SB.PR00.TPSS)
36949                 }
36950                 Else
36951                 {
36952                     TMPI = SizeOf (\_SB.PR00.LPSS)
36953                 }
36954 
36955                 While ((TMPI != Zero))
36956                 {
36957                     TMPI--
36958                     If ((\_SB.OSCP & 0x0400))
36959                     {
36960                         PRAT = DerefOf (DerefOf (\_SB.PR00.TPSS [TMPI]) [0x04])
36961                     }
36962                     Else
36963                     {
36964                         PRAT = DerefOf (DerefOf (\_SB.PR00.LPSS [TMPI]) [0x04])
36965                     }
36966 
36967                     PRAT >>= 0x08
36968                     If ((PRAT >= TRAT))
36969                     {
36970                         \CTPC = TMPI /* \_SB_.PCI0.NPPC.TMPI */
36971                         If ((Zero == \FTPS))
36972                         {
36973                             \CTPR = \CTPC /* External reference */
36974                         }
36975                         ElseIf ((\CTPR == \FTPS))
36976                         {
36977                             \CTPR = \CTPC /* External reference */
36978                             \FTPS = \CTPC /* External reference */
36979                         }
36980                         Else
36981                         {
36982                             \CTPR = \CTPC /* External reference */
36983                             \FTPS = \CTPC /* External reference */
36984                             \FTPS++
36985                         }
36986 
36987                         \PNTF (0x80)
36988                         Break
36989                     }
36990                 }
36991             }
36992         }
36993 
36994         Method (CLC2, 1, Serialized)
36995         {
36996             Local0 = (PNHM & 0x0FFF0FF0)
36997             Switch (ToInteger (Local0))
36998             {
36999                 Case (0x000306C0)
37000                 {
37001                     Return (((Arg0 * 0x05) / 0x04))
37002                 }
37003                 Case (0x00040650)
37004                 {
37005                     Return (0xC8)
37006                 }
37007                 Default
37008                 {
37009                     Return (((Arg0 * 0x05) / 0x04))
37010                 }
37011 
37012             }
37013         }
37014     }
37015 
37016     Scope (\_SB)
37017     {
37018         Device (IETM)
37019         {
37020             Name (_HID, EisaId ("INT3400") /* Intel Dynamic Power Performance Management */)  // _HID: Hardware ID
37021             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
37022             {
37023                 If (CondRefOf (HIWC))
37024                 {
37025                     If (HIWC (Arg0))
37026                     {
37027                         If (CondRefOf (HIDW))
37028                         {
37029                             Return (HIDW (Arg0, Arg1, Arg2, Arg3))
37030                         }
37031                     }
37032                 }
37033 
37034                 Return (Buffer (One)
37035                 {
37036                      0x00                                             // .
37037                 })
37038             }
37039 
37040             Method (_STA, 0, NotSerialized)  // _STA: Status
37041             {
37042                 If ((DPTF == One))
37043                 {
37044                     Return (0x0F)
37045                 }
37046                 Else
37047                 {
37048                     Return (Zero)
37049                 }
37050             }
37051 
37052             Name (IDTP, Package (0x0C)
37053             {
37054                 ToUUID ("9e04115a-ae87-4d1c-9500-0f3e340bfe75"), 
37055                 ToUUID ("42a441d6-ae6a-462b-a84b-4a8ce79027d3"), 
37056                 ToUUID ("3a95c389-e4b8-4629-a526-c52c88626bae"), 
37057                 ToUUID ("0e56fab6-bdfc-4e8c-8246-40ecfd4d74ea"), 
37058                 ToUUID ("97c68ae7-15fa-499c-b8c9-5da81d606e0a"), 
37059                 ToUUID ("c4ce1849-243a-49f3-b8d5-f97002f38e6a"), 
37060                 ToUUID ("e145970a-e4c1-4d73-900e-c9c5a69dd067"), 
37061                 ToUUID ("f5a35014-c209-46a4-993a-eb56de7530a1"), 
37062                 ToUUID ("63be270f-1c11-48fd-a6f7-3af253ff3e2d"), 
37063                 ToUUID ("6ed722a7-9240-48a5-b479-31eef723d7cf"), 
37064                 ToUUID ("42496e14-bc1b-46e8-a798-ca915464426f"), 
37065                 Buffer (0x10)
37066                 {
37067                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37068                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37069                 }
37070             })
37071             Name (TMPP, Package (0x0C)
37072             {
37073                 Buffer (0x10)
37074                 {
37075                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37076                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37077                 }, 
37078 
37079                 Buffer (0x10)
37080                 {
37081                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37082                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37083                 }, 
37084 
37085                 Buffer (0x10)
37086                 {
37087                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37088                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37089                 }, 
37090 
37091                 Buffer (0x10)
37092                 {
37093                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37094                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37095                 }, 
37096 
37097                 Buffer (0x10)
37098                 {
37099                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37100                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37101                 }, 
37102 
37103                 Buffer (0x10)
37104                 {
37105                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37106                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37107                 }, 
37108 
37109                 Buffer (0x10)
37110                 {
37111                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37112                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37113                 }, 
37114 
37115                 Buffer (0x10)
37116                 {
37117                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37118                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37119                 }, 
37120 
37121                 Buffer (0x10)
37122                 {
37123                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37124                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37125                 }, 
37126 
37127                 Buffer (0x10)
37128                 {
37129                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37130                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37131                 }, 
37132 
37133                 Buffer (0x10)
37134                 {
37135                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37136                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37137                 }, 
37138 
37139                 Buffer (0x10)
37140                 {
37141                     /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
37142                     /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
37143                 }
37144             })
37145             Name (PTRP, Zero)
37146             Name (PSEM, Zero)
37147             Name (ATRP, Zero)
37148             Name (ASEM, Zero)
37149             Name (YTRP, Zero)
37150             Name (YSEM, Zero)
37151             Name (DPTE, Zero)
37152             Method (IDSP, 0, Serialized)
37153             {
37154                 Name (TMPI, Zero)
37155                 If (((\DPPP == 0x02) && CondRefOf (DP2P)))
37156                 {
37157                     TMPP [TMPI] = DerefOf (DP2P [Zero])
37158                     TMPI++
37159                 }
37160 
37161                 If (((\DPPP == One) && CondRefOf (DPSP)))
37162                 {
37163                     TMPP [TMPI] = DerefOf (DPSP [Zero])
37164                     TMPI++
37165                 }
37166 
37167                 If (((\DPAP == One) && CondRefOf (DASP)))
37168                 {
37169                     TMPP [TMPI] = DerefOf (DASP [Zero])
37170                     TMPI++
37171                 }
37172 
37173                 If (((\DPAP == 0x02) && CondRefOf (DA2P)))
37174                 {
37175                     TMPP [TMPI] = DerefOf (DA2P [Zero])
37176                     TMPI++
37177                 }
37178 
37179                 If (((\DPCP == One) && CondRefOf (DCSP)))
37180                 {
37181                     TMPP [TMPI] = DerefOf (DCSP [Zero])
37182                     TMPI++
37183                 }
37184 
37185                 If (((\RFIM == One) && CondRefOf (RFIP)))
37186                 {
37187                     TMPP [TMPI] = DerefOf (RFIP [Zero])
37188                     TMPI++
37189                 }
37190 
37191                 If (CondRefOf (CTSP))
37192                 {
37193                     If (((\SADE == One) && (\CTDP == One)))
37194                     {
37195                         TMPP [TMPI] = DerefOf (CTSP [Zero])
37196                         TMPI++
37197                     }
37198                 }
37199 
37200                 If (((\PBPE == One) && CondRefOf (POBP)))
37201                 {
37202                     TMPP [TMPI] = DerefOf (POBP [Zero])
37203                     TMPI++
37204                 }
37205 
37206                 If (((\APPE == One) && CondRefOf (DAPP)))
37207                 {
37208                     TMPP [TMPI] = DerefOf (DAPP [Zero])
37209                     TMPI++
37210                 }
37211 
37212                 If (((\VSPE == One) && CondRefOf (DVSP)))
37213                 {
37214                     TMPP [TMPI] = DerefOf (DVSP [Zero])
37215                     TMPI++
37216                 }
37217 
37218                 If (((\PIDE == One) && CondRefOf (DPID)))
37219                 {
37220                     TMPP [TMPI] = DerefOf (DPID [Zero])
37221                     TMPI++
37222                 }
37223 
37224                 Return (TMPP) /* \_SB_.IETM.TMPP */
37225             }
37226 
37227             Method (_OSC, 4, Serialized)  // _OSC: Operating System Capabilities
37228             {
37229                 Name (NUMP, Zero)
37230                 Name (UID2, Buffer (0x10)
37231                 {
37232                     /* 0000 */  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,  // ........
37233                     /* 0008 */  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF   // ........
37234                 })
37235                 CreateDWordField (Arg3, Zero, STS1)
37236                 CreateDWordField (Arg3, 0x04, CAP1)
37237                 If ((CAP1 & One))
37238                 {
37239                     If ((DPTE == Zero))
37240                     {
37241                         DPTE = One
37242                         \_SB.PCI0.LPCB.EC.HKEY.DYTC (0x800F0001)
37243                         If (\_SB.PCI0.LPCB.EC.HKEY.DHKC){}
37244                     }
37245                 }
37246                 ElseIf ((DPTE == One))
37247                 {
37248                     DPTE = Zero
37249                     \_SB.PCI0.LPCB.EC.HKEY.DYTC (0x01FF)
37250                     If (\_SB.PCI0.LPCB.EC.HKEY.DHKC){}
37251                 }
37252 
37253                 ADBG (Concatenate ("OSC->DPTE=", ToHexString (DPTE)))
37254                 NUMP = SizeOf (IDTP)
37255                 CreateDWordField (Arg0, Zero, IID0)
37256                 CreateDWordField (Arg0, 0x04, IID1)
37257                 CreateDWordField (Arg0, 0x08, IID2)
37258                 CreateDWordField (Arg0, 0x0C, IID3)
37259                 CreateDWordField (UID2, Zero, EID0)
37260                 CreateDWordField (UID2, 0x04, EID1)
37261                 CreateDWordField (UID2, 0x08, EID2)
37262                 CreateDWordField (UID2, 0x0C, EID3)
37263                 While (NUMP)
37264                 {
37265                     UID2 = DerefOf (IDTP [(NUMP - One)])
37266                     If ((((IID0 == EID0) && (IID1 == EID1)) && ((IID2 == 
37267                         EID2) && (IID3 == EID3))))
37268                     {
37269                         Break
37270                     }
37271 
37272                     NUMP--
37273                 }
37274 
37275                 If ((Arg1 != One))
37276                 {
37277                     STS1 &= 0xFFFFFF00
37278                     STS1 |= 0x0A
37279                     Return (Arg3)
37280                 }
37281 
37282                 If ((Arg2 != 0x02))
37283                 {
37284                     STS1 &= 0xFFFFFF00
37285                     STS1 |= 0x02
37286                     Return (Arg3)
37287                 }
37288 
37289                 If (((\DPPP == 0x02) && CondRefOf (\_SB.APSV)))
37290                 {
37291                     If ((PSEM == Zero))
37292                     {
37293                         PSEM = One
37294                         PTRP = \_SB.APSV /* External reference */
37295                     }
37296 
37297                     If (CondRefOf (DP2P))
37298                     {
37299                         UID2 = DerefOf (DP2P [Zero])
37300                     }
37301 
37302                     If ((((IID0 == EID0) && (IID1 == EID1)) && ((IID2 == 
37303                         EID2) && (IID3 == EID3))))
37304                     {
37305                         If (~(STS1 & One))
37306                         {
37307                             If ((CAP1 & One))
37308                             {
37309                                 \_SB.APSV = 0x6E
37310                             }
37311                             Else
37312                             {
37313                                 \_SB.APSV = PTRP /* \_SB_.IETM.PTRP */
37314                             }
37315 
37316                             Notify (\_TZ.THM0, 0x81) // Information Change
37317                         }
37318 
37319                         Return (Arg3)
37320                     }
37321                 }
37322 
37323                 If (((\DPPP == One) && CondRefOf (\_SB.APSV)))
37324                 {
37325                     If ((PSEM == Zero))
37326                     {
37327                         PSEM = One
37328                         PTRP = \_SB.APSV /* External reference */
37329                     }
37330 
37331                     If (CondRefOf (DPSP))
37332                     {
37333                         UID2 = DerefOf (DPSP [Zero])
37334                     }
37335 
37336                     If ((((IID0 == EID0) && (IID1 == EID1)) && ((IID2 == 
37337                         EID2) && (IID3 == EID3))))
37338                     {
37339                         If (~(STS1 & One))
37340                         {
37341                             If ((CAP1 & One))
37342                             {
37343                                 \_SB.APSV = 0x6E
37344                             }
37345                             Else
37346                             {
37347                                 \_SB.APSV = PTRP /* \_SB_.IETM.PTRP */
37348                             }
37349 
37350                             Notify (\_TZ.THM0, 0x81) // Information Change
37351                         }
37352 
37353                         Return (Arg3)
37354                     }
37355                 }
37356 
37357                 If (((\PIDE == One) && CondRefOf (\_SB.APSV)))
37358                 {
37359                     If ((PSEM == Zero))
37360                     {
37361                         PSEM = One
37362                         PTRP = \_SB.APSV /* External reference */
37363                     }
37364 
37365                     If (CondRefOf (DPID))
37366                     {
37367                         UID2 = DerefOf (DPID [Zero])
37368                     }
37369 
37370                     If ((((IID0 == EID0) && (IID1 == EID1)) && ((IID2 == 
37371                         EID2) && (IID3 == EID3))))
37372                     {
37373                         If (~(STS1 & One))
37374                         {
37375                             If ((CAP1 & One))
37376                             {
37377                                 \_SB.APSV = 0x6E
37378                             }
37379                             Else
37380                             {
37381                                 \_SB.APSV = PTRP /* \_SB_.IETM.PTRP */
37382                             }
37383 
37384                             Notify (\_TZ.THM0, 0x81) // Information Change
37385                         }
37386 
37387                         Return (Arg3)
37388                     }
37389                 }
37390 
37391                 If (((\DPAP == One) && CondRefOf (\_SB.AAC0)))
37392                 {
37393                     If ((ASEM == Zero))
37394                     {
37395                         ASEM = One
37396                         ATRP = \_SB.AAC0 /* External reference */
37397                     }
37398 
37399                     If (CondRefOf (DASP))
37400                     {
37401                         UID2 = DerefOf (DASP [Zero])
37402                     }
37403 
37404                     If ((((IID0 == EID0) && (IID1 == EID1)) && ((IID2 == 
37405                         EID2) && (IID3 == EID3))))
37406                     {
37407                         If (~(STS1 & One))
37408                         {
37409                             If ((CAP1 & One))
37410                             {
37411                                 \_SB.AAC0 = 0x6E
37412                             }
37413                             Else
37414                             {
37415                                 \_SB.AAC0 = ATRP /* \_SB_.IETM.ATRP */
37416                             }
37417 
37418                             Notify (\_TZ.THM0, 0x81) // Information Change
37419                         }
37420 
37421                         Return (Arg3)
37422                     }
37423                 }
37424 
37425                 If (((\DPAP == 0x02) && CondRefOf (\_SB.AAC0)))
37426                 {
37427                     If ((ASEM == Zero))
37428                     {
37429                         ASEM = One
37430                         ATRP = \_SB.AAC0 /* External reference */
37431                     }
37432 
37433                     If (CondRefOf (DA2P))
37434                     {
37435                         UID2 = DerefOf (DA2P [Zero])
37436                     }
37437 
37438                     If ((((IID0 == EID0) && (IID1 == EID1)) && ((IID2 == 
37439                         EID2) && (IID3 == EID3))))
37440                     {
37441                         If (~(STS1 & One))
37442                         {
37443                             If ((CAP1 & One))
37444                             {
37445                                 \_SB.AAC0 = 0x6E
37446                             }
37447                             Else
37448                             {
37449                                 \_SB.AAC0 = ATRP /* \_SB_.IETM.ATRP */
37450                             }
37451 
37452                             Notify (\_TZ.THM0, 0x81) // Information Change
37453                         }
37454 
37455                         Return (Arg3)
37456                     }
37457                 }
37458 
37459                 If (((\DPCP == One) && CondRefOf (\_SB.ACRT)))
37460                 {
37461                     If ((YSEM == Zero))
37462                     {
37463                         YSEM = One
37464                         YTRP = \_SB.ACRT /* External reference */
37465                     }
37466 
37467                     If (CondRefOf (DCSP))
37468                     {
37469                         UID2 = DerefOf (DCSP [Zero])
37470                     }
37471 
37472                     If ((((IID0 == EID0) && (IID1 == EID1)) && ((IID2 == 
37473                         EID2) && (IID3 == EID3))))
37474                     {
37475                         If (~(STS1 & One))
37476                         {
37477                             If ((CAP1 & One))
37478                             {
37479                                 \_SB.ACRT = 0xD2
37480                             }
37481                             Else
37482                             {
37483                                 \_SB.ACRT = YTRP /* \_SB_.IETM.YTRP */
37484                             }
37485 
37486                             Notify (\_TZ.THM0, 0x81) // Information Change
37487                             If ((\DPCP == One))
37488                             {
37489                                 CopyObject (TJMX, CRTT) /* External reference */
37490                             }
37491                         }
37492 
37493                         Return (Arg3)
37494                     }
37495                 }
37496 
37497                 Return (Arg3)
37498             }
37499 
37500             Method (DCFG, 0, NotSerialized)
37501             {
37502                 Return (\DCFE) /* External reference */
37503             }
37504 
37505             Name (ODVX, Package (0x14)
37506             {
37507                 Zero, 
37508                 Zero, 
37509                 Zero, 
37510                 Zero, 
37511                 Zero, 
37512                 Zero, 
37513                 Zero, 
37514                 Zero, 
37515                 Zero, 
37516                 Zero, 
37517                 Zero, 
37518                 Zero, 
37519                 Zero, 
37520                 Zero, 
37521                 Zero, 
37522                 Zero, 
37523                 Zero, 
37524                 Zero, 
37525                 Zero, 
37526                 Zero
37527             })
37528             Method (ODVP, 0, Serialized)
37529             {
37530                 ODVX [Zero] = \ODV0 /* External reference */
37531                 ODVX [One] = \ODV1 /* External reference */
37532                 ODVX [0x02] = \ODV2 /* External reference */
37533                 ODVX [0x03] = \ODV3 /* External reference */
37534                 ODVX [0x04] = \ODV4 /* External reference */
37535                 ODVX [0x05] = \ODV5 /* External reference */
37536                 ODVX [0x06] = \ODV6 /* External reference */
37537                 ODVX [Zero] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [Zero])
37538                 ODVX [One] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [One])
37539                 ODVX [0x02] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x02])
37540                 ODVX [0x03] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x03])
37541                 ODVX [0x04] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x04])
37542                 ODVX [0x05] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x05])
37543                 ODVX [0x06] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x06])
37544                 ODVX [0x07] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x07])
37545                 ODVX [0x08] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x08])
37546                 ODVX [0x09] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x09])
37547                 ODVX [0x0A] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x0A])
37548                 ODVX [0x0B] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x0B])
37549                 ODVX [0x0C] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x0C])
37550                 ODVX [0x0D] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x0D])
37551                 ODVX [0x0E] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x0E])
37552                 ODVX [0x0F] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x0F])
37553                 ODVX [0x10] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x10])
37554                 ODVX [0x11] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x11])
37555                 ODVX [0x12] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x12])
37556                 ODVX [0x13] = DerefOf (\_SB.PCI0.LPCB.EC.HKEY.OEMV [0x13])
37557                 Return (ODVX) /* \_SB_.IETM.ODVX */
37558             }
37559         }
37560     }
37561 
37562     Scope (\_SB.IETM)
37563     {
37564         Method (KTOC, 1, Serialized)
37565         {
37566             If ((Arg0 > 0x0AAC))
37567             {
37568                 Return (((Arg0 - 0x0AAC) / 0x0A))
37569             }
37570             Else
37571             {
37572                 Return (Zero)
37573             }
37574         }
37575 
37576         Method (CTOK, 1, Serialized)
37577         {
37578             Return (((Arg0 * 0x0A) + 0x0AAC))
37579         }
37580 
37581         Method (C10K, 1, Serialized)
37582         {
37583             Name (TMP1, Buffer (0x10)
37584             {
37585                  0x00                                             // .
37586             })
37587             CreateByteField (TMP1, Zero, TMPL)
37588             CreateByteField (TMP1, One, TMPH)
37589             Local0 = (Arg0 + 0x0AAC)
37590             TMPL = (Local0 & 0xFF)
37591             TMPH = ((Local0 & 0xFF00) >> 0x08)
37592             ToInteger (TMP1, Local1)
37593             Return (Local1)
37594         }
37595 
37596         Method (K10C, 1, Serialized)
37597         {
37598             If ((Arg0 > 0x0AAC))
37599             {
37600                 Return ((Arg0 - 0x0AAC))
37601             }
37602             Else
37603             {
37604                 Return (Zero)
37605             }
37606         }
37607     }
37608 
37609     Scope (\_SB.PCI0.B0D4)
37610     {
37611         Name (PFLG, Zero)
37612         Method (_STA, 0, NotSerialized)  // _STA: Status
37613         {
37614             If ((\SADE == One))
37615             {
37616                 Return (0x0F)
37617             }
37618             Else
37619             {
37620                 Return (Zero)
37621             }
37622         }
37623 
37624         OperationRegion (MBAR, SystemMemory, ((MHBR << 0x0F) + 0x5000), 0x1000)
37625         Field (MBAR, ByteAcc, NoLock, Preserve)
37626         {
37627             Offset (0x930), 
37628             PTDP,   15, 
37629             Offset (0x932), 
37630             PMIN,   15, 
37631             Offset (0x934), 
37632             PMAX,   15, 
37633             Offset (0x936), 
37634             TMAX,   7, 
37635             Offset (0x938), 
37636             PWRU,   4, 
37637             Offset (0x939), 
37638             EGYU,   5, 
37639             Offset (0x93A), 
37640             TIMU,   4, 
37641             Offset (0x958), 
37642             Offset (0x95C), 
37643             LPMS,   1, 
37644             CTNL,   2, 
37645             Offset (0x978), 
37646             PCTP,   8, 
37647             Offset (0x998), 
37648             RP0C,   8, 
37649             RP1C,   8, 
37650             RPNC,   8, 
37651             Offset (0xF3C), 
37652             TRAT,   8, 
37653             Offset (0xF40), 
37654             PTD1,   15, 
37655             Offset (0xF42), 
37656             TRA1,   8, 
37657             Offset (0xF44), 
37658             PMX1,   15, 
37659             Offset (0xF46), 
37660             PMN1,   15, 
37661             Offset (0xF48), 
37662             PTD2,   15, 
37663             Offset (0xF4A), 
37664             TRA2,   8, 
37665             Offset (0xF4C), 
37666             PMX2,   15, 
37667             Offset (0xF4E), 
37668             PMN2,   15, 
37669             Offset (0xF50), 
37670             CTCL,   2, 
37671                 ,   29, 
37672             CLCK,   1, 
37673             MNTR,   8
37674         }
37675 
37676         Name (XPCC, Zero)
37677         Method (PPCC, 0, Serialized)
37678         {
37679             If (((XPCC == Zero) && CondRefOf (\_SB.CBMI)))
37680             {
37681                 Switch (ToInteger (\_SB.CBMI))
37682                 {
37683                     Case (Zero)
37684                     {
37685                         If (((\_SB.CLVL >= One) && (\_SB.CLVL <= 0x03)))
37686                         {
37687                             CPL0 ()
37688                             XPCC = One
37689                         }
37690                     }
37691                     Case (One)
37692                     {
37693                         If (((\_SB.CLVL == 0x02) || (\_SB.CLVL == 0x03)))
37694                         {
37695                             CPL1 ()
37696                             XPCC = One
37697                         }
37698                     }
37699                     Case (0x02)
37700                     {
37701                         If ((\_SB.CLVL == 0x03))
37702                         {
37703                             CPL2 ()
37704                             XPCC = One
37705                         }
37706                     }
37707 
37708                 }
37709             }
37710 
37711             Return (NPCC) /* \_SB_.PCI0.B0D4.NPCC */
37712         }
37713 
37714         Name (NPCC, Package (0x03)
37715         {
37716             0x02, 
37717             Package (0x06)
37718             {
37719                 Zero, 
37720                 0x88B8, 
37721                 0xAFC8, 
37722                 0x6D60, 
37723                 0x7D00, 
37724                 0x03E8
37725             }, 
37726 
37727             Package (0x06)
37728             {
37729                 One, 
37730                 0xDBBA, 
37731                 0xDBBA, 
37732                 Zero, 
37733                 Zero, 
37734                 0x03E8
37735             }
37736         })
37737         Method (CPNU, 2, Serialized)
37738         {
37739             Name (CNVT, Zero)
37740             Name (PPUU, Zero)
37741             Name (RMDR, Zero)
37742             If ((PWRU == Zero))
37743             {
37744                 PPUU = One
37745             }
37746             Else
37747             {
37748                 PPUU = (PWRU-- << 0x02)
37749             }
37750 
37751             Divide (Arg0, PPUU, RMDR, CNVT) /* \_SB_.PCI0.B0D4.CPNU.CNVT */
37752             If ((Arg1 == Zero))
37753             {
37754                 Return (CNVT) /* \_SB_.PCI0.B0D4.CPNU.CNVT */
37755             }
37756             Else
37757             {
37758                 CNVT *= 0x03E8
37759                 RMDR *= 0x03E8
37760                 RMDR /= PPUU
37761                 CNVT += RMDR /* \_SB_.PCI0.B0D4.CPNU.RMDR */
37762                 Return (CNVT) /* \_SB_.PCI0.B0D4.CPNU.CNVT */
37763             }
37764         }
37765 
37766         Method (CPL0, 0, NotSerialized)
37767         {
37768             \_SB.PCI0.B0D4.NPCC [Zero] = 0x02
37769             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [Zero] = Zero
37770             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [One] = \MPL0 /* External reference */
37771             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x02] = CPNU (\_SB.PL10, One)
37772             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x03] = (\_SB.PLW0 * 0x03E8)
37773             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x04] = ((\_SB.PLW0 * 0x03E8
37774                 ) + 0x0FA0)
37775             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x05] = PPSZ /* External reference */
37776             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [Zero] = One
37777             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [One] = CPNU (\_SB.PL20, One)
37778             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x02] = CPNU (\_SB.PL20, One)
37779             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x03] = Zero
37780             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x04] = Zero
37781             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x05] = PPSZ /* External reference */
37782         }
37783 
37784         Method (CPL1, 0, NotSerialized)
37785         {
37786             \_SB.PCI0.B0D4.NPCC [Zero] = 0x02
37787             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [Zero] = Zero
37788             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [One] = \MPL1 /* External reference */
37789             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x02] = CPNU (\_SB.PL11, One)
37790             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x03] = (\_SB.PLW1 * 0x03E8)
37791             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x04] = ((\_SB.PLW1 * 0x03E8
37792                 ) + 0x0FA0)
37793             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x05] = PPSZ /* External reference */
37794             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [Zero] = One
37795             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [One] = CPNU (\_SB.PL21, One)
37796             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x02] = CPNU (\_SB.PL21, One)
37797             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x03] = Zero
37798             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x04] = Zero
37799             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x05] = PPSZ /* External reference */
37800         }
37801 
37802         Method (CPL2, 0, NotSerialized)
37803         {
37804             \_SB.PCI0.B0D4.NPCC [Zero] = 0x02
37805             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [Zero] = Zero
37806             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [One] = \MPL2 /* External reference */
37807             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x02] = CPNU (\_SB.PL12, One)
37808             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x03] = (\_SB.PLW2 * 0x03E8)
37809             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x04] = ((\_SB.PLW2 * 0x03E8
37810                 ) + 0x0FA0)
37811             DerefOf (\_SB.PCI0.B0D4.NPCC [One]) [0x05] = PPSZ /* External reference */
37812             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [Zero] = One
37813             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [One] = CPNU (\_SB.PL22, One)
37814             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x02] = CPNU (\_SB.PL22, One)
37815             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x03] = Zero
37816             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x04] = Zero
37817             DerefOf (\_SB.PCI0.B0D4.NPCC [0x02]) [0x05] = PPSZ /* External reference */
37818         }
37819 
37820         Name (LSTM, Zero)
37821         Name (_PPC, Zero)  // _PPC: Performance Present Capabilities
37822         Method (SPPC, 1, Serialized)
37823         {
37824             If (CondRefOf (\_SB.CPPC))
37825             {
37826                 \_SB.CPPC = Arg0
37827             }
37828 
37829             Switch (ToInteger (\TCNT))
37830             {
37831                 Case (0x10)
37832                 {
37833                     Notify (\_SB.PR00, 0x80) // Status Change
37834                     Notify (\_SB.PR01, 0x80) // Status Change
37835                     Notify (\_SB.PR02, 0x80) // Status Change
37836                     Notify (\_SB.PR03, 0x80) // Status Change
37837                     Notify (\_SB.PR04, 0x80) // Status Change
37838                     Notify (\_SB.PR05, 0x80) // Status Change
37839                     Notify (\_SB.PR06, 0x80) // Status Change
37840                     Notify (\_SB.PR07, 0x80) // Status Change
37841                     Notify (\_SB.PR08, 0x80) // Status Change
37842                     Notify (\_SB.PR09, 0x80) // Status Change
37843                     Notify (\_SB.PR10, 0x80) // Status Change
37844                     Notify (\_SB.PR11, 0x80) // Status Change
37845                     Notify (\_SB.PR12, 0x80) // Status Change
37846                     Notify (\_SB.PR13, 0x80) // Status Change
37847                     Notify (\_SB.PR14, 0x80) // Status Change
37848                     Notify (\_SB.PR15, 0x80) // Status Change
37849                 }
37850                 Case (0x0E)
37851                 {
37852                     Notify (\_SB.PR00, 0x80) // Status Change
37853                     Notify (\_SB.PR01, 0x80) // Status Change
37854                     Notify (\_SB.PR02, 0x80) // Status Change
37855                     Notify (\_SB.PR03, 0x80) // Status Change
37856                     Notify (\_SB.PR04, 0x80) // Status Change
37857                     Notify (\_SB.PR05, 0x80) // Status Change
37858                     Notify (\_SB.PR06, 0x80) // Status Change
37859                     Notify (\_SB.PR07, 0x80) // Status Change
37860                     Notify (\_SB.PR08, 0x80) // Status Change
37861                     Notify (\_SB.PR09, 0x80) // Status Change
37862                     Notify (\_SB.PR10, 0x80) // Status Change
37863                     Notify (\_SB.PR11, 0x80) // Status Change
37864                     Notify (\_SB.PR12, 0x80) // Status Change
37865                     Notify (\_SB.PR13, 0x80) // Status Change
37866                 }
37867                 Case (0x0C)
37868                 {
37869                     Notify (\_SB.PR00, 0x80) // Status Change
37870                     Notify (\_SB.PR01, 0x80) // Status Change
37871                     Notify (\_SB.PR02, 0x80) // Status Change
37872                     Notify (\_SB.PR03, 0x80) // Status Change
37873                     Notify (\_SB.PR04, 0x80) // Status Change
37874                     Notify (\_SB.PR05, 0x80) // Status Change
37875                     Notify (\_SB.PR06, 0x80) // Status Change
37876                     Notify (\_SB.PR07, 0x80) // Status Change
37877                     Notify (\_SB.PR08, 0x80) // Status Change
37878                     Notify (\_SB.PR09, 0x80) // Status Change
37879                     Notify (\_SB.PR10, 0x80) // Status Change
37880                     Notify (\_SB.PR11, 0x80) // Status Change
37881                 }
37882                 Case (0x0A)
37883                 {
37884                     Notify (\_SB.PR00, 0x80) // Status Change
37885                     Notify (\_SB.PR01, 0x80) // Status Change
37886                     Notify (\_SB.PR02, 0x80) // Status Change
37887                     Notify (\_SB.PR03, 0x80) // Status Change
37888                     Notify (\_SB.PR04, 0x80) // Status Change
37889                     Notify (\_SB.PR05, 0x80) // Status Change
37890                     Notify (\_SB.PR06, 0x80) // Status Change
37891                     Notify (\_SB.PR07, 0x80) // Status Change
37892                     Notify (\_SB.PR08, 0x80) // Status Change
37893                     Notify (\_SB.PR09, 0x80) // Status Change
37894                 }
37895                 Case (0x08)
37896                 {
37897                     Notify (\_SB.PR00, 0x80) // Status Change
37898                     Notify (\_SB.PR01, 0x80) // Status Change
37899                     Notify (\_SB.PR02, 0x80) // Status Change
37900                     Notify (\_SB.PR03, 0x80) // Status Change
37901                     Notify (\_SB.PR04, 0x80) // Status Change
37902                     Notify (\_SB.PR05, 0x80) // Status Change
37903                     Notify (\_SB.PR06, 0x80) // Status Change
37904                     Notify (\_SB.PR07, 0x80) // Status Change
37905                 }
37906                 Case (0x07)
37907                 {
37908                     Notify (\_SB.PR00, 0x80) // Status Change
37909                     Notify (\_SB.PR01, 0x80) // Status Change
37910                     Notify (\_SB.PR02, 0x80) // Status Change
37911                     Notify (\_SB.PR03, 0x80) // Status Change
37912                     Notify (\_SB.PR04, 0x80) // Status Change
37913                     Notify (\_SB.PR05, 0x80) // Status Change
37914                     Notify (\_SB.PR06, 0x80) // Status Change
37915                 }
37916                 Case (0x06)
37917                 {
37918                     Notify (\_SB.PR00, 0x80) // Status Change
37919                     Notify (\_SB.PR01, 0x80) // Status Change
37920                     Notify (\_SB.PR02, 0x80) // Status Change
37921                     Notify (\_SB.PR03, 0x80) // Status Change
37922                     Notify (\_SB.PR04, 0x80) // Status Change
37923                     Notify (\_SB.PR05, 0x80) // Status Change
37924                 }
37925                 Case (0x05)
37926                 {
37927                     Notify (\_SB.PR00, 0x80) // Status Change
37928                     Notify (\_SB.PR01, 0x80) // Status Change
37929                     Notify (\_SB.PR02, 0x80) // Status Change
37930                     Notify (\_SB.PR03, 0x80) // Status Change
37931                     Notify (\_SB.PR04, 0x80) // Status Change
37932                 }
37933                 Case (0x04)
37934                 {
37935                     Notify (\_SB.PR00, 0x80) // Status Change
37936                     Notify (\_SB.PR01, 0x80) // Status Change
37937                     Notify (\_SB.PR02, 0x80) // Status Change
37938                     Notify (\_SB.PR03, 0x80) // Status Change
37939                 }
37940                 Case (0x03)
37941                 {
37942                     Notify (\_SB.PR00, 0x80) // Status Change
37943                     Notify (\_SB.PR01, 0x80) // Status Change
37944                     Notify (\_SB.PR02, 0x80) // Status Change
37945                 }
37946                 Case (0x02)
37947                 {
37948                     Notify (\_SB.PR00, 0x80) // Status Change
37949                     Notify (\_SB.PR01, 0x80) // Status Change
37950                 }
37951                 Default
37952                 {
37953                     Notify (\_SB.PR00, 0x80) // Status Change
37954                 }
37955 
37956             }
37957         }
37958 
37959         Name (TLPO, Package (0x06)
37960         {
37961             One, 
37962             One, 
37963             Zero, 
37964             One, 
37965             One, 
37966             0x02
37967         })
37968         Method (CLPO, 0, NotSerialized)
37969         {
37970             TLPO [One] = LPOE /* External reference */
37971             If (CondRefOf (\_SB.PR00._PSS))
37972             {
37973                 If ((\_SB.OSCP & 0x0400))
37974                 {
37975                     Local1 = SizeOf (\_SB.PR00.TPSS)
37976                 }
37977                 Else
37978                 {
37979                     Local1 = SizeOf (\_SB.PR00.LPSS)
37980                 }
37981             }
37982             Else
37983             {
37984                 Local1 = Zero
37985             }
37986 
37987             If ((LPOP < Local1))
37988             {
37989                 TLPO [0x02] = LPOP /* External reference */
37990             }
37991             Else
37992             {
37993                 Local1--
37994                 TLPO [0x02] = Local1
37995             }
37996 
37997             TLPO [0x03] = LPOS /* External reference */
37998             TLPO [0x04] = LPOW /* External reference */
37999             TLPO [0x05] = LPER /* External reference */
38000             Return (TLPO) /* \_SB_.PCI0.B0D4.TLPO */
38001         }
38002 
38003         Method (SPUR, 1, NotSerialized)
38004         {
38005             If ((Arg0 <= \TCNT))
38006             {
38007                 If ((\_SB.PAGD._STA () == 0x0F))
38008                 {
38009                     \_SB.PAGD._PUR [One] = Arg0
38010                     Notify (\_SB.PAGD, 0x80) // Status Change
38011                 }
38012             }
38013         }
38014 
38015         Name (AEXL, Package (0x04)
38016         {
38017             "svchost.exe", 
38018             "dllhost.exe", 
38019             "smss.exe", 
38020             "WinSAT.exe"
38021         })
38022         Method (PCCC, 0, Serialized)
38023         {
38024             PCCX [Zero] = One
38025             Switch (ToInteger (CPNU (PTDP, Zero)))
38026             {
38027                 Case (0x39)
38028                 {
38029                     DerefOf (PCCX [One]) [Zero] = 0xA7F8
38030                     DerefOf (PCCX [One]) [One] = 0x00017318
38031                 }
38032                 Case (0x2F)
38033                 {
38034                     DerefOf (PCCX [One]) [Zero] = 0x9858
38035                     DerefOf (PCCX [One]) [One] = 0x00014C08
38036                 }
38037                 Case (0x25)
38038                 {
38039                     DerefOf (PCCX [One]) [Zero] = 0x7148
38040                     DerefOf (PCCX [One]) [One] = 0xD6D8
38041                 }
38042                 Case (0x19)
38043                 {
38044                     DerefOf (PCCX [One]) [Zero] = 0x3E80
38045                     DerefOf (PCCX [One]) [One] = 0x7D00
38046                 }
38047                 Case (0x0F)
38048                 {
38049                     DerefOf (PCCX [One]) [Zero] = 0x36B0
38050                     DerefOf (PCCX [One]) [One] = 0x7D00
38051                 }
38052                 Case (0x0B)
38053                 {
38054                     DerefOf (PCCX [One]) [Zero] = 0x36B0
38055                     DerefOf (PCCX [One]) [One] = 0x61A8
38056                 }
38057                 Default
38058                 {
38059                     DerefOf (PCCX [One]) [Zero] = 0xFF
38060                     DerefOf (PCCX [One]) [One] = 0xFF
38061                 }
38062 
38063             }
38064 
38065             Return (PCCX) /* \_SB_.PCI0.B0D4.PCCX */
38066         }
38067 
38068         Name (PCCX, Package (0x02)
38069         {
38070             0x80000000, 
38071             Package (0x02)
38072             {
38073                 0x80000000, 
38074                 0x80000000
38075             }
38076         })
38077         Name (KEFF, Package (0x1E)
38078         {
38079             Package (0x02)
38080             {
38081                 0x01BC, 
38082                 Zero
38083             }, 
38084 
38085             Package (0x02)
38086             {
38087                 0x01CF, 
38088                 0x27
38089             }, 
38090 
38091             Package (0x02)
38092             {
38093                 0x01E1, 
38094                 0x4B
38095             }, 
38096 
38097             Package (0x02)
38098             {
38099                 0x01F3, 
38100                 0x6C
38101             }, 
38102 
38103             Package (0x02)
38104             {
38105                 0x0206, 
38106                 0x8B
38107             }, 
38108 
38109             Package (0x02)
38110             {
38111                 0x0218, 
38112                 0xA8
38113             }, 
38114 
38115             Package (0x02)
38116             {
38117                 0x022A, 
38118                 0xC3
38119             }, 
38120 
38121             Package (0x02)
38122             {
38123                 0x023D, 
38124                 0xDD
38125             }, 
38126 
38127             Package (0x02)
38128             {
38129                 0x024F, 
38130                 0xF4
38131             }, 
38132 
38133             Package (0x02)
38134             {
38135                 0x0261, 
38136                 0x010B
38137             }, 
38138 
38139             Package (0x02)
38140             {
38141                 0x0274, 
38142                 0x011F
38143             }, 
38144 
38145             Package (0x02)
38146             {
38147                 0x032C, 
38148                 0x01BD
38149             }, 
38150 
38151             Package (0x02)
38152             {
38153                 0x03D7, 
38154                 0x0227
38155             }, 
38156 
38157             Package (0x02)
38158             {
38159                 0x048B, 
38160                 0x026D
38161             }, 
38162 
38163             Package (0x02)
38164             {
38165                 0x053E, 
38166                 0x02A1
38167             }, 
38168 
38169             Package (0x02)
38170             {
38171                 0x05F7, 
38172                 0x02C6
38173             }, 
38174 
38175             Package (0x02)
38176             {
38177                 0x06A8, 
38178                 0x02E6
38179             }, 
38180 
38181             Package (0x02)
38182             {
38183                 0x075D, 
38184                 0x02FF
38185             }, 
38186 
38187             Package (0x02)
38188             {
38189                 0x0818, 
38190                 0x0311
38191             }, 
38192 
38193             Package (0x02)
38194             {
38195                 0x08CF, 
38196                 0x0322
38197             }, 
38198 
38199             Package (0x02)
38200             {
38201                 0x179C, 
38202                 0x0381
38203             }, 
38204 
38205             Package (0x02)
38206             {
38207                 0x2DDC, 
38208                 0x039C
38209             }, 
38210 
38211             Package (0x02)
38212             {
38213                 0x44A8, 
38214                 0x039E
38215             }, 
38216 
38217             Package (0x02)
38218             {
38219                 0x5C35, 
38220                 0x0397
38221             }, 
38222 
38223             Package (0x02)
38224             {
38225                 0x747D, 
38226                 0x038D
38227             }, 
38228 
38229             Package (0x02)
38230             {
38231                 0x8D7F, 
38232                 0x0382
38233             }, 
38234 
38235             Package (0x02)
38236             {
38237                 0xA768, 
38238                 0x0376
38239             }, 
38240 
38241             Package (0x02)
38242             {
38243                 0xC23B, 
38244                 0x0369
38245             }, 
38246 
38247             Package (0x02)
38248             {
38249                 0xDE26, 
38250                 0x035A
38251             }, 
38252 
38253             Package (0x02)
38254             {
38255                 0xFB7C, 
38256                 0x034A
38257             }
38258         })
38259         Name (CEUP, Package (0x06)
38260         {
38261             0x80000000, 
38262             0x80000000, 
38263             0x80000000, 
38264             0x80000000, 
38265             0x80000000, 
38266             0x80000000
38267         })
38268         Method (_TMP, 0, Serialized)  // _TMP: Temperature
38269         {
38270             Return (\_TZ.THM0._TMP ())
38271         }
38272 
38273         Method (_DTI, 1, NotSerialized)  // _DTI: Device Temperature Indication
38274         {
38275             LSTM = Arg0
38276             Notify (\_SB.PCI0.B0D4, 0x91) // Device-Specific
38277         }
38278 
38279         Method (_NTT, 0, NotSerialized)  // _NTT: Notification Temperature Threshold
38280         {
38281             Return (0x0ADE)
38282         }
38283 
38284         Name (PTYP, Zero)
38285         Method (_PSS, 0, NotSerialized)  // _PSS: Performance Supported States
38286         {
38287             If (CondRefOf (\_SB.PR00._PSS))
38288             {
38289                 Return (\_SB.PR00._PSS ())
38290             }
38291             Else
38292             {
38293                 Return (Package (0x02)
38294                 {
38295                     Package (0x06)
38296                     {
38297                         Zero, 
38298                         Zero, 
38299                         Zero, 
38300                         Zero, 
38301                         Zero, 
38302                         Zero
38303                     }, 
38304 
38305                     Package (0x06)
38306                     {
38307                         Zero, 
38308                         Zero, 
38309                         Zero, 
38310                         Zero, 
38311                         Zero, 
38312                         Zero
38313                     }
38314                 })
38315             }
38316         }
38317 
38318         Method (_TSS, 0, NotSerialized)  // _TSS: Throttling Supported States
38319         {
38320             If (CondRefOf (\_SB.PR00._TSS))
38321             {
38322                 Return (\_SB.PR00._TSS ())
38323             }
38324             Else
38325             {
38326                 Return (Package (0x02)
38327                 {
38328                     Package (0x05)
38329                     {
38330                         Zero, 
38331                         Zero, 
38332                         Zero, 
38333                         Zero, 
38334                         Zero
38335                     }, 
38336 
38337                     Package (0x05)
38338                     {
38339                         Zero, 
38340                         Zero, 
38341                         Zero, 
38342                         Zero, 
38343                         Zero
38344                     }
38345                 })
38346             }
38347         }
38348 
38349         Method (_TPC, 0, NotSerialized)  // _TPC: Throttling Present Capabilities
38350         {
38351             If (CondRefOf (\_SB.PR00._TPC))
38352             {
38353                 Return (\_SB.PR00._TPC) /* External reference */
38354             }
38355             Else
38356             {
38357                 Return (Zero)
38358             }
38359         }
38360 
38361         Method (_PTC, 0, NotSerialized)  // _PTC: Processor Throttling Control
38362         {
38363             If ((CondRefOf (\PC00) && (\PC00 != 0x80000000)))
38364             {
38365                 If ((\PC00 & 0x04))
38366                 {
38367                     Return (Package (0x02)
38368                     {
38369                         ResourceTemplate ()
38370                         {
38371                             Register (FFixedHW, 
38372                                 0x00,               // Bit Width
38373                                 0x00,               // Bit Offset
38374                                 0x0000000000000000, // Address
38375                                 ,)
38376                         }, 
38377 
38378                         ResourceTemplate ()
38379                         {
38380                             Register (FFixedHW, 
38381                                 0x00,               // Bit Width
38382                                 0x00,               // Bit Offset
38383                                 0x0000000000000000, // Address
38384                                 ,)
38385                         }
38386                     })
38387                 }
38388                 Else
38389                 {
38390                     Return (Package (0x02)
38391                     {
38392                         ResourceTemplate ()
38393                         {
38394                             Register (SystemIO, 
38395                                 0x05,               // Bit Width
38396                                 0x00,               // Bit Offset
38397                                 0x0000000000001810, // Address
38398                                 ,)
38399                         }, 
38400 
38401                         ResourceTemplate ()
38402                         {
38403                             Register (SystemIO, 
38404                                 0x05,               // Bit Width
38405                                 0x00,               // Bit Offset
38406                                 0x0000000000001810, // Address
38407                                 ,)
38408                         }
38409                     })
38410                 }
38411             }
38412             Else
38413             {
38414                 Return (Package (0x02)
38415                 {
38416                     ResourceTemplate ()
38417                     {
38418                         Register (FFixedHW, 
38419                             0x00,               // Bit Width
38420                             0x00,               // Bit Offset
38421                             0x0000000000000000, // Address
38422                             ,)
38423                     }, 
38424 
38425                     ResourceTemplate ()
38426                     {
38427                         Register (FFixedHW, 
38428                             0x00,               // Bit Width
38429                             0x00,               // Bit Offset
38430                             0x0000000000000000, // Address
38431                             ,)
38432                     }
38433                 })
38434             }
38435         }
38436 
38437         Method (_TSD, 0, NotSerialized)  // _TSD: Throttling State Dependencies
38438         {
38439             If (CondRefOf (\_SB.PR00._TSD))
38440             {
38441                 Return (\_SB.PR00._TSD ())
38442             }
38443             Else
38444             {
38445                 Return (Package (0x02)
38446                 {
38447                     Package (0x05)
38448                     {
38449                         0x05, 
38450                         Zero, 
38451                         Zero, 
38452                         Zero, 
38453                         Zero
38454                     }, 
38455 
38456                     Package (0x05)
38457                     {
38458                         0x05, 
38459                         Zero, 
38460                         Zero, 
38461                         Zero, 
38462                         Zero
38463                     }
38464                 })
38465             }
38466         }
38467 
38468         Method (_TDL, 0, NotSerialized)  // _TDL: T-State Depth Limit
38469         {
38470             If ((CondRefOf (\_SB.PR00._TSS) && CondRefOf (\_SB.CFGD)))
38471             {
38472                 If ((\_SB.CFGD & 0x2000))
38473                 {
38474                     Return ((SizeOf (\_SB.PR00.TSMF) - One))
38475                 }
38476                 Else
38477                 {
38478                     Return ((SizeOf (\_SB.PR00.TSMC) - One))
38479                 }
38480             }
38481             Else
38482             {
38483                 Return (Zero)
38484             }
38485         }
38486 
38487         Method (_PDL, 0, NotSerialized)  // _PDL: P-state Depth Limit
38488         {
38489             If (CondRefOf (\_SB.PR00._PSS))
38490             {
38491                 If ((\_SB.OSCP & 0x0400))
38492                 {
38493                     Return ((SizeOf (\_SB.PR00.TPSS) - One))
38494                 }
38495                 Else
38496                 {
38497                     Return ((SizeOf (\_SB.PR00.LPSS) - One))
38498                 }
38499             }
38500             Else
38501             {
38502                 Return (Zero)
38503             }
38504         }
38505 
38506         Method (_TSP, 0, Serialized)  // _TSP: Thermal Sampling Period
38507         {
38508             Return (\CPUS) /* External reference */
38509         }
38510 
38511         Method (_PSV, 0, Serialized)  // _PSV: Passive Temperature
38512         {
38513             Return (\_SB.IETM.CTOK (\PTMC))
38514         }
38515 
38516         Method (_CRT, 0, Serialized)  // _CRT: Critical Temperature
38517         {
38518             If ((\SACT == Zero))
38519             {
38520                 Return (0xFFFFFFFF)
38521             }
38522 
38523             Return (\_SB.IETM.CTOK (\SACT))
38524         }
38525 
38526         Method (_CR3, 0, Serialized)  // _CR3: Warm/Standby Temperature
38527         {
38528             If ((\SAC3 == Zero))
38529             {
38530                 Return (0xFFFFFFFF)
38531             }
38532 
38533             Return (\_SB.IETM.CTOK (\SAC3))
38534         }
38535 
38536         Method (_HOT, 0, Serialized)  // _HOT: Hot Temperature
38537         {
38538             If ((\SAHT == Zero))
38539             {
38540                 Return (0xFFFFFFFF)
38541             }
38542 
38543             Return (\_SB.IETM.CTOK (\SAHT))
38544         }
38545     }
38546 
38547     Scope (\_SB.IETM)
38548     {
38549         Name (CTSP, Package (0x01)
38550         {
38551             ToUUID ("e145970a-e4c1-4d73-900e-c9c5a69dd067")
38552         })
38553     }
38554 
38555     Scope (\_SB.PCI0.B0D4)
38556     {
38557         Method (TDPL, 0, Serialized)
38558         {
38559             Name (AAAA, Zero)
38560             Name (BBBB, Zero)
38561             Name (CCCC, Zero)
38562             Local0 = CTNL /* \_SB_.PCI0.B0D4.CTNL */
38563             If (((Local0 == One) || (Local0 == 0x02)))
38564             {
38565                 Local0 = \_SB.CLVL /* External reference */
38566             }
38567             Else
38568             {
38569                 Return (Package (0x01)
38570                 {
38571                     Zero
38572                 })
38573             }
38574 
38575             If ((CLCK == One))
38576             {
38577                 Local0 = One
38578             }
38579 
38580             AAAA = CPNU (\_SB.PL10, One)
38581             BBBB = CPNU (\_SB.PL11, One)
38582             CCCC = CPNU (\_SB.PL12, One)
38583             Name (TMP1, Package (0x01)
38584             {
38585                 Package (0x05)
38586                 {
38587                     0x80000000, 
38588                     0x80000000, 
38589                     0x80000000, 
38590                     0x80000000, 
38591                     0x80000000
38592                 }
38593             })
38594             Name (TMP2, Package (0x02)
38595             {
38596                 Package (0x05)
38597                 {
38598                     0x80000000, 
38599                     0x80000000, 
38600                     0x80000000, 
38601                     0x80000000, 
38602                     0x80000000
38603                 }, 
38604 
38605                 Package (0x05)
38606                 {
38607                     0x80000000, 
38608                     0x80000000, 
38609                     0x80000000, 
38610                     0x80000000, 
38611                     0x80000000
38612                 }
38613             })
38614             Name (TMP3, Package (0x03)
38615             {
38616                 Package (0x05)
38617                 {
38618                     0x80000000, 
38619                     0x80000000, 
38620                     0x80000000, 
38621                     0x80000000, 
38622                     0x80000000
38623                 }, 
38624 
38625                 Package (0x05)
38626                 {
38627                     0x80000000, 
38628                     0x80000000, 
38629                     0x80000000, 
38630                     0x80000000, 
38631                     0x80000000
38632                 }, 
38633 
38634                 Package (0x05)
38635                 {
38636                     0x80000000, 
38637                     0x80000000, 
38638                     0x80000000, 
38639                     0x80000000, 
38640                     0x80000000
38641                 }
38642             })
38643             If ((Local0 == 0x03))
38644             {
38645                 If ((AAAA > BBBB))
38646                 {
38647                     If ((AAAA > CCCC))
38648                     {
38649                         If ((BBBB > CCCC))
38650                         {
38651                             Local3 = Zero
38652                             LEV0 = Zero
38653                             Local4 = One
38654                             LEV1 = One
38655                             Local5 = 0x02
38656                             LEV2 = 0x02
38657                         }
38658                         Else
38659                         {
38660                             Local3 = Zero
38661                             LEV0 = Zero
38662                             Local5 = One
38663                             LEV1 = 0x02
38664                             Local4 = 0x02
38665                             LEV2 = One
38666                         }
38667                     }
38668                     Else
38669                     {
38670                         Local5 = Zero
38671                         LEV0 = 0x02
38672                         Local3 = One
38673                         LEV1 = Zero
38674                         Local4 = 0x02
38675                         LEV2 = One
38676                     }
38677                 }
38678                 ElseIf ((BBBB > CCCC))
38679                 {
38680                     If ((AAAA > CCCC))
38681                     {
38682                         Local4 = Zero
38683                         LEV0 = One
38684                         Local3 = One
38685                         LEV1 = Zero
38686                         Local5 = 0x02
38687                         LEV2 = 0x02
38688                     }
38689                     Else
38690                     {
38691                         Local4 = Zero
38692                         LEV0 = One
38693                         Local5 = One
38694                         LEV1 = 0x02
38695                         Local3 = 0x02
38696                         LEV2 = Zero
38697                     }
38698                 }
38699                 Else
38700                 {
38701                     Local5 = Zero
38702                     LEV0 = 0x02
38703                     Local4 = One
38704                     LEV1 = One
38705                     Local3 = 0x02
38706                     LEV2 = Zero
38707                 }
38708 
38709                 Local1 = (\_SB.TAR0 + One)
38710                 Local2 = (Local1 * 0x64)
38711                 DerefOf (TMP3 [Local3]) [Zero] = AAAA /* \_SB_.PCI0.B0D4.TDPL.AAAA */
38712                 DerefOf (TMP3 [Local3]) [One] = Local2
38713                 DerefOf (TMP3 [Local3]) [0x02] = \_SB.CTC0 /* External reference */
38714                 DerefOf (TMP3 [Local3]) [0x03] = Local1
38715                 DerefOf (TMP3 [Local3]) [0x04] = Zero
38716                 Local1 = (\_SB.TAR1 + One)
38717                 Local2 = (Local1 * 0x64)
38718                 DerefOf (TMP3 [Local4]) [Zero] = BBBB /* \_SB_.PCI0.B0D4.TDPL.BBBB */
38719                 DerefOf (TMP3 [Local4]) [One] = Local2
38720                 DerefOf (TMP3 [Local4]) [0x02] = \_SB.CTC1 /* External reference */
38721                 DerefOf (TMP3 [Local4]) [0x03] = Local1
38722                 DerefOf (TMP3 [Local4]) [0x04] = Zero
38723                 Local1 = (\_SB.TAR2 + One)
38724                 Local2 = (Local1 * 0x64)
38725                 DerefOf (TMP3 [Local5]) [Zero] = CCCC /* \_SB_.PCI0.B0D4.TDPL.CCCC */
38726                 DerefOf (TMP3 [Local5]) [One] = Local2
38727                 DerefOf (TMP3 [Local5]) [0x02] = \_SB.CTC2 /* External reference */
38728                 DerefOf (TMP3 [Local5]) [0x03] = Local1
38729                 DerefOf (TMP3 [Local5]) [0x04] = Zero
38730                 Return (TMP3) /* \_SB_.PCI0.B0D4.TDPL.TMP3 */
38731             }
38732 
38733             If ((Local0 == 0x02))
38734             {
38735                 If ((AAAA > BBBB))
38736                 {
38737                     Local3 = Zero
38738                     Local4 = One
38739                     LEV0 = Zero
38740                     LEV1 = One
38741                     LEV2 = Zero
38742                 }
38743                 Else
38744                 {
38745                     Local4 = Zero
38746                     Local3 = One
38747                     LEV0 = One
38748                     LEV1 = Zero
38749                     LEV2 = Zero
38750                 }
38751 
38752                 Local1 = (\_SB.TAR0 + One)
38753                 Local2 = (Local1 * 0x64)
38754                 DerefOf (TMP2 [Local3]) [Zero] = AAAA /* \_SB_.PCI0.B0D4.TDPL.AAAA */
38755                 DerefOf (TMP2 [Local3]) [One] = Local2
38756                 DerefOf (TMP2 [Local3]) [0x02] = \_SB.CTC0 /* External reference */
38757                 DerefOf (TMP2 [Local3]) [0x03] = Local1
38758                 DerefOf (TMP2 [Local3]) [0x04] = Zero
38759                 Local1 = (\_SB.TAR1 + One)
38760                 Local2 = (Local1 * 0x64)
38761                 DerefOf (TMP2 [Local4]) [Zero] = BBBB /* \_SB_.PCI0.B0D4.TDPL.BBBB */
38762                 DerefOf (TMP2 [Local4]) [One] = Local2
38763                 DerefOf (TMP2 [Local4]) [0x02] = \_SB.CTC1 /* External reference */
38764                 DerefOf (TMP2 [Local4]) [0x03] = Local1
38765                 DerefOf (TMP2 [Local4]) [0x04] = Zero
38766                 Return (TMP2) /* \_SB_.PCI0.B0D4.TDPL.TMP2 */
38767             }
38768 
38769             If ((Local0 == One))
38770             {
38771                 Switch (ToInteger (\_SB.CBMI))
38772                 {
38773                     Case (Zero)
38774                     {
38775                         Local1 = (\_SB.TAR0 + One)
38776                         Local2 = (Local1 * 0x64)
38777                         DerefOf (TMP1 [Zero]) [Zero] = AAAA /* \_SB_.PCI0.B0D4.TDPL.AAAA */
38778                         DerefOf (TMP1 [Zero]) [One] = Local2
38779                         DerefOf (TMP1 [Zero]) [0x02] = \_SB.CTC0 /* External reference */
38780                         DerefOf (TMP1 [Zero]) [0x03] = Local1
38781                         DerefOf (TMP1 [Zero]) [0x04] = Zero
38782                         LEV0 = Zero
38783                         LEV1 = Zero
38784                         LEV2 = Zero
38785                     }
38786                     Case (One)
38787                     {
38788                         Local1 = (\_SB.TAR1 + One)
38789                         Local2 = (Local1 * 0x64)
38790                         DerefOf (TMP1 [Zero]) [Zero] = BBBB /* \_SB_.PCI0.B0D4.TDPL.BBBB */
38791                         DerefOf (TMP1 [Zero]) [One] = Local2
38792                         DerefOf (TMP1 [Zero]) [0x02] = \_SB.CTC1 /* External reference */
38793                         DerefOf (TMP1 [Zero]) [0x03] = Local1
38794                         DerefOf (TMP1 [Zero]) [0x04] = Zero
38795                         LEV0 = One
38796                         LEV1 = One
38797                         LEV2 = One
38798                     }
38799                     Case (0x02)
38800                     {
38801                         Local1 = (\_SB.TAR2 + One)
38802                         Local2 = (Local1 * 0x64)
38803                         DerefOf (TMP1 [Zero]) [Zero] = CCCC /* \_SB_.PCI0.B0D4.TDPL.CCCC */
38804                         DerefOf (TMP1 [Zero]) [One] = Local2
38805                         DerefOf (TMP1 [Zero]) [0x02] = \_SB.CTC2 /* External reference */
38806                         DerefOf (TMP1 [Zero]) [0x03] = Local1
38807                         DerefOf (TMP1 [Zero]) [0x04] = Zero
38808                         LEV0 = 0x02
38809                         LEV1 = 0x02
38810                         LEV2 = 0x02
38811                     }
38812 
38813                 }
38814 
38815                 Return (TMP1) /* \_SB_.PCI0.B0D4.TDPL.TMP1 */
38816             }
38817 
38818             Return (Zero)
38819         }
38820 
38821         Name (MAXT, Zero)
38822         Method (TDPC, 0, NotSerialized)
38823         {
38824             Return (MAXT) /* \_SB_.PCI0.B0D4.MAXT */
38825         }
38826 
38827         Name (LEV0, Zero)
38828         Name (LEV1, Zero)
38829         Name (LEV2, Zero)
38830         Method (STDP, 1, Serialized)
38831         {
38832             If ((Arg0 >= \_SB.CLVL))
38833             {
38834                 Return (Zero)
38835             }
38836 
38837             Switch (ToInteger (Arg0))
38838             {
38839                 Case (Zero)
38840                 {
38841                     Local0 = LEV0 /* \_SB_.PCI0.B0D4.LEV0 */
38842                 }
38843                 Case (One)
38844                 {
38845                     Local0 = LEV1 /* \_SB_.PCI0.B0D4.LEV1 */
38846                 }
38847                 Case (0x02)
38848                 {
38849                     Local0 = LEV2 /* \_SB_.PCI0.B0D4.LEV2 */
38850                 }
38851 
38852             }
38853 
38854             Switch (ToInteger (Local0))
38855             {
38856                 Case (Zero)
38857                 {
38858                     CPL0 ()
38859                 }
38860                 Case (One)
38861                 {
38862                     CPL1 ()
38863                 }
38864                 Case (0x02)
38865                 {
38866                     CPL2 ()
38867                 }
38868 
38869             }
38870 
38871             Notify (\_SB.PCI0.B0D4, 0x83) // Device-Specific Change
38872         }
38873     }
38874 
38875     Scope (\_SB.PCI0.LPCB.EC)
38876     {
38877         Device (SEN1)
38878         {
38879             Name (_HID, EisaId ("INT3403") /* DPTF Temperature Sensor */)  // _HID: Hardware ID
38880             Name (_UID, "SEN1")  // _UID: Unique ID
38881             Name (_STR, Unicode ("Sensor 1 CPU FIN Remote4 S8"))  // _STR: Description String
38882             Name (PTYP, 0x03)
38883             Name (CTYP, Zero)
38884             Name (PFLG, Zero)
38885             Method (_STA, 0, NotSerialized)  // _STA: Status
38886             {
38887                 If ((\S1DE == One))
38888                 {
38889                     Return (0x0F)
38890                 }
38891                 Else
38892                 {
38893                     Return (Zero)
38894                 }
38895             }
38896 
38897             Method (_TMP, 0, Serialized)  // _TMP: Temperature
38898             {
38899                 Local0 = \GTST ()
38900                 Local1 = \_TZ._C2K (Local0)
38901                 Return (Local1)
38902             }
38903 
38904             Name (PATC, Zero)
38905             Name (GTSH, 0x14)
38906             Name (LSTM, Zero)
38907             Method (_DTI, 1, NotSerialized)  // _DTI: Device Temperature Indication
38908             {
38909                 LSTM = Arg0
38910                 Notify (\_SB.PCI0.LPCB.EC.SEN1, 0x91) // Device-Specific
38911             }
38912 
38913             Method (_NTT, 0, NotSerialized)  // _NTT: Notification Temperature Threshold
38914             {
38915                 Return (0x0ADE)
38916             }
38917 
38918             Method (_TSP, 0, Serialized)  // _TSP: Thermal Sampling Period
38919             {
38920                 Return (\SSP1) /* External reference */
38921             }
38922 
38923             Method (_PSV, 0, Serialized)  // _PSV: Passive Temperature
38924             {
38925                 Return (\_SB.IETM.CTOK (\S1PT))
38926             }
38927 
38928             Method (_CRT, 0, Serialized)  // _CRT: Critical Temperature
38929             {
38930                 If ((\S1CT == Zero))
38931                 {
38932                     Return (0xFFFFFFFF)
38933                 }
38934 
38935                 Return (\_SB.IETM.CTOK (\S1CT))
38936             }
38937 
38938             Method (_CR3, 0, Serialized)  // _CR3: Warm/Standby Temperature
38939             {
38940                 If ((\S1S3 == Zero))
38941                 {
38942                     Return (0xFFFFFFFF)
38943                 }
38944 
38945                 Return (\_SB.IETM.CTOK (\S1S3))
38946             }
38947 
38948             Method (_HOT, 0, Serialized)  // _HOT: Hot Temperature
38949             {
38950                 If ((\S1HT == Zero))
38951                 {
38952                     Return (0xFFFFFFFF)
38953                 }
38954 
38955                 Return (\_SB.IETM.CTOK (\S1HT))
38956             }
38957         }
38958     }
38959 
38960     Scope (\_SB.IETM)
38961     {
38962         Name (TRT0, Package (0x01)
38963         {
38964             Package (0x08)
38965             {
38966                 \_SB.PCI0.B0D4, 
38967                 \_SB.PCI0.B0D4, 
38968                 0x12, 
38969                 0x32, 
38970                 Zero, 
38971                 Zero, 
38972                 Zero, 
38973                 Zero
38974             }
38975         })
38976         Method (TRTR, 0, NotSerialized)
38977         {
38978             Return (\TRTV) /* External reference */
38979         }
38980 
38981         Method (_TRT, 0, NotSerialized)  // _TRT: Thermal Relationship Table
38982         {
38983             Return (TRT0) /* \_SB_.IETM.TRT0 */
38984         }
38985     }
38986 
38987     Scope (\_SB.IETM)
38988     {
38989         Name (PTTL, 0x14)
38990         Name (PSVT, Package (0x03)
38991         {
38992             0x02, 
38993             Package (0x0C)
38994             {
38995                 \_SB.PCI0.B0D4, 
38996                 \_SB.PCI0.B0D4, 
38997                 0x02, 
38998                 0x05, 
38999                 0x0E94, 
39000                 Zero, 
39001                 0x00010000, 
39002                 "MIN", 
39003                 0x7D, 
39004                 0x0A, 
39005                 0x0190, 
39006                 Zero
39007             }, 
39008 
39009             Package (0x0C)
39010             {
39011                 \_SB.PCI0.B0D4, 
39012                 \_SB.PCI0.LPCB.EC.SEN1, 
39013                 One, 
39014                 0x0A, 
39015                 0x0E8A, 
39016                 0x0E, 
39017                 0x00010000, 
39018                 "MIN", 
39019                 0x01F4, 
39020                 0x0A, 
39021                 0x14, 
39022                 Zero
39023             }
39024         })
39025     }
39026 
39027     Scope (\_SB.IETM)
39028     {
39029         Name (DP2P, Package (0x01)
39030         {
39031             ToUUID ("9e04115a-ae87-4d1c-9500-0f3e340bfe75")
39032         })
39033         Name (DPSP, Package (0x01)
39034         {
39035             ToUUID ("42a441d6-ae6a-462b-a84b-4a8ce79027d3")
39036         })
39037         Name (DASP, Package (0x01)
39038         {
39039             ToUUID ("3a95c389-e4b8-4629-a526-c52c88626bae")
39040         })
39041         Name (DA2P, Package (0x01)
39042         {
39043             ToUUID ("0e56fab6-bdfc-4e8c-8246-40ecfd4d74ea")
39044         })
39045         Name (DCSP, Package (0x01)
39046         {
39047             ToUUID ("97c68ae7-15fa-499c-b8c9-5da81d606e0a")
39048         })
39049         Name (RFIP, Package (0x01)
39050         {
39051             ToUUID ("c4ce1849-243a-49f3-b8d5-f97002f38e6a")
39052         })
39053         Name (POBP, Package (0x01)
39054         {
39055             ToUUID ("f5a35014-c209-46a4-993a-eb56de7530a1")
39056         })
39057         Name (DAPP, Package (0x01)
39058         {
39059             ToUUID ("63be270f-1c11-48fd-a6f7-3af253ff3e2d")
39060         })
39061         Name (DVSP, Package (0x01)
39062         {
39063             ToUUID ("6ed722a7-9240-48a5-b479-31eef723d7cf")
39064         })
39065         Name (DPID, Package (0x01)
39066         {
39067             ToUUID ("42496e14-bc1b-46e8-a798-ca915464426f")
39068         })
39069     }
39070 
39071     Scope (\_SB.IETM)
39072     {
39073         Name (BDV1, Package (0x01)
39074         {
39075             Buffer (0x017F)
39076             {
39077                 /* 0000 */  0xE5, 0x1F, 0x94, 0x00, 0x00, 0x00, 0x00, 0x02,  // ........
39078                 /* 0008 */  0x00, 0x00, 0x00, 0x40, 0x67, 0x64, 0x64, 0x76,  // ...@gddv
39079                 /* 0010 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
39080                 /* 0018 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
39081                 /* 0020 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
39082                 /* 0028 */  0x00, 0x00, 0x00, 0x00, 0x4F, 0x45, 0x4D, 0x20,  // ....OEM 
39083                 /* 0030 */  0x45, 0x6D, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64,  // Embedded
39084                 /* 0038 */  0x20, 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x75,  //  DataVau
39085                 /* 0040 */  0x6C, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // lt......
39086                 /* 0048 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
39087                 /* 0050 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
39088                 /* 0058 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
39089                 /* 0060 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
39090                 /* 0068 */  0x00, 0x00, 0x00, 0x00, 0x21, 0x27, 0x73, 0xE6,  // ....!'s.
39091                 /* 0070 */  0x10, 0x52, 0x5C, 0xAC, 0x87, 0xA8, 0x4E, 0xC2,  // .R\...N.
39092                 /* 0078 */  0x61, 0x22, 0xB7, 0x21, 0xF4, 0xEA, 0x60, 0xC1,  // a".!..`.
39093                 /* 0080 */  0x99, 0xBB, 0xA8, 0x9F, 0xA6, 0x6B, 0x0B, 0x73,  // .....k.s
39094                 /* 0088 */  0xE1, 0x42, 0xC0, 0x4F, 0xEB, 0x00, 0x00, 0x00,  // .B.O....
39095                 /* 0090 */  0x52, 0x45, 0x50, 0x4F, 0x5D, 0x00, 0x00, 0x00,  // REPO]...
39096                 /* 0098 */  0x01, 0x94, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
39097                 /* 00A0 */  0x00, 0x00, 0x72, 0x87, 0xCD, 0xFF, 0x6D, 0x24,  // ..r...m$
39098                 /* 00A8 */  0x47, 0xDB, 0x3D, 0x24, 0x92, 0xB4, 0x16, 0x6F,  // G.=$...o
39099                 /* 00B0 */  0x45, 0xD8, 0xC3, 0xF5, 0x66, 0x14, 0x9F, 0x22,  // E...f.."
39100                 /* 00B8 */  0xD7, 0xF7, 0xDE, 0x67, 0x90, 0x9A, 0xA2, 0x0D,  // ...g....
39101                 /* 00C0 */  0x39, 0x25, 0xAD, 0xC3, 0x1A, 0xAD, 0x52, 0x0B,  // 9%....R.
39102                 /* 00C8 */  0x75, 0x38, 0xE1, 0xA4, 0x14, 0x43, 0x9C, 0xF1,  // u8...C..
39103                 /* 00D0 */  0x7A, 0xD3, 0x23, 0x3E, 0x0C, 0xFD, 0x9C, 0xBB,  // z.#>....
39104                 /* 00D8 */  0x48, 0x8A, 0x0C, 0x3A, 0x02, 0xFF, 0x4B, 0x8D,  // H..:..K.
39105                 /* 00E0 */  0xC0, 0x54, 0x72, 0x0C, 0x61, 0xE9, 0x8A, 0x92,  // .Tr.a...
39106                 /* 00E8 */  0x65, 0x6D, 0xFB, 0x84, 0x3B, 0x27, 0xE6, 0x18,  // em..;'..
39107                 /* 00F0 */  0xDA, 0x84, 0x22, 0xC5, 0x23, 0xE7, 0x49, 0x75,  // ..".#.Iu
39108                 /* 00F8 */  0xA1, 0x99, 0xC3, 0x7E, 0x71, 0x2C, 0x02, 0xCC,  // ...~q,..
39109                 /* 0100 */  0x76, 0x57, 0x44, 0xC6, 0x05, 0xB7, 0xEF, 0x65,  // vWD....e
39110                 /* 0108 */  0xDA, 0x69, 0x05, 0x5B, 0x43, 0x1F, 0x9E, 0x9B,  // .i.[C...
39111                 /* 0110 */  0x04, 0xF8, 0x02, 0xB5, 0x37, 0x7F, 0x63, 0xDC,  // ....7.c.
39112                 /* 0118 */  0xD9, 0x38, 0xA6, 0xB6, 0x43, 0x1F, 0x4D, 0x94,  // .8..C.M.
39113                 /* 0120 */  0x8C, 0xF3, 0xDE, 0x9E, 0x39, 0x6D, 0xF0, 0x25,  // ....9m.%
39114                 /* 0128 */  0x53, 0xE9, 0x37, 0x09, 0x7D, 0x18, 0x8A, 0x76,  // S.7.}..v
39115                 /* 0130 */  0x00, 0x78, 0x70, 0x41, 0x58, 0xF7, 0x5C, 0x92,  // .xpAX.\.
39116                 /* 0138 */  0xD1, 0xD4, 0xAD, 0xF7, 0xE4, 0xDC, 0xB0, 0x80,  // ........
39117                 /* 0140 */  0x97, 0x51, 0xE8, 0x2F, 0x99, 0x0F, 0x54, 0xB6,  // .Q./..T.
39118                 /* 0148 */  0xB7, 0x9C, 0x8E, 0x3F, 0xE5, 0xE5, 0x71, 0xF5,  // ...?..q.
39119                 /* 0150 */  0x08, 0xB0, 0xED, 0x11, 0x3A, 0xBD, 0xB2, 0x52,  // ....:..R
39120                 /* 0158 */  0x2A, 0x0B, 0x55, 0x39, 0xE1, 0x26, 0x70, 0x46,  // *.U9.&pF
39121                 /* 0160 */  0xF8, 0x75, 0x3E, 0x4B, 0x5A, 0x87, 0x7B, 0x63,  // .u>KZ.{c
39122                 /* 0168 */  0x03, 0x3A, 0xEB, 0xB6, 0x70, 0xEC, 0xCC, 0x83,  // .:..p...
39123                 /* 0170 */  0x34, 0xD4, 0xF9, 0xD6, 0x81, 0x60, 0xAB, 0xC9,  // 4....`..
39124                 /* 0178 */  0x29, 0x0C, 0xEB, 0xC6, 0x62, 0x83, 0x00         // )...b..
39125             }
39126         })
39127         Method (GDDV, 0, Serialized)
39128         {
39129             If (CondRefOf (\_SB.IETM.GBDV))
39130             {
39131                 Return (\_SB.IETM.GBDV ())
39132             }
39133 
39134             Return (BDV1) /* \_SB_.IETM.BDV1 */
39135         }
39136 
39137         If (((PLID == 0x14) || (PLID == 0x15)))
39138         {
39139             Method (IMOK, 1, NotSerialized)
39140             {
39141                 ADBG ("IMOK")
39142                 ADBG (Arg0)
39143                 Return (Arg0)
39144             }
39145         }
39146     }
39147 
39148     OperationRegion (SANV, SystemMemory, 0x5FB31018, 0x01F4)
39149     Field (SANV, AnyAcc, Lock, Preserve)
39150     {
39151         ASLB,   32, 
39152         IMON,   8, 
39153         IGDS,   8, 
39154         IBTT,   8, 
39155         IPAT,   8, 
39156         IPSC,   8, 
39157         IBIA,   8, 
39158         ISSC,   8, 
39159         IDMS,   8, 
39160         IF1E,   8, 
39161         HVCO,   8, 
39162         GSMI,   8, 
39163         PAVP,   8, 
39164         CADL,   8, 
39165         CSTE,   16, 
39166         NSTE,   16, 
39167         NDID,   8, 
39168         DID1,   32, 
39169         DID2,   32, 
39170         DID3,   32, 
39171         DID4,   32, 
39172         DID5,   32, 
39173         DID6,   32, 
39174         DID7,   32, 
39175         DID8,   32, 
39176         DID9,   32, 
39177         DIDA,   32, 
39178         DIDB,   32, 
39179         DIDC,   32, 
39180         DIDD,   32, 
39181         DIDE,   32, 
39182         DIDF,   32, 
39183         DIDX,   32, 
39184         NXD1,   32, 
39185         NXD2,   32, 
39186         NXD3,   32, 
39187         NXD4,   32, 
39188         NXD5,   32, 
39189         NXD6,   32, 
39190         NXD7,   32, 
39191         NXD8,   32, 
39192         NXDX,   32, 
39193         LIDS,   8, 
39194         KSV0,   32, 
39195         KSV1,   8, 
39196         BRTL,   8, 
39197         ALSE,   8, 
39198         ALAF,   8, 
39199         LLOW,   8, 
39200         LHIH,   8, 
39201         ALFP,   8, 
39202         IPTP,   8, 
39203         EDPV,   8, 
39204         SGMD,   8, 
39205         SGFL,   8, 
39206         SGGP,   8, 
39207         HRE0,   8, 
39208         HRG0,   32, 
39209         HRA0,   8, 
39210         PWE0,   8, 
39211         PWG0,   32, 
39212         PWA0,   8, 
39213         P1GP,   8, 
39214         HRE1,   8, 
39215         HRG1,   32, 
39216         HRA1,   8, 
39217         PWE1,   8, 
39218         PWG1,   32, 
39219         PWA1,   8, 
39220         P2GP,   8, 
39221         HRE2,   8, 
39222         HRG2,   32, 
39223         HRA2,   8, 
39224         PWE2,   8, 
39225         PWG2,   32, 
39226         PWA2,   8, 
39227         DLPW,   16, 
39228         DLHR,   16, 
39229         EECP,   8, 
39230         XBAS,   32, 
39231         GBAS,   16, 
39232         NVGA,   32, 
39233         NVHA,   32, 
39234         AMDA,   32, 
39235         LTRX,   8, 
39236         OBFX,   8, 
39237         LTRY,   8, 
39238         OBFY,   8, 
39239         LTRZ,   8, 
39240         OBFZ,   8, 
39241         LTRW,   8, 
39242         OBFA,   8, 
39243         SMSL,   16, 
39244         SNSL,   16, 
39245         P0UB,   8, 
39246         P1UB,   8, 
39247         P2UB,   8, 
39248         P3UB,   8, 
39249         PCSL,   8, 
39250         PBGE,   8, 
39251         M64B,   64, 
39252         M64L,   64, 
39253         CPEX,   32, 
39254         EEC1,   8, 
39255         EEC2,   8, 
39256         SBN0,   8, 
39257         SBN1,   8, 
39258         SBN2,   8, 
39259         M32B,   32, 
39260         M32L,   32, 
39261         P0WK,   32, 
39262         P1WK,   32, 
39263         P2WK,   32, 
39264         VTDS,   8, 
39265         VTB1,   32, 
39266         VTB2,   32, 
39267         VTB3,   32, 
39268         VE1V,   16, 
39269         VE2V,   16, 
39270         SBN3,   8, 
39271         P3GP,   8, 
39272         HRE3,   8, 
39273         HRG3,   32, 
39274         HRA3,   8, 
39275         PWE3,   8, 
39276         PWG3,   32, 
39277         PWA3,   8, 
39278         P3WK,   32, 
39279         EEC3,   8, 
39280         RPIN,   8, 
39281         RPBA,   32, 
39282         Offset (0x1F4)
39283     }
39284 
39285     Scope (\_SB.PCI0.GFX0)
39286     {
39287         Name (TMP1, Package (0x01)
39288         {
39289             0xFFFFFFFF
39290         })
39291         Name (TMP2, Package (0x02)
39292         {
39293             0xFFFFFFFF, 
39294             0xFFFFFFFF
39295         })
39296         Name (TMP3, Package (0x03)
39297         {
39298             0xFFFFFFFF, 
39299             0xFFFFFFFF, 
39300             0xFFFFFFFF
39301         })
39302         Name (TMP4, Package (0x04)
39303         {
39304             0xFFFFFFFF, 
39305             0xFFFFFFFF, 
39306             0xFFFFFFFF, 
39307             0xFFFFFFFF
39308         })
39309         Name (TMP5, Package (0x05)
39310         {
39311             0xFFFFFFFF, 
39312             0xFFFFFFFF, 
39313             0xFFFFFFFF, 
39314             0xFFFFFFFF, 
39315             0xFFFFFFFF
39316         })
39317         Name (TMP6, Package (0x06)
39318         {
39319             0xFFFFFFFF, 
39320             0xFFFFFFFF, 
39321             0xFFFFFFFF, 
39322             0xFFFFFFFF, 
39323             0xFFFFFFFF, 
39324             0xFFFFFFFF
39325         })
39326         Name (TMP7, Package (0x07)
39327         {
39328             0xFFFFFFFF, 
39329             0xFFFFFFFF, 
39330             0xFFFFFFFF, 
39331             0xFFFFFFFF, 
39332             0xFFFFFFFF, 
39333             0xFFFFFFFF, 
39334             0xFFFFFFFF
39335         })
39336         Name (TMP8, Package (0x08)
39337         {
39338             0xFFFFFFFF, 
39339             0xFFFFFFFF, 
39340             0xFFFFFFFF, 
39341             0xFFFFFFFF, 
39342             0xFFFFFFFF, 
39343             0xFFFFFFFF, 
39344             0xFFFFFFFF, 
39345             0xFFFFFFFF
39346         })
39347         Name (TMP9, Package (0x09)
39348         {
39349             0xFFFFFFFF, 
39350             0xFFFFFFFF, 
39351             0xFFFFFFFF, 
39352             0xFFFFFFFF, 
39353             0xFFFFFFFF, 
39354             0xFFFFFFFF, 
39355             0xFFFFFFFF, 
39356             0xFFFFFFFF, 
39357             0xFFFFFFFF
39358         })
39359         Name (TMPA, Package (0x0A)
39360         {
39361             0xFFFFFFFF, 
39362             0xFFFFFFFF, 
39363             0xFFFFFFFF, 
39364             0xFFFFFFFF, 
39365             0xFFFFFFFF, 
39366             0xFFFFFFFF, 
39367             0xFFFFFFFF, 
39368             0xFFFFFFFF, 
39369             0xFFFFFFFF, 
39370             0xFFFFFFFF
39371         })
39372         Name (TMPB, Package (0x0B)
39373         {
39374             0xFFFFFFFF, 
39375             0xFFFFFFFF, 
39376             0xFFFFFFFF, 
39377             0xFFFFFFFF, 
39378             0xFFFFFFFF, 
39379             0xFFFFFFFF, 
39380             0xFFFFFFFF, 
39381             0xFFFFFFFF, 
39382             0xFFFFFFFF, 
39383             0xFFFFFFFF, 
39384             0xFFFFFFFF
39385         })
39386         Name (TMPC, Package (0x0C)
39387         {
39388             0xFFFFFFFF, 
39389             0xFFFFFFFF, 
39390             0xFFFFFFFF, 
39391             0xFFFFFFFF, 
39392             0xFFFFFFFF, 
39393             0xFFFFFFFF, 
39394             0xFFFFFFFF, 
39395             0xFFFFFFFF, 
39396             0xFFFFFFFF, 
39397             0xFFFFFFFF, 
39398             0xFFFFFFFF, 
39399             0xFFFFFFFF
39400         })
39401         Name (TMPD, Package (0x0D)
39402         {
39403             0xFFFFFFFF, 
39404             0xFFFFFFFF, 
39405             0xFFFFFFFF, 
39406             0xFFFFFFFF, 
39407             0xFFFFFFFF, 
39408             0xFFFFFFFF, 
39409             0xFFFFFFFF, 
39410             0xFFFFFFFF, 
39411             0xFFFFFFFF, 
39412             0xFFFFFFFF, 
39413             0xFFFFFFFF, 
39414             0xFFFFFFFF, 
39415             0xFFFFFFFF
39416         })
39417         Name (TMPE, Package (0x0E)
39418         {
39419             0xFFFFFFFF, 
39420             0xFFFFFFFF, 
39421             0xFFFFFFFF, 
39422             0xFFFFFFFF, 
39423             0xFFFFFFFF, 
39424             0xFFFFFFFF, 
39425             0xFFFFFFFF, 
39426             0xFFFFFFFF, 
39427             0xFFFFFFFF, 
39428             0xFFFFFFFF, 
39429             0xFFFFFFFF, 
39430             0xFFFFFFFF, 
39431             0xFFFFFFFF, 
39432             0xFFFFFFFF
39433         })
39434         Name (TMPF, Package (0x0F)
39435         {
39436             0xFFFFFFFF, 
39437             0xFFFFFFFF, 
39438             0xFFFFFFFF, 
39439             0xFFFFFFFF, 
39440             0xFFFFFFFF, 
39441             0xFFFFFFFF, 
39442             0xFFFFFFFF, 
39443             0xFFFFFFFF, 
39444             0xFFFFFFFF, 
39445             0xFFFFFFFF, 
39446             0xFFFFFFFF, 
39447             0xFFFFFFFF, 
39448             0xFFFFFFFF, 
39449             0xFFFFFFFF, 
39450             0xFFFFFFFF
39451         })
39452         Name (TMPG, Package (0x10)
39453         {
39454             0xFFFFFFFF, 
39455             0xFFFFFFFF, 
39456             0xFFFFFFFF, 
39457             0xFFFFFFFF, 
39458             0xFFFFFFFF, 
39459             0xFFFFFFFF, 
39460             0xFFFFFFFF, 
39461             0xFFFFFFFF, 
39462             0xFFFFFFFF, 
39463             0xFFFFFFFF, 
39464             0xFFFFFFFF, 
39465             0xFFFFFFFF, 
39466             0xFFFFFFFF, 
39467             0xFFFFFFFF, 
39468             0xFFFFFFFF, 
39469             0xFFFFFFFF
39470         })
39471         Method (_DOS, 1, NotSerialized)  // _DOS: Disable Output Switching
39472         {
39473             DSEN = (Arg0 & 0x07)
39474             If (((Arg0 & 0x03) == Zero))
39475             {
39476                 If (CondRefOf (HDOS))
39477                 {
39478                     HDOS ()
39479                 }
39480             }
39481         }
39482 
39483         Method (_DOD, 0, NotSerialized)  // _DOD: Display Output Devices
39484         {
39485             If ((IPTP == One))
39486             {
39487                 NDID = One
39488             }
39489             Else
39490             {
39491                 NDID = Zero
39492             }
39493 
39494             If ((DIDL != Zero))
39495             {
39496                 DID1 = SDDL (DIDL)
39497             }
39498 
39499             If ((DDL2 != Zero))
39500             {
39501                 DID2 = SDDL (DDL2)
39502             }
39503 
39504             If ((DDL3 != Zero))
39505             {
39506                 DID3 = SDDL (DDL3)
39507             }
39508 
39509             If ((DDL4 != Zero))
39510             {
39511                 DID4 = SDDL (DDL4)
39512             }
39513 
39514             If ((DDL5 != Zero))
39515             {
39516                 DID5 = SDDL (DDL5)
39517             }
39518 
39519             If ((DDL6 != Zero))
39520             {
39521                 DID6 = SDDL (DDL6)
39522             }
39523 
39524             If ((DDL7 != Zero))
39525             {
39526                 DID7 = SDDL (DDL7)
39527             }
39528 
39529             If ((DDL8 != Zero))
39530             {
39531                 DID8 = SDDL (DDL8)
39532             }
39533 
39534             If ((DDL9 != Zero))
39535             {
39536                 DID9 = SDDL (DDL9)
39537             }
39538 
39539             If ((DD10 != Zero))
39540             {
39541                 DIDA = SDDL (DD10)
39542             }
39543 
39544             If ((DD11 != Zero))
39545             {
39546                 DIDB = SDDL (DD11)
39547             }
39548 
39549             If ((DD12 != Zero))
39550             {
39551                 DIDC = SDDL (DD12)
39552             }
39553 
39554             If ((DD13 != Zero))
39555             {
39556                 DIDD = SDDL (DD13)
39557             }
39558 
39559             If ((DD14 != Zero))
39560             {
39561                 DIDE = SDDL (DD14)
39562             }
39563 
39564             If ((DD15 != Zero))
39565             {
39566                 DIDF = SDDL (DD15)
39567             }
39568 
39569             If ((NDID == One))
39570             {
39571                 If ((IPTP == One))
39572                 {
39573                     TMP1 [Zero] = 0x00023480
39574                 }
39575                 Else
39576                 {
39577                     TMP1 [Zero] = (0x00010000 | DID1)
39578                 }
39579 
39580                 Return (TMP1) /* \_SB_.PCI0.GFX0.TMP1 */
39581             }
39582 
39583             If ((NDID == 0x02))
39584             {
39585                 TMP2 [Zero] = (0x00010000 | DID1)
39586                 If ((IPTP == One))
39587                 {
39588                     TMP2 [One] = 0x00023480
39589                 }
39590                 Else
39591                 {
39592                     TMP2 [One] = (0x00010000 | DID2)
39593                 }
39594 
39595                 Return (TMP2) /* \_SB_.PCI0.GFX0.TMP2 */
39596             }
39597 
39598             If ((NDID == 0x03))
39599             {
39600                 TMP3 [Zero] = (0x00010000 | DID1)
39601                 TMP3 [One] = (0x00010000 | DID2)
39602                 If ((IPTP == One))
39603                 {
39604                     TMP3 [0x02] = 0x00023480
39605                 }
39606                 Else
39607                 {
39608                     TMP3 [0x02] = (0x00010000 | DID3)
39609                 }
39610 
39611                 Return (TMP3) /* \_SB_.PCI0.GFX0.TMP3 */
39612             }
39613 
39614             If ((NDID == 0x04))
39615             {
39616                 TMP4 [Zero] = (0x00010000 | DID1)
39617                 TMP4 [One] = (0x00010000 | DID2)
39618                 TMP4 [0x02] = (0x00010000 | DID3)
39619                 If ((IPTP == One))
39620                 {
39621                     TMP4 [0x03] = 0x00023480
39622                 }
39623                 Else
39624                 {
39625                     TMP4 [0x03] = (0x00010000 | DID4)
39626                 }
39627 
39628                 Return (TMP4) /* \_SB_.PCI0.GFX0.TMP4 */
39629             }
39630 
39631             If ((NDID == 0x05))
39632             {
39633                 TMP5 [Zero] = (0x00010000 | DID1)
39634                 TMP5 [One] = (0x00010000 | DID2)
39635                 TMP5 [0x02] = (0x00010000 | DID3)
39636                 TMP5 [0x03] = (0x00010000 | DID4)
39637                 If ((IPTP == One))
39638                 {
39639                     TMP5 [0x04] = 0x00023480
39640                 }
39641                 Else
39642                 {
39643                     TMP5 [0x04] = (0x00010000 | DID5)
39644                 }
39645 
39646                 Return (TMP5) /* \_SB_.PCI0.GFX0.TMP5 */
39647             }
39648 
39649             If ((NDID == 0x06))
39650             {
39651                 TMP6 [Zero] = (0x00010000 | DID1)
39652                 TMP6 [One] = (0x00010000 | DID2)
39653                 TMP6 [0x02] = (0x00010000 | DID3)
39654                 TMP6 [0x03] = (0x00010000 | DID4)
39655                 TMP6 [0x04] = (0x00010000 | DID5)
39656                 If ((IPTP == One))
39657                 {
39658                     TMP6 [0x05] = 0x00023480
39659                 }
39660                 Else
39661                 {
39662                     TMP6 [0x05] = (0x00010000 | DID6)
39663                 }
39664 
39665                 Return (TMP6) /* \_SB_.PCI0.GFX0.TMP6 */
39666             }
39667 
39668             If ((NDID == 0x07))
39669             {
39670                 TMP7 [Zero] = (0x00010000 | DID1)
39671                 TMP7 [One] = (0x00010000 | DID2)
39672                 TMP7 [0x02] = (0x00010000 | DID3)
39673                 TMP7 [0x03] = (0x00010000 | DID4)
39674                 TMP7 [0x04] = (0x00010000 | DID5)
39675                 TMP7 [0x05] = (0x00010000 | DID6)
39676                 If ((IPTP == One))
39677                 {
39678                     TMP7 [0x06] = 0x00023480
39679                 }
39680                 Else
39681                 {
39682                     TMP7 [0x06] = (0x00010000 | DID7)
39683                 }
39684 
39685                 Return (TMP7) /* \_SB_.PCI0.GFX0.TMP7 */
39686             }
39687 
39688             If ((NDID == 0x08))
39689             {
39690                 TMP8 [Zero] = (0x00010000 | DID1)
39691                 TMP8 [One] = (0x00010000 | DID2)
39692                 TMP8 [0x02] = (0x00010000 | DID3)
39693                 TMP8 [0x03] = (0x00010000 | DID4)
39694                 TMP8 [0x04] = (0x00010000 | DID5)
39695                 TMP8 [0x05] = (0x00010000 | DID6)
39696                 TMP8 [0x06] = (0x00010000 | DID7)
39697                 If ((IPTP == One))
39698                 {
39699                     TMP8 [0x07] = 0x00023480
39700                 }
39701                 Else
39702                 {
39703                     TMP8 [0x07] = (0x00010000 | DID8)
39704                 }
39705 
39706                 Return (TMP8) /* \_SB_.PCI0.GFX0.TMP8 */
39707             }
39708 
39709             If ((NDID == 0x09))
39710             {
39711                 TMP9 [Zero] = (0x00010000 | DID1)
39712                 TMP9 [One] = (0x00010000 | DID2)
39713                 TMP9 [0x02] = (0x00010000 | DID3)
39714                 TMP9 [0x03] = (0x00010000 | DID4)
39715                 TMP9 [0x04] = (0x00010000 | DID5)
39716                 TMP9 [0x05] = (0x00010000 | DID6)
39717                 TMP9 [0x06] = (0x00010000 | DID7)
39718                 TMP9 [0x07] = (0x00010000 | DID8)
39719                 If ((IPTP == One))
39720                 {
39721                     TMP9 [0x08] = 0x00023480
39722                 }
39723                 Else
39724                 {
39725                     TMP9 [0x08] = (0x00010000 | DID9)
39726                 }
39727 
39728                 Return (TMP9) /* \_SB_.PCI0.GFX0.TMP9 */
39729             }
39730 
39731             If ((NDID == 0x0A))
39732             {
39733                 TMPA [Zero] = (0x00010000 | DID1)
39734                 TMPA [One] = (0x00010000 | DID2)
39735                 TMPA [0x02] = (0x00010000 | DID3)
39736                 TMPA [0x03] = (0x00010000 | DID4)
39737                 TMPA [0x04] = (0x00010000 | DID5)
39738                 TMPA [0x05] = (0x00010000 | DID6)
39739                 TMPA [0x06] = (0x00010000 | DID7)
39740                 TMPA [0x07] = (0x00010000 | DID8)
39741                 TMPA [0x08] = (0x00010000 | DID9)
39742                 If ((IPTP == One))
39743                 {
39744                     TMPA [0x09] = 0x00023480
39745                 }
39746                 Else
39747                 {
39748                     TMPA [0x09] = (0x00010000 | DIDA)
39749                 }
39750 
39751                 Return (TMPA) /* \_SB_.PCI0.GFX0.TMPA */
39752             }
39753 
39754             If ((NDID == 0x0B))
39755             {
39756                 TMPB [Zero] = (0x00010000 | DID1)
39757                 TMPB [One] = (0x00010000 | DID2)
39758                 TMPB [0x02] = (0x00010000 | DID3)
39759                 TMPB [0x03] = (0x00010000 | DID4)
39760                 TMPB [0x04] = (0x00010000 | DID5)
39761                 TMPB [0x05] = (0x00010000 | DID6)
39762                 TMPB [0x06] = (0x00010000 | DID7)
39763                 TMPB [0x07] = (0x00010000 | DID8)
39764                 TMPB [0x08] = (0x00010000 | DID9)
39765                 TMPB [0x09] = (0x00010000 | DIDA)
39766                 If ((IPTP == One))
39767                 {
39768                     TMPB [0x0A] = 0x00023480
39769                 }
39770                 Else
39771                 {
39772                     TMPB [0x0A] = (0x00010000 | DIDB)
39773                 }
39774 
39775                 Return (TMPB) /* \_SB_.PCI0.GFX0.TMPB */
39776             }
39777 
39778             If ((NDID == 0x0C))
39779             {
39780                 TMPC [Zero] = (0x00010000 | DID1)
39781                 TMPC [One] = (0x00010000 | DID2)
39782                 TMPC [0x02] = (0x00010000 | DID3)
39783                 TMPC [0x03] = (0x00010000 | DID4)
39784                 TMPC [0x04] = (0x00010000 | DID5)
39785                 TMPC [0x05] = (0x00010000 | DID6)
39786                 TMPC [0x06] = (0x00010000 | DID7)
39787                 TMPC [0x07] = (0x00010000 | DID8)
39788                 TMPC [0x08] = (0x00010000 | DID9)
39789                 TMPC [0x09] = (0x00010000 | DIDA)
39790                 TMPC [0x0A] = (0x00010000 | DIDB)
39791                 If ((IPTP == One))
39792                 {
39793                     TMPC [0x0B] = 0x00023480
39794                 }
39795                 Else
39796                 {
39797                     TMPC [0x0B] = (0x00010000 | DIDC)
39798                 }
39799 
39800                 Return (TMPC) /* \_SB_.PCI0.GFX0.TMPC */
39801             }
39802 
39803             If ((NDID == 0x0D))
39804             {
39805                 TMPD [Zero] = (0x00010000 | DID1)
39806                 TMPD [One] = (0x00010000 | DID2)
39807                 TMPD [0x02] = (0x00010000 | DID3)
39808                 TMPD [0x03] = (0x00010000 | DID4)
39809                 TMPD [0x04] = (0x00010000 | DID5)
39810                 TMPD [0x05] = (0x00010000 | DID6)
39811                 TMPD [0x06] = (0x00010000 | DID7)
39812                 TMPD [0x07] = (0x00010000 | DID8)
39813                 TMPD [0x08] = (0x00010000 | DID9)
39814                 TMPD [0x09] = (0x00010000 | DIDA)
39815                 TMPD [0x0A] = (0x00010000 | DIDB)
39816                 TMPD [0x0B] = (0x00010000 | DIDC)
39817                 If ((IPTP == One))
39818                 {
39819                     TMPD [0x0C] = 0x00023480
39820                 }
39821                 Else
39822                 {
39823                     TMPD [0x0C] = (0x00010000 | DIDD)
39824                 }
39825 
39826                 Return (TMPD) /* \_SB_.PCI0.GFX0.TMPD */
39827             }
39828 
39829             If ((NDID == 0x0E))
39830             {
39831                 TMPE [Zero] = (0x00010000 | DID1)
39832                 TMPE [One] = (0x00010000 | DID2)
39833                 TMPE [0x02] = (0x00010000 | DID3)
39834                 TMPE [0x03] = (0x00010000 | DID4)
39835                 TMPE [0x04] = (0x00010000 | DID5)
39836                 TMPE [0x05] = (0x00010000 | DID6)
39837                 TMPE [0x06] = (0x00010000 | DID7)
39838                 TMPE [0x07] = (0x00010000 | DID8)
39839                 TMPE [0x08] = (0x00010000 | DID9)
39840                 TMPE [0x09] = (0x00010000 | DIDA)
39841                 TMPE [0x0A] = (0x00010000 | DIDB)
39842                 TMPE [0x0B] = (0x00010000 | DIDC)
39843                 TMPE [0x0C] = (0x00010000 | DIDD)
39844                 If ((IPTP == One))
39845                 {
39846                     TMPE [0x0D] = 0x00023480
39847                 }
39848                 Else
39849                 {
39850                     TMPE [0x0D] = (0x00010000 | DIDE)
39851                 }
39852 
39853                 Return (TMPE) /* \_SB_.PCI0.GFX0.TMPE */
39854             }
39855 
39856             If ((NDID == 0x0F))
39857             {
39858                 TMPF [Zero] = (0x00010000 | DID1)
39859                 TMPF [One] = (0x00010000 | DID2)
39860                 TMPF [0x02] = (0x00010000 | DID3)
39861                 TMPF [0x03] = (0x00010000 | DID4)
39862                 TMPF [0x04] = (0x00010000 | DID5)
39863                 TMPF [0x05] = (0x00010000 | DID6)
39864                 TMPF [0x06] = (0x00010000 | DID7)
39865                 TMPF [0x07] = (0x00010000 | DID8)
39866                 TMPF [0x08] = (0x00010000 | DID9)
39867                 TMPF [0x09] = (0x00010000 | DIDA)
39868                 TMPF [0x0A] = (0x00010000 | DIDB)
39869                 TMPF [0x0B] = (0x00010000 | DIDC)
39870                 TMPF [0x0C] = (0x00010000 | DIDD)
39871                 TMPF [0x0D] = (0x00010000 | DIDE)
39872                 If ((IPTP == One))
39873                 {
39874                     TMPF [0x0E] = 0x00023480
39875                 }
39876                 Else
39877                 {
39878                     TMPF [0x0E] = (0x00010000 | DIDF)
39879                 }
39880 
39881                 Return (TMPF) /* \_SB_.PCI0.GFX0.TMPF */
39882             }
39883 
39884             If ((NDID == 0x10))
39885             {
39886                 TMPG [Zero] = (0x00010000 | DID1)
39887                 TMPG [One] = (0x00010000 | DID2)
39888                 TMPG [0x02] = (0x00010000 | DID3)
39889                 TMPG [0x03] = (0x00010000 | DID4)
39890                 TMPG [0x04] = (0x00010000 | DID5)
39891                 TMPG [0x05] = (0x00010000 | DID6)
39892                 TMPG [0x06] = (0x00010000 | DID7)
39893                 TMPG [0x07] = (0x00010000 | DID8)
39894                 TMPG [0x08] = (0x00010000 | DID9)
39895                 TMPG [0x09] = (0x00010000 | DIDA)
39896                 TMPG [0x0A] = (0x00010000 | DIDB)
39897                 TMPG [0x0B] = (0x00010000 | DIDC)
39898                 TMPG [0x0C] = (0x00010000 | DIDD)
39899                 TMPG [0x0D] = (0x00010000 | DIDE)
39900                 TMPG [0x0E] = (0x00010000 | DIDF)
39901                 TMPG [0x0F] = 0x00023480
39902                 Return (TMPG) /* \_SB_.PCI0.GFX0.TMPG */
39903             }
39904 
39905             Return (Package (0x01)
39906             {
39907                 0x0400
39908             })
39909         }
39910 
39911         Device (DD01)
39912         {
39913             Method (_ADR, 0, Serialized)  // _ADR: Address
39914             {
39915                 If (((0x0F00 & DID1) == 0x0400))
39916                 {
39917                     EDPV = One
39918                     NXDX = NXD1 /* \NXD1 */
39919                     DIDX = DID1 /* \DID1 */
39920                     Return (One)
39921                 }
39922 
39923                 If ((DID1 == Zero))
39924                 {
39925                     Return (One)
39926                 }
39927                 Else
39928                 {
39929                     Return ((0xFFFF & DID1))
39930                 }
39931             }
39932 
39933             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
39934             {
39935                 Return (CDDS (DID1))
39936             }
39937 
39938             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
39939             {
39940                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
39941                 {
39942                     Return (NXD1) /* \NXD1 */
39943                 }
39944 
39945                 Return (NDDS (DID1))
39946             }
39947 
39948             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
39949             {
39950                 DSST (Arg0)
39951             }
39952         }
39953 
39954         Device (DD02)
39955         {
39956             Method (_ADR, 0, Serialized)  // _ADR: Address
39957             {
39958                 If (((0x0F00 & DID2) == 0x0400))
39959                 {
39960                     EDPV = 0x02
39961                     NXDX = NXD2 /* \NXD2 */
39962                     DIDX = DID2 /* \DID2 */
39963                     Return (0x02)
39964                 }
39965 
39966                 If ((DID2 == Zero))
39967                 {
39968                     Return (0x02)
39969                 }
39970                 Else
39971                 {
39972                     Return ((0xFFFF & DID2))
39973                 }
39974             }
39975 
39976             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
39977             {
39978                 If ((LIDS == Zero))
39979                 {
39980                     Return (Zero)
39981                 }
39982 
39983                 Return (CDDS (DID2))
39984             }
39985 
39986             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
39987             {
39988                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
39989                 {
39990                     Return (NXD2) /* \NXD2 */
39991                 }
39992 
39993                 Return (NDDS (DID2))
39994             }
39995 
39996             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
39997             {
39998                 DSST (Arg0)
39999             }
40000         }
40001 
40002         Device (DD03)
40003         {
40004             Method (_ADR, 0, Serialized)  // _ADR: Address
40005             {
40006                 If (((0x0F00 & DID3) == 0x0400))
40007                 {
40008                     EDPV = 0x03
40009                     NXDX = NXD3 /* \NXD3 */
40010                     DIDX = DID3 /* \DID3 */
40011                     Return (0x03)
40012                 }
40013 
40014                 If ((DID3 == Zero))
40015                 {
40016                     Return (0x03)
40017                 }
40018                 Else
40019                 {
40020                     Return ((0xFFFF & DID3))
40021                 }
40022             }
40023 
40024             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40025             {
40026                 If ((DID3 == Zero))
40027                 {
40028                     Return (0x0B)
40029                 }
40030                 Else
40031                 {
40032                     Return (CDDS (DID3))
40033                 }
40034             }
40035 
40036             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40037             {
40038                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40039                 {
40040                     Return (NXD3) /* \NXD3 */
40041                 }
40042 
40043                 Return (NDDS (DID3))
40044             }
40045 
40046             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40047             {
40048                 DSST (Arg0)
40049             }
40050         }
40051 
40052         Device (DD04)
40053         {
40054             Method (_ADR, 0, Serialized)  // _ADR: Address
40055             {
40056                 If (((0x0F00 & DID4) == 0x0400))
40057                 {
40058                     EDPV = 0x04
40059                     NXDX = NXD4 /* \NXD4 */
40060                     DIDX = DID4 /* \DID4 */
40061                     Return (0x04)
40062                 }
40063 
40064                 If ((DID4 == Zero))
40065                 {
40066                     Return (0x04)
40067                 }
40068                 Else
40069                 {
40070                     Return ((0xFFFF & DID4))
40071                 }
40072             }
40073 
40074             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40075             {
40076                 If ((DID4 == Zero))
40077                 {
40078                     Return (0x0B)
40079                 }
40080                 Else
40081                 {
40082                     Return (CDDS (DID4))
40083                 }
40084             }
40085 
40086             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40087             {
40088                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40089                 {
40090                     Return (NXD4) /* \NXD4 */
40091                 }
40092 
40093                 Return (NDDS (DID4))
40094             }
40095 
40096             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40097             {
40098                 DSST (Arg0)
40099             }
40100         }
40101 
40102         Device (DD05)
40103         {
40104             Method (_ADR, 0, Serialized)  // _ADR: Address
40105             {
40106                 If (((0x0F00 & DID5) == 0x0400))
40107                 {
40108                     EDPV = 0x05
40109                     NXDX = NXD5 /* \NXD5 */
40110                     DIDX = DID5 /* \DID5 */
40111                     Return (0x05)
40112                 }
40113 
40114                 If ((DID5 == Zero))
40115                 {
40116                     Return (0x05)
40117                 }
40118                 Else
40119                 {
40120                     Return ((0xFFFF & DID5))
40121                 }
40122             }
40123 
40124             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40125             {
40126                 If ((DID5 == Zero))
40127                 {
40128                     Return (0x0B)
40129                 }
40130                 Else
40131                 {
40132                     Return (CDDS (DID5))
40133                 }
40134             }
40135 
40136             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40137             {
40138                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40139                 {
40140                     Return (NXD5) /* \NXD5 */
40141                 }
40142 
40143                 Return (NDDS (DID5))
40144             }
40145 
40146             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40147             {
40148                 DSST (Arg0)
40149             }
40150         }
40151 
40152         Device (DD06)
40153         {
40154             Method (_ADR, 0, Serialized)  // _ADR: Address
40155             {
40156                 If (((0x0F00 & DID6) == 0x0400))
40157                 {
40158                     EDPV = 0x06
40159                     NXDX = NXD6 /* \NXD6 */
40160                     DIDX = DID6 /* \DID6 */
40161                     Return (0x06)
40162                 }
40163 
40164                 If ((DID6 == Zero))
40165                 {
40166                     Return (0x06)
40167                 }
40168                 Else
40169                 {
40170                     Return ((0xFFFF & DID6))
40171                 }
40172             }
40173 
40174             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40175             {
40176                 If ((DID6 == Zero))
40177                 {
40178                     Return (0x0B)
40179                 }
40180                 Else
40181                 {
40182                     Return (CDDS (DID6))
40183                 }
40184             }
40185 
40186             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40187             {
40188                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40189                 {
40190                     Return (NXD6) /* \NXD6 */
40191                 }
40192 
40193                 Return (NDDS (DID6))
40194             }
40195 
40196             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40197             {
40198                 DSST (Arg0)
40199             }
40200         }
40201 
40202         Device (DD07)
40203         {
40204             Method (_ADR, 0, Serialized)  // _ADR: Address
40205             {
40206                 If (((0x0F00 & DID7) == 0x0400))
40207                 {
40208                     EDPV = 0x07
40209                     NXDX = NXD7 /* \NXD7 */
40210                     DIDX = DID7 /* \DID7 */
40211                     Return (0x07)
40212                 }
40213 
40214                 If ((DID7 == Zero))
40215                 {
40216                     Return (0x07)
40217                 }
40218                 Else
40219                 {
40220                     Return ((0xFFFF & DID7))
40221                 }
40222             }
40223 
40224             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40225             {
40226                 If ((DID7 == Zero))
40227                 {
40228                     Return (0x0B)
40229                 }
40230                 Else
40231                 {
40232                     Return (CDDS (DID7))
40233                 }
40234             }
40235 
40236             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40237             {
40238                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40239                 {
40240                     Return (NXD7) /* \NXD7 */
40241                 }
40242 
40243                 Return (NDDS (DID7))
40244             }
40245 
40246             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40247             {
40248                 DSST (Arg0)
40249             }
40250         }
40251 
40252         Device (DD08)
40253         {
40254             Method (_ADR, 0, Serialized)  // _ADR: Address
40255             {
40256                 If (((0x0F00 & DID8) == 0x0400))
40257                 {
40258                     EDPV = 0x08
40259                     NXDX = NXD8 /* \NXD8 */
40260                     DIDX = DID8 /* \DID8 */
40261                     Return (0x08)
40262                 }
40263 
40264                 If ((DID8 == Zero))
40265                 {
40266                     Return (0x08)
40267                 }
40268                 Else
40269                 {
40270                     Return ((0xFFFF & DID8))
40271                 }
40272             }
40273 
40274             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40275             {
40276                 If ((DID8 == Zero))
40277                 {
40278                     Return (0x0B)
40279                 }
40280                 Else
40281                 {
40282                     Return (CDDS (DID8))
40283                 }
40284             }
40285 
40286             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40287             {
40288                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40289                 {
40290                     Return (NXD8) /* \NXD8 */
40291                 }
40292 
40293                 Return (NDDS (DID8))
40294             }
40295 
40296             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40297             {
40298                 DSST (Arg0)
40299             }
40300         }
40301 
40302         Device (DD09)
40303         {
40304             Method (_ADR, 0, Serialized)  // _ADR: Address
40305             {
40306                 If (((0x0F00 & DID9) == 0x0400))
40307                 {
40308                     EDPV = 0x09
40309                     NXDX = NXD8 /* \NXD8 */
40310                     DIDX = DID9 /* \DID9 */
40311                     Return (0x09)
40312                 }
40313 
40314                 If ((DID9 == Zero))
40315                 {
40316                     Return (0x09)
40317                 }
40318                 Else
40319                 {
40320                     Return ((0xFFFF & DID9))
40321                 }
40322             }
40323 
40324             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40325             {
40326                 If ((DID9 == Zero))
40327                 {
40328                     Return (0x0B)
40329                 }
40330                 Else
40331                 {
40332                     Return (CDDS (DID9))
40333                 }
40334             }
40335 
40336             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40337             {
40338                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40339                 {
40340                     Return (NXD8) /* \NXD8 */
40341                 }
40342 
40343                 Return (NDDS (DID9))
40344             }
40345 
40346             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40347             {
40348                 DSST (Arg0)
40349             }
40350         }
40351 
40352         Device (DD0A)
40353         {
40354             Method (_ADR, 0, Serialized)  // _ADR: Address
40355             {
40356                 If (((0x0F00 & DIDA) == 0x0400))
40357                 {
40358                     EDPV = 0x0A
40359                     NXDX = NXD8 /* \NXD8 */
40360                     DIDX = DIDA /* \DIDA */
40361                     Return (0x0A)
40362                 }
40363 
40364                 If ((DIDA == Zero))
40365                 {
40366                     Return (0x0A)
40367                 }
40368                 Else
40369                 {
40370                     Return ((0xFFFF & DIDA))
40371                 }
40372             }
40373 
40374             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40375             {
40376                 If ((DIDA == Zero))
40377                 {
40378                     Return (0x0B)
40379                 }
40380                 Else
40381                 {
40382                     Return (CDDS (DIDA))
40383                 }
40384             }
40385 
40386             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40387             {
40388                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40389                 {
40390                     Return (NXD8) /* \NXD8 */
40391                 }
40392 
40393                 Return (NDDS (DIDA))
40394             }
40395 
40396             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40397             {
40398                 DSST (Arg0)
40399             }
40400         }
40401 
40402         Device (DD0B)
40403         {
40404             Method (_ADR, 0, Serialized)  // _ADR: Address
40405             {
40406                 If (((0x0F00 & DIDB) == 0x0400))
40407                 {
40408                     EDPV = 0x0B
40409                     NXDX = NXD8 /* \NXD8 */
40410                     DIDX = DIDB /* \DIDB */
40411                     Return (0x0B)
40412                 }
40413 
40414                 If ((DIDB == Zero))
40415                 {
40416                     Return (0x0B)
40417                 }
40418                 Else
40419                 {
40420                     Return ((0xFFFF & DIDB))
40421                 }
40422             }
40423 
40424             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40425             {
40426                 If ((DIDB == Zero))
40427                 {
40428                     Return (0x0B)
40429                 }
40430                 Else
40431                 {
40432                     Return (CDDS (DIDB))
40433                 }
40434             }
40435 
40436             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40437             {
40438                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40439                 {
40440                     Return (NXD8) /* \NXD8 */
40441                 }
40442 
40443                 Return (NDDS (DIDB))
40444             }
40445 
40446             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40447             {
40448                 DSST (Arg0)
40449             }
40450         }
40451 
40452         Device (DD0C)
40453         {
40454             Method (_ADR, 0, Serialized)  // _ADR: Address
40455             {
40456                 If (((0x0F00 & DIDC) == 0x0400))
40457                 {
40458                     EDPV = 0x0C
40459                     NXDX = NXD8 /* \NXD8 */
40460                     DIDX = DIDC /* \DIDC */
40461                     Return (0x0C)
40462                 }
40463 
40464                 If ((DIDC == Zero))
40465                 {
40466                     Return (0x0C)
40467                 }
40468                 Else
40469                 {
40470                     Return ((0xFFFF & DIDC))
40471                 }
40472             }
40473 
40474             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40475             {
40476                 If ((DIDC == Zero))
40477                 {
40478                     Return (0x0C)
40479                 }
40480                 Else
40481                 {
40482                     Return (CDDS (DIDC))
40483                 }
40484             }
40485 
40486             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40487             {
40488                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40489                 {
40490                     Return (NXD8) /* \NXD8 */
40491                 }
40492 
40493                 Return (NDDS (DIDC))
40494             }
40495 
40496             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40497             {
40498                 DSST (Arg0)
40499             }
40500         }
40501 
40502         Device (DD0D)
40503         {
40504             Method (_ADR, 0, Serialized)  // _ADR: Address
40505             {
40506                 If (((0x0F00 & DIDD) == 0x0400))
40507                 {
40508                     EDPV = 0x0D
40509                     NXDX = NXD8 /* \NXD8 */
40510                     DIDX = DIDD /* \DIDD */
40511                     Return (0x0D)
40512                 }
40513 
40514                 If ((DIDD == Zero))
40515                 {
40516                     Return (0x0D)
40517                 }
40518                 Else
40519                 {
40520                     Return ((0xFFFF & DIDD))
40521                 }
40522             }
40523 
40524             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40525             {
40526                 If ((DIDD == Zero))
40527                 {
40528                     Return (0x0D)
40529                 }
40530                 Else
40531                 {
40532                     Return (CDDS (DIDD))
40533                 }
40534             }
40535 
40536             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40537             {
40538                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40539                 {
40540                     Return (NXD8) /* \NXD8 */
40541                 }
40542 
40543                 Return (NDDS (DIDD))
40544             }
40545 
40546             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40547             {
40548                 DSST (Arg0)
40549             }
40550         }
40551 
40552         Device (DD0E)
40553         {
40554             Method (_ADR, 0, Serialized)  // _ADR: Address
40555             {
40556                 If (((0x0F00 & DIDE) == 0x0400))
40557                 {
40558                     EDPV = 0x0E
40559                     NXDX = NXD8 /* \NXD8 */
40560                     DIDX = DIDE /* \DIDE */
40561                     Return (0x0E)
40562                 }
40563 
40564                 If ((DIDE == Zero))
40565                 {
40566                     Return (0x0E)
40567                 }
40568                 Else
40569                 {
40570                     Return ((0xFFFF & DIDE))
40571                 }
40572             }
40573 
40574             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40575             {
40576                 If ((DIDE == Zero))
40577                 {
40578                     Return (0x0E)
40579                 }
40580                 Else
40581                 {
40582                     Return (CDDS (DIDE))
40583                 }
40584             }
40585 
40586             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40587             {
40588                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40589                 {
40590                     Return (NXD8) /* \NXD8 */
40591                 }
40592 
40593                 Return (NDDS (DIDE))
40594             }
40595 
40596             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40597             {
40598                 DSST (Arg0)
40599             }
40600         }
40601 
40602         Device (DD0F)
40603         {
40604             Method (_ADR, 0, Serialized)  // _ADR: Address
40605             {
40606                 If (((0x0F00 & DIDF) == 0x0400))
40607                 {
40608                     EDPV = 0x0F
40609                     NXDX = NXD8 /* \NXD8 */
40610                     DIDX = DIDF /* \DIDF */
40611                     Return (0x0F)
40612                 }
40613 
40614                 If ((DIDF == Zero))
40615                 {
40616                     Return (0x0F)
40617                 }
40618                 Else
40619                 {
40620                     Return ((0xFFFF & DIDF))
40621                 }
40622             }
40623 
40624             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40625             {
40626                 If ((DIDC == Zero))
40627                 {
40628                     Return (0x0F)
40629                 }
40630                 Else
40631                 {
40632                     Return (CDDS (DIDF))
40633                 }
40634             }
40635 
40636             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40637             {
40638                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40639                 {
40640                     Return (NXD8) /* \NXD8 */
40641                 }
40642 
40643                 Return (NDDS (DIDF))
40644             }
40645 
40646             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40647             {
40648                 DSST (Arg0)
40649             }
40650         }
40651 
40652         Device (DD1F)
40653         {
40654             Method (_ADR, 0, Serialized)  // _ADR: Address
40655             {
40656                 If ((EDPV == Zero))
40657                 {
40658                     Return (0x1F)
40659                 }
40660                 Else
40661                 {
40662                     Return ((0xFFFF & DIDX))
40663                 }
40664             }
40665 
40666             Method (_DCS, 0, NotSerialized)  // _DCS: Display Current Status
40667             {
40668                 If ((EDPV == Zero))
40669                 {
40670                     Return (Zero)
40671                 }
40672                 Else
40673                 {
40674                     Return (CDDS (DIDX))
40675                 }
40676             }
40677 
40678             Method (_DGS, 0, NotSerialized)  // _DGS: Display Graphics State
40679             {
40680                 If ((((SGMD & 0x7F) == One) && CondRefOf (SNXD)))
40681                 {
40682                     Return (NXDX) /* \NXDX */
40683                 }
40684 
40685                 Return (NDDS (DIDX))
40686             }
40687 
40688             Method (_DSS, 1, NotSerialized)  // _DSS: Device Set State
40689             {
40690                 DSST (Arg0)
40691             }
40692 
40693             Method (_BCL, 0, NotSerialized)  // _BCL: Brightness Control Levels
40694             {
40695                 If ((OSYS >= 0x07DC))
40696                 {
40697                     Return (Package (0x67)
40698                     {
40699                         0x64, 
40700                         0x64, 
40701                         Zero, 
40702                         One, 
40703                         0x02, 
40704                         0x03, 
40705                         0x04, 
40706                         0x05, 
40707                         0x06, 
40708                         0x07, 
40709                         0x08, 
40710                         0x09, 
40711                         0x0A, 
40712                         0x0B, 
40713                         0x0C, 
40714                         0x0D, 
40715                         0x0E, 
40716                         0x0F, 
40717                         0x10, 
40718                         0x11, 
40719                         0x12, 
40720                         0x13, 
40721                         0x14, 
40722                         0x15, 
40723                         0x16, 
40724                         0x17, 
40725                         0x18, 
40726                         0x19, 
40727                         0x1A, 
40728                         0x1B, 
40729                         0x1C, 
40730                         0x1D, 
40731                         0x1E, 
40732                         0x1F, 
40733                         0x20, 
40734                         0x21, 
40735                         0x22, 
40736                         0x23, 
40737                         0x24, 
40738                         0x25, 
40739                         0x26, 
40740                         0x27, 
40741                         0x28, 
40742                         0x29, 
40743                         0x2A, 
40744                         0x2B, 
40745                         0x2C, 
40746                         0x2D, 
40747                         0x2E, 
40748                         0x2F, 
40749                         0x30, 
40750                         0x31, 
40751                         0x32, 
40752                         0x33, 
40753                         0x34, 
40754                         0x35, 
40755                         0x36, 
40756                         0x37, 
40757                         0x38, 
40758                         0x39, 
40759                         0x3A, 
40760                         0x3B, 
40761                         0x3C, 
40762                         0x3D, 
40763                         0x3E, 
40764                         0x3F, 
40765                         0x40, 
40766                         0x41, 
40767                         0x42, 
40768                         0x43, 
40769                         0x44, 
40770                         0x45, 
40771                         0x46, 
40772                         0x47, 
40773                         0x48, 
40774                         0x49, 
40775                         0x4A, 
40776                         0x4B, 
40777                         0x4C, 
40778                         0x4D, 
40779                         0x4E, 
40780                         0x4F, 
40781                         0x50, 
40782                         0x51, 
40783                         0x52, 
40784                         0x53, 
40785                         0x54, 
40786                         0x55, 
40787                         0x56, 
40788                         0x57, 
40789                         0x58, 
40790                         0x59, 
40791                         0x5A, 
40792                         0x5B, 
40793                         0x5C, 
40794                         0x5D, 
40795                         0x5E, 
40796                         0x5F, 
40797                         0x60, 
40798                         0x61, 
40799                         0x62, 
40800                         0x63, 
40801                         0x64
40802                     })
40803                 }
40804 
40805                 Return (\_SB.PCI0.LPCB.EC.BRTW) /* External reference */
40806             }
40807 
40808             Method (_BCM, 1, NotSerialized)  // _BCM: Brightness Control Method
40809             {
40810                 If ((OSYS >= 0x07DC))
40811                 {
40812                     If (((Arg0 >= Zero) && (Arg0 <= 0x64)))
40813                     {
40814                         Local0 = ((Arg0 * 0xFF) / 0x64)
40815                         \_SB.PCI0.GFX0.AINT (One, Local0)
40816                         BRTL = Arg0
40817                     }
40818                 }
40819                 Else
40820                 {
40821                     Local0 = Match (\_SB.PCI0.LPCB.EC.BRTW, MEQ, Arg0, MTR, Zero, 0x02)
40822                     If ((Local0 != Ones))
40823                     {
40824                         Local1 = (Local0 - 0x02)
40825                         \BRLV = Local1
40826                         \_SB.PCI0.LPCB.EC.BRNS ()
40827                     }
40828                 }
40829             }
40830 
40831             Method (_BQC, 0, NotSerialized)  // _BQC: Brightness Query Current
40832             {
40833                 If ((OSYS >= 0x07DC))
40834                 {
40835                     Return (BRTL) /* \BRTL */
40836                 }
40837                 Else
40838                 {
40839                     Local0 = \BRLV /* External reference */
40840                     Local1 = (Local0 + 0x02)
40841                     If ((Local1 <= 0x11))
40842                     {
40843                         Return (DerefOf (\_SB.PCI0.LPCB.EC.BRTW [Local1]))
40844                     }
40845                     Else
40846                     {
40847                         Return (Zero)
40848                     }
40849                 }
40850             }
40851         }
40852 
40853         Method (SDDL, 1, NotSerialized)
40854         {
40855             NDID++
40856             Local0 = (Arg0 & 0x0F0F)
40857             Local1 = (0x80000000 | Local0)
40858             If ((DIDL == Local0))
40859             {
40860                 Return (Local1)
40861             }
40862 
40863             If ((DDL2 == Local0))
40864             {
40865                 Return (Local1)
40866             }
40867 
40868             If ((DDL3 == Local0))
40869             {
40870                 Return (Local1)
40871             }
40872 
40873             If ((DDL4 == Local0))
40874             {
40875                 Return (Local1)
40876             }
40877 
40878             If ((DDL5 == Local0))
40879             {
40880                 Return (Local1)
40881             }
40882 
40883             If ((DDL6 == Local0))
40884             {
40885                 Return (Local1)
40886             }
40887 
40888             If ((DDL7 == Local0))
40889             {
40890                 Return (Local1)
40891             }
40892 
40893             If ((DDL8 == Local0))
40894             {
40895                 Return (Local1)
40896             }
40897 
40898             If ((DDL9 == Local0))
40899             {
40900                 Return (Local1)
40901             }
40902 
40903             If ((DD10 == Local0))
40904             {
40905                 Return (Local1)
40906             }
40907 
40908             If ((DD11 == Local0))
40909             {
40910                 Return (Local1)
40911             }
40912 
40913             If ((DD12 == Local0))
40914             {
40915                 Return (Local1)
40916             }
40917 
40918             If ((DD13 == Local0))
40919             {
40920                 Return (Local1)
40921             }
40922 
40923             If ((DD14 == Local0))
40924             {
40925                 Return (Local1)
40926             }
40927 
40928             If ((DD15 == Local0))
40929             {
40930                 Return (Local1)
40931             }
40932 
40933             Return (Zero)
40934         }
40935 
40936         Method (CDDS, 1, NotSerialized)
40937         {
40938             Local0 = (Arg0 & 0x0F0F)
40939             If ((Zero == Local0))
40940             {
40941                 Return (0x1D)
40942             }
40943 
40944             If ((CADL == Local0))
40945             {
40946                 Return (0x1F)
40947             }
40948 
40949             If ((CAL2 == Local0))
40950             {
40951                 Return (0x1F)
40952             }
40953 
40954             If ((CAL3 == Local0))
40955             {
40956                 Return (0x1F)
40957             }
40958 
40959             If ((CAL4 == Local0))
40960             {
40961                 Return (0x1F)
40962             }
40963 
40964             If ((CAL5 == Local0))
40965             {
40966                 Return (0x1F)
40967             }
40968 
40969             If ((CAL6 == Local0))
40970             {
40971                 Return (0x1F)
40972             }
40973 
40974             If ((CAL7 == Local0))
40975             {
40976                 Return (0x1F)
40977             }
40978 
40979             If ((CAL8 == Local0))
40980             {
40981                 Return (0x1F)
40982             }
40983 
40984             Return (0x1D)
40985         }
40986 
40987         Method (NDDS, 1, NotSerialized)
40988         {
40989             Local0 = (Arg0 & 0x0F0F)
40990             If ((Zero == Local0))
40991             {
40992                 Return (Zero)
40993             }
40994 
40995             If ((NADL == Local0))
40996             {
40997                 Return (One)
40998             }
40999 
41000             If ((NDL2 == Local0))
41001             {
41002                 Return (One)
41003             }
41004 
41005             If ((NDL3 == Local0))
41006             {
41007                 Return (One)
41008             }
41009 
41010             If ((NDL4 == Local0))
41011             {
41012                 Return (One)
41013             }
41014 
41015             If ((NDL5 == Local0))
41016             {
41017                 Return (One)
41018             }
41019 
41020             If ((NDL6 == Local0))
41021             {
41022                 Return (One)
41023             }
41024 
41025             If ((NDL7 == Local0))
41026             {
41027                 Return (One)
41028             }
41029 
41030             If ((NDL8 == Local0))
41031             {
41032                 Return (One)
41033             }
41034 
41035             Return (Zero)
41036         }
41037 
41038         Method (DSST, 1, NotSerialized)
41039         {
41040             If (((Arg0 & 0xC0000000) == 0xC0000000))
41041             {
41042                 CSTE = NSTE /* \NSTE */
41043             }
41044         }
41045 
41046         Method (VLOC, 1, NotSerialized)
41047         {
41048             If ((Arg0 == \_SB.LID._LID ()))
41049             {
41050                 CLID = Arg0
41051                 GNOT (0x02, Zero)
41052             }
41053         }
41054 
41055         Scope (\_SB.PCI0)
41056         {
41057             OperationRegion (MCHP, PCI_Config, 0x40, 0xC0)
41058             Field (MCHP, AnyAcc, NoLock, Preserve)
41059             {
41060                 Offset (0x14), 
41061                 AUDE,   8, 
41062                 Offset (0x60), 
41063                 TASM,   10, 
41064                 Offset (0x62)
41065             }
41066         }
41067 
41068         OperationRegion (IGDP, PCI_Config, 0x40, 0xC0)
41069         Field (IGDP, AnyAcc, NoLock, Preserve)
41070         {
41071             Offset (0x10), 
41072                 ,   1, 
41073             GIVD,   1, 
41074                 ,   2, 
41075             GUMA,   3, 
41076             Offset (0x12), 
41077             Offset (0x14), 
41078                 ,   4, 
41079             GMFN,   1, 
41080             Offset (0x18), 
41081             Offset (0xA4), 
41082             ASLE,   8, 
41083             Offset (0xA8), 
41084             GSSE,   1, 
41085             GSSB,   14, 
41086             GSES,   1, 
41087             Offset (0xB0), 
41088                 ,   12, 
41089             CDVL,   1, 
41090             Offset (0xB2), 
41091             Offset (0xB5), 
41092             LBPC,   8, 
41093             Offset (0xBC), 
41094             ASLS,   32
41095         }
41096 
41097         OperationRegion (IGDM, SystemMemory, ASLB, 0x2000)
41098         Field (IGDM, AnyAcc, NoLock, Preserve)
41099         {
41100             SIGN,   128, 
41101             SIZE,   32, 
41102             OVER,   32, 
41103             SVER,   256, 
41104             VVER,   128, 
41105             GVER,   128, 
41106             MBOX,   32, 
41107             DMOD,   32, 
41108             PCON,   32, 
41109             DVER,   64, 
41110             Offset (0x100), 
41111             DRDY,   32, 
41112             CSTS,   32, 
41113             CEVT,   32, 
41114             Offset (0x120), 
41115             DIDL,   32, 
41116             DDL2,   32, 
41117             DDL3,   32, 
41118             DDL4,   32, 
41119             DDL5,   32, 
41120             DDL6,   32, 
41121             DDL7,   32, 
41122             DDL8,   32, 
41123             CPDL,   32, 
41124             CPL2,   32, 
41125             CPL3,   32, 
41126             CPL4,   32, 
41127             CPL5,   32, 
41128             CPL6,   32, 
41129             CPL7,   32, 
41130             CPL8,   32, 
41131             CADL,   32, 
41132             CAL2,   32, 
41133             CAL3,   32, 
41134             CAL4,   32, 
41135             CAL5,   32, 
41136             CAL6,   32, 
41137             CAL7,   32, 
41138             CAL8,   32, 
41139             NADL,   32, 
41140             NDL2,   32, 
41141             NDL3,   32, 
41142             NDL4,   32, 
41143             NDL5,   32, 
41144             NDL6,   32, 
41145             NDL7,   32, 
41146             NDL8,   32, 
41147             ASLP,   32, 
41148             TIDX,   32, 
41149             CHPD,   32, 
41150             CLID,   32, 
41151             CDCK,   32, 
41152             SXSW,   32, 
41153             EVTS,   32, 
41154             CNOT,   32, 
41155             NRDY,   32, 
41156             DDL9,   32, 
41157             DD10,   32, 
41158             DD11,   32, 
41159             DD12,   32, 
41160             DD13,   32, 
41161             DD14,   32, 
41162             DD15,   32, 
41163             CPL9,   32, 
41164             CP10,   32, 
41165             CP11,   32, 
41166             CP12,   32, 
41167             CP13,   32, 
41168             CP14,   32, 
41169             CP15,   32, 
41170             Offset (0x200), 
41171             SCIE,   1, 
41172             GEFC,   4, 
41173             GXFC,   3, 
41174             GESF,   8, 
41175             Offset (0x204), 
41176             PARM,   32, 
41177             DSLP,   32, 
41178             Offset (0x300), 
41179             ARDY,   32, 
41180             ASLC,   32, 
41181             TCHE,   32, 
41182             ALSI,   32, 
41183             BCLP,   32, 
41184             PFIT,   32, 
41185             CBLV,   32, 
41186             BCLM,   320, 
41187             CPFM,   32, 
41188             EPFM,   32, 
41189             PLUT,   592, 
41190             PFMB,   32, 
41191             CCDV,   32, 
41192             PCFT,   32, 
41193             SROT,   32, 
41194             IUER,   32, 
41195             FDSS,   64, 
41196             FDSP,   32, 
41197             STAT,   32, 
41198             Offset (0x400), 
41199             RVBT,   49152, 
41200             PHED,   32, 
41201             BDDC,   2048
41202         }
41203 
41204         Name (DBTB, Package (0x15)
41205         {
41206             Zero, 
41207             0x07, 
41208             0x38, 
41209             0x01C0, 
41210             0x0E00, 
41211             0x3F, 
41212             0x01C7, 
41213             0x0E07, 
41214             0x01F8, 
41215             0x0E38, 
41216             0x0FC0, 
41217             Zero, 
41218             Zero, 
41219             Zero, 
41220             Zero, 
41221             Zero, 
41222             0x7000, 
41223             0x7007, 
41224             0x7038, 
41225             0x71C0, 
41226             0x7E00
41227         })
41228         Name (CDCT, Package (0x05)
41229         {
41230             Package (0x02)
41231             {
41232                 0xE4, 
41233                 0x0140
41234             }, 
41235 
41236             Package (0x02)
41237             {
41238                 0xDE, 
41239                 0x014D
41240             }, 
41241 
41242             Package (0x02)
41243             {
41244                 0xDE, 
41245                 0x014D
41246             }, 
41247 
41248             Package (0x02)
41249             {
41250                 Zero, 
41251                 Zero
41252             }, 
41253 
41254             Package (0x02)
41255             {
41256                 0xDE, 
41257                 0x014D
41258             }
41259         })
41260         Name (SUCC, One)
41261         Name (NVLD, 0x02)
41262         Name (CRIT, 0x04)
41263         Name (NCRT, 0x06)
41264         Method (GSCI, 0, Serialized)
41265         {
41266             Method (GBDA, 0, Serialized)
41267             {
41268                 If ((GESF == Zero))
41269                 {
41270                     PARM = 0x0659
41271                     GESF = Zero
41272                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41273                 }
41274 
41275                 If ((GESF == One))
41276                 {
41277                     PARM = 0x00300482
41278                     If ((S0ID == One))
41279                     {
41280                         PARM |= 0x0100
41281                     }
41282 
41283                     GESF = Zero
41284                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41285                 }
41286 
41287                 If ((GESF == 0x04))
41288                 {
41289                     PARM &= 0xEFFF0000
41290                     PARM &= (DerefOf (DBTB [IBTT]) << 0x10)
41291                     PARM |= IBTT /* \_SB_.PCI0.GFX0.PARM */
41292                     GESF = Zero
41293                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41294                 }
41295 
41296                 If ((GESF == 0x05))
41297                 {
41298                     PARM = IPSC /* \IPSC */
41299                     PARM |= (IPAT << 0x08)
41300                     PARM += 0x0100
41301                     PARM |= (LIDS << 0x10)
41302                     PARM += 0x00010000
41303                     PARM |= (IBIA << 0x14)
41304                     GESF = Zero
41305                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41306                 }
41307 
41308                 If ((GESF == 0x07))
41309                 {
41310                     PARM = GIVD /* \_SB_.PCI0.GFX0.GIVD */
41311                     PARM ^= One
41312                     PARM |= (GMFN << One)
41313                     PARM |= 0x1800
41314                     PARM |= (IDMS << 0x11)
41315                     PARM |= (DerefOf (DerefOf (CDCT [HVCO]) [CDVL]) << 
41316                         0x15) /* \_SB_.PCI0.GFX0.PARM */
41317                     GESF = One
41318                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41319                 }
41320 
41321                 If ((GESF == 0x0A))
41322                 {
41323                     PARM = Zero
41324                     If (ISSC)
41325                     {
41326                         PARM |= 0x03
41327                     }
41328 
41329                     GESF = Zero
41330                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41331                 }
41332 
41333                 If ((GESF == 0x0B))
41334                 {
41335                     PARM = KSV0 /* \KSV0 */
41336                     GESF = KSV1 /* \KSV1 */
41337                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41338                 }
41339 
41340                 GESF = Zero
41341                 Return (CRIT) /* \_SB_.PCI0.GFX0.CRIT */
41342             }
41343 
41344             Method (SBCB, 0, Serialized)
41345             {
41346                 If ((GESF == Zero))
41347                 {
41348                     PARM = Zero
41349                     PARM = 0x000F87DD
41350                     GESF = Zero
41351                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41352                 }
41353 
41354                 If ((GESF == One))
41355                 {
41356                     GESF = Zero
41357                     PARM = Zero
41358                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41359                 }
41360 
41361                 If ((GESF == 0x03))
41362                 {
41363                     GESF = Zero
41364                     PARM = Zero
41365                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41366                 }
41367 
41368                 If ((GESF == 0x04))
41369                 {
41370                     GESF = Zero
41371                     PARM = Zero
41372                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41373                 }
41374 
41375                 If ((GESF == 0x05))
41376                 {
41377                     GESF = Zero
41378                     PARM = Zero
41379                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41380                 }
41381 
41382                 If ((GESF == 0x07))
41383                 {
41384                     If (((S0ID == One) && (OSYS < 0x07DF)))
41385                     {
41386                         If (((PARM & 0xFF) == One))
41387                         {
41388                             \GUAM (One)
41389                         }
41390 
41391                         If (((PARM & 0xFF) == Zero))
41392                         {
41393                             \GUAM (Zero)
41394                         }
41395                     }
41396 
41397                     If ((PARM == Zero))
41398                     {
41399                         Local0 = CLID /* \_SB_.PCI0.GFX0.CLID */
41400                         If ((0x80000000 & Local0))
41401                         {
41402                             CLID &= 0x0F
41403                             GLID (CLID)
41404                         }
41405                     }
41406 
41407                     GESF = Zero
41408                     PARM = Zero
41409                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41410                 }
41411 
41412                 If ((GESF == 0x08))
41413                 {
41414                     GESF = Zero
41415                     PARM = Zero
41416                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41417                 }
41418 
41419                 If ((GESF == 0x09))
41420                 {
41421                     IBTT = (PARM & 0xFF)
41422                     GESF = Zero
41423                     PARM = Zero
41424                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41425                 }
41426 
41427                 If ((GESF == 0x0A))
41428                 {
41429                     IPSC = (PARM & 0xFF)
41430                     If (((PARM >> 0x08) & 0xFF))
41431                     {
41432                         IPAT = ((PARM >> 0x08) & 0xFF)
41433                         IPAT--
41434                     }
41435 
41436                     IBIA = ((PARM >> 0x14) & 0x07)
41437                     GESF = Zero
41438                     PARM = Zero
41439                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41440                 }
41441 
41442                 If ((GESF == 0x0B))
41443                 {
41444                     IF1E = ((PARM >> One) & One)
41445                     If ((PARM & 0x0001E000))
41446                     {
41447                         IDMS = ((PARM >> 0x0D) & 0x0F)
41448                     }
41449                     Else
41450                     {
41451                         IDMS = ((PARM >> 0x11) & 0x0F)
41452                     }
41453 
41454                     GESF = Zero
41455                     PARM = Zero
41456                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41457                 }
41458 
41459                 If ((GESF == 0x10))
41460                 {
41461                     GESF = Zero
41462                     PARM = Zero
41463                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41464                 }
41465 
41466                 If ((GESF == 0x11))
41467                 {
41468                     PARM = (LIDS << 0x08)
41469                     PARM += 0x0100
41470                     GESF = Zero
41471                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41472                 }
41473 
41474                 If ((GESF == 0x12))
41475                 {
41476                     If ((PARM & One))
41477                     {
41478                         If (((PARM >> One) == One))
41479                         {
41480                             ISSC = One
41481                         }
41482                         Else
41483                         {
41484                             GESF = Zero
41485                             Return (CRIT) /* \_SB_.PCI0.GFX0.CRIT */
41486                         }
41487                     }
41488                     Else
41489                     {
41490                         ISSC = Zero
41491                     }
41492 
41493                     GESF = Zero
41494                     PARM = Zero
41495                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41496                 }
41497 
41498                 If ((GESF == 0x13))
41499                 {
41500                     GESF = Zero
41501                     PARM = Zero
41502                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41503                 }
41504 
41505                 If ((GESF == 0x14))
41506                 {
41507                     PAVP = (PARM & 0x0F)
41508                     GESF = Zero
41509                     PARM = Zero
41510                     Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41511                 }
41512 
41513                 GESF = Zero
41514                 Return (SUCC) /* \_SB_.PCI0.GFX0.SUCC */
41515             }
41516 
41517             If ((GEFC == 0x04))
41518             {
41519                 GXFC = GBDA ()
41520             }
41521 
41522             If ((GEFC == 0x06))
41523             {
41524                 GXFC = SBCB ()
41525             }
41526 
41527             GEFC = Zero
41528             CPSC = One
41529             GSSE = Zero
41530             SCIE = Zero
41531             Return (Zero)
41532         }
41533 
41534         Method (PDRD, 0, NotSerialized)
41535         {
41536             Return (!DRDY)
41537         }
41538 
41539         Method (PSTS, 0, NotSerialized)
41540         {
41541             If ((CSTS > 0x02))
41542             {
41543                 Sleep (ASLP)
41544             }
41545 
41546             Return ((CSTS == 0x03))
41547         }
41548 
41549         Method (GNOT, 2, NotSerialized)
41550         {
41551             If (PDRD ())
41552             {
41553                 Return (One)
41554             }
41555 
41556             CEVT = Arg0
41557             CSTS = 0x03
41558             If (((CHPD == Zero) && (Arg1 == Zero)))
41559             {
41560                 Notify (\_SB.PCI0.GFX0, Arg1)
41561             }
41562 
41563             If (CondRefOf (HNOT))
41564             {
41565                 HNOT (Arg0)
41566             }
41567             Else
41568             {
41569                 Notify (\_SB.PCI0.GFX0, 0x80) // Status Change
41570             }
41571 
41572             Return (Zero)
41573         }
41574 
41575         Method (GHDS, 1, NotSerialized)
41576         {
41577             TIDX = Arg0
41578             Return (GNOT (One, Zero))
41579         }
41580 
41581         Method (GLID, 1, NotSerialized)
41582         {
41583             If ((Arg0 == One))
41584             {
41585                 CLID = 0x03
41586             }
41587             Else
41588             {
41589                 CLID = Arg0
41590             }
41591 
41592             If (GNOT (0x02, Zero))
41593             {
41594                 CLID |= 0x80000000
41595                 Return (One)
41596             }
41597 
41598             Return (Zero)
41599         }
41600 
41601         Method (GDCK, 1, NotSerialized)
41602         {
41603             CDCK = Arg0
41604             Return (GNOT (0x04, Zero))
41605         }
41606 
41607         Method (PARD, 0, NotSerialized)
41608         {
41609             If (!ARDY)
41610             {
41611                 Sleep (ASLP)
41612             }
41613 
41614             Return (!ARDY)
41615         }
41616 
41617         Method (IUEH, 1, Serialized)
41618         {
41619             IUER &= 0xC0
41620             IUER ^= (One << Arg0)
41621             If ((Arg0 <= 0x04))
41622             {
41623                 Return (AINT (0x05, Zero))
41624             }
41625             Else
41626             {
41627                 Return (AINT (Arg0, Zero))
41628             }
41629         }
41630 
41631         Method (AINT, 2, NotSerialized)
41632         {
41633             If (!(TCHE & (One << Arg0)))
41634             {
41635                 Return (One)
41636             }
41637 
41638             If (PARD ())
41639             {
41640                 Return (One)
41641             }
41642 
41643             If (((Arg0 >= 0x05) && (Arg0 <= 0x07)))
41644             {
41645                 ASLC = (One << Arg0)
41646                 ASLE = One
41647                 Local2 = Zero
41648                 While (((Local2 < 0xFA) && (ASLC != Zero)))
41649                 {
41650                     Sleep (0x04)
41651                     Local2++
41652                 }
41653 
41654                 Return (Zero)
41655             }
41656 
41657             If ((Arg0 == 0x02))
41658             {
41659                 If (CPFM)
41660                 {
41661                     Local0 = (CPFM & 0x0F)
41662                     Local1 = (EPFM & 0x0F)
41663                     If ((Local0 == One))
41664                     {
41665                         If ((Local1 & 0x06))
41666                         {
41667                             PFIT = 0x06
41668                         }
41669                         ElseIf ((Local1 & 0x08))
41670                         {
41671                             PFIT = 0x08
41672                         }
41673                         Else
41674                         {
41675                             PFIT = One
41676                         }
41677                     }
41678 
41679                     If ((Local0 == 0x06))
41680                     {
41681                         If ((Local1 & 0x08))
41682                         {
41683                             PFIT = 0x08
41684                         }
41685                         ElseIf ((Local1 & One))
41686                         {
41687                             PFIT = One
41688                         }
41689                         Else
41690                         {
41691                             PFIT = 0x06
41692                         }
41693                     }
41694 
41695                     If ((Local0 == 0x08))
41696                     {
41697                         If ((Local1 & One))
41698                         {
41699                             PFIT = One
41700                         }
41701                         ElseIf ((Local1 & 0x06))
41702                         {
41703                             PFIT = 0x06
41704                         }
41705                         Else
41706                         {
41707                             PFIT = 0x08
41708                         }
41709                     }
41710                 }
41711                 Else
41712                 {
41713                     PFIT ^= 0x07
41714                 }
41715 
41716                 PFIT |= 0x80000000
41717                 ASLC = 0x04
41718             }
41719             ElseIf ((Arg0 == One))
41720             {
41721                 BCLP = Arg1
41722                 BCLP |= 0x80000000
41723                 ASLC = 0x02
41724             }
41725             ElseIf ((Arg0 == Zero))
41726             {
41727                 ALSI = Arg1
41728                 ASLC = One
41729             }
41730             Else
41731             {
41732                 Return (One)
41733             }
41734 
41735             ASLE = One
41736             Return (Zero)
41737         }
41738 
41739         Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
41740         {
41741             If ((Arg0 == ToUUID ("3e5b41c6-eb1d-4260-9d15-c71fbadae414")))
41742             {
41743                 Switch (ToInteger (Arg2))
41744                 {
41745                     Case (Zero)
41746                     {
41747                         If ((Arg1 == One))
41748                         {
41749                             Return (0x0001E7FF)
41750                         }
41751                     }
41752                     Case (One)
41753                     {
41754                         If ((Arg1 == One))
41755                         {
41756                             If (((S0ID == One) && (OSYS < 0x07DF)))
41757                             {
41758                                 If (((DerefOf (Arg3 [Zero]) & 0xFF) == One))
41759                                 {
41760                                     \GUAM (One)
41761                                 }
41762 
41763                                 Local0 = (DerefOf (Arg3 [One]) & 0xFF)
41764                                 If ((Local0 == Zero))
41765                                 {
41766                                     \GUAM (Zero)
41767                                 }
41768                             }
41769 
41770                             If ((DerefOf (Arg3 [Zero]) == Zero))
41771                             {
41772                                 Local0 = CLID /* \_SB_.PCI0.GFX0.CLID */
41773                                 If ((0x80000000 & Local0))
41774                                 {
41775                                     CLID &= 0x0F
41776                                     GLID (CLID)
41777                                 }
41778                             }
41779 
41780                             Return (One)
41781                         }
41782                     }
41783                     Case (0x02)
41784                     {
41785                         If ((Arg1 == One))
41786                         {
41787                             Return (One)
41788                         }
41789                     }
41790                     Case (0x03)
41791                     {
41792                         If ((Arg1 == One))
41793                         {
41794                             Return (One)
41795                         }
41796                     }
41797                     Case (0x04)
41798                     {
41799                         If ((Arg1 == One))
41800                         {
41801                             Return (One)
41802                         }
41803                     }
41804                     Case (0x05)
41805                     {
41806                         If ((Arg1 == One))
41807                         {
41808                             Return (One)
41809                         }
41810                     }
41811                     Case (0x06)
41812                     {
41813                         If ((Arg1 == One))
41814                         {
41815                             Return (One)
41816                         }
41817                     }
41818                     Case (0x07)
41819                     {
41820                         If ((Arg1 == One))
41821                         {
41822                             IBTT = (DerefOf (Arg3 [Zero]) & 0xFF)
41823                             Return (One)
41824                         }
41825                     }
41826                     Case (0x08)
41827                     {
41828                         If ((Arg1 == One))
41829                         {
41830                             IPSC = (DerefOf (Arg3 [Zero]) & 0xFF)
41831                             If ((DerefOf (Arg3 [One]) & 0xFF))
41832                             {
41833                                 IPAT = (DerefOf (Arg3 [One]) & 0xFF)
41834                                 IPAT--
41835                             }
41836 
41837                             IBIA = ((DerefOf (Arg3 [0x02]) >> 0x04) & 0x07)
41838                             Return (One)
41839                         }
41840                     }
41841                     Case (0x09)
41842                     {
41843                         If ((Arg1 == One))
41844                         {
41845                             Return (One)
41846                         }
41847                     }
41848                     Case (0x0A)
41849                     {
41850                         If ((Arg1 == One))
41851                         {
41852                             Local0 = (LIDS << 0x08)
41853                             Local0 += 0x0100
41854                             Return (Local0)
41855                         }
41856                     }
41857                     Case (0x0D)
41858                     {
41859                         If ((Arg1 == One))
41860                         {
41861                             Local0 = ((DerefOf (Arg3 [0x03]) << 0x18) | (DerefOf (
41862                                 Arg3 [0x02]) << 0x10))
41863                             Local0 &= 0xEFFF0000
41864                             Local0 &= (DerefOf (DBTB [IBTT]) << 0x10)
41865                             Local0 |= IBTT
41866                             Return (Local0)
41867                         }
41868                     }
41869                     Case (0x0E)
41870                     {
41871                         If ((Arg1 == One))
41872                         {
41873                             Local0 = IPSC /* \IPSC */
41874                             Local0 |= (IPAT << 0x08)
41875                             Local0 += 0x0100
41876                             Local0 |= (LIDS << 0x10)
41877                             Local0 += 0x00010000
41878                             Local0 |= (IBIA << 0x14)
41879                             Return (Local0)
41880                         }
41881                     }
41882                     Case (0x0F)
41883                     {
41884                         If ((Arg1 == One))
41885                         {
41886                             Local0 = GIVD /* \_SB_.PCI0.GFX0.GIVD */
41887                             Local0 ^= One
41888                             Local0 |= (GMFN << One)
41889                             Local0 |= 0x1800
41890                             Local0 |= (IDMS << 0x11)
41891                             Local0 |= (DerefOf (DerefOf (CDCT [HVCO]) [CDVL]) << 
41892                                 0x15)
41893                             Return (Local0)
41894                         }
41895                     }
41896                     Case (0x10)
41897                     {
41898                         If ((Arg1 == One))
41899                         {
41900                             Name (KSVP, Package (0x02)
41901                             {
41902                                 0x80000000, 
41903                                 0x8000
41904                             })
41905                             KSVP [Zero] = KSV0 /* \KSV0 */
41906                             KSVP [One] = KSV1 /* \KSV1 */
41907                             Return (KSVP) /* \_SB_.PCI0.GFX0._DSM.KSVP */
41908                         }
41909                     }
41910 
41911                 }
41912             }
41913 
41914             Return (Buffer (One)
41915             {
41916                  0x00                                             // .
41917             })
41918         }
41919     }
41920 
41921     Scope (\_SB.PCI0.GFX0)
41922     {
41923         Device (IPUA)
41924         {
41925             Name (_ADR, 0x3480)  // _ADR: Address
41926             Method (_STA, 0, NotSerialized)  // _STA: Status
41927             {
41928                 If ((IPTP == One))
41929                 {
41930                     Return (0x0F)
41931                 }
41932                 Else
41933                 {
41934                     Return (Zero)
41935                 }
41936             }
41937         }
41938     }
41939 
41940     Scope (\_SB.PCI0.IPU0)
41941     {
41942         Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
41943         {
41944             If ((Arg0 == ToUUID ("9a9e6ab4-e3fc-475d-ad1c-c4789e4cfe90")))
41945             {
41946                 If ((Arg2 == Zero))
41947                 {
41948                     If ((Arg1 == Zero))
41949                     {
41950                         Return (Buffer (One)
41951                         {
41952                              0x07                                             // .
41953                         })
41954                     }
41955                     Else
41956                     {
41957                         Return (Zero)
41958                     }
41959                 }
41960 
41961                 If ((Arg2 == One))
41962                 {
41963                     Return (0x64503C19)
41964                 }
41965 
41966                 If ((Arg2 == 0x02))
41967                 {
41968                     Return (0xFFF0783C)
41969                 }
41970             }
41971 
41972             Return (Zero)
41973         }
41974     }
41975 
41976     Scope (\_SB)
41977     {
41978         Device (PTMD)
41979         {
41980             Name (_HID, EisaId ("INT3394") /* ACPI System Fan */)  // _HID: Hardware ID
41981             Name (_CID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _CID: Compatible ID
41982             Name (IVER, 0x00010000)
41983             Name (SIZE, 0x0690)
41984             Method (GACI, 0, NotSerialized)
41985             {
41986                 Name (RPKG, Package (0x02){})
41987                 RPKG [Zero] = Zero
41988                 If ((XTUB != Zero))
41989                 {
41990                     ADBG ("XTUB")
41991                     ADBG (XTUB)
41992                     ADBG ("XTUS")
41993                     ADBG (XTUS)
41994                     OperationRegion (XNVS, SystemMemory, XTUB, SIZE)
41995                     Field (XNVS, ByteAcc, NoLock, Preserve)
41996                     {
41997                         XBUF,   13440
41998                     }
41999 
42000                     Name (TEMP, Buffer (XTUS){})
42001                     TEMP = XBUF /* \_SB_.PTMD.GACI.XBUF */
42002                     RPKG [One] = TEMP /* \_SB_.PTMD.GACI.TEMP */
42003                 }
42004                 Else
42005                 {
42006                     ADBG ("XTUB ZERO")
42007                     RPKG [One] = Zero
42008                 }
42009 
42010                 Return (RPKG) /* \_SB_.PTMD.GACI.RPKG */
42011             }
42012 
42013             Method (GDSV, 1, Serialized)
42014             {
42015                 If ((Arg0 == 0x05))
42016                 {
42017                     Return (Package (0x02)
42018                     {
42019                         Zero, 
42020                         Buffer (0x68)
42021                         {
42022                             /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
42023                             /* 0008 */  0x4C, 0x04, 0x00, 0x00, 0x4C, 0x04, 0x00, 0x00,  // L...L...
42024                             /* 0010 */  0x7E, 0x04, 0x00, 0x00, 0x7E, 0x04, 0x00, 0x00,  // ~...~...
42025                             /* 0018 */  0xB0, 0x04, 0x00, 0x00, 0xB0, 0x04, 0x00, 0x00,  // ........
42026                             /* 0020 */  0xE2, 0x04, 0x00, 0x00, 0xE2, 0x04, 0x00, 0x00,  // ........
42027                             /* 0028 */  0x14, 0x05, 0x00, 0x00, 0x14, 0x05, 0x00, 0x00,  // ........
42028                             /* 0030 */  0x46, 0x05, 0x00, 0x00, 0x46, 0x05, 0x00, 0x00,  // F...F...
42029                             /* 0038 */  0x78, 0x05, 0x00, 0x00, 0x78, 0x05, 0x00, 0x00,  // x...x...
42030                             /* 0040 */  0xAA, 0x05, 0x00, 0x00, 0xAA, 0x05, 0x00, 0x00,  // ........
42031                             /* 0048 */  0xDC, 0x05, 0x00, 0x00, 0xDC, 0x05, 0x00, 0x00,  // ........
42032                             /* 0050 */  0x0E, 0x06, 0x00, 0x00, 0x0E, 0x06, 0x00, 0x00,  // ........
42033                             /* 0058 */  0x40, 0x06, 0x00, 0x00, 0x40, 0x06, 0x00, 0x00,  // @...@...
42034                             /* 0060 */  0x72, 0x06, 0x00, 0x00, 0x72, 0x06, 0x00, 0x00   // r...r...
42035                         }
42036                     })
42037                 }
42038 
42039                 If ((Arg0 == 0x13))
42040                 {
42041                     ADBG ("DDR MULT")
42042                     If ((DDRF == One))
42043                     {
42044                         ADBG ("DDR 1")
42045                         Return (Package (0x02)
42046                         {
42047                             Zero, 
42048                             Buffer (0x50)
42049                             {
42050                                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
42051                                 /* 0008 */  0x04, 0x00, 0x00, 0x00, 0x2B, 0x04, 0x00, 0x00,  // ....+...
42052                                 /* 0010 */  0x05, 0x00, 0x00, 0x00, 0x35, 0x05, 0x00, 0x00,  // ....5...
42053                                 /* 0018 */  0x06, 0x00, 0x00, 0x00, 0x40, 0x06, 0x00, 0x00,  // ....@...
42054                                 /* 0020 */  0x07, 0x00, 0x00, 0x00, 0x4B, 0x07, 0x00, 0x00,  // ....K...
42055                                 /* 0028 */  0x08, 0x00, 0x00, 0x00, 0x55, 0x08, 0x00, 0x00,  // ....U...
42056                                 /* 0030 */  0x09, 0x00, 0x00, 0x00, 0x60, 0x09, 0x00, 0x00,  // ....`...
42057                                 /* 0038 */  0x0A, 0x00, 0x00, 0x00, 0x6B, 0x0A, 0x00, 0x00,  // ....k...
42058                                 /* 0040 */  0x0B, 0x00, 0x00, 0x00, 0x75, 0x0B, 0x00, 0x00,  // ....u...
42059                                 /* 0048 */  0x0C, 0x00, 0x00, 0x00, 0x80, 0x0C, 0x00, 0x00   // ........
42060                             }
42061                         })
42062                     }
42063                     Else
42064                     {
42065                         ADBG ("DDR ELSE")
42066                         Return (Package (0x02)
42067                         {
42068                             Zero, 
42069                             Buffer (0x68)
42070                             {
42071                                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
42072                                 /* 0008 */  0x05, 0x00, 0x00, 0x00, 0x2B, 0x04, 0x00, 0x00,  // ....+...
42073                                 /* 0010 */  0x06, 0x00, 0x00, 0x00, 0xB0, 0x04, 0x00, 0x00,  // ........
42074                                 /* 0018 */  0x07, 0x00, 0x00, 0x00, 0x78, 0x05, 0x00, 0x00,  // ....x...
42075                                 /* 0020 */  0x08, 0x00, 0x00, 0x00, 0x40, 0x06, 0x00, 0x00,  // ....@...
42076                                 /* 0028 */  0x09, 0x00, 0x00, 0x00, 0x08, 0x07, 0x00, 0x00,  // ........
42077                                 /* 0030 */  0x0A, 0x00, 0x00, 0x00, 0xD0, 0x07, 0x00, 0x00,  // ........
42078                                 /* 0038 */  0x0B, 0x00, 0x00, 0x00, 0x98, 0x08, 0x00, 0x00,  // ........
42079                                 /* 0040 */  0x0C, 0x00, 0x00, 0x00, 0x60, 0x09, 0x00, 0x00,  // ....`...
42080                                 /* 0048 */  0x0D, 0x00, 0x00, 0x00, 0x28, 0x0A, 0x00, 0x00,  // ....(...
42081                                 /* 0050 */  0x0E, 0x00, 0x00, 0x00, 0xF0, 0x0A, 0x00, 0x00,  // ........
42082                                 /* 0058 */  0x0F, 0x00, 0x00, 0x00, 0xB8, 0x0B, 0x00, 0x00,  // ........
42083                                 /* 0060 */  0x10, 0x00, 0x00, 0x00, 0x80, 0x0C, 0x00, 0x00   // ........
42084                             }
42085                         })
42086                     }
42087 
42088                     ADBG ("DDR EXIT")
42089                 }
42090 
42091                 If ((Arg0 == 0x0B))
42092                 {
42093                     Return (Package (0x02)
42094                     {
42095                         Zero, 
42096                         Buffer (0x60)
42097                         {
42098                             /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
42099                             /* 0008 */  0x05, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,  // ........
42100                             /* 0010 */  0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,  // ........
42101                             /* 0018 */  0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,  // ........
42102                             /* 0020 */  0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,  // ........
42103                             /* 0028 */  0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00,  // ........
42104                             /* 0030 */  0x0C, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00,  // ........
42105                             /* 0038 */  0x0E, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00,  // ........
42106                             /* 0040 */  0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,  // ........
42107                             /* 0048 */  0x12, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,  // ........
42108                             /* 0050 */  0x14, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,  // ........
42109                             /* 0058 */  0x18, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00   // ........
42110                         }
42111                     })
42112                 }
42113 
42114                 If ((Arg0 == 0x49))
42115                 {
42116                     Return (Package (0x02)
42117                     {
42118                         Zero, 
42119                         Buffer (0x10)
42120                         {
42121                             /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00,  // ........
42122                             /* 0008 */  0x01, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00   // ....d...
42123                         }
42124                     })
42125                 }
42126 
42127                 Return (Package (0x01)
42128                 {
42129                     One
42130                 })
42131             }
42132 
42133             Method (GXDV, 1, Serialized)
42134             {
42135                 If ((XMPB != Zero))
42136                 {
42137                     OperationRegion (XMPN, SystemMemory, XMPB, SIZE)
42138                     Field (XMPN, ByteAcc, NoLock, Preserve)
42139                     {
42140                         XMP1,   704, 
42141                         XMP2,   704
42142                     }
42143 
42144                     If ((Arg0 == One))
42145                     {
42146                         Name (XP_1, Package (0x02){})
42147                         XP_1 [Zero] = Zero
42148                         XP_1 [One] = XMP1 /* \_SB_.PTMD.GXDV.XMP1 */
42149                         Return (XP_1) /* \_SB_.PTMD.GXDV.XP_1 */
42150                     }
42151 
42152                     If ((Arg0 == 0x02))
42153                     {
42154                         Name (XP_2, Package (0x02){})
42155                         XP_2 [Zero] = Zero
42156                         XP_2 [One] = XMP2 /* \_SB_.PTMD.GXDV.XMP2 */
42157                         Return (XP_2) /* \_SB_.PTMD.GXDV.XP_2 */
42158                     }
42159                 }
42160 
42161                 Return (Package (0x01)
42162                 {
42163                     One
42164                 })
42165             }
42166 
42167             Method (GSCV, 0, NotSerialized)
42168             {
42169                 Return (Package (0x01)
42170                 {
42171                     0x72
42172                 })
42173             }
42174 
42175             Method (GSCB, 0, NotSerialized)
42176             {
42177                 Return (XSMI) /* External reference */
42178             }
42179 
42180             Method (CDRD, 1, Serialized)
42181             {
42182                 Return (Package (0x01)
42183                 {
42184                     One
42185                 })
42186             }
42187 
42188             Method (CDWR, 2, Serialized)
42189             {
42190                 Return (One)
42191             }
42192 
42193             Name (RPMV, Package (0x04)
42194             {
42195                 One, 
42196                 0x07, 
42197                 Zero, 
42198                 Zero
42199             })
42200             Name (TMP1, Package (0x0C)
42201             {
42202                 One, 
42203                 0x02, 
42204                 Zero, 
42205                 Zero, 
42206                 0x05, 
42207                 0x04, 
42208                 Zero, 
42209                 Zero, 
42210                 0x06, 
42211                 0x05, 
42212                 Zero, 
42213                 Zero
42214             })
42215             Name (TMP2, Package (0x08)
42216             {
42217                 One, 
42218                 0x02, 
42219                 Zero, 
42220                 Zero, 
42221                 0x05, 
42222                 0x04, 
42223                 Zero, 
42224                 Zero
42225             })
42226             Name (TMP3, Package (0x04)
42227             {
42228                 One, 
42229                 0x02, 
42230                 Zero, 
42231                 Zero
42232             })
42233             Method (FSDD, 0, NotSerialized)
42234             {
42235                 If ((XTUS == Zero))
42236                 {
42237                     Return (Zero)
42238                 }
42239 
42240                 If (\ECON)
42241                 {
42242                     RPMV [0x02] = \_SB.PCI0.LPCB.H_EC.ECRD (RefOf (\_SB.PCI0.LPCB.H_EC.CFSP))
42243                 }
42244 
42245                 Return (RPMV) /* \_SB_.PTMD.RPMV */
42246             }
42247 
42248             Method (SDSP, 0, NotSerialized)
42249             {
42250                 Return (0x0A)
42251             }
42252         }
42253     }
42254 
42255     If ((GBES != 0x00)){}
42256     If (((RCG0 & 0x80) == 0x80))
42257     {
42258         Scope (\_SB.PCI0.RP07)
42259         {
42260             Name (BRST, Package (0x02)
42261             {
42262                 0x04050001, 
42263                 0x00
42264             })
42265             Name (RSTX, Package (0x02)
42266             {
42267                 0x00, 
42268                 0x00
42269             })
42270             Name (PWRG, Package (0x02)
42271             {
42272                 0x0403000D, 
42273                 0x01
42274             })
42275             Name (WAKG, 0x0400000B)
42276             Name (SCLK, 0x08)
42277             Method (RSTG, 0, NotSerialized)
42278             {
42279                 RSTX [0x00] = PRST /* External reference */
42280                 RSTX [0x01] = WPRP /* External reference */
42281                 Return (RSTX) /* \_SB_.PCI0.RP07.RSTX */
42282             }
42283 
42284             Name (WKEN, 0x00)
42285             Name (MOL3, 0x01)
42286             Name (OFEN, 0x01)
42287             Name (FLGN, 0x00)
42288             Name (FLGF, 0x00)
42289             Name (FLGW, 0x00)
42290             Method (PC2M, 1, Serialized)
42291             {
42292                 Local0 = \_SB.PCI0.GPCB ()
42293                 Local0 += ((Arg0 & 0x001F0000) >> 0x01)
42294                 Local0 += ((Arg0 & 0x07) << 0x0C)
42295                 Return (Local0)
42296             }
42297 
42298             Method (GMIO, 1, Serialized)
42299             {
42300                 OperationRegion (PXCS, SystemMemory, PC2M (\_SB.PCI0.RP07._ADR ()), 0x20)
42301                 Field (PXCS, AnyAcc, NoLock, Preserve)
42302                 {
42303                     Offset (0x18), 
42304                     PBUS,   8, 
42305                     SBUS,   8
42306                 }
42307 
42308                 Local0 = \_SB.PCI0.GPCB ()
42309                 Local0 += ((Arg0 & 0x001F0000) >> 0x01)
42310                 Local0 += ((Arg0 & 0x07) << 0x0C)
42311                 Local0 += (SBUS << 0x14)
42312                 Return (Local0)
42313             }
42314 
42315             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
42316             {
42317                 If ((WRTO == 0x01))
42318                 {
42319                     Return (0x03)
42320                 }
42321                 Else
42322                 {
42323                     Return (0x00)
42324                 }
42325             }
42326 
42327             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
42328             {
42329                 If (Arg1)
42330                 {
42331                     WKEN = 0x00
42332                 }
42333                 ElseIf ((Arg0 && Arg2))
42334                 {
42335                     WKEN = 0x01
42336                 }
42337                 Else
42338                 {
42339                     WKEN = 0x00
42340                 }
42341 
42342                 If ((Arg0 == 0x00))
42343                 {
42344                     MOL3 = 0x01
42345                 }
42346                 Else
42347                 {
42348                     MOL3 = 0x00
42349                 }
42350             }
42351 
42352             PowerResource (PXP, 0x00, 0x0000)
42353             {
42354                 Name (WOFF, 0x00)
42355                 Method (_STA, 0, NotSerialized)  // _STA: Status
42356                 {
42357                     If ((VDID == 0xFFFFFFFF))
42358                     {
42359                         Return (0x00)
42360                     }
42361 
42362                     Return (PSTA ())
42363                 }
42364 
42365                 Method (_ON, 0, NotSerialized)  // _ON_: Power On
42366                 {
42367                     FLGN = MOL3 /* \_SB_.PCI0.RP07.MOL3 */
42368                     If ((VDID == 0xFFFFFFFF))
42369                     {
42370                         Return (Zero)
42371                     }
42372 
42373                     If (CondRefOf (^WOFF))
42374                     {
42375                         If ((^WOFF != Zero))
42376                         {
42377                             Local0 = ((Timer - ^WOFF) / 0x2710)
42378                             If ((Local0 < 0x01F4))
42379                             {
42380                                 Sleep ((0x01F4 - Local0))
42381                             }
42382 
42383                             ^WOFF = 0x00
42384                         }
42385                     }
42386 
42387                     PON ()
42388                     L23D ()
42389                     If (FLGN)
42390                     {
42391                         Sleep (0x01F4)
42392                     }
42393 
42394                     OFEN = 0x01
42395                 }
42396 
42397                 Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
42398                 {
42399                     FLGF = MOL3 /* \_SB_.PCI0.RP07.MOL3 */
42400                     FLGW = WKEN /* \_SB_.PCI0.RP07.WKEN */
42401                     If ((VDID == 0xFFFFFFFF))
42402                     {
42403                         Return (Zero)
42404                     }
42405 
42406                     If ((OFEN == 0x00))
42407                     {
42408                         Return (Zero)
42409                     }
42410 
42411                     DL23 ()
42412                     If (FLGF)
42413                     {
42414                         \PINP.ON (BRST)
42415                         If ((WNSU == 0x01))
42416                         {
42417                             Sleep (0x64)
42418                         }
42419                         ElseIf (((WNSU == 0x02) || (WNSU == 0x03)))
42420                         {
42421                             Sleep (0x1E)
42422                             POFF ()
42423                             Sleep (0x0E)
42424                         }
42425 
42426                         \PIN.OFF (PWRG)
42427                         If (CondRefOf (^WOFF))
42428                         {
42429                             ^WOFF = Timer
42430                         }
42431                     }
42432 
42433                     If (CondRefOf (WAKG))
42434                     {
42435                         If (FLGW)
42436                         {
42437                             \_SB.SHPO (WAKG, 0x00)
42438                         }
42439                         Else
42440                         {
42441                             \_SB.SHPO (WAKG, 0x01)
42442                         }
42443                     }
42444 
42445                     OFEN = 0x00
42446                 }
42447             }
42448 
42449             Method (PSTA, 0, NotSerialized)
42450             {
42451                 If (CondRefOf (PWRG))
42452                 {
42453                     If (!\PIN.STA (PWRG))
42454                     {
42455                         Return (0x00)
42456                     }
42457                 }
42458 
42459                 If (\PIN.STA (RSTG ()))
42460                 {
42461                     Return (0x00)
42462                 }
42463                 Else
42464                 {
42465                     Return (0x01)
42466                 }
42467             }
42468 
42469             Method (PON, 0, NotSerialized)
42470             {
42471                 \_SB.PSD0 (SLOT)
42472                 If (FLGN)
42473                 {
42474                     If (CondRefOf (PWRG))
42475                     {
42476                         \PIN.ON (PWRG)
42477                         Sleep (PEP0)
42478                     }
42479 
42480                     \PINP.OFF (BRST)
42481                     Sleep (0x14)
42482                 }
42483                 Else
42484                 {
42485                     Stall (0x14)
42486                 }
42487 
42488                 If (CondRefOf (SCLK))
42489                 {
42490                     SPCO (SCLK, 0x01)
42491                 }
42492 
42493                 If (FLGN)
42494                 {
42495                     Sleep (0x64)
42496                 }
42497 
42498                 \PIN.OFF (RSTG ())
42499             }
42500 
42501             Method (POFF, 0, NotSerialized)
42502             {
42503                 \PIN.ON (RSTG ())
42504                 \_SB.PSD3 (SLOT)
42505                 If (CondRefOf (SCLK))
42506                 {
42507                     SPCO (SCLK, 0x00)
42508                     Sleep (0x10)
42509                 }
42510             }
42511 
42512             Method (_PR0, 0, NotSerialized)  // _PR0: Power Resources for D0
42513             {
42514                 Return (Package (0x01)
42515                 {
42516                     PXP
42517                 })
42518             }
42519 
42520             Scope (PXSX)
42521             {
42522                 Name (L850, 0x00)
42523                 Method (_PR0, 0, NotSerialized)  // _PR0: Power Resources for D0
42524                 {
42525                     Return (Package (0x01)
42526                     {
42527                         \_SB.PCI0.RP07.PXP
42528                     })
42529                 }
42530 
42531                 Method (_RST, 0, NotSerialized)  // _RST: Device Reset
42532                 {
42533                     OperationRegion (PXCS, SystemMemory, GMIO (\_SB.PCI0.RP07.PXSX._ADR), 0x0480)
42534                     Field (PXCS, AnyAcc, NoLock, Preserve)
42535                     {
42536                         VDID,   32, 
42537                         Offset (0x78), 
42538                         DCTL,   16, 
42539                         DSTS,   16, 
42540                         Offset (0x80), 
42541                         LCTL,   16, 
42542                         LSTS,   16, 
42543                         Offset (0x98), 
42544                         DCT2,   16, 
42545                         Offset (0x148), 
42546                         Offset (0x14C), 
42547                         MXSL,   16, 
42548                         MNSL,   16, 
42549                         Offset (0x158), 
42550                         L1SC,   32
42551                     }
42552 
42553                     If ((VDID == 0x73608086))
42554                     {
42555                         L850 = 0x01
42556                     }
42557 
42558                     \PINP.ON (\_SB.PCI0.RP07.BRST)
42559                     Sleep (0xC8)
42560                     Notify (\_SB.PCI0.RP07.PXSX, 0x01) // Device Check
42561                     \PIN.OFF (\_SB.PCI0.RP07.RSTG ())
42562                     \PINP.OFF (\_SB.PCI0.RP07.BRST)
42563                     If ((L850 == 0x01))
42564                     {
42565                         Sleep (0xC8)
42566                     }
42567 
42568                     Local0 = 0x00
42569                     While ((\_SB.PCI0.RP07.LASX == 0x00))
42570                     {
42571                         If ((Local0 > 0x14))
42572                         {
42573                             Break
42574                         }
42575 
42576                         Sleep (0x10)
42577                         Local0++
42578                     }
42579 
42580                     Sleep (0x0A)
42581                     L1SC |= 0x0F
42582                     If ((NEXP == 0x00))
42583                     {
42584                         DCTL = \WDCT /* External reference */
42585                         LCTL = \WLCT /* External reference */
42586                         DCT2 = \WDC2 /* External reference */
42587                         MXSL = \WMXS /* External reference */
42588                         MNSL = \WMNS /* External reference */
42589                     }
42590                     Else
42591                     {
42592                         LCTL = 0x0142
42593                     }
42594 
42595                     Notify (\_SB.PCI0.RP07.PXSX, 0x01) // Device Check
42596                 }
42597             }
42598         }
42599     }
42600 
42601     If (((\RTBT == 0x01) && (\TBTS == 0x01)))
42602     {
42603         Scope (\_SB.PCI0.RP05)
42604         {
42605             Name (RSTG, Package (0x02)
42606             {
42607                 0x04060006, 
42608                 0x00
42609             })
42610             Name (PWRG, Package (0x02)
42611             {
42612                 0x04060004, 
42613                 0x01
42614             })
42615             Name (WAKG, 0x04060007)
42616             Name (SCLK, 0x01)
42617             Name (TUID, 0x00)
42618             Name (G2SD, 0x00)
42619             Name (RSTF, 0x00)
42620             Name (WKEN, 0x00)
42621             Name (_S0W, 0x04)  // _S0W: S0 Device Wake State
42622             Method (_DSD, 0, NotSerialized)  // _DSD: Device-Specific Data
42623             {
42624                 Return (Package (0x04)
42625                 {
42626                     ToUUID ("6211e2c0-58a3-4af3-90e1-927a4e0c55a4"), 
42627                     Package (0x01)
42628                     {
42629                         Package (0x02)
42630                         {
42631                             "HotPlugSupportInD3", 
42632                             0x01
42633                         }
42634                     }, 
42635 
42636                     ToUUID ("efcc06cc-73ac-4bc3-bff0-76143807c389"), 
42637                     Package (0x02)
42638                     {
42639                         Package (0x02)
42640                         {
42641                             "ExternalFacingPort", 
42642                             0x01
42643                         }, 
42644 
42645                         Package (0x02)
42646                         {
42647                             "UID", 
42648                             TUID
42649                         }
42650                     }
42651                 })
42652             }
42653 
42654             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
42655             {
42656                 If ((Arg1 >= 0x01))
42657                 {
42658                     WKEN = 0x00
42659                     TOFF = 0x02
42660                 }
42661                 ElseIf ((Arg0 && Arg2))
42662                 {
42663                     WKEN = 0x01
42664                     TOFF = 0x01
42665                 }
42666                 Else
42667                 {
42668                     WKEN = 0x00
42669                     TOFF = 0x00
42670                 }
42671             }
42672 
42673             PowerResource (PXP, 0x00, 0x0000)
42674             {
42675                 Method (_STA, 0, NotSerialized)  // _STA: Status
42676                 {
42677                     Return (PSTA ())
42678                 }
42679 
42680                 Method (_ON, 0, NotSerialized)  // _ON_: Power On
42681                 {
42682                     TRDO = 0x01
42683                     PON ()
42684                     TRDO = 0x00
42685                 }
42686 
42687                 Method (_OFF, 0, NotSerialized)  // _OFF: Power Off
42688                 {
42689                     TRD3 = 0x01
42690                     POFF ()
42691                     TRD3 = 0x00
42692                 }
42693             }
42694 
42695             Method (PSTA, 0, NotSerialized)
42696             {
42697                 If ((RSTF == 0x01))
42698                 {
42699                     Return (0x00)
42700                 }
42701                 Else
42702                 {
42703                     Return (0x01)
42704                 }
42705             }
42706 
42707             Method (SXEX, 0, Serialized)
42708             {
42709                 Local7 = \MMTB (RPS0, RPT0)
42710                 OperationRegion (TBDI, SystemMemory, Local7, 0x0550)
42711                 Field (TBDI, DWordAcc, NoLock, Preserve)
42712                 {
42713                     DIVI,   32, 
42714                     CMDR,   32, 
42715                     Offset (0x548), 
42716                     TB2P,   32, 
42717                     P2TB,   32
42718                 }
42719 
42720                 Local1 = 0xC8
42721                 P2TB = 0x09
42722                 While ((Local1 > 0x00))
42723                 {
42724                     Local1 = (Local1 - 0x01)
42725                     Local2 = TB2P /* \_SB_.PCI0.RP05.SXEX.TB2P */
42726                     If ((Local2 == 0xFFFFFFFF))
42727                     {
42728                         Return (Zero)
42729                     }
42730 
42731                     If ((Local2 & 0x01))
42732                     {
42733                         Break
42734                     }
42735 
42736                     Sleep (0x05)
42737                 }
42738 
42739                 P2TB = 0x00
42740                 Local1 = 0x01F4
42741                 While ((Local1 > 0x00))
42742                 {
42743                     Local1 = (Local1 - 0x01)
42744                     Local2 = TB2P /* \_SB_.PCI0.RP05.SXEX.TB2P */
42745                     If ((Local2 == 0xFFFFFFFF))
42746                     {
42747                         Return (Zero)
42748                     }
42749 
42750                     If ((DIVI != 0xFFFFFFFF))
42751                     {
42752                         Break
42753                     }
42754 
42755                     Sleep (0x0A)
42756                 }
42757             }
42758 
42759             Method (PON, 0, NotSerialized)
42760             {
42761                 Local7 = \MMRP (\RPS0, \RPT0)
42762                 OperationRegion (L23P, SystemMemory, Local7, 0x0480)
42763                 Field (L23P, WordAcc, NoLock, Preserve)
42764                 {
42765                     VDID,   32, 
42766                     Offset (0x50), 
42767                     L0SE,   1, 
42768                     Offset (0x52), 
42769                         ,   13, 
42770                     LASX,   1, 
42771                     Offset (0x5A), 
42772                         ,   3, 
42773                     PDCX,   1, 
42774                         ,   2, 
42775                     PDSX,   1, 
42776                     Offset (0x5B), 
42777                     Offset (0x60), 
42778                     Offset (0x62), 
42779                     PSPX,   1, 
42780                     Offset (0xA4), 
42781                     PSD0,   2, 
42782                     Offset (0xD8), 
42783                         ,   30, 
42784                     HPEX,   1, 
42785                     PMEX,   1, 
42786                     Offset (0xE0), 
42787                         ,   7, 
42788                     NCB7,   1, 
42789                     Offset (0xE2), 
42790                         ,   2, 
42791                     L2TE,   1, 
42792                     L2TR,   1, 
42793                     Offset (0x420), 
42794                         ,   30, 
42795                     DPGE,   1
42796                 }
42797 
42798                 Field (L23P, AnyAcc, NoLock, WriteAsZeros)
42799                 {
42800                     Offset (0xDC), 
42801                         ,   30, 
42802                     HPSX,   1, 
42803                     PMSX,   1
42804                 }
42805 
42806                 Local6 = \MMTB (\RPS0, \RPT0)
42807                 OperationRegion (TBDI, SystemMemory, Local6, 0x0550)
42808                 Field (TBDI, DWordAcc, NoLock, Preserve)
42809                 {
42810                     DIVI,   32, 
42811                     CMDR,   32, 
42812                     Offset (0x84), 
42813                     TBPS,   2, 
42814                     Offset (0x548), 
42815                     TB2P,   32, 
42816                     P2TB,   32
42817                 }
42818 
42819                 If (TBPE)
42820                 {
42821                     Return (Zero)
42822                 }
42823 
42824                 G2SD = 0x00
42825                 If (\RTBC)
42826                 {
42827                     If (CondRefOf (SCLK))
42828                     {
42829                         SPCO (SCLK, 0x01)
42830                     }
42831 
42832                     Sleep (\TBCD)
42833                 }
42834 
42835                 If (CondRefOf (PWRG))
42836                 {
42837                     \PIN.ON (PWRG)
42838                     Sleep (0x0A)
42839                 }
42840 
42841                 \PIN.OFF (RSTG)
42842                 RSTF = 0x00
42843                 If ((NCB7 != 0x01))
42844                 {
42845                     Return (Zero)
42846                 }
42847 
42848                 DPGE = 0x00
42849                 L2TR = 0x01
42850                 Sleep (0x10)
42851                 Local0 = 0x00
42852                 While (L2TR)
42853                 {
42854                     If ((Local0 > 0x04))
42855                     {
42856                         Break
42857                     }
42858 
42859                     Sleep (0x10)
42860                     Local0++
42861                 }
42862 
42863                 NCB7 = 0x00
42864                 DPGE = 0x01
42865                 Local0 = 0x00
42866                 While ((LASX == 0x00))
42867                 {
42868                     If ((Local0 > 0x08))
42869                     {
42870                         Break
42871                     }
42872 
42873                     Sleep (0x10)
42874                     Local0++
42875                 }
42876 
42877                 Local1 = PSD0 /* \_SB_.PCI0.RP05.PON_.PSD0 */
42878                 PSD0 = 0x00
42879                 Local2 = 0x14
42880                 While ((Local2 > 0x00))
42881                 {
42882                     Local2 = (Local2 - 0x01)
42883                     Local3 = TB2P /* \_SB_.PCI0.RP05.PON_.TB2P */
42884                     If ((Local3 != 0xFFFFFFFF))
42885                     {
42886                         Break
42887                     }
42888 
42889                     Sleep (0x0A)
42890                 }
42891 
42892                 If ((Local2 <= 0x00)){}
42893                 SXEX ()
42894                 PSD0 = Local1
42895                 If (CondRefOf (PDON))
42896                 {
42897                     PDON ()
42898                 }
42899             }
42900 
42901             Method (POFF, 0, NotSerialized)
42902             {
42903                 If ((TOFF == 0x00))
42904                 {
42905                     Return (Zero)
42906                 }
42907 
42908                 Local7 = \MMRP (\RPS0, \RPT0)
42909                 OperationRegion (L23P, SystemMemory, Local7, 0x0480)
42910                 Field (L23P, WordAcc, NoLock, Preserve)
42911                 {
42912                     VDID,   32, 
42913                     Offset (0x50), 
42914                     L0SE,   1, 
42915                     Offset (0x52), 
42916                         ,   13, 
42917                     LASX,   1, 
42918                     Offset (0x5A), 
42919                         ,   3, 
42920                     PDCX,   1, 
42921                         ,   2, 
42922                     PDSX,   1, 
42923                     Offset (0x5B), 
42924                     Offset (0x60), 
42925                     Offset (0x62), 
42926                     PSPX,   1, 
42927                     Offset (0xA4), 
42928                     PSD0,   2, 
42929                     Offset (0xD8), 
42930                         ,   30, 
42931                     HPEX,   1, 
42932                     PMEX,   1, 
42933                     Offset (0xE0), 
42934                         ,   7, 
42935                     NCB7,   1, 
42936                     Offset (0xE2), 
42937                         ,   2, 
42938                     L2TE,   1, 
42939                     L2TR,   1, 
42940                     Offset (0x420), 
42941                         ,   30, 
42942                     DPGE,   1
42943                 }
42944 
42945                 Field (L23P, AnyAcc, NoLock, WriteAsZeros)
42946                 {
42947                     Offset (0xDC), 
42948                         ,   30, 
42949                     HPSX,   1, 
42950                     PMSX,   1
42951                 }
42952 
42953                 Local6 = \MMTB (RPS0, RPT0)
42954                 OperationRegion (TBDI, SystemMemory, Local6, 0x0550)
42955                 Field (TBDI, DWordAcc, NoLock, Preserve)
42956                 {
42957                     DIVI,   32, 
42958                     CMDR,   32, 
42959                     Offset (0x84), 
42960                     TBPS,   2, 
42961                     Offset (0x548), 
42962                     TB2P,   32, 
42963                     P2TB,   32
42964                 }
42965 
42966                 Local6 += 0x00108000
42967                 OperationRegion (DSP0, SystemMemory, Local6, 0x0100)
42968                 Field (DSP0, DWordAcc, NoLock, Preserve)
42969                 {
42970                     Offset (0xD0), 
42971                         ,   29, 
42972                     LAI0,   1, 
42973                     Offset (0xD8), 
42974                         ,   22, 
42975                     PDS0,   1
42976                 }
42977 
42978                 Local6 += 0x00018000
42979                 OperationRegion (DSP1, SystemMemory, Local6, 0x0100)
42980                 Field (DSP1, DWordAcc, NoLock, Preserve)
42981                 {
42982                     Offset (0xD0), 
42983                         ,   29, 
42984                     LAI1,   1, 
42985                     Offset (0xD8), 
42986                         ,   22, 
42987                     PDS1,   1
42988                 }
42989 
42990                 Local1 = PSD0 /* \_SB_.PCI0.RP05.POFF.PSD0 */
42991                 PSD0 = 0x00
42992                 Local3 = P2TB /* \_SB_.PCI0.RP05.POFF.P2TB */
42993                 If ((TOFF > 0x01))
42994                 {
42995                     TOFF = 0x00
42996                     Sleep (0x0A)
42997                     PSD0 = Local1
42998                     RSTF = 0x01
42999                     Return (Zero)
43000                 }
43001 
43002                 TOFF = 0x00
43003                 Sleep (0x0A)
43004                 Local6 = TBPS /* \_SB_.PCI0.RP05.POFF.TBPS */
43005                 TBPS = 0x00
43006                 Sleep (0x0A)
43007                 Local2 = PDS0 /* \_SB_.PCI0.RP05.POFF.PDS0 */
43008                 Local3 = PDS1 /* \_SB_.PCI0.RP05.POFF.PDS1 */
43009                 TBPS = Local6
43010                 PSD0 = Local1
43011                 L2TE = 0x01
43012                 Sleep (0x10)
43013                 Local0 = 0x00
43014                 While (L2TE)
43015                 {
43016                     If ((Local0 > 0x04))
43017                     {
43018                         Break
43019                     }
43020 
43021                     Sleep (0x10)
43022                     Local0++
43023                 }
43024 
43025                 NCB7 = 0x01
43026                 \PIN.ON (RSTG)
43027                 RSTF = 0x01
43028                 If (\RTBC)
43029                 {
43030                     If (CondRefOf (SCLK))
43031                     {
43032                         SPCO (SCLK, 0x00)
43033                     }
43034 
43035                     Sleep (0x10)
43036                 }
43037 
43038                 If (CondRefOf (PWRG))
43039                 {
43040                     Sleep (0x0A)
43041                     If (CondRefOf (WAKP))
43042                     {
43043                         If (((WAKP == 0x00) || !WKEN))
43044                         {
43045                             \PIN.OFF (PWRG)
43046                         }
43047                     }
43048                     Else
43049                     {
43050                         \PIN.OFF (PWRG)
43051                     }
43052                 }
43053 
43054                 If (CondRefOf (WAKG))
43055                 {
43056                     If (((WAKG != 0x00) && WKEN))
43057                     {
43058                         \_SB.SHPO (WAKG, 0x00)
43059                     }
43060                 }
43061 
43062                 TBPE = 0x00
43063                 Local6 = \TBOD /* External reference */
43064                 Local7 = (Local6 & 0x7FFF)
43065                 Local6 &= 0x8000
43066                 If ((Local6 == 0x00))
43067                 {
43068                     Sleep (\TBOD)
43069                 }
43070                 ElseIf (((Local2 == 0x01) || (Local3 == 0x01)))
43071                 {
43072                     Sleep (Local7)
43073                 }
43074                 Else
43075                 {
43076                     Sleep (0x03E8)
43077                 }
43078 
43079                 If (CondRefOf (PDOF))
43080                 {
43081                     If (PSON)
43082                     {
43083                         PDOF ()
43084                     }
43085                 }
43086             }
43087 
43088             Method (_PR0, 0, NotSerialized)  // _PR0: Power Resources for D0
43089             {
43090                 Return (Package (0x01)
43091                 {
43092                     PXP
43093                 })
43094             }
43095 
43096             Method (_PR3, 0, NotSerialized)  // _PR3: Power Resources for D3hot
43097             {
43098                 Return (Package (0x01)
43099                 {
43100                     PXP
43101                 })
43102             }
43103 
43104             Method (TBNF, 0, NotSerialized)
43105             {
43106                 Notify (\_SB.PCI0.RP05, 0x02) // Device Wake
43107             }
43108         }
43109     }
43110 
43111     Scope (\)
43112     {
43113         Name (UPC0, Package (0x04)
43114         {
43115             0xFF, 
43116             0x09, 
43117             0x00, 
43118             0x00
43119         })
43120         Name (PLD0, Buffer (0x10)
43121         {
43122             /* 0000 */  0x81, 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0x00,  // ........
43123             /* 0008 */  0x51, 0x12, 0x80, 0x00, 0x03, 0x00, 0x00, 0x00   // Q.......
43124         })
43125         Name (UPC1, Package (0x04)
43126         {
43127             0xFF, 
43128             0x00, 
43129             0x00, 
43130             0x00
43131         })
43132         Name (PLD1, Buffer (0x10)
43133         {
43134             /* 0000 */  0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
43135             /* 0008 */  0x59, 0x12, 0x10, 0x01, 0x03, 0x00, 0x00, 0x00   // Y.......
43136         })
43137         Name (UPC2, Package (0x04)
43138         {
43139             0xFF, 
43140             0x00, 
43141             0x00, 
43142             0x00
43143         })
43144         Name (PLD2, Buffer (0x10)
43145         {
43146             /* 0000 */  0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
43147             /* 0008 */  0x51, 0x10, 0x00, 0x02, 0x03, 0x00, 0x00, 0x00   // Q.......
43148         })
43149         Name (UPC3, Package (0x04)
43150         {
43151             0xFF, 
43152             0x09, 
43153             0x00, 
43154             0x00
43155         })
43156         Name (PLD3, Buffer (0x10)
43157         {
43158             /* 0000 */  0x81, 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0x00,  // ........
43159             /* 0008 */  0x51, 0x11, 0x80, 0x02, 0x03, 0x00, 0x00, 0x00   // Q.......
43160         })
43161         Name (UPCI, Package (0x04)
43162         {
43163             0x00, 
43164             0xFF, 
43165             0x00, 
43166             0x00
43167         })
43168         Name (PLDI, Buffer (0x10)
43169         {
43170             /* 0000 */  0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
43171             /* 0008 */  0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // 0.......
43172         })
43173         Name (PLDC, Buffer (0x14)
43174         {
43175             /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
43176             /* 0008 */  0x24, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // $.......
43177             /* 0010 */  0xDD, 0x00, 0x95, 0x00                           // ....
43178         })
43179     }
43180 
43181     Scope (\_SB.PCI0.XHC.RHUB)
43182     {
43183         Name (H2CN, 0x01)
43184         Name (H2VS, 0x01)
43185         Name (H2TC, 0x01)
43186         Name (H2CR, 0x01)
43187         Name (S2CN, 0x01)
43188         Name (S2VS, 0x01)
43189         Name (S2CP, 0x02)
43190         Name (S2TC, 0x01)
43191         Name (S2CR, 0x01)
43192         Name (H5CN, 0x01)
43193         Name (H5VS, 0x01)
43194         Name (H5TC, 0x01)
43195         Name (H5CR, 0x02)
43196         Name (S5CN, 0x00)
43197         Name (S5VS, 0x00)
43198         Name (S5CP, 0x00)
43199         Name (S5TC, 0x00)
43200         Name (S5CR, 0x00)
43201         Method (GPLD, 2, Serialized)
43202         {
43203             Name (PCKG, Package (0x01)
43204             {
43205                 Buffer (0x10){}
43206             })
43207             CreateField (DerefOf (PCKG [0x00]), 0x00, 0x07, REV)
43208             REV = 0x01
43209             CreateField (DerefOf (PCKG [0x00]), 0x40, 0x01, VISI)
43210             VISI = Arg0
43211             CreateField (DerefOf (PCKG [0x00]), 0x57, 0x08, GPOS)
43212             GPOS = Arg1
43213             Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.GPLD.PCKG */
43214         }
43215 
43216         Method (TPLD, 2, Serialized)
43217         {
43218             Name (PCKG, Package (0x01)
43219             {
43220                 Buffer (0x10){}
43221             })
43222             CreateField (DerefOf (PCKG [Zero]), Zero, 0x07, REV)
43223             REV = One
43224             CreateField (DerefOf (PCKG [Zero]), 0x40, One, VISI)
43225             VISI = Arg0
43226             CreateField (DerefOf (PCKG [Zero]), 0x57, 0x08, GPOS)
43227             GPOS = Arg1
43228             CreateField (DerefOf (PCKG [Zero]), 0x4A, 0x04, SHAP)
43229             SHAP = One
43230             CreateField (DerefOf (PCKG [Zero]), 0x20, 0x10, WID)
43231             WID = 0x08
43232             CreateField (DerefOf (PCKG [Zero]), 0x30, 0x10, HGT)
43233             HGT = 0x03
43234             Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.TPLD.PCKG */
43235         }
43236 
43237         Method (GUPC, 1, Serialized)
43238         {
43239             Name (PCKG, Package (0x04)
43240             {
43241                 0x00, 
43242                 0xFF, 
43243                 0x00, 
43244                 0x00
43245             })
43246             PCKG [0x00] = Arg0
43247             Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.GUPC.PCKG */
43248         }
43249 
43250         Method (TUPC, 1, Serialized)
43251         {
43252             Name (PCKG, Package (0x04)
43253             {
43254                 0x01, 
43255                 0x00, 
43256                 0x00, 
43257                 0x00
43258             })
43259             PCKG [0x01] = Arg0
43260             Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.TUPC.PCKG */
43261         }
43262     }
43263 
43264     Scope (\_SB.PCI0.XHC.RHUB.HS01)
43265     {
43266         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43267         {
43268             Name (UPCP, Package (0x04)
43269             {
43270                 0x00, 
43271                 0x00, 
43272                 0x00, 
43273                 0x00
43274             })
43275             CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS01._UPC.UPCP */
43276             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS01._UPC.UPCP */
43277         }
43278 
43279         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43280         {
43281             Name (PLDP, Buffer (0x10){})
43282             PLDP = \PLDI
43283             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.HS01._PLD.PLDP */
43284         }
43285     }
43286 
43287     Scope (\_SB.PCI0.XHC.RHUB.HS02)
43288     {
43289         Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
43290         {
43291             If ((H2TC == 0x00))
43292             {
43293                 Return (GUPC (H2CN))
43294             }
43295             Else
43296             {
43297                 Return (\_SB.UBTC.RUCC (H2CR, 0x01))
43298             }
43299         }
43300 
43301         Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
43302         {
43303             If ((H2TC == 0x00))
43304             {
43305                 Return (GPLD (H2VS, 0x01))
43306             }
43307             Else
43308             {
43309                 Return (\_SB.UBTC.RUCC (H2CR, 0x02))
43310             }
43311         }
43312     }
43313 
43314     Scope (\_SB.PCI0.XHC.RHUB.HS03)
43315     {
43316         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43317         {
43318             Name (UPCP, Package (0x04)
43319             {
43320                 0x00, 
43321                 0x00, 
43322                 0x00, 
43323                 0x00
43324             })
43325             CopyObject (\UPC1, UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS03._UPC.UPCP */
43326             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS03._UPC.UPCP */
43327         }
43328 
43329         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43330         {
43331             Name (PLDP, Buffer (0x10){})
43332             PLDP = \PLD1
43333             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.HS03._PLD.PLDP */
43334         }
43335     }
43336 
43337     Scope (\_SB.PCI0.XHC.RHUB.HS04)
43338     {
43339         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43340         {
43341             Name (UPCP, Package (0x04)
43342             {
43343                 0x00, 
43344                 0x00, 
43345                 0x00, 
43346                 0x00
43347             })
43348             CopyObject (\UPC2, UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS04._UPC.UPCP */
43349             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS04._UPC.UPCP */
43350         }
43351 
43352         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43353         {
43354             Name (PLDP, Buffer (0x10){})
43355             PLDP = \PLD2
43356             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.HS04._PLD.PLDP */
43357         }
43358     }
43359 
43360     Scope (\_SB.PCI0.XHC.RHUB.HS05)
43361     {
43362         Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
43363         {
43364             If ((H5TC == 0x00))
43365             {
43366                 Return (GUPC (H5CN))
43367             }
43368             Else
43369             {
43370                 Return (\_SB.UBTC.RUCC (H5CR, 0x01))
43371             }
43372         }
43373 
43374         Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
43375         {
43376             If ((H5TC == 0x00))
43377             {
43378                 Return (GPLD (H5VS, 0x05))
43379             }
43380             Else
43381             {
43382                 Return (\_SB.UBTC.RUCC (H5CR, 0x02))
43383             }
43384         }
43385     }
43386 
43387     Scope (\_SB.PCI0.XHC.RHUB.HS06)
43388     {
43389         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43390         {
43391             Name (UPCP, Package (0x04)
43392             {
43393                 0x00, 
43394                 0x00, 
43395                 0x00, 
43396                 0x00
43397             })
43398             CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS06._UPC.UPCP */
43399             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS06._UPC.UPCP */
43400         }
43401 
43402         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43403         {
43404             Name (PLDP, Buffer (0x10){})
43405             PLDP = \PLDI
43406             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.HS06._PLD.PLDP */
43407         }
43408     }
43409 
43410     Scope (\_SB.PCI0.XHC.RHUB.HS07)
43411     {
43412         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43413         {
43414             Name (UPCP, Package (0x04)
43415             {
43416                 0x00, 
43417                 0x00, 
43418                 0x00, 
43419                 0x00
43420             })
43421             CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS07._UPC.UPCP */
43422             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS07._UPC.UPCP */
43423         }
43424 
43425         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43426         {
43427             Name (PLDP, Buffer (0x10){})
43428             PLDP = \PLDI
43429             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.HS07._PLD.PLDP */
43430         }
43431     }
43432 
43433     Scope (\_SB.PCI0.XHC.RHUB.HS08)
43434     {
43435         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43436         {
43437             Name (UPCP, Package (0x04)
43438             {
43439                 0x00, 
43440                 0x00, 
43441                 0x00, 
43442                 0x00
43443             })
43444             CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS08._UPC.UPCP */
43445             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS08._UPC.UPCP */
43446         }
43447 
43448         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43449         {
43450             Name (PLDP, Buffer (0x10){})
43451             PLDP = \PLDI
43452             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.HS08._PLD.PLDP */
43453         }
43454     }
43455 
43456     Scope (\_SB.PCI0.XHC.RHUB.HS09)
43457     {
43458         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43459         {
43460             Name (UPCP, Package (0x04)
43461             {
43462                 0x00, 
43463                 0x00, 
43464                 0x00, 
43465                 0x00
43466             })
43467             CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS09._UPC.UPCP */
43468             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS09._UPC.UPCP */
43469         }
43470 
43471         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43472         {
43473             Name (PLDP, Buffer (0x10){})
43474             PLDP = \PLDI
43475             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.HS09._PLD.PLDP */
43476         }
43477     }
43478 
43479     Scope (\_SB.PCI0.XHC.RHUB.HS10)
43480     {
43481         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43482         {
43483             Name (UPCP, Package (0x04)
43484             {
43485                 0x00, 
43486                 0x00, 
43487                 0x00, 
43488                 0x00
43489             })
43490             CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS10._UPC.UPCP */
43491             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.HS10._UPC.UPCP */
43492         }
43493 
43494         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43495         {
43496             Name (PLDP, Buffer (0x10){})
43497             PLDP = \PLDI
43498             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.HS10._PLD.PLDP */
43499         }
43500     }
43501 
43502     Scope (\_SB.PCI0.XHC.RHUB.SS01)
43503     {
43504         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43505         {
43506             Name (UPCP, Package (0x04)
43507             {
43508                 0x00, 
43509                 0x00, 
43510                 0x00, 
43511                 0x00
43512             })
43513             CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHC_.RHUB.SS01._UPC.UPCP */
43514             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.SS01._UPC.UPCP */
43515         }
43516 
43517         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43518         {
43519             Name (PLDP, Buffer (0x10){})
43520             PLDP = \PLDI
43521             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.SS01._PLD.PLDP */
43522         }
43523     }
43524 
43525     Scope (\_SB.PCI0.XHC.RHUB.SS02)
43526     {
43527         Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
43528         {
43529             If ((S2TC == 0x00))
43530             {
43531                 Return (GUPC (S2CN))
43532             }
43533             Else
43534             {
43535                 Return (\_SB.UBTC.RUCC (S2CR, 0x01))
43536             }
43537         }
43538 
43539         Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
43540         {
43541             If ((S2TC == 0x00))
43542             {
43543                 Return (GPLD (S2VS, S2CP))
43544             }
43545             Else
43546             {
43547                 Return (\_SB.UBTC.RUCC (S2CR, 0x02))
43548             }
43549         }
43550     }
43551 
43552     Scope (\_SB.PCI0.XHC.RHUB.SS03)
43553     {
43554         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43555         {
43556             Name (UPCP, Package (0x04)
43557             {
43558                 0x00, 
43559                 0x00, 
43560                 0x00, 
43561                 0x00
43562             })
43563             CopyObject (\UPC1, UPCP) /* \_SB_.PCI0.XHC_.RHUB.SS03._UPC.UPCP */
43564             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.SS03._UPC.UPCP */
43565         }
43566 
43567         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43568         {
43569             Name (PLDP, Buffer (0x10){})
43570             PLDP = \PLD1
43571             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.SS03._PLD.PLDP */
43572         }
43573     }
43574 
43575     Scope (\_SB.PCI0.XHC.RHUB.SS04)
43576     {
43577         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43578         {
43579             Name (UPCP, Package (0x04)
43580             {
43581                 0x00, 
43582                 0x00, 
43583                 0x00, 
43584                 0x00
43585             })
43586             CopyObject (\UPC2, UPCP) /* \_SB_.PCI0.XHC_.RHUB.SS04._UPC.UPCP */
43587             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.SS04._UPC.UPCP */
43588         }
43589 
43590         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43591         {
43592             Name (PLDP, Buffer (0x10){})
43593             PLDP = \PLD2
43594             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.SS04._PLD.PLDP */
43595         }
43596     }
43597 
43598     Scope (\_SB.PCI0.XHC.RHUB.SS05)
43599     {
43600         Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
43601         {
43602             If ((S5TC == 0x00))
43603             {
43604                 Return (GUPC (S5CN))
43605             }
43606             Else
43607             {
43608                 Return (\_SB.UBTC.RUCC (S5CR, 0x01))
43609             }
43610         }
43611 
43612         Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
43613         {
43614             If ((S5TC == 0x00))
43615             {
43616                 Return (GPLD (S5VS, S5CP))
43617             }
43618             Else
43619             {
43620                 Return (\_SB.UBTC.RUCC (S5CR, 0x02))
43621             }
43622         }
43623     }
43624 
43625     Scope (\_SB.PCI0.XHC.RHUB.SS06)
43626     {
43627         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43628         {
43629             Name (UPCP, Package (0x04)
43630             {
43631                 0x00, 
43632                 0x00, 
43633                 0x00, 
43634                 0x00
43635             })
43636             CopyObject (\UPCI, UPCP) /* \_SB_.PCI0.XHC_.RHUB.SS06._UPC.UPCP */
43637             Return (UPCP) /* \_SB_.PCI0.XHC_.RHUB.SS06._UPC.UPCP */
43638         }
43639 
43640         Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43641         {
43642             Name (PLDP, Buffer (0x10){})
43643             PLDP = \PLDI
43644             Return (PLDP) /* \_SB_.PCI0.XHC_.RHUB.SS06._PLD.PLDP */
43645         }
43646     }
43647 
43648     Scope (\_SB.PCI0.XHC.RHUB.HS08)
43649     {
43650         Device (WCAM)
43651         {
43652             Name (_ADR, 0x08)  // _ADR: Address
43653             Method (_STA, 0, NotSerialized)  // _STA: Status
43654             {
43655                 If (\WIN8)
43656                 {
43657                     Return (0x0F)
43658                 }
43659                 Else
43660                 {
43661                     Return (0x00)
43662                 }
43663             }
43664 
43665             Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43666             {
43667                 Return (\UPCI)
43668             }
43669 
43670             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43671             {
43672                 Return (\PLDC)
43673             }
43674         }
43675     }
43676 
43677     Scope (\_SB.PCI0.XHC.RHUB.HS08)
43678     {
43679         Device (ICAM)
43680         {
43681             Name (_ADR, 0x0A)  // _ADR: Address
43682             Method (_STA, 0, NotSerialized)  // _STA: Status
43683             {
43684                 If (\WIN8)
43685                 {
43686                     Return (0x0F)
43687                 }
43688                 Else
43689                 {
43690                     Return (0x00)
43691                 }
43692             }
43693 
43694             Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
43695             {
43696                 Return (\UPCI)
43697             }
43698 
43699             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
43700             {
43701                 Return (\PLDC)
43702             }
43703         }
43704     }
43705 
43706     Scope (\_SB.PCI0.XHC)
43707     {
43708         Name (UPWR, 0x00)
43709         Name (USPP, 0x00)
43710     }
43711 
43712     Scope (\_SB.PCI0.XHC.RHUB)
43713     {
43714         Method (PS0X, 0, Serialized)
43715         {
43716             \_SB.PCI0.XHC.USPP = 0x00
43717         }
43718 
43719         Method (PS2X, 0, Serialized)
43720         {
43721             OperationRegion (XHCM, SystemMemory, (ToInteger (MEMB) & 0xFFFFFFFFFFFF0000), 0x0600)
43722             Field (XHCM, DWordAcc, NoLock, Preserve)
43723             {
43724                 Offset (0x02), 
43725                 XHCV,   16, 
43726                 Offset (0x480), 
43727                 HP01,   1, 
43728                 Offset (0x490), 
43729                 HP02,   1, 
43730                 Offset (0x530), 
43731                 SP00,   1, 
43732                 Offset (0x540), 
43733                 SP01,   1
43734             }
43735 
43736             If ((XHCV == 0xFFFF))
43737             {
43738                 Return (Zero)
43739             }
43740 
43741             If (((HP01 == 0x00) && (SP00 == 0x00)))
43742             {
43743                 \_SB.PCI0.XHC.USPP |= 0x02
43744             }
43745 
43746             If (((HP02 == 0x00) && (SP01 == 0x00)))
43747             {
43748                 \_SB.PCI0.XHC.USPP |= 0x04
43749             }
43750         }
43751 
43752         Method (PS3X, 0, Serialized)
43753         {
43754         }
43755     }
43756 
43757     Scope (\_SB.PCI0.SAT0)
43758     {
43759         Scope (PRT0)
43760         {
43761             Name (DIP0, 0x00)
43762             Name (FDEV, Zero)
43763             Name (FDRP, Zero)
43764             Name (HDTF, Buffer (0x0E)
43765             {
43766                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43767                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5               // ......
43768             })
43769             Name (HETF, Buffer (0x15)
43770             {
43771                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43772                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09,  // ........
43773                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43774             })
43775             Name (ERTF, Buffer (0x15)
43776             {
43777                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43778                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
43779                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43780             })
43781             Name (HPTF, Buffer (0x15)
43782             {
43783                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43784                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
43785                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43786             })
43787             Name (HQTF, Buffer (0x1C)
43788             {
43789                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43790                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
43791                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00,  // ........
43792                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
43793             })
43794             Name (HXTF, Buffer (0x1C)
43795             {
43796                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43797                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
43798                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00,  // ........
43799                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
43800             })
43801             Name (DDTF, Buffer (0x0E)
43802             {
43803                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
43804                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3               // ......
43805             })
43806             CreateByteField (DDTF, 0x01, DTAT)
43807             CreateByteField (DDTF, 0x08, DTFT)
43808             Name (DGTF, Buffer (0x15)
43809             {
43810                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
43811                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03,  // ........
43812                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43813             })
43814             CreateByteField (DGTF, 0x01, GTAT)
43815             CreateByteField (DGTF, 0x08, GTFT)
43816             Method (_SDD, 1, NotSerialized)  // _SDD: Set Device Data
43817             {
43818                 ADBG ("PRT0: _SDD")
43819                 DIP0 = 0x00
43820                 If ((SizeOf (Arg0) == 0x0200))
43821                 {
43822                     CreateWordField (Arg0, 0x9C, M078)
43823                     If ((\DPP0 && (M078 & 0x08)))
43824                     {
43825                         DIP0 = 0x01
43826                     }
43827 
43828                     CreateByteField (Arg0, 0x9D, BFDS)
43829                     ToInteger (BFDS, FDEV) /* \_SB_.PCI0.SAT0.PRT0.FDEV */
43830                     CreateByteField (Arg0, 0x9A, BFRP)
43831                     ToInteger (BFRP, FDRP) /* \_SB_.PCI0.SAT0.PRT0.FDRP */
43832                 }
43833             }
43834 
43835             Method (_GTF, 0, NotSerialized)  // _GTF: Get Task File
43836             {
43837                 ADBG ("PRT0: _GTF")
43838                 If (DIP0)
43839                 {
43840                     If ((((DVS0 == 0x01) && ((FDEV & 0x01) == 0x01)) && 
43841                         ((FDRP & 0x80) == 0x80)))
43842                     {
43843                         Return (HQTF) /* \_SB_.PCI0.SAT0.PRT0.HQTF */
43844                     }
43845                     Else
43846                     {
43847                         Return (HPTF) /* \_SB_.PCI0.SAT0.PRT0.HPTF */
43848                     }
43849                 }
43850                 ElseIf ((((DVS0 == 0x01) && ((FDEV & 0x01) == 
43851                     0x01)) && ((FDRP & 0x80) == 0x80)))
43852                 {
43853                     Return (HETF) /* \_SB_.PCI0.SAT0.PRT0.HETF */
43854                 }
43855                 Else
43856                 {
43857                     Return (HDTF) /* \_SB_.PCI0.SAT0.PRT0.HDTF */
43858                 }
43859             }
43860         }
43861 
43862         Scope (PRT1)
43863         {
43864             Name (DIP0, 0x00)
43865             Name (FDEV, 0x00)
43866             Name (FDRP, 0x00)
43867             Name (HDTF, Buffer (0x0E)
43868             {
43869                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43870                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5               // ......
43871             })
43872             Name (HETF, Buffer (0x15)
43873             {
43874                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43875                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09,  // ........
43876                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43877             })
43878             Name (ERTF, Buffer (0x15)
43879             {
43880                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43881                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
43882                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43883             })
43884             Name (HPTF, Buffer (0x15)
43885             {
43886                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43887                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
43888                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43889             })
43890             Name (HQTF, Buffer (0x1C)
43891             {
43892                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43893                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
43894                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00,  // ........
43895                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
43896             })
43897             Name (HXTF, Buffer (0x1C)
43898             {
43899                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43900                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
43901                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00,  // ........
43902                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
43903             })
43904             Name (DDTF, Buffer (0x0E)
43905             {
43906                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
43907                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3               // ......
43908             })
43909             CreateByteField (DDTF, 0x01, DTAT)
43910             CreateByteField (DDTF, 0x08, DTFT)
43911             Name (DGTF, Buffer (0x15)
43912             {
43913                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
43914                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03,  // ........
43915                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43916             })
43917             CreateByteField (DGTF, 0x01, GTAT)
43918             CreateByteField (DGTF, 0x08, GTFT)
43919             Method (_SDD, 1, NotSerialized)  // _SDD: Set Device Data
43920             {
43921                 ADBG ("PRT1: _SDD")
43922                 DIP0 = 0x00
43923                 If ((SizeOf (Arg0) == 0x0200))
43924                 {
43925                     CreateWordField (Arg0, 0x9C, M078)
43926                     If ((\DPP1 && (M078 & 0x08)))
43927                     {
43928                         DIP0 = 0x01
43929                     }
43930 
43931                     CreateByteField (Arg0, 0x9D, BFDS)
43932                     ToInteger (BFDS, FDEV) /* \_SB_.PCI0.SAT0.PRT1.FDEV */
43933                     CreateByteField (Arg0, 0x9A, BFRP)
43934                     ToInteger (BFRP, FDRP) /* \_SB_.PCI0.SAT0.PRT1.FDRP */
43935                 }
43936             }
43937 
43938             Method (_GTF, 0, NotSerialized)  // _GTF: Get Task File
43939             {
43940                 ADBG ("PRT1: _GTF")
43941                 If (DIP0)
43942                 {
43943                     If ((((DVS1 == 0x01) && ((FDEV & 0x01) == 0x01)) && 
43944                         ((FDRP & 0x80) == 0x80)))
43945                     {
43946                         Return (HQTF) /* \_SB_.PCI0.SAT0.PRT1.HQTF */
43947                     }
43948                     Else
43949                     {
43950                         Return (HPTF) /* \_SB_.PCI0.SAT0.PRT1.HPTF */
43951                     }
43952                 }
43953                 ElseIf ((((DVS1 == 0x01) && ((FDEV & 0x01) == 
43954                     0x01)) && ((FDRP & 0x80) == 0x80)))
43955                 {
43956                     Return (HETF) /* \_SB_.PCI0.SAT0.PRT1.HETF */
43957                 }
43958                 Else
43959                 {
43960                     Return (HDTF) /* \_SB_.PCI0.SAT0.PRT1.HDTF */
43961                 }
43962             }
43963         }
43964 
43965         Scope (PRT2)
43966         {
43967             Name (DIP0, 0x00)
43968             Name (FDEV, 0x00)
43969             Name (FDRP, 0x00)
43970             Name (HDTF, Buffer (0x0E)
43971             {
43972                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43973                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5               // ......
43974             })
43975             Name (HETF, Buffer (0x15)
43976             {
43977                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43978                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09,  // ........
43979                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43980             })
43981             Name (ERTF, Buffer (0x15)
43982             {
43983                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43984                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
43985                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43986             })
43987             Name (HPTF, Buffer (0x15)
43988             {
43989                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43990                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
43991                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
43992             })
43993             Name (HQTF, Buffer (0x1C)
43994             {
43995                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
43996                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
43997                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00,  // ........
43998                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
43999             })
44000             Name (HXTF, Buffer (0x1C)
44001             {
44002                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44003                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
44004                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00,  // ........
44005                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
44006             })
44007             Name (DDTF, Buffer (0x0E)
44008             {
44009                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
44010                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3               // ......
44011             })
44012             CreateByteField (DDTF, 0x01, DTAT)
44013             CreateByteField (DDTF, 0x08, DTFT)
44014             Name (DGTF, Buffer (0x15)
44015             {
44016                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
44017                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03,  // ........
44018                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44019             })
44020             CreateByteField (DGTF, 0x01, GTAT)
44021             CreateByteField (DGTF, 0x08, GTFT)
44022             Method (_SDD, 1, NotSerialized)  // _SDD: Set Device Data
44023             {
44024                 ADBG ("PRT2: _SDD")
44025                 DIP0 = 0x00
44026                 If ((SizeOf (Arg0) == 0x0200))
44027                 {
44028                     CreateWordField (Arg0, 0x9C, M078)
44029                     If ((\DPP2 && (M078 & 0x08)))
44030                     {
44031                         DIP0 = 0x01
44032                     }
44033 
44034                     CreateByteField (Arg0, 0x9D, BFDS)
44035                     ToInteger (BFDS, FDEV) /* \_SB_.PCI0.SAT0.PRT2.FDEV */
44036                     CreateByteField (Arg0, 0x9A, BFRP)
44037                     ToInteger (BFRP, FDRP) /* \_SB_.PCI0.SAT0.PRT2.FDRP */
44038                 }
44039             }
44040 
44041             Method (_GTF, 0, NotSerialized)  // _GTF: Get Task File
44042             {
44043                 ADBG ("PRT2: _GTF")
44044                 If (DIP0)
44045                 {
44046                     If ((((DVS2 == 0x01) && ((FDEV & 0x01) == 0x01)) && 
44047                         ((FDRP & 0x80) == 0x80)))
44048                     {
44049                         Return (HQTF) /* \_SB_.PCI0.SAT0.PRT2.HQTF */
44050                     }
44051                     Else
44052                     {
44053                         Return (HPTF) /* \_SB_.PCI0.SAT0.PRT2.HPTF */
44054                     }
44055                 }
44056                 ElseIf ((((DVS2 == 0x01) && ((FDEV & 0x01) == 
44057                     0x01)) && ((FDRP & 0x80) == 0x80)))
44058                 {
44059                     Return (HETF) /* \_SB_.PCI0.SAT0.PRT2.HETF */
44060                 }
44061                 Else
44062                 {
44063                     Return (HDTF) /* \_SB_.PCI0.SAT0.PRT2.HDTF */
44064                 }
44065             }
44066         }
44067 
44068         Scope (PRT3)
44069         {
44070             Name (DIP0, 0x00)
44071             Name (FDEV, 0x00)
44072             Name (FDRP, 0x00)
44073             Name (HDTF, Buffer (0x0E)
44074             {
44075                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44076                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5               // ......
44077             })
44078             Name (HETF, Buffer (0x15)
44079             {
44080                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44081                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09,  // ........
44082                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44083             })
44084             Name (ERTF, Buffer (0x15)
44085             {
44086                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44087                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
44088                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44089             })
44090             Name (HPTF, Buffer (0x15)
44091             {
44092                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44093                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
44094                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44095             })
44096             Name (HQTF, Buffer (0x1C)
44097             {
44098                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44099                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
44100                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00,  // ........
44101                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
44102             })
44103             Name (HXTF, Buffer (0x1C)
44104             {
44105                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44106                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
44107                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00,  // ........
44108                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
44109             })
44110             Name (DDTF, Buffer (0x0E)
44111             {
44112                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
44113                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3               // ......
44114             })
44115             CreateByteField (DDTF, 0x01, DTAT)
44116             CreateByteField (DDTF, 0x08, DTFT)
44117             Name (DGTF, Buffer (0x15)
44118             {
44119                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
44120                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03,  // ........
44121                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44122             })
44123             CreateByteField (DGTF, 0x01, GTAT)
44124             CreateByteField (DGTF, 0x08, GTFT)
44125             Method (_SDD, 1, NotSerialized)  // _SDD: Set Device Data
44126             {
44127                 ADBG ("PRT3: _SDD")
44128                 DIP0 = 0x00
44129                 If ((SizeOf (Arg0) == 0x0200))
44130                 {
44131                     CreateWordField (Arg0, 0x9C, M078)
44132                     If ((\DPP3 && (M078 & 0x08)))
44133                     {
44134                         DIP0 = 0x01
44135                     }
44136 
44137                     CreateByteField (Arg0, 0x9D, BFDS)
44138                     ToInteger (BFDS, FDEV) /* \_SB_.PCI0.SAT0.PRT3.FDEV */
44139                     CreateByteField (Arg0, 0x9A, BFRP)
44140                     ToInteger (BFRP, FDRP) /* \_SB_.PCI0.SAT0.PRT3.FDRP */
44141                 }
44142             }
44143 
44144             Method (_GTF, 0, NotSerialized)  // _GTF: Get Task File
44145             {
44146                 ADBG ("PRT3: _GTF")
44147                 If (DIP0)
44148                 {
44149                     If ((((DVS3 == 0x01) && ((FDEV & 0x01) == 0x01)) && 
44150                         ((FDRP & 0x80) == 0x80)))
44151                     {
44152                         Return (HQTF) /* \_SB_.PCI0.SAT0.PRT3.HQTF */
44153                     }
44154                     Else
44155                     {
44156                         Return (HPTF) /* \_SB_.PCI0.SAT0.PRT3.HPTF */
44157                     }
44158                 }
44159                 ElseIf ((((DVS3 == 0x01) && ((FDEV & 0x01) == 
44160                     0x01)) && ((FDRP & 0x80) == 0x80)))
44161                 {
44162                     Return (HETF) /* \_SB_.PCI0.SAT0.PRT3.HETF */
44163                 }
44164                 Else
44165                 {
44166                     Return (HDTF) /* \_SB_.PCI0.SAT0.PRT3.HDTF */
44167                 }
44168             }
44169         }
44170 
44171         Scope (PRT4)
44172         {
44173             Name (DIP0, 0x00)
44174             Name (HDTF, Buffer (0x0E)
44175             {
44176                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44177                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5               // ......
44178             })
44179             Name (HETF, Buffer (0x15)
44180             {
44181                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44182                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x09,  // ........
44183                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44184             })
44185             Name (ERTF, Buffer (0x15)
44186             {
44187                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44188                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
44189                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44190             })
44191             Name (HPTF, Buffer (0x15)
44192             {
44193                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44194                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
44195                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44196             })
44197             Name (HQTF, Buffer (0x1C)
44198             {
44199                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44200                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x10, 0x03,  // ........
44201                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x09, 0x00,  // ........
44202                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
44203             })
44204             Name (HXTF, Buffer (0x1C)
44205             {
44206                 /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xEF, 0x00,  // ........
44207                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xF5, 0x5F, 0x00,  // ......_.
44208                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF, 0x10, 0x03, 0x00,  // ........
44209                 /* 0018 */  0x00, 0x00, 0xA0, 0xEF                           // ....
44210             })
44211             Name (DDTF, Buffer (0x0E)
44212             {
44213                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
44214                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3               // ......
44215             })
44216             CreateByteField (DDTF, 0x01, DTAT)
44217             CreateByteField (DDTF, 0x08, DTFT)
44218             Name (DGTF, Buffer (0x15)
44219             {
44220                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x00,  // ........
44221                 /* 0008 */  0x00, 0x00, 0x00, 0x00, 0xA0, 0xE3, 0x10, 0x03,  // ........
44222                 /* 0010 */  0x00, 0x00, 0x00, 0xA0, 0xEF                     // .....
44223             })
44224             CreateByteField (DGTF, 0x01, GTAT)
44225             CreateByteField (DGTF, 0x08, GTFT)
44226             Method (_SDD, 1, NotSerialized)  // _SDD: Set Device Data
44227             {
44228                 ADBG ("PRT4: _SDD")
44229                 DIP0 = 0x00
44230                 If ((SizeOf (Arg0) == 0x0200))
44231                 {
44232                     CreateWordField (Arg0, 0x9C, M078)
44233                     If ((\DPP4 && (M078 & 0x08)))
44234                     {
44235                         DIP0 = 0x01
44236                     }
44237                 }
44238             }
44239 
44240             Method (_GTF, 0, NotSerialized)  // _GTF: Get Task File
44241             {
44242                 ADBG ("PRT4: _GTF")
44243                 If (DIP0)
44244                 {
44245                     Return (HPTF) /* \_SB_.PCI0.SAT0.PRT4.HPTF */
44246                 }
44247 
44248                 Return (HDTF) /* \_SB_.PCI0.SAT0.PRT4.HDTF */
44249             }
44250         }
44251     }
44252 
44253     Scope (\_SB.PCI0.SAT0)
44254     {
44255         Scope (PRT0)
44256         {
44257             Name (PORT, 0x00)
44258             Name (PBAR, 0x0118)
44259             Name (PWRG, Package (0x04)
44260             {
44261                 0x00, 
44262                 0x00, 
44263                 0x00, 
44264                 0x00
44265             })
44266         }
44267 
44268         Scope (PRT1)
44269         {
44270             Name (PORT, 0x01)
44271             Name (PBAR, 0x0198)
44272             Name (PWRG, Package (0x04)
44273             {
44274                 0x02, 
44275                 0x00, 
44276                 0x00, 
44277                 0x00
44278             })
44279         }
44280 
44281         Scope (PRT2)
44282         {
44283             Name (PORT, 0x02)
44284             Name (PBAR, 0x0218)
44285             Name (PWRG, Package (0x04)
44286             {
44287                 0x00, 
44288                 0x00, 
44289                 0x00, 
44290                 0x01
44291             })
44292         }
44293     }
44294 
44295     Scope (\_SB.IETM)
44296     {
44297         Name (DBD1, Package (0x01)
44298         {
44299             Buffer (0x04C8)
44300             {
44301                 /* 0000 */  0xE5, 0x1F, 0x94, 0x00, 0x00, 0x00, 0x00, 0x02,  // ........
44302                 /* 0008 */  0x00, 0x00, 0x00, 0x40, 0x67, 0x64, 0x64, 0x76,  // ...@gddv
44303                 /* 0010 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44304                 /* 0018 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44305                 /* 0020 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44306                 /* 0028 */  0x00, 0x00, 0x00, 0x00, 0x4F, 0x45, 0x4D, 0x20,  // ....OEM 
44307                 /* 0030 */  0x45, 0x6D, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64,  // Embedded
44308                 /* 0038 */  0x20, 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x75,  //  DataVau
44309                 /* 0040 */  0x6C, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // lt......
44310                 /* 0048 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44311                 /* 0050 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44312                 /* 0058 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44313                 /* 0060 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44314                 /* 0068 */  0x00, 0x00, 0x00, 0x00, 0x8C, 0x0C, 0x9D, 0xC1,  // ........
44315                 /* 0070 */  0x7F, 0x9E, 0x26, 0xBB, 0x06, 0xD5, 0xE8, 0x12,  // ..&.....
44316                 /* 0078 */  0xA5, 0x55, 0xC8, 0x38, 0x9D, 0x04, 0x42, 0xE0,  // .U.8..B.
44317                 /* 0080 */  0x07, 0xD4, 0xAB, 0xA7, 0xA5, 0xB9, 0x41, 0x52,  // ......AR
44318                 /* 0088 */  0xEA, 0xD6, 0xFB, 0x27, 0x34, 0x04, 0x00, 0x00,  // ...'4...
44319                 /* 0090 */  0x52, 0x45, 0x50, 0x4F, 0x5D, 0x00, 0x00, 0x00,  // REPO]...
44320                 /* 0098 */  0x01, 0x78, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00,  // .x?.....
44321                 /* 00A0 */  0x00, 0x00, 0x72, 0x87, 0xCD, 0xFF, 0x6D, 0x24,  // ..r...m$
44322                 /* 00A8 */  0x47, 0xDB, 0x3D, 0x24, 0x92, 0xB4, 0x16, 0x6F,  // G.=$...o
44323                 /* 00B0 */  0x45, 0xD8, 0xC3, 0xF5, 0x66, 0x14, 0x9F, 0x22,  // E...f.."
44324                 /* 00B8 */  0xD7, 0xF7, 0xDE, 0x67, 0x90, 0x9A, 0xA2, 0x0D,  // ...g....
44325                 /* 00C0 */  0x39, 0x25, 0xAD, 0xC3, 0x1A, 0xAD, 0x52, 0x0B,  // 9%....R.
44326                 /* 00C8 */  0x75, 0x38, 0xE1, 0xA4, 0x14, 0x44, 0x14, 0x36,  // u8...D.6
44327                 /* 00D0 */  0x4D, 0x86, 0x3B, 0x23, 0x44, 0x7F, 0xB2, 0x09,  // M.;#D...
44328                 /* 00D8 */  0x22, 0xFD, 0x72, 0x54, 0xDF, 0x65, 0x09, 0x7B,  // ".rT.e.{
44329                 /* 00E0 */  0xDC, 0x12, 0x18, 0xD6, 0x0C, 0xDC, 0x34, 0x67,  // ......4g
44330                 /* 00E8 */  0x25, 0xF3, 0x3E, 0x72, 0xE3, 0x3C, 0x6D, 0xE7,  // %.>r.<m.
44331                 /* 00F0 */  0x7F, 0x95, 0x08, 0x18, 0x3B, 0xC4, 0x5C, 0x72,  // ....;.\r
44332                 /* 00F8 */  0x83, 0x61, 0x74, 0xDC, 0xB2, 0x8A, 0x4F, 0xDA,  // .at...O.
44333                 /* 0100 */  0x08, 0x3B, 0x88, 0x98, 0x32, 0x06, 0xF7, 0x89,  // .;..2...
44334                 /* 0108 */  0x60, 0x43, 0xDE, 0x61, 0xE7, 0xC9, 0x05, 0x1C,  // `C.a....
44335                 /* 0110 */  0xD4, 0x8D, 0xD6, 0x7C, 0x3D, 0x38, 0x44, 0xC6,  // ...|=8D.
44336                 /* 0118 */  0x7A, 0x69, 0x0F, 0xF6, 0x10, 0xED, 0xE1, 0x90,  // zi......
44337                 /* 0120 */  0x9A, 0xB6, 0xA6, 0x7B, 0x8C, 0xD1, 0x7D, 0xCA,  // ...{..}.
44338                 /* 0128 */  0x57, 0xE7, 0xDB, 0xE8, 0x06, 0x68, 0x68, 0x27,  // W....hh'
44339                 /* 0130 */  0x6D, 0x1B, 0x1E, 0x0C, 0x29, 0xF6, 0xB8, 0xFF,  // m...)...
44340                 /* 0138 */  0x45, 0x45, 0x25, 0xAB, 0x0E, 0x4B, 0x84, 0x86,  // EE%..K..
44341                 /* 0140 */  0x11, 0xB6, 0x39, 0x51, 0xAA, 0xE6, 0x96, 0x73,  // ..9Q...s
44342                 /* 0148 */  0x4E, 0x69, 0xC7, 0xCF, 0xCD, 0xA6, 0x7A, 0x48,  // Ni....zH
44343                 /* 0150 */  0x96, 0xEC, 0x85, 0x4B, 0xED, 0x6A, 0x3F, 0x33,  // ...K.j?3
44344                 /* 0158 */  0x03, 0xD9, 0x83, 0x22, 0x14, 0x45, 0x89, 0x8C,  // ...".E..
44345                 /* 0160 */  0x5D, 0x23, 0xE9, 0x91, 0x65, 0xCE, 0x9B, 0xFE,  // ]#..e...
44346                 /* 0168 */  0x7D, 0xC1, 0x56, 0x62, 0x86, 0xE4, 0xEE, 0x43,  // }.Vb...C
44347                 /* 0170 */  0x97, 0xB4, 0xCF, 0xCD, 0xE6, 0x12, 0x93, 0xDC,  // ........
44348                 /* 0178 */  0x1F, 0x39, 0x8F, 0xD8, 0xC4, 0x57, 0x02, 0x18,  // .9...W..
44349                 /* 0180 */  0xF5, 0x14, 0x9B, 0x45, 0x31, 0x63, 0xD4, 0x36,  // ...E1c.6
44350                 /* 0188 */  0xBE, 0x42, 0x80, 0x11, 0xB0, 0xCE, 0xB8, 0xF6,  // .B......
44351                 /* 0190 */  0xE9, 0xDE, 0x5F, 0x78, 0xC4, 0x90, 0x7C, 0x48,  // .._x..|H
44352                 /* 0198 */  0x1D, 0xD5, 0xC2, 0x43, 0xF6, 0x94, 0x57, 0xFA,  // ...C..W.
44353                 /* 01A0 */  0x69, 0xA4, 0x08, 0xF3, 0xB9, 0x45, 0x3B, 0x6A,  // i....E;j
44354                 /* 01A8 */  0xC5, 0xC5, 0x53, 0xDA, 0xC0, 0xCA, 0x3A, 0x65,  // ..S...:e
44355                 /* 01B0 */  0x3A, 0xD7, 0xEF, 0xD2, 0xFE, 0xFB, 0xAA, 0x6F,  // :......o
44356                 /* 01B8 */  0x00, 0x3C, 0xCD, 0xC1, 0xF0, 0xC6, 0x15, 0xAB,  // .<......
44357                 /* 01C0 */  0x74, 0x59, 0x73, 0xFD, 0x6D, 0x46, 0xDF, 0xE1,  // tYs.mF..
44358                 /* 01C8 */  0xC8, 0xC9, 0xFD, 0xA9, 0x62, 0x46, 0x83, 0x46,  // ....bF.F
44359                 /* 01D0 */  0x88, 0xDD, 0xFA, 0x84, 0x49, 0xA3, 0x83, 0x69,  // ....I..i
44360                 /* 01D8 */  0xFF, 0xF1, 0xD9, 0x0C, 0x0F, 0x7E, 0x1C, 0x3D,  // .....~.=
44361                 /* 01E0 */  0xBF, 0x48, 0xAE, 0x61, 0xDF, 0x9F, 0xAD, 0x51,  // .H.a...Q
44362                 /* 01E8 */  0xB3, 0x84, 0xBF, 0x56, 0xE1, 0x84, 0x73, 0x48,  // ...V..sH
44363                 /* 01F0 */  0xEE, 0x0D, 0xB4, 0x07, 0x1D, 0xB1, 0x5B, 0xB7,  // ......[.
44364                 /* 01F8 */  0x13, 0x81, 0xC8, 0x66, 0x22, 0x86, 0xDD, 0x3A,  // ...f"..:
44365                 /* 0200 */  0xAE, 0x50, 0xF5, 0xC5, 0xC2, 0xF5, 0xBE, 0xD1,  // .P......
44366                 /* 0208 */  0x2B, 0xE4, 0xB0, 0xA1, 0x63, 0x85, 0x0C, 0x86,  // +...c...
44367                 /* 0210 */  0x6B, 0x8D, 0x9B, 0xA7, 0x90, 0xEE, 0xD0, 0xE3,  // k.......
44368                 /* 0218 */  0x05, 0xD2, 0xA0, 0xE2, 0x7C, 0x1F, 0xB1, 0x11,  // ....|...
44369                 /* 0220 */  0xD3, 0xE8, 0xAA, 0xEA, 0xFF, 0x20, 0xEB, 0x78,  // ..... .x
44370                 /* 0228 */  0x41, 0x19, 0xE0, 0xE3, 0xD6, 0xD6, 0x8B, 0x2A,  // A......*
44371                 /* 0230 */  0x56, 0x72, 0x85, 0xFC, 0xCE, 0x0A, 0x77, 0x5C,  // Vr....w\
44372                 /* 0238 */  0x64, 0x9C, 0xE9, 0x11, 0x92, 0xA5, 0x8E, 0x9D,  // d.......
44373                 /* 0240 */  0xC9, 0x17, 0x49, 0xB0, 0xF6, 0x60, 0x97, 0x86,  // ..I..`..
44374                 /* 0248 */  0xBB, 0x5C, 0xB3, 0x9C, 0xC3, 0xAE, 0x70, 0xC2,  // .\....p.
44375                 /* 0250 */  0xA5, 0x50, 0x9C, 0x47, 0xF6, 0x39, 0x4C, 0xBB,  // .P.G.9L.
44376                 /* 0258 */  0x4F, 0x7A, 0x58, 0x81, 0x4D, 0x34, 0xE5, 0x11,  // OzX.M4..
44377                 /* 0260 */  0xD7, 0x8B, 0x43, 0x2D, 0xEF, 0x8B, 0xF2, 0xF2,  // ..C-....
44378                 /* 0268 */  0x63, 0x03, 0xEF, 0xA4, 0x94, 0xB7, 0x49, 0x72,  // c.....Ir
44379                 /* 0270 */  0x7E, 0x95, 0xB8, 0x1B, 0x6F, 0x2B, 0x93, 0xEE,  // ~...o+..
44380                 /* 0278 */  0x2B, 0xF2, 0x49, 0x79, 0x36, 0x30, 0x71, 0x8F,  // +.Iy60q.
44381                 /* 0280 */  0x39, 0x27, 0xC7, 0xFE, 0x1C, 0x20, 0x07, 0x73,  // 9'... .s
44382                 /* 0288 */  0xAD, 0x21, 0xAC, 0xF7, 0x46, 0xE3, 0x2A, 0x8F,  // .!..F.*.
44383                 /* 0290 */  0x3A, 0x04, 0xC2, 0xCB, 0x00, 0xCB, 0xEC, 0x17,  // :.......
44384                 /* 0298 */  0x05, 0x69, 0x8E, 0xAF, 0xA6, 0x4E, 0xBC, 0x05,  // .i...N..
44385                 /* 02A0 */  0xFB, 0xCC, 0x29, 0x87, 0x10, 0x08, 0x33, 0xE1,  // ..)...3.
44386                 /* 02A8 */  0x09, 0xDE, 0x83, 0x65, 0xDF, 0xE6, 0x31, 0x34,  // ...e..14
44387                 /* 02B0 */  0xD9, 0x34, 0xEF, 0xD1, 0xBF, 0x4E, 0x0E, 0x54,  // .4...N.T
44388                 /* 02B8 */  0x4E, 0x57, 0xEF, 0x91, 0x70, 0xF5, 0xA5, 0x8A,  // NW..p...
44389                 /* 02C0 */  0xFA, 0x87, 0xA8, 0xBC, 0x04, 0x9B, 0xED, 0x69,  // .......i
44390                 /* 02C8 */  0xA9, 0x28, 0xB0, 0x59, 0x10, 0xC2, 0x06, 0x10,  // .(.Y....
44391                 /* 02D0 */  0xF3, 0x22, 0x84, 0x1C, 0x51, 0x0B, 0xCB, 0xAD,  // ."..Q...
44392                 /* 02D8 */  0x83, 0x24, 0xCB, 0x59, 0x43, 0xA1, 0x27, 0x79,  // .$.YC.'y
44393                 /* 02E0 */  0x89, 0x46, 0x82, 0x8D, 0x63, 0xD5, 0xFF, 0x2D,  // .F..c..-
44394                 /* 02E8 */  0x00, 0x95, 0x59, 0xAD, 0xAE, 0x46, 0x2D, 0x37,  // ..Y..F-7
44395                 /* 02F0 */  0x87, 0xE9, 0x98, 0xFE, 0x08, 0x3C, 0x13, 0x2B,  // .....<.+
44396                 /* 02F8 */  0x77, 0x86, 0xD9, 0xDD, 0x43, 0x70, 0x52, 0xBD,  // w...CpR.
44397                 /* 0300 */  0xED, 0xA0, 0x7D, 0xEE, 0xA2, 0x92, 0x0F, 0x15,  // ..}.....
44398                 /* 0308 */  0xF8, 0x62, 0x80, 0xF6, 0x4C, 0xDD, 0x72, 0x58,  // .b..L.rX
44399                 /* 0310 */  0xBE, 0x2D, 0x84, 0x37, 0x43, 0xAB, 0x0F, 0xEB,  // .-.7C...
44400                 /* 0318 */  0xEE, 0xF6, 0x5B, 0xE8, 0xA3, 0x64, 0xE8, 0x6E,  // ..[..d.n
44401                 /* 0320 */  0xEE, 0x98, 0x52, 0x03, 0x73, 0xF5, 0x63, 0x99,  // ..R.s.c.
44402                 /* 0328 */  0x8A, 0xBE, 0x7E, 0x61, 0x8B, 0x21, 0xC6, 0xA2,  // ..~a.!..
44403                 /* 0330 */  0x8D, 0x32, 0x84, 0x58, 0x1E, 0xC1, 0x5C, 0x14,  // .2.X..\.
44404                 /* 0338 */  0xE8, 0x5C, 0x0A, 0x0D, 0xC4, 0xAF, 0x74, 0x73,  // .\....ts
44405                 /* 0340 */  0x0A, 0xBA, 0x7F, 0xB1, 0x7B, 0xF3, 0x9A, 0xF4,  // ....{...
44406                 /* 0348 */  0x7A, 0xB4, 0x7E, 0x3B, 0x89, 0xE4, 0x15, 0x1E,  // z.~;....
44407                 /* 0350 */  0xCF, 0xB7, 0x7A, 0x1B, 0xFD, 0x05, 0x51, 0xC6,  // ..z...Q.
44408                 /* 0358 */  0x06, 0xF3, 0x01, 0x09, 0x5A, 0x35, 0x90, 0x92,  // ....Z5..
44409                 /* 0360 */  0x30, 0x11, 0xE9, 0x40, 0xCB, 0xBB, 0xD2, 0x94,  // 0..@....
44410                 /* 0368 */  0xE7, 0x13, 0x63, 0x19, 0x29, 0x71, 0x29, 0x23,  // ..c.)q)#
44411                 /* 0370 */  0xA6, 0x9A, 0x25, 0x9A, 0xB2, 0x05, 0xCD, 0xF5,  // ..%.....
44412                 /* 0378 */  0x73, 0x5B, 0xD6, 0xC9, 0x48, 0x0E, 0x76, 0x7E,  // s[..H.v~
44413                 /* 0380 */  0xB3, 0x4A, 0xA3, 0x8E, 0x28, 0xBD, 0x43, 0x08,  // .J..(.C.
44414                 /* 0388 */  0xD3, 0xAA, 0xB4, 0x9E, 0x5A, 0xEC, 0x98, 0x78,  // ....Z..x
44415                 /* 0390 */  0xDE, 0x2C, 0xA4, 0x4D, 0x90, 0x24, 0x5C, 0x29,  // .,.M.$\)
44416                 /* 0398 */  0x97, 0x33, 0x24, 0x1A, 0xC6, 0x5E, 0x42, 0x07,  // .3$..^B.
44417                 /* 03A0 */  0x20, 0x71, 0x5C, 0x88, 0x99, 0xA8, 0x9D, 0xB2,  //  q\.....
44418                 /* 03A8 */  0x84, 0x25, 0x3E, 0x1D, 0x67, 0x28, 0x8B, 0x84,  // .%>.g(..
44419                 /* 03B0 */  0x4E, 0x57, 0xAF, 0xCA, 0xD0, 0xBB, 0x9E, 0x2B,  // NW.....+
44420                 /* 03B8 */  0x12, 0xD0, 0xA0, 0xCC, 0x42, 0xF1, 0xA3, 0xED,  // ....B...
44421                 /* 03C0 */  0xA0, 0xB2, 0x4F, 0xC9, 0xE9, 0x6E, 0xE7, 0xA4,  // ..O..n..
44422                 /* 03C8 */  0x90, 0x66, 0x8D, 0x66, 0x26, 0x91, 0x7E, 0xA2,  // .f.f&.~.
44423                 /* 03D0 */  0xAD, 0xCB, 0x2E, 0x82, 0x11, 0x79, 0x9B, 0x99,  // .....y..
44424                 /* 03D8 */  0x31, 0x5D, 0x65, 0x66, 0x00, 0x0E, 0x7E, 0x56,  // 1]ef..~V
44425                 /* 03E0 */  0x25, 0xDE, 0xF0, 0xA8, 0x3F, 0x1A, 0x68, 0x55,  // %...?.hU
44426                 /* 03E8 */  0x54, 0xA6, 0x67, 0x97, 0x86, 0x81, 0x78, 0x31,  // T.g...x1
44427                 /* 03F0 */  0xA3, 0xA3, 0x76, 0xA9, 0x93, 0x80, 0xBA, 0x18,  // ..v.....
44428                 /* 03F8 */  0xF3, 0xA8, 0x87, 0x68, 0xF6, 0x9B, 0x9A, 0x16,  // ...h....
44429                 /* 0400 */  0x5E, 0x45, 0xB5, 0x02, 0xBC, 0xDC, 0x7F, 0xF2,  // ^E......
44430                 /* 0408 */  0xE2, 0x0A, 0x6F, 0x84, 0x0F, 0xAE, 0x20, 0x62,  // ..o... b
44431                 /* 0410 */  0x67, 0x21, 0x07, 0xE9, 0xF2, 0x9D, 0xE4, 0x5F,  // g!....._
44432                 /* 0418 */  0xB5, 0x0C, 0x2B, 0x99, 0xFE, 0x18, 0xE4, 0x86,  // ..+.....
44433                 /* 0420 */  0x05, 0x11, 0x1B, 0x83, 0x0E, 0x5C, 0x20, 0x00,  // .....\ .
44434                 /* 0428 */  0x70, 0xC4, 0x82, 0x61, 0x02, 0xDE, 0x32, 0x6E,  // p..a..2n
44435                 /* 0430 */  0xC2, 0x53, 0x75, 0xFC, 0xAF, 0x74, 0x9D, 0x95,  // .Su..t..
44436                 /* 0438 */  0xDA, 0xB2, 0x49, 0x2D, 0xFB, 0x6C, 0x8F, 0xAC,  // ..I-.l..
44437                 /* 0440 */  0x00, 0xBF, 0x67, 0xB5, 0xC5, 0x5C, 0x2A, 0xF9,  // ..g..\*.
44438                 /* 0448 */  0x21, 0x67, 0x86, 0xD4, 0xC4, 0x94, 0x31, 0xAF,  // !g....1.
44439                 /* 0450 */  0xE2, 0x70, 0xB4, 0x2C, 0xD7, 0x2B, 0x91, 0xAC,  // .p.,.+..
44440                 /* 0458 */  0x64, 0x5F, 0xDC, 0xEC, 0xFE, 0xCB, 0x1C, 0x35,  // d_.....5
44441                 /* 0460 */  0x0C, 0x13, 0x7D, 0x54, 0x56, 0x73, 0xB6, 0x53,  // ..}TVs.S
44442                 /* 0468 */  0x9C, 0xCD, 0x3A, 0xB8, 0x9F, 0x5E, 0x17, 0x3B,  // ..:..^.;
44443                 /* 0470 */  0xF5, 0xD1, 0x98, 0xD6, 0xA7, 0x25, 0x75, 0x0C,  // .....%u.
44444                 /* 0478 */  0xD6, 0xDA, 0x1E, 0xE5, 0xCE, 0x3A, 0x52, 0xFF,  // .....:R.
44445                 /* 0480 */  0xAF, 0xBB, 0x41, 0x3E, 0x23, 0xAE, 0x5C, 0x54,  // ..A>#.\T
44446                 /* 0488 */  0xAA, 0xB7, 0x10, 0x15, 0xD3, 0xDC, 0x06, 0x85,  // ........
44447                 /* 0490 */  0x59, 0xB7, 0x6F, 0x79, 0x5C, 0x0F, 0xFB, 0x4A,  // Y.oy\..J
44448                 /* 0498 */  0x57, 0xC0, 0x1E, 0x1C, 0x4E, 0xC0, 0x02, 0xC5,  // W...N...
44449                 /* 04A0 */  0x7A, 0x51, 0x3D, 0x3B, 0xEC, 0xF7, 0xDC, 0x08,  // zQ=;....
44450                 /* 04A8 */  0x95, 0x44, 0x3C, 0x71, 0xEB, 0xED, 0x1B, 0x75,  // .D<q...u
44451                 /* 04B0 */  0xB4, 0x32, 0x87, 0x84, 0x7D, 0x8B, 0x52, 0x8C,  // .2..}.R.
44452                 /* 04B8 */  0xF4, 0x7D, 0x39, 0xF3, 0xBB, 0x1B, 0x9B, 0xE0,  // .}9.....
44453                 /* 04C0 */  0x17, 0x8A, 0x3F, 0x5D, 0xE3, 0xF3, 0xB2, 0x88   // ..?]....
44454             }
44455         })
44456         Name (DBD2, Package (0x01)
44457         {
44458             Buffer (0x04C8)
44459             {
44460                 /* 0000 */  0xE5, 0x1F, 0x94, 0x00, 0x00, 0x00, 0x00, 0x02,  // ........
44461                 /* 0008 */  0x00, 0x00, 0x00, 0x40, 0x67, 0x64, 0x64, 0x76,  // ...@gddv
44462                 /* 0010 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44463                 /* 0018 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44464                 /* 0020 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44465                 /* 0028 */  0x00, 0x00, 0x00, 0x00, 0x4F, 0x45, 0x4D, 0x20,  // ....OEM 
44466                 /* 0030 */  0x45, 0x6D, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64,  // Embedded
44467                 /* 0038 */  0x20, 0x44, 0x61, 0x74, 0x61, 0x56, 0x61, 0x75,  //  DataVau
44468                 /* 0040 */  0x6C, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // lt......
44469                 /* 0048 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44470                 /* 0050 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44471                 /* 0058 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44472                 /* 0060 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
44473                 /* 0068 */  0x00, 0x00, 0x00, 0x00, 0x8C, 0x0C, 0x9D, 0xC1,  // ........
44474                 /* 0070 */  0x7F, 0x9E, 0x26, 0xBB, 0x06, 0xD5, 0xE8, 0x12,  // ..&.....
44475                 /* 0078 */  0xA5, 0x55, 0xC8, 0x38, 0x9D, 0x04, 0x42, 0xE0,  // .U.8..B.
44476                 /* 0080 */  0x07, 0xD4, 0xAB, 0xA7, 0xA5, 0xB9, 0x41, 0x52,  // ......AR
44477                 /* 0088 */  0xEA, 0xD6, 0xFB, 0x27, 0x34, 0x04, 0x00, 0x00,  // ...'4...
44478                 /* 0090 */  0x52, 0x45, 0x50, 0x4F, 0x5D, 0x00, 0x00, 0x00,  // REPO]...
44479                 /* 0098 */  0x01, 0x78, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00,  // .x?.....
44480                 /* 00A0 */  0x00, 0x00, 0x72, 0x87, 0xCD, 0xFF, 0x6D, 0x24,  // ..r...m$
44481                 /* 00A8 */  0x47, 0xDB, 0x3D, 0x24, 0x92, 0xB4, 0x16, 0x6F,  // G.=$...o
44482                 /* 00B0 */  0x45, 0xD8, 0xC3, 0xF5, 0x66, 0x14, 0x9F, 0x22,  // E...f.."
44483                 /* 00B8 */  0xD7, 0xF7, 0xDE, 0x67, 0x90, 0x9A, 0xA2, 0x0D,  // ...g....
44484                 /* 00C0 */  0x39, 0x25, 0xAD, 0xC3, 0x1A, 0xAD, 0x52, 0x0B,  // 9%....R.
44485                 /* 00C8 */  0x75, 0x38, 0xE1, 0xA4, 0x14, 0x44, 0x14, 0x36,  // u8...D.6
44486                 /* 00D0 */  0x4D, 0x86, 0x3B, 0x23, 0x44, 0x7F, 0xB2, 0x09,  // M.;#D...
44487                 /* 00D8 */  0x22, 0xFD, 0x72, 0x54, 0xDF, 0x65, 0x09, 0x7B,  // ".rT.e.{
44488                 /* 00E0 */  0xDC, 0x12, 0x18, 0xD6, 0x0C, 0xDC, 0x34, 0x67,  // ......4g
44489                 /* 00E8 */  0x25, 0xF3, 0x3E, 0x72, 0xE3, 0x3C, 0x6D, 0xE7,  // %.>r.<m.
44490                 /* 00F0 */  0x7F, 0x95, 0x08, 0x18, 0x3B, 0xC4, 0x5C, 0x72,  // ....;.\r
44491                 /* 00F8 */  0x83, 0x61, 0x74, 0xDC, 0xB2, 0x8A, 0x4F, 0xDA,  // .at...O.
44492                 /* 0100 */  0x08, 0x3B, 0x88, 0x98, 0x32, 0x06, 0xF7, 0x89,  // .;..2...
44493                 /* 0108 */  0x60, 0x43, 0xDE, 0x61, 0xE7, 0xC9, 0x05, 0x1C,  // `C.a....
44494                 /* 0110 */  0xD4, 0x8D, 0xD6, 0x7C, 0x3D, 0x38, 0x44, 0xC6,  // ...|=8D.
44495                 /* 0118 */  0x7A, 0x69, 0x0F, 0xF6, 0x10, 0xED, 0xE1, 0x90,  // zi......
44496                 /* 0120 */  0x9A, 0xB6, 0xA6, 0x7B, 0x8C, 0xD1, 0x7D, 0xCA,  // ...{..}.
44497                 /* 0128 */  0x57, 0xE7, 0xDB, 0xE8, 0x06, 0x68, 0x68, 0x27,  // W....hh'
44498                 /* 0130 */  0x6D, 0x1B, 0x1E, 0x0C, 0x29, 0xF6, 0xB8, 0xFF,  // m...)...
44499                 /* 0138 */  0x45, 0x45, 0x25, 0xAB, 0x0E, 0x4B, 0x84, 0x86,  // EE%..K..
44500                 /* 0140 */  0x11, 0xB6, 0x39, 0x51, 0xAA, 0xE6, 0x96, 0x73,  // ..9Q...s
44501                 /* 0148 */  0x4E, 0x69, 0xC7, 0xCF, 0xCD, 0xA6, 0x7A, 0x48,  // Ni....zH
44502                 /* 0150 */  0x96, 0xEC, 0x85, 0x4B, 0xED, 0x6A, 0x3F, 0x33,  // ...K.j?3
44503                 /* 0158 */  0x03, 0xD9, 0x83, 0x22, 0x14, 0x45, 0x89, 0x8C,  // ...".E..
44504                 /* 0160 */  0x5D, 0x23, 0xE9, 0x91, 0x65, 0xCE, 0x9B, 0xFE,  // ]#..e...
44505                 /* 0168 */  0x7D, 0xC1, 0x56, 0x62, 0x86, 0xE4, 0xEE, 0x43,  // }.Vb...C
44506                 /* 0170 */  0x97, 0xB4, 0xCF, 0xCD, 0xE6, 0x12, 0x93, 0xDC,  // ........
44507                 /* 0178 */  0x1F, 0x39, 0x8F, 0xD8, 0xC4, 0x57, 0x02, 0x18,  // .9...W..
44508                 /* 0180 */  0xF5, 0x14, 0x9B, 0x45, 0x31, 0x63, 0xD4, 0x36,  // ...E1c.6
44509                 /* 0188 */  0xBE, 0x42, 0x80, 0x11, 0xB0, 0xCE, 0xB8, 0xF6,  // .B......
44510                 /* 0190 */  0xE9, 0xDE, 0x5F, 0x78, 0xC4, 0x90, 0x7C, 0x48,  // .._x..|H
44511                 /* 0198 */  0x1D, 0xD5, 0xC2, 0x43, 0xF6, 0x94, 0x57, 0xFA,  // ...C..W.
44512                 /* 01A0 */  0x69, 0xA4, 0x08, 0xF3, 0xB9, 0x45, 0x3B, 0x6A,  // i....E;j
44513                 /* 01A8 */  0xC5, 0xC5, 0x53, 0xDA, 0xC0, 0xCA, 0x3A, 0x65,  // ..S...:e
44514                 /* 01B0 */  0x3A, 0xD7, 0xEF, 0xD2, 0xFE, 0xFB, 0xAA, 0x6F,  // :......o
44515                 /* 01B8 */  0x00, 0x3C, 0xCD, 0xC1, 0xF0, 0xC6, 0x15, 0xAB,  // .<......
44516                 /* 01C0 */  0x74, 0x59, 0x73, 0xFD, 0x6D, 0x46, 0xDF, 0xE1,  // tYs.mF..
44517                 /* 01C8 */  0xC8, 0xC9, 0xFD, 0xA9, 0x62, 0x46, 0x83, 0x46,  // ....bF.F
44518                 /* 01D0 */  0x88, 0xDD, 0xFA, 0x84, 0x49, 0xA3, 0x83, 0x69,  // ....I..i
44519                 /* 01D8 */  0xFF, 0xF1, 0xD9, 0x0C, 0x0F, 0x7E, 0x1C, 0x3D,  // .....~.=
44520                 /* 01E0 */  0xBF, 0x48, 0xAE, 0x61, 0xDF, 0x9F, 0xAD, 0x51,  // .H.a...Q
44521                 /* 01E8 */  0xB3, 0x84, 0xBF, 0x56, 0xE1, 0x84, 0x73, 0x48,  // ...V..sH
44522                 /* 01F0 */  0xEE, 0x0D, 0xB4, 0x07, 0x1D, 0xB1, 0x5B, 0xB7,  // ......[.
44523                 /* 01F8 */  0x13, 0x81, 0xC8, 0x66, 0x22, 0x86, 0xDD, 0x3A,  // ...f"..:
44524                 /* 0200 */  0xAE, 0x50, 0xF5, 0xC5, 0xC2, 0xF5, 0xBE, 0xD1,  // .P......
44525                 /* 0208 */  0x2B, 0xE4, 0xB0, 0xA1, 0x63, 0x85, 0x0C, 0x86,  // +...c...
44526                 /* 0210 */  0x6B, 0x8D, 0x9B, 0xA7, 0x90, 0xEE, 0xD0, 0xE3,  // k.......
44527                 /* 0218 */  0x05, 0xD2, 0xA0, 0xE2, 0x7C, 0x1F, 0xB1, 0x11,  // ....|...
44528                 /* 0220 */  0xD3, 0xE8, 0xAA, 0xEA, 0xFF, 0x20, 0xEB, 0x78,  // ..... .x
44529                 /* 0228 */  0x41, 0x19, 0xE0, 0xE3, 0xD6, 0xD6, 0x8B, 0x2A,  // A......*
44530                 /* 0230 */  0x56, 0x72, 0x85, 0xFC, 0xCE, 0x0A, 0x77, 0x5C,  // Vr....w\
44531                 /* 0238 */  0x64, 0x9C, 0xE9, 0x11, 0x92, 0xA5, 0x8E, 0x9D,  // d.......
44532                 /* 0240 */  0xC9, 0x17, 0x49, 0xB0, 0xF6, 0x60, 0x97, 0x86,  // ..I..`..
44533                 /* 0248 */  0xBB, 0x5C, 0xB3, 0x9C, 0xC3, 0xAE, 0x70, 0xC2,  // .\....p.
44534                 /* 0250 */  0xA5, 0x50, 0x9C, 0x47, 0xF6, 0x39, 0x4C, 0xBB,  // .P.G.9L.
44535                 /* 0258 */  0x4F, 0x7A, 0x58, 0x81, 0x4D, 0x34, 0xE5, 0x11,  // OzX.M4..
44536                 /* 0260 */  0xD7, 0x8B, 0x43, 0x2D, 0xEF, 0x8B, 0xF2, 0xF2,  // ..C-....
44537                 /* 0268 */  0x63, 0x03, 0xEF, 0xA4, 0x94, 0xB7, 0x49, 0x72,  // c.....Ir
44538                 /* 0270 */  0x7E, 0x95, 0xB8, 0x1B, 0x6F, 0x2B, 0x93, 0xEE,  // ~...o+..
44539                 /* 0278 */  0x2B, 0xF2, 0x49, 0x79, 0x36, 0x30, 0x71, 0x8F,  // +.Iy60q.
44540                 /* 0280 */  0x39, 0x27, 0xC7, 0xFE, 0x1C, 0x20, 0x07, 0x73,  // 9'... .s
44541                 /* 0288 */  0xAD, 0x21, 0xAC, 0xF7, 0x46, 0xE3, 0x2A, 0x8F,  // .!..F.*.
44542                 /* 0290 */  0x3A, 0x04, 0xC2, 0xCB, 0x00, 0xCB, 0xEC, 0x17,  // :.......
44543                 /* 0298 */  0x05, 0x69, 0x8E, 0xAF, 0xA6, 0x4E, 0xBC, 0x05,  // .i...N..
44544                 /* 02A0 */  0xFB, 0xCC, 0x29, 0x87, 0x10, 0x08, 0x33, 0xE1,  // ..)...3.
44545                 /* 02A8 */  0x09, 0xDE, 0x83, 0x65, 0xDF, 0xE6, 0x31, 0x34,  // ...e..14
44546                 /* 02B0 */  0xD9, 0x34, 0xEF, 0xD1, 0xBF, 0x4E, 0x0E, 0x54,  // .4...N.T
44547                 /* 02B8 */  0x4E, 0x57, 0xEF, 0x91, 0x70, 0xF5, 0xA5, 0x8A,  // NW..p...
44548                 /* 02C0 */  0xFA, 0x87, 0xA8, 0xBC, 0x04, 0x9B, 0xED, 0x69,  // .......i
44549                 /* 02C8 */  0xA9, 0x28, 0xB0, 0x59, 0x10, 0xC2, 0x06, 0x10,  // .(.Y....
44550                 /* 02D0 */  0xF3, 0x22, 0x84, 0x1C, 0x51, 0x0B, 0xCB, 0xAD,  // ."..Q...
44551                 /* 02D8 */  0x83, 0x24, 0xCB, 0x59, 0x43, 0xA1, 0x27, 0x79,  // .$.YC.'y
44552                 /* 02E0 */  0x89, 0x46, 0x82, 0x8D, 0x63, 0xD5, 0xFF, 0x2D,  // .F..c..-
44553                 /* 02E8 */  0x00, 0x95, 0x59, 0xAD, 0xAE, 0x46, 0x2D, 0x37,  // ..Y..F-7
44554                 /* 02F0 */  0x87, 0xE9, 0x98, 0xFE, 0x08, 0x3C, 0x13, 0x2B,  // .....<.+
44555                 /* 02F8 */  0x77, 0x86, 0xD9, 0xDD, 0x43, 0x70, 0x52, 0xBD,  // w...CpR.
44556                 /* 0300 */  0xED, 0xA0, 0x7D, 0xEE, 0xA2, 0x92, 0x0F, 0x15,  // ..}.....
44557                 /* 0308 */  0xF8, 0x62, 0x80, 0xF6, 0x4C, 0xDD, 0x72, 0x58,  // .b..L.rX
44558                 /* 0310 */  0xBE, 0x2D, 0x84, 0x37, 0x43, 0xAB, 0x0F, 0xEB,  // .-.7C...
44559                 /* 0318 */  0xEE, 0xF6, 0x5B, 0xE8, 0xA3, 0x64, 0xE8, 0x6E,  // ..[..d.n
44560                 /* 0320 */  0xEE, 0x98, 0x52, 0x03, 0x73, 0xF5, 0x63, 0x99,  // ..R.s.c.
44561                 /* 0328 */  0x8A, 0xBE, 0x7E, 0x61, 0x8B, 0x21, 0xC6, 0xA2,  // ..~a.!..
44562                 /* 0330 */  0x8D, 0x32, 0x84, 0x58, 0x1E, 0xC1, 0x5C, 0x14,  // .2.X..\.
44563                 /* 0338 */  0xE8, 0x5C, 0x0A, 0x0D, 0xC4, 0xAF, 0x74, 0x73,  // .\....ts
44564                 /* 0340 */  0x0A, 0xBA, 0x7F, 0xB1, 0x7B, 0xF3, 0x9A, 0xF4,  // ....{...
44565                 /* 0348 */  0x7A, 0xB4, 0x7E, 0x3B, 0x89, 0xE4, 0x15, 0x1E,  // z.~;....
44566                 /* 0350 */  0xCF, 0xB7, 0x7A, 0x1B, 0xFD, 0x05, 0x51, 0xC6,  // ..z...Q.
44567                 /* 0358 */  0x06, 0xF3, 0x01, 0x09, 0x5A, 0x35, 0x90, 0x92,  // ....Z5..
44568                 /* 0360 */  0x30, 0x11, 0xE9, 0x40, 0xCB, 0xBB, 0xD2, 0x94,  // 0..@....
44569                 /* 0368 */  0xE7, 0x13, 0x63, 0x19, 0x29, 0x71, 0x29, 0x23,  // ..c.)q)#
44570                 /* 0370 */  0xA6, 0x9A, 0x25, 0x9A, 0xB2, 0x05, 0xCD, 0xF5,  // ..%.....
44571                 /* 0378 */  0x73, 0x5B, 0xD6, 0xC9, 0x48, 0x0E, 0x76, 0x7E,  // s[..H.v~
44572                 /* 0380 */  0xB3, 0x4A, 0xA3, 0x8E, 0x28, 0xBD, 0x43, 0x08,  // .J..(.C.
44573                 /* 0388 */  0xD3, 0xAA, 0xB4, 0x9E, 0x5A, 0xEC, 0x98, 0x78,  // ....Z..x
44574                 /* 0390 */  0xDE, 0x2C, 0xA4, 0x4D, 0x90, 0x24, 0x5C, 0x29,  // .,.M.$\)
44575                 /* 0398 */  0x97, 0x33, 0x24, 0x1A, 0xC6, 0x5E, 0x42, 0x07,  // .3$..^B.
44576                 /* 03A0 */  0x20, 0x71, 0x5C, 0x88, 0x99, 0xA8, 0x9D, 0xB2,  //  q\.....
44577                 /* 03A8 */  0x84, 0x25, 0x3E, 0x1D, 0x67, 0x28, 0x8B, 0x84,  // .%>.g(..
44578                 /* 03B0 */  0x4E, 0x57, 0xAF, 0xCA, 0xD0, 0xBB, 0x9E, 0x2B,  // NW.....+
44579                 /* 03B8 */  0x12, 0xD0, 0xA0, 0xCC, 0x42, 0xF1, 0xA3, 0xED,  // ....B...
44580                 /* 03C0 */  0xA0, 0xB2, 0x4F, 0xC9, 0xE9, 0x6E, 0xE7, 0xA4,  // ..O..n..
44581                 /* 03C8 */  0x90, 0x66, 0x8D, 0x66, 0x26, 0x91, 0x7E, 0xA2,  // .f.f&.~.
44582                 /* 03D0 */  0xAD, 0xCB, 0x2E, 0x82, 0x11, 0x79, 0x9B, 0x99,  // .....y..
44583                 /* 03D8 */  0x31, 0x5D, 0x65, 0x66, 0x00, 0x0E, 0x7E, 0x56,  // 1]ef..~V
44584                 /* 03E0 */  0x25, 0xDE, 0xF0, 0xA8, 0x3F, 0x1A, 0x68, 0x55,  // %...?.hU
44585                 /* 03E8 */  0x54, 0xA6, 0x67, 0x97, 0x86, 0x81, 0x78, 0x31,  // T.g...x1
44586                 /* 03F0 */  0xA3, 0xA3, 0x76, 0xA9, 0x93, 0x80, 0xBA, 0x18,  // ..v.....
44587                 /* 03F8 */  0xF3, 0xA8, 0x87, 0x68, 0xF6, 0x9B, 0x9A, 0x16,  // ...h....
44588                 /* 0400 */  0x5E, 0x45, 0xB5, 0x02, 0xBC, 0xDC, 0x7F, 0xF2,  // ^E......
44589                 /* 0408 */  0xE2, 0x0A, 0x6F, 0x84, 0x0F, 0xAE, 0x20, 0x62,  // ..o... b
44590                 /* 0410 */  0x67, 0x21, 0x07, 0xE9, 0xF2, 0x9D, 0xE4, 0x5F,  // g!....._
44591                 /* 0418 */  0xB5, 0x0C, 0x2B, 0x99, 0xFE, 0x18, 0xE4, 0x86,  // ..+.....
44592                 /* 0420 */  0x05, 0x11, 0x1B, 0x83, 0x0E, 0x5C, 0x20, 0x00,  // .....\ .
44593                 /* 0428 */  0x70, 0xC4, 0x82, 0x61, 0x02, 0xDE, 0x32, 0x6E,  // p..a..2n
44594                 /* 0430 */  0xC2, 0x53, 0x75, 0xFC, 0xAF, 0x74, 0x9D, 0x95,  // .Su..t..
44595                 /* 0438 */  0xDA, 0xB2, 0x49, 0x2D, 0xFB, 0x6C, 0x8F, 0xAC,  // ..I-.l..
44596                 /* 0440 */  0x00, 0xBF, 0x67, 0xB5, 0xC5, 0x5C, 0x2A, 0xF9,  // ..g..\*.
44597                 /* 0448 */  0x21, 0x67, 0x86, 0xD4, 0xC4, 0x94, 0x31, 0xAF,  // !g....1.
44598                 /* 0450 */  0xE2, 0x70, 0xB4, 0x2C, 0xD7, 0x2B, 0x91, 0xAC,  // .p.,.+..
44599                 /* 0458 */  0x64, 0x5F, 0xDC, 0xEC, 0xFE, 0xCB, 0x1C, 0x35,  // d_.....5
44600                 /* 0460 */  0x0C, 0x13, 0x7D, 0x54, 0x56, 0x73, 0xB6, 0x53,  // ..}TVs.S
44601                 /* 0468 */  0x9C, 0xCD, 0x3A, 0xB8, 0x9F, 0x5E, 0x17, 0x3B,  // ..:..^.;
44602                 /* 0470 */  0xF5, 0xD1, 0x98, 0xD6, 0xA7, 0x25, 0x75, 0x0C,  // .....%u.
44603                 /* 0478 */  0xD6, 0xDA, 0x1E, 0xE5, 0xCE, 0x3A, 0x52, 0xFF,  // .....:R.
44604                 /* 0480 */  0xAF, 0xBB, 0x41, 0x3E, 0x23, 0xAE, 0x5C, 0x54,  // ..A>#.\T
44605                 /* 0488 */  0xAA, 0xB7, 0x10, 0x15, 0xD3, 0xDC, 0x06, 0x85,  // ........
44606                 /* 0490 */  0x59, 0xB7, 0x6F, 0x79, 0x5C, 0x0F, 0xFB, 0x4A,  // Y.oy\..J
44607                 /* 0498 */  0x57, 0xC0, 0x1E, 0x1C, 0x4E, 0xC0, 0x02, 0xC5,  // W...N...
44608                 /* 04A0 */  0x7A, 0x51, 0x3D, 0x3B, 0xEC, 0xF7, 0xDC, 0x08,  // zQ=;....
44609                 /* 04A8 */  0x95, 0x44, 0x3C, 0x71, 0xEB, 0xED, 0x1B, 0x75,  // .D<q...u
44610                 /* 04B0 */  0xB4, 0x32, 0x87, 0x84, 0x7D, 0x8B, 0x52, 0x8C,  // .2..}.R.
44611                 /* 04B8 */  0xF4, 0x7D, 0x39, 0xF3, 0xBB, 0x1B, 0x9B, 0xE0,  // .}9.....
44612                 /* 04C0 */  0x17, 0x8A, 0x3F, 0x5D, 0xE3, 0xF3, 0xB2, 0x88   // ..?]....
44613             }
44614         })
44615         Method (GBDV, 0, Serialized)
44616         {
44617             If ((\_SB.GGIV (0x04020013) == 0x00))
44618             {
44619                 ADBG ("Load Jazz DPTF DV File")
44620                 Return (DBD1) /* \_SB_.IETM.DBD1 */
44621             }
44622             Else
44623             {
44624                 ADBG ("Load SideSwipe DPTF DV File")
44625                 Return (DBD1) /* \_SB_.IETM.DBD1 */
44626             }
44627         }
44628     }
44629 
44630     Scope (\_SB)
44631     {
44632         Device (UBTC)
44633         {
44634             Name (_HID, EisaId ("USBC000"))  // _HID: Hardware ID
44635             Name (_CID, EisaId ("PNP0CA0"))  // _CID: Compatible ID
44636             Name (_UID, Zero)  // _UID: Unique ID
44637             Name (_DDN, "USB Type C")  // _DDN: DOS Device Name
44638             Name (_ADR, Zero)  // _ADR: Address
44639             Name (CRS, ResourceTemplate ()
44640             {
44641                 Memory32Fixed (ReadWrite,
44642                     0x00000000,         // Address Base
44643                     0x00001000,         // Address Length
44644                     _Y3D)
44645             })
44646             Method (RUCC, 2, Serialized)
44647             {
44648                 Switch (ToInteger (Arg0))
44649                 {
44650                     Case (One)
44651                     {
44652                         If ((Arg1 == One))
44653                         {
44654                             If (CondRefOf (\_SB.UBTC.CR01._UPC))
44655                             {
44656                                 Return (\_SB.UBTC.CR01._UPC ())
44657                             }
44658                             Else
44659                             {
44660                                 Return (TUPC (Zero))
44661                             }
44662                         }
44663                         ElseIf (CondRefOf (\_SB.UBTC.CR01._PLD))
44664                         {
44665                             Return (\_SB.UBTC.CR01._PLD ())
44666                         }
44667                         Else
44668                         {
44669                             Return (TPLD (Zero, Zero))
44670                         }
44671                     }
44672                     Case (0x02)
44673                     {
44674                         If ((Arg1 == One))
44675                         {
44676                             If (CondRefOf (\_SB.UBTC.CR02._UPC))
44677                             {
44678                                 Return (\_SB.UBTC.CR02._UPC ())
44679                             }
44680                             Else
44681                             {
44682                                 Return (TUPC (Zero))
44683                             }
44684                         }
44685                         ElseIf (CondRefOf (\_SB.UBTC.CR02._PLD))
44686                         {
44687                             Return (\_SB.UBTC.CR02._PLD ())
44688                         }
44689                         Else
44690                         {
44691                             Return (TPLD (Zero, Zero))
44692                         }
44693                     }
44694                     Case (0x03)
44695                     {
44696                         If ((Arg1 == One))
44697                         {
44698                             If (CondRefOf (\_SB.UBTC.CR03._UPC))
44699                             {
44700                                 Return (\_SB.UBTC.CR03._UPC ())
44701                             }
44702                             Else
44703                             {
44704                                 Return (TUPC (Zero))
44705                             }
44706                         }
44707                         ElseIf (CondRefOf (\_SB.UBTC.CR03._PLD))
44708                         {
44709                             Return (\_SB.UBTC.CR03._PLD ())
44710                         }
44711                         Else
44712                         {
44713                             Return (TPLD (Zero, Zero))
44714                         }
44715                     }
44716                     Case (0x04)
44717                     {
44718                         If ((Arg1 == One))
44719                         {
44720                             If (CondRefOf (\_SB.UBTC.CR04._UPC))
44721                             {
44722                                 Return (\_SB.UBTC.CR04._UPC ())
44723                             }
44724                             Else
44725                             {
44726                                 Return (TUPC (Zero))
44727                             }
44728                         }
44729                         ElseIf (CondRefOf (\_SB.UBTC.CR04._PLD))
44730                         {
44731                             Return (\_SB.UBTC.CR04._PLD ())
44732                         }
44733                         Else
44734                         {
44735                             Return (TPLD (Zero, Zero))
44736                         }
44737                     }
44738                     Case (0x05)
44739                     {
44740                         If ((Arg1 == One))
44741                         {
44742                             If (CondRefOf (\_SB.UBTC.CR05._UPC))
44743                             {
44744                                 Return (\_SB.UBTC.CR05._UPC ())
44745                             }
44746                             Else
44747                             {
44748                                 Return (TUPC (Zero))
44749                             }
44750                         }
44751                         ElseIf (CondRefOf (\_SB.UBTC.CR05._PLD))
44752                         {
44753                             Return (\_SB.UBTC.CR05._PLD ())
44754                         }
44755                         Else
44756                         {
44757                             Return (TPLD (Zero, Zero))
44758                         }
44759                     }
44760                     Case (0x06)
44761                     {
44762                         If ((Arg1 == One))
44763                         {
44764                             If (CondRefOf (\_SB.UBTC.CR06._UPC))
44765                             {
44766                                 Return (\_SB.UBTC.CR06._UPC ())
44767                             }
44768                             Else
44769                             {
44770                                 Return (TUPC (Zero))
44771                             }
44772                         }
44773                         ElseIf (CondRefOf (\_SB.UBTC.CR06._PLD))
44774                         {
44775                             Return (\_SB.UBTC.CR06._PLD ())
44776                         }
44777                         Else
44778                         {
44779                             Return (TPLD (Zero, Zero))
44780                         }
44781                     }
44782                     Default
44783                     {
44784                         If ((Arg1 == One))
44785                         {
44786                             Return (TUPC (Zero))
44787                         }
44788                         Else
44789                         {
44790                             Return (TPLD (Zero, Zero))
44791                         }
44792                     }
44793 
44794                 }
44795             }
44796 
44797             Method (FPMN, 1, Serialized)
44798             {
44799                 Switch (ToInteger (Arg0))
44800                 {
44801                     Case (One)
44802                     {
44803                         Local0 = (TP1D >> One)
44804                         Local0 &= 0x03
44805                         Local1 = (TP1D & One)
44806                         Local2 = TP1P /* External reference */
44807                         Local3 = TP1T /* External reference */
44808                     }
44809                     Case (0x02)
44810                     {
44811                         Local0 = (TP2D >> One)
44812                         Local0 &= 0x03
44813                         Local1 = (TP2D & One)
44814                         Local2 = TP2P /* External reference */
44815                         Local3 = TP2T /* External reference */
44816                     }
44817                     Case (0x03)
44818                     {
44819                         Local0 = (TP3D >> One)
44820                         Local0 &= 0x03
44821                         Local1 = (TP3D & One)
44822                         Local2 = TP3P /* External reference */
44823                         Local3 = TP3T /* External reference */
44824                     }
44825                     Case (0x04)
44826                     {
44827                         Local0 = (TP4D >> One)
44828                         Local0 &= 0x03
44829                         Local1 = (TP4D & One)
44830                         Local2 = TP4P /* External reference */
44831                         Local3 = TP4T /* External reference */
44832                     }
44833                     Case (0x05)
44834                     {
44835                         Local0 = (TP5D >> One)
44836                         Local0 &= 0x03
44837                         Local1 = (TP5D & One)
44838                         Local2 = TP5P /* External reference */
44839                         Local3 = TP5T /* External reference */
44840                     }
44841                     Case (0x06)
44842                     {
44843                         Local0 = (TP6D >> One)
44844                         Local0 &= 0x03
44845                         Local1 = (TP6D & One)
44846                         Local2 = TP6P /* External reference */
44847                         Local3 = TP6T /* External reference */
44848                     }
44849                     Default
44850                     {
44851                         Local0 = 0xFF
44852                         Local1 = Zero
44853                         Local2 = Zero
44854                         Local3 = Zero
44855                     }
44856 
44857                 }
44858 
44859                 If ((Local0 == Zero))
44860                 {
44861                     Return (Local2)
44862                 }
44863                 ElseIf (((Local0 == One) || (Local0 == 0x02)))
44864                 {
44865                     If ((Local1 == One))
44866                     {
44867                         Return (Local2)
44868                     }
44869                     Else
44870                     {
44871                         Return (Local3)
44872                     }
44873                 }
44874                 Else
44875                 {
44876                     Return (Zero)
44877                 }
44878             }
44879 
44880             Method (TPLD, 2, Serialized)
44881             {
44882                 Name (PCKG, Package (0x01)
44883                 {
44884                     Buffer (0x10){}
44885                 })
44886                 CreateField (DerefOf (PCKG [Zero]), Zero, 0x07, REV)
44887                 REV = One
44888                 CreateField (DerefOf (PCKG [Zero]), 0x40, One, VISI)
44889                 VISI = Arg0
44890                 CreateField (DerefOf (PCKG [Zero]), 0x57, 0x08, GPOS)
44891                 GPOS = Arg1
44892                 CreateField (DerefOf (PCKG [Zero]), 0x4A, 0x04, SHAP)
44893                 SHAP = One
44894                 CreateField (DerefOf (PCKG [Zero]), 0x20, 0x10, WID)
44895                 WID = 0x08
44896                 CreateField (DerefOf (PCKG [Zero]), 0x30, 0x10, HGT)
44897                 HGT = 0x03
44898                 Return (PCKG) /* \_SB_.UBTC.TPLD.PCKG */
44899             }
44900 
44901             Method (TUPC, 1, Serialized)
44902             {
44903                 Name (PCKG, Package (0x04)
44904                 {
44905                     One, 
44906                     Zero, 
44907                     Zero, 
44908                     Zero
44909                 })
44910                 PCKG [One] = Arg0
44911                 Return (PCKG) /* \_SB_.UBTC.TUPC.PCKG */
44912             }
44913 
44914             If ((TTUP >= One))
44915             {
44916                 Device (CR01)
44917                 {
44918                     Name (_ADR, Zero)  // _ADR: Address
44919                     Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
44920                     {
44921                         Return (TPLD (One, FPMN (One)))
44922                     }
44923 
44924                     Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
44925                     {
44926                         Return (TUPC (0x09))
44927                     }
44928                 }
44929             }
44930 
44931             If ((TTUP >= 0x02))
44932             {
44933                 Device (CR02)
44934                 {
44935                     Name (_ADR, Zero)  // _ADR: Address
44936                     Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
44937                     {
44938                         Return (TPLD (One, FPMN (0x02)))
44939                     }
44940 
44941                     Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
44942                     {
44943                         Return (TUPC (0x09))
44944                     }
44945                 }
44946             }
44947 
44948             If ((TTUP >= 0x03))
44949             {
44950                 Device (CR03)
44951                 {
44952                     Name (_ADR, Zero)  // _ADR: Address
44953                     Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
44954                     {
44955                         Return (TPLD (One, FPMN (0x03)))
44956                     }
44957 
44958                     Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
44959                     {
44960                         Return (TUPC (0x09))
44961                     }
44962                 }
44963             }
44964 
44965             If ((TTUP >= 0x04))
44966             {
44967                 Device (CR04)
44968                 {
44969                     Name (_ADR, Zero)  // _ADR: Address
44970                     Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
44971                     {
44972                         Return (TPLD (One, FPMN (0x04)))
44973                     }
44974 
44975                     Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
44976                     {
44977                         Return (TUPC (0x09))
44978                     }
44979                 }
44980             }
44981 
44982             If ((TTUP >= 0x05))
44983             {
44984                 Device (CR05)
44985                 {
44986                     Name (_ADR, Zero)  // _ADR: Address
44987                     Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
44988                     {
44989                         Return (TPLD (One, FPMN (0x05)))
44990                     }
44991 
44992                     Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
44993                     {
44994                         Return (TUPC (0x09))
44995                     }
44996                 }
44997             }
44998 
44999             If ((TTUP >= 0x06))
45000             {
45001                 Device (CR06)
45002                 {
45003                     Name (_ADR, Zero)  // _ADR: Address
45004                     Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45005                     {
45006                         Return (TPLD (One, FPMN (0x06)))
45007                     }
45008 
45009                     Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45010                     {
45011                         Return (TUPC (0x09))
45012                     }
45013                 }
45014             }
45015 
45016             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
45017             {
45018                 CreateDWordField (CRS, \_SB.UBTC._Y3D._BAS, CBAS)  // _BAS: Base Address
45019                 CBAS = UBCB /* External reference */
45020                 Return (CRS) /* \_SB_.UBTC.CRS_ */
45021             }
45022 
45023             Method (_STA, 0, NotSerialized)  // _STA: Status
45024             {
45025                 If ((USTC == One))
45026                 {
45027                     Return (0x0F)
45028                 }
45029 
45030                 Return (Zero)
45031             }
45032 
45033             OperationRegion (USBC, SystemMemory, UBCB, 0x38)
45034             Field (USBC, ByteAcc, Lock, Preserve)
45035             {
45036                 VER1,   8, 
45037                 VER2,   8, 
45038                 RSV1,   8, 
45039                 RSV2,   8, 
45040                 CCI0,   8, 
45041                 CCI1,   8, 
45042                 CCI2,   8, 
45043                 CCI3,   8, 
45044                 CTL0,   8, 
45045                 CTL1,   8, 
45046                 CTL2,   8, 
45047                 CTL3,   8, 
45048                 CTL4,   8, 
45049                 CTL5,   8, 
45050                 CTL6,   8, 
45051                 CTL7,   8, 
45052                 MGI0,   8, 
45053                 MGI1,   8, 
45054                 MGI2,   8, 
45055                 MGI3,   8, 
45056                 MGI4,   8, 
45057                 MGI5,   8, 
45058                 MGI6,   8, 
45059                 MGI7,   8, 
45060                 MGI8,   8, 
45061                 MGI9,   8, 
45062                 MGIA,   8, 
45063                 MGIB,   8, 
45064                 MGIC,   8, 
45065                 MGID,   8, 
45066                 MGIE,   8, 
45067                 MGIF,   8, 
45068                 MGO0,   8, 
45069                 MGO1,   8, 
45070                 MGO2,   8, 
45071                 MGO3,   8, 
45072                 MGO4,   8, 
45073                 MGO5,   8, 
45074                 MGO6,   8, 
45075                 MGO7,   8, 
45076                 MGO8,   8, 
45077                 MGO9,   8, 
45078                 MGOA,   8, 
45079                 MGOB,   8, 
45080                 MGOC,   8, 
45081                 MGOD,   8, 
45082                 MGOE,   8, 
45083                 MGOF,   8
45084             }
45085 
45086             Mutex (UBSY, 0x00)
45087             Method (ECWR, 0, Serialized)
45088             {
45089                 Acquire (UBSY, 0xFFFF)
45090                 Local0 = Buffer (0x25){}
45091                 Local0 [Zero] = 0x0A
45092                 Local0 [One] = Zero
45093                 Local0 [0x02] = 0x02
45094                 Local0 [0x03] = 0x06
45095                 Local0 [0x04] = MGO0 /* \_SB_.UBTC.MGO0 */
45096                 Local0 [0x05] = MGO1 /* \_SB_.UBTC.MGO1 */
45097                 Local0 [0x06] = MGO2 /* \_SB_.UBTC.MGO2 */
45098                 Local0 [0x07] = MGO3 /* \_SB_.UBTC.MGO3 */
45099                 Local0 [0x08] = MGO4 /* \_SB_.UBTC.MGO4 */
45100                 Local0 [0x09] = MGO5 /* \_SB_.UBTC.MGO5 */
45101                 Local0 [0x0A] = MGO6 /* \_SB_.UBTC.MGO6 */
45102                 Local0 [0x0B] = MGO7 /* \_SB_.UBTC.MGO7 */
45103                 Local0 [0x0C] = MGO8 /* \_SB_.UBTC.MGO8 */
45104                 Local0 [0x0D] = MGO9 /* \_SB_.UBTC.MGO9 */
45105                 Local0 [0x0E] = MGOA /* \_SB_.UBTC.MGOA */
45106                 Local0 [0x0F] = MGOB /* \_SB_.UBTC.MGOB */
45107                 Local0 [0x10] = MGOC /* \_SB_.UBTC.MGOC */
45108                 Local0 [0x11] = MGOD /* \_SB_.UBTC.MGOD */
45109                 Local0 [0x12] = MGOE /* \_SB_.UBTC.MGOE */
45110                 Local0 [0x13] = MGOF /* \_SB_.UBTC.MGOF */
45111                 Local0 [0x24] = 0x10
45112                 \_SB.PCI0.LPCB.EC.HKEY.MHPF (Local0)
45113                 Local0 [Zero] = 0x0A
45114                 Local0 [One] = Zero
45115                 Local0 [0x02] = 0x02
45116                 Local0 [0x03] = 0x04
45117                 Local0 [0x04] = CTL0 /* \_SB_.UBTC.CTL0 */
45118                 Local0 [0x05] = CTL1 /* \_SB_.UBTC.CTL1 */
45119                 Local0 [0x06] = CTL2 /* \_SB_.UBTC.CTL2 */
45120                 Local0 [0x07] = CTL3 /* \_SB_.UBTC.CTL3 */
45121                 Local0 [0x08] = CTL4 /* \_SB_.UBTC.CTL4 */
45122                 Local0 [0x09] = CTL5 /* \_SB_.UBTC.CTL5 */
45123                 Local0 [0x0A] = CTL6 /* \_SB_.UBTC.CTL6 */
45124                 Local0 [0x0B] = CTL7 /* \_SB_.UBTC.CTL7 */
45125                 Local0 [0x24] = 0x08
45126                 \_SB.PCI0.LPCB.EC.HKEY.MHPF (Local0)
45127                 Release (UBSY)
45128             }
45129 
45130             Method (ECRD, 0, Serialized)
45131             {
45132                 Acquire (UBSY, 0xFFFF)
45133                 Local0 = Buffer (0x25){}
45134                 Local0 [Zero] = 0x0B
45135                 Local0 [One] = Zero
45136                 Local0 [0x02] = 0x02
45137                 Local0 [0x03] = 0x05
45138                 Local0 [0x24] = 0x10
45139                 Local1 = \_SB.PCI0.LPCB.EC.HKEY.MHPF (Local0)
45140                 MGI0 = DerefOf (Local1 [0x04])
45141                 MGI1 = DerefOf (Local1 [0x05])
45142                 MGI2 = DerefOf (Local1 [0x06])
45143                 MGI3 = DerefOf (Local1 [0x07])
45144                 MGI4 = DerefOf (Local1 [0x08])
45145                 MGI5 = DerefOf (Local1 [0x09])
45146                 MGI6 = DerefOf (Local1 [0x0A])
45147                 MGI7 = DerefOf (Local1 [0x0B])
45148                 MGI8 = DerefOf (Local1 [0x0C])
45149                 MGI9 = DerefOf (Local1 [0x0D])
45150                 MGIA = DerefOf (Local1 [0x0E])
45151                 MGIB = DerefOf (Local1 [0x0F])
45152                 MGIC = DerefOf (Local1 [0x10])
45153                 MGID = DerefOf (Local1 [0x11])
45154                 MGIE = DerefOf (Local1 [0x12])
45155                 MGIF = DerefOf (Local1 [0x13])
45156                 Local0 [Zero] = 0x0B
45157                 Local0 [One] = Zero
45158                 Local0 [0x02] = 0x02
45159                 Local0 [0x03] = 0x03
45160                 Local0 [0x24] = 0x04
45161                 Local1 = \_SB.PCI0.LPCB.EC.HKEY.MHPF (Local0)
45162                 CCI0 = DerefOf (Local1 [0x04])
45163                 CCI1 = DerefOf (Local1 [0x05])
45164                 CCI2 = DerefOf (Local1 [0x06])
45165                 CCI3 = DerefOf (Local1 [0x07])
45166                 Release (UBSY)
45167             }
45168 
45169             Method (NTFY, 0, Serialized)
45170             {
45171                 ECRD ()
45172                 Sleep (One)
45173                 Notify (\_SB.UBTC, 0x80) // Status Change
45174             }
45175 
45176             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
45177             {
45178                 If ((Arg0 == ToUUID ("6f8398c2-7ca4-11e4-ad36-631042b5008f")))
45179                 {
45180                     Switch (ToInteger (Arg2))
45181                     {
45182                         Case (Zero)
45183                         {
45184                             Return (Buffer (One)
45185                             {
45186                                  0x0F                                             // .
45187                             })
45188                         }
45189                         Case (One)
45190                         {
45191                             ECWR ()
45192                         }
45193                         Case (0x02)
45194                         {
45195                             ECRD ()
45196                         }
45197                         Case (0x03)
45198                         {
45199                             Return (XDCE) /* External reference */
45200                         }
45201 
45202                     }
45203                 }
45204 
45205                 Return (Buffer (One)
45206                 {
45207                      0x00                                             // .
45208                 })
45209             }
45210 
45211             Method (PSPR, 3, Serialized)
45212             {
45213                 Local3 = Zero
45214                 If ((Arg1 == Zero))
45215                 {
45216                     Local3 = One
45217                 }
45218                 ElseIf ((Arg1 == 0x60))
45219                 {
45220                     Local3 = One
45221                 }
45222                 ElseIf ((Arg1 == 0x80))
45223                 {
45224                     Local3 = One
45225                 }
45226                 ElseIf ((Arg1 == 0x20))
45227                 {
45228                     Local3 = One
45229                 }
45230 
45231                 If ((Local3 == Zero))
45232                 {
45233                     Return (Zero)
45234                 }
45235 
45236                 If (((Arg1 == 0x80) == (Arg2 == One)))
45237                 {
45238                     Return (Zero)
45239                 }
45240 
45241                 Local1 = 0xFFFFFF1F
45242                 Local0 = (Arg0 << 0x10)
45243                 If ((Arg2 == Zero))
45244                 {
45245                     Local0 = (0x0500 + Local0)
45246                 }
45247                 Else
45248                 {
45249                     Local0 = (0x0600 + Local0)
45250                 }
45251 
45252                 PCAO (0x70, Local0, Local1, Arg1)
45253                 Local0 = (0x08 + Local0)
45254                 Local3 = Zero
45255                 While ((Local3 == Zero))
45256                 {
45257                     Local2 = (PCRR (0x70, Local0) & 0xFF)
45258                     If ((Arg1 == Zero))
45259                     {
45260                         If (((Local2 == One) || (Local2 == 0x20)))
45261                         {
45262                             Local3 = One
45263                         }
45264                     }
45265                     ElseIf ((Arg1 == 0x80))
45266                     {
45267                         If ((Local2 == 0x40))
45268                         {
45269                             Local3 = One
45270                         }
45271                     }
45272                     ElseIf ((Arg1 == 0x60))
45273                     {
45274                         If ((((Local2 == 0x80) || (Local2 == 0x08)) || (Local2 == 0x20)))
45275                         {
45276                             Local3 = One
45277                         }
45278                     }
45279                     ElseIf ((Arg1 == 0x20))
45280                     {
45281                         If (((Local2 == 0x02) || (Local2 == 0x10)))
45282                         {
45283                             Local3 = One
45284                         }
45285                     }
45286                 }
45287             }
45288 
45289             Method (SPHT, 1, Serialized)
45290             {
45291                 PSPR (Arg0, Zero, Zero)
45292                 PSPR (Arg0, Zero, One)
45293             }
45294 
45295             Method (SPTD, 1, Serialized)
45296             {
45297                 PSPR (Arg0, 0x60, Zero)
45298                 PSPR (Arg0, 0x60, One)
45299             }
45300 
45301             Method (SPDB, 1, Serialized)
45302             {
45303                 PSPR (Arg0, 0x60, Zero)
45304             }
45305 
45306             Method (USPR, 2, Serialized)
45307             {
45308             }
45309         }
45310     }
45311 
45312     If (((TBTS == One) && ((RPS0 == One) || (RPS1 == One))))
45313     {
45314         Scope (\_SB.PCI0.RP01.PXSX)
45315         {
45316             Name (TURP, One)
45317             Device (TBDU)
45318             {
45319                 Name (_ADR, 0x00020000)  // _ADR: Address
45320                 Device (XHC)
45321                 {
45322                     Name (_ADR, Zero)  // _ADR: Address
45323                     Device (RHUB)
45324                     {
45325                         Name (_ADR, Zero)  // _ADR: Address
45326                         Method (SLMS, 1, Serialized)
45327                         {
45328                             Local0 = (TURP << 0x02)
45329                             Local0 |= One
45330                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
45331                             {
45332                                 Return ((TP1D & One))
45333                             }
45334                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
45335                             {
45336                                 Return ((TP2D & One))
45337                             }
45338                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
45339                             {
45340                                 Return ((TP3D & One))
45341                             }
45342                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
45343                             {
45344                                 Return ((TP4D & One))
45345                             }
45346                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
45347                             {
45348                                 Return ((TP5D & One))
45349                             }
45350                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
45351                             {
45352                                 Return ((TP6D & One))
45353                             }
45354                             Else
45355                             {
45356                                 Return (Zero)
45357                             }
45358                         }
45359 
45360                         Method (FPCP, 2, Serialized)
45361                         {
45362                             Local0 = (TURP << 0x02)
45363                             Local0 |= One
45364                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
45365                             {
45366                                 Return (\_SB.UBTC.RUCC (One, Arg1))
45367                             }
45368                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
45369                             {
45370                                 Return (\_SB.UBTC.RUCC (0x02, Arg1))
45371                             }
45372                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
45373                             {
45374                                 Return (\_SB.UBTC.RUCC (0x03, Arg1))
45375                             }
45376                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
45377                             {
45378                                 Return (\_SB.UBTC.RUCC (0x04, Arg1))
45379                             }
45380                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
45381                             {
45382                                 Return (\_SB.UBTC.RUCC (0x05, Arg1))
45383                             }
45384                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
45385                             {
45386                                 Return (\_SB.UBTC.RUCC (0x06, Arg1))
45387                             }
45388                             ElseIf ((Arg1 == One))
45389                             {
45390                                 Return (TUPC (Zero, Zero))
45391                             }
45392                             Else
45393                             {
45394                                 Return (TPLD (Zero, Zero))
45395                             }
45396                         }
45397 
45398                         Method (FPSP, 1, Serialized)
45399                         {
45400                             Local0 = (TURP << 0x02)
45401                             Local0 |= One
45402                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
45403                             {
45404                                 Return (One)
45405                             }
45406                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
45407                             {
45408                                 Return (One)
45409                             }
45410                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
45411                             {
45412                                 Return (One)
45413                             }
45414                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
45415                             {
45416                                 Return (One)
45417                             }
45418                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
45419                             {
45420                                 Return (One)
45421                             }
45422                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
45423                             {
45424                                 Return (One)
45425                             }
45426                             Else
45427                             {
45428                                 Return (Zero)
45429                             }
45430                         }
45431 
45432                         Method (TPLD, 2, Serialized)
45433                         {
45434                             Name (PCKG, Package (0x01)
45435                             {
45436                                 Buffer (0x10){}
45437                             })
45438                             CreateField (DerefOf (PCKG [Zero]), Zero, 0x07, REV)
45439                             REV = One
45440                             CreateField (DerefOf (PCKG [Zero]), 0x40, One, VISI)
45441                             VISI = Arg0
45442                             CreateField (DerefOf (PCKG [Zero]), 0x57, 0x08, GPOS)
45443                             GPOS = Arg1
45444                             CreateField (DerefOf (PCKG [Zero]), 0x4A, 0x04, SHAP)
45445                             SHAP = One
45446                             CreateField (DerefOf (PCKG [Zero]), 0x20, 0x10, WID)
45447                             WID = 0x08
45448                             CreateField (DerefOf (PCKG [Zero]), 0x30, 0x10, HGT)
45449                             HGT = 0x03
45450                             Return (PCKG) /* \_SB_.PCI0.RP01.PXSX.TBDU.XHC_.RHUB.TPLD.PCKG */
45451                         }
45452 
45453                         Method (TUPC, 2, Serialized)
45454                         {
45455                             Name (PCKG, Package (0x04)
45456                             {
45457                                 One, 
45458                                 Zero, 
45459                                 Zero, 
45460                                 Zero
45461                             })
45462                             PCKG [Zero] = Arg0
45463                             PCKG [One] = Arg1
45464                             Return (PCKG) /* \_SB_.PCI0.RP01.PXSX.TBDU.XHC_.RHUB.TUPC.PCKG */
45465                         }
45466 
45467                         Device (HS01)
45468                         {
45469                             Name (_ADR, One)  // _ADR: Address
45470                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45471                             {
45472                                 If ((FPSP (One) == One))
45473                                 {
45474                                     If ((SLMS (One) == Zero))
45475                                     {
45476                                         Return (FPCP (One, One))
45477                                     }
45478                                     Else
45479                                     {
45480                                         Return (TUPC (Zero, Zero))
45481                                     }
45482                                 }
45483                                 Else
45484                                 {
45485                                     Return (TUPC (Zero, 0xFF))
45486                                 }
45487                             }
45488 
45489                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45490                             {
45491                                 If ((FPSP (One) == One))
45492                                 {
45493                                     If ((SLMS (One) == Zero))
45494                                     {
45495                                         Return (FPCP (One, 0x02))
45496                                     }
45497                                     Else
45498                                     {
45499                                         Return (TPLD (Zero, Zero))
45500                                     }
45501                                 }
45502                                 Else
45503                                 {
45504                                     Return (TPLD (Zero, Zero))
45505                                 }
45506                             }
45507                         }
45508 
45509                         Device (HS02)
45510                         {
45511                             Name (_ADR, 0x02)  // _ADR: Address
45512                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45513                             {
45514                                 If ((FPSP (0x02) == One))
45515                                 {
45516                                     If ((SLMS (0x02) == Zero))
45517                                     {
45518                                         Return (FPCP (0x02, One))
45519                                     }
45520                                     Else
45521                                     {
45522                                         Return (TUPC (Zero, Zero))
45523                                     }
45524                                 }
45525                                 Else
45526                                 {
45527                                     Return (TUPC (Zero, 0xFF))
45528                                 }
45529                             }
45530 
45531                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45532                             {
45533                                 If ((FPSP (0x02) == One))
45534                                 {
45535                                     If ((SLMS (0x02) == Zero))
45536                                     {
45537                                         Return (FPCP (0x02, 0x02))
45538                                     }
45539                                     Else
45540                                     {
45541                                         Return (TPLD (Zero, Zero))
45542                                     }
45543                                 }
45544                                 Else
45545                                 {
45546                                     Return (TPLD (Zero, Zero))
45547                                 }
45548                             }
45549                         }
45550 
45551                         Device (SS01)
45552                         {
45553                             Name (_ADR, 0x03)  // _ADR: Address
45554                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45555                             {
45556                                 If ((FPSP (One) == One))
45557                                 {
45558                                     Return (FPCP (One, One))
45559                                 }
45560                                 Else
45561                                 {
45562                                     Return (TUPC (Zero, 0xFF))
45563                                 }
45564                             }
45565 
45566                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45567                             {
45568                                 If ((FPSP (One) == One))
45569                                 {
45570                                     Return (FPCP (One, 0x02))
45571                                 }
45572                                 Else
45573                                 {
45574                                     Return (TPLD (Zero, Zero))
45575                                 }
45576                             }
45577                         }
45578 
45579                         Device (SS02)
45580                         {
45581                             Name (_ADR, 0x04)  // _ADR: Address
45582                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45583                             {
45584                                 If ((FPSP (0x02) == One))
45585                                 {
45586                                     Return (FPCP (0x02, One))
45587                                 }
45588                                 Else
45589                                 {
45590                                     Return (TUPC (Zero, 0xFF))
45591                                 }
45592                             }
45593 
45594                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45595                             {
45596                                 If ((FPSP (0x02) == One))
45597                                 {
45598                                     Return (FPCP (0x02, 0x02))
45599                                 }
45600                                 Else
45601                                 {
45602                                     Return (TPLD (Zero, Zero))
45603                                 }
45604                             }
45605                         }
45606                     }
45607                 }
45608             }
45609         }
45610     }
45611 
45612     If (((TBTS == One) && ((RPS0 == 0x05) || (RPS1 == 0x05))))
45613     {
45614         Scope (\_SB.PCI0.RP05.PXSX)
45615         {
45616             Name (TURP, 0x05)
45617             Device (TBDU)
45618             {
45619                 Name (_ADR, 0x00020000)  // _ADR: Address
45620                 Device (XHC)
45621                 {
45622                     Name (_ADR, Zero)  // _ADR: Address
45623                     Device (RHUB)
45624                     {
45625                         Name (_ADR, Zero)  // _ADR: Address
45626                         Method (SLMS, 1, Serialized)
45627                         {
45628                             Local0 = (TURP << 0x02)
45629                             Local0 |= One
45630                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
45631                             {
45632                                 Return ((TP1D & One))
45633                             }
45634                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
45635                             {
45636                                 Return ((TP2D & One))
45637                             }
45638                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
45639                             {
45640                                 Return ((TP3D & One))
45641                             }
45642                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
45643                             {
45644                                 Return ((TP4D & One))
45645                             }
45646                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
45647                             {
45648                                 Return ((TP5D & One))
45649                             }
45650                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
45651                             {
45652                                 Return ((TP6D & One))
45653                             }
45654                             Else
45655                             {
45656                                 Return (Zero)
45657                             }
45658                         }
45659 
45660                         Method (FPCP, 2, Serialized)
45661                         {
45662                             Local0 = (TURP << 0x02)
45663                             Local0 |= One
45664                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
45665                             {
45666                                 Return (\_SB.UBTC.RUCC (One, Arg1))
45667                             }
45668                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
45669                             {
45670                                 Return (\_SB.UBTC.RUCC (0x02, Arg1))
45671                             }
45672                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
45673                             {
45674                                 Return (\_SB.UBTC.RUCC (0x03, Arg1))
45675                             }
45676                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
45677                             {
45678                                 Return (\_SB.UBTC.RUCC (0x04, Arg1))
45679                             }
45680                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
45681                             {
45682                                 Return (\_SB.UBTC.RUCC (0x05, Arg1))
45683                             }
45684                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
45685                             {
45686                                 Return (\_SB.UBTC.RUCC (0x06, Arg1))
45687                             }
45688                             ElseIf ((Arg1 == One))
45689                             {
45690                                 Return (TUPC (Zero, Zero))
45691                             }
45692                             Else
45693                             {
45694                                 Return (TPLD (Zero, Zero))
45695                             }
45696                         }
45697 
45698                         Method (FPSP, 1, Serialized)
45699                         {
45700                             Local0 = (TURP << 0x02)
45701                             Local0 |= One
45702                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
45703                             {
45704                                 Return (One)
45705                             }
45706                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
45707                             {
45708                                 Return (One)
45709                             }
45710                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
45711                             {
45712                                 Return (One)
45713                             }
45714                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
45715                             {
45716                                 Return (One)
45717                             }
45718                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
45719                             {
45720                                 Return (One)
45721                             }
45722                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
45723                             {
45724                                 Return (One)
45725                             }
45726                             Else
45727                             {
45728                                 Return (Zero)
45729                             }
45730                         }
45731 
45732                         Method (TPLD, 2, Serialized)
45733                         {
45734                             Name (PCKG, Package (0x01)
45735                             {
45736                                 Buffer (0x10){}
45737                             })
45738                             CreateField (DerefOf (PCKG [Zero]), Zero, 0x07, REV)
45739                             REV = One
45740                             CreateField (DerefOf (PCKG [Zero]), 0x40, One, VISI)
45741                             VISI = Arg0
45742                             CreateField (DerefOf (PCKG [Zero]), 0x57, 0x08, GPOS)
45743                             GPOS = Arg1
45744                             CreateField (DerefOf (PCKG [Zero]), 0x4A, 0x04, SHAP)
45745                             SHAP = One
45746                             CreateField (DerefOf (PCKG [Zero]), 0x20, 0x10, WID)
45747                             WID = 0x08
45748                             CreateField (DerefOf (PCKG [Zero]), 0x30, 0x10, HGT)
45749                             HGT = 0x03
45750                             Return (PCKG) /* \_SB_.PCI0.RP05.PXSX.TBDU.XHC_.RHUB.TPLD.PCKG */
45751                         }
45752 
45753                         Method (TUPC, 2, Serialized)
45754                         {
45755                             Name (PCKG, Package (0x04)
45756                             {
45757                                 One, 
45758                                 Zero, 
45759                                 Zero, 
45760                                 Zero
45761                             })
45762                             PCKG [Zero] = Arg0
45763                             PCKG [One] = Arg1
45764                             Return (PCKG) /* \_SB_.PCI0.RP05.PXSX.TBDU.XHC_.RHUB.TUPC.PCKG */
45765                         }
45766 
45767                         Device (HS01)
45768                         {
45769                             Name (_ADR, One)  // _ADR: Address
45770                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45771                             {
45772                                 If ((FPSP (One) == One))
45773                                 {
45774                                     If ((SLMS (One) == Zero))
45775                                     {
45776                                         Return (FPCP (One, One))
45777                                     }
45778                                     Else
45779                                     {
45780                                         Return (TUPC (Zero, Zero))
45781                                     }
45782                                 }
45783                                 Else
45784                                 {
45785                                     Return (TUPC (Zero, 0xFF))
45786                                 }
45787                             }
45788 
45789                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45790                             {
45791                                 If ((FPSP (One) == One))
45792                                 {
45793                                     If ((SLMS (One) == Zero))
45794                                     {
45795                                         Return (FPCP (One, 0x02))
45796                                     }
45797                                     Else
45798                                     {
45799                                         Return (TPLD (Zero, Zero))
45800                                     }
45801                                 }
45802                                 Else
45803                                 {
45804                                     Return (TPLD (Zero, Zero))
45805                                 }
45806                             }
45807                         }
45808 
45809                         Device (HS02)
45810                         {
45811                             Name (_ADR, 0x02)  // _ADR: Address
45812                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45813                             {
45814                                 If ((FPSP (0x02) == One))
45815                                 {
45816                                     If ((SLMS (0x02) == Zero))
45817                                     {
45818                                         Return (FPCP (0x02, One))
45819                                     }
45820                                     Else
45821                                     {
45822                                         Return (TUPC (Zero, Zero))
45823                                     }
45824                                 }
45825                                 Else
45826                                 {
45827                                     Return (TUPC (Zero, 0xFF))
45828                                 }
45829                             }
45830 
45831                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45832                             {
45833                                 If ((FPSP (0x02) == One))
45834                                 {
45835                                     If ((SLMS (0x02) == Zero))
45836                                     {
45837                                         Return (FPCP (0x02, 0x02))
45838                                     }
45839                                     Else
45840                                     {
45841                                         Return (TPLD (Zero, Zero))
45842                                     }
45843                                 }
45844                                 Else
45845                                 {
45846                                     Return (TPLD (Zero, Zero))
45847                                 }
45848                             }
45849                         }
45850 
45851                         Device (SS01)
45852                         {
45853                             Name (_ADR, 0x03)  // _ADR: Address
45854                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45855                             {
45856                                 If ((FPSP (One) == One))
45857                                 {
45858                                     Return (FPCP (One, One))
45859                                 }
45860                                 Else
45861                                 {
45862                                     Return (TUPC (Zero, 0xFF))
45863                                 }
45864                             }
45865 
45866                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45867                             {
45868                                 If ((FPSP (One) == One))
45869                                 {
45870                                     Return (FPCP (One, 0x02))
45871                                 }
45872                                 Else
45873                                 {
45874                                     Return (TPLD (Zero, Zero))
45875                                 }
45876                             }
45877                         }
45878 
45879                         Device (SS02)
45880                         {
45881                             Name (_ADR, 0x04)  // _ADR: Address
45882                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
45883                             {
45884                                 If ((FPSP (0x02) == One))
45885                                 {
45886                                     Return (FPCP (0x02, One))
45887                                 }
45888                                 Else
45889                                 {
45890                                     Return (TUPC (Zero, 0xFF))
45891                                 }
45892                             }
45893 
45894                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
45895                             {
45896                                 If ((FPSP (0x02) == One))
45897                                 {
45898                                     Return (FPCP (0x02, 0x02))
45899                                 }
45900                                 Else
45901                                 {
45902                                     Return (TPLD (Zero, Zero))
45903                                 }
45904                             }
45905                         }
45906                     }
45907                 }
45908             }
45909         }
45910     }
45911 
45912     If (((TBTS == One) && ((RPS0 == 0x09) || (RPS1 == 0x09))))
45913     {
45914         Scope (\_SB.PCI0.RP09.PXSX)
45915         {
45916             Name (TURP, 0x09)
45917             Device (TBDU)
45918             {
45919                 Name (_ADR, 0x00020000)  // _ADR: Address
45920                 Device (XHC)
45921                 {
45922                     Name (_ADR, Zero)  // _ADR: Address
45923                     Device (RHUB)
45924                     {
45925                         Name (_ADR, Zero)  // _ADR: Address
45926                         Method (SLMS, 1, Serialized)
45927                         {
45928                             Local0 = (TURP << 0x02)
45929                             Local0 |= One
45930                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
45931                             {
45932                                 Return ((TP1D & One))
45933                             }
45934                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
45935                             {
45936                                 Return ((TP2D & One))
45937                             }
45938                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
45939                             {
45940                                 Return ((TP3D & One))
45941                             }
45942                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
45943                             {
45944                                 Return ((TP4D & One))
45945                             }
45946                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
45947                             {
45948                                 Return ((TP5D & One))
45949                             }
45950                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
45951                             {
45952                                 Return ((TP6D & One))
45953                             }
45954                             Else
45955                             {
45956                                 Return (Zero)
45957                             }
45958                         }
45959 
45960                         Method (FPCP, 2, Serialized)
45961                         {
45962                             Local0 = (TURP << 0x02)
45963                             Local0 |= One
45964                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
45965                             {
45966                                 Return (\_SB.UBTC.RUCC (One, Arg1))
45967                             }
45968                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
45969                             {
45970                                 Return (\_SB.UBTC.RUCC (0x02, Arg1))
45971                             }
45972                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
45973                             {
45974                                 Return (\_SB.UBTC.RUCC (0x03, Arg1))
45975                             }
45976                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
45977                             {
45978                                 Return (\_SB.UBTC.RUCC (0x04, Arg1))
45979                             }
45980                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
45981                             {
45982                                 Return (\_SB.UBTC.RUCC (0x05, Arg1))
45983                             }
45984                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
45985                             {
45986                                 Return (\_SB.UBTC.RUCC (0x06, Arg1))
45987                             }
45988                             ElseIf ((Arg1 == One))
45989                             {
45990                                 Return (TUPC (Zero, Zero))
45991                             }
45992                             Else
45993                             {
45994                                 Return (TPLD (Zero, Zero))
45995                             }
45996                         }
45997 
45998                         Method (FPSP, 1, Serialized)
45999                         {
46000                             Local0 = (TURP << 0x02)
46001                             Local0 |= One
46002                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
46003                             {
46004                                 Return (One)
46005                             }
46006                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
46007                             {
46008                                 Return (One)
46009                             }
46010                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
46011                             {
46012                                 Return (One)
46013                             }
46014                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
46015                             {
46016                                 Return (One)
46017                             }
46018                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
46019                             {
46020                                 Return (One)
46021                             }
46022                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
46023                             {
46024                                 Return (One)
46025                             }
46026                             Else
46027                             {
46028                                 Return (Zero)
46029                             }
46030                         }
46031 
46032                         Method (TPLD, 2, Serialized)
46033                         {
46034                             Name (PCKG, Package (0x01)
46035                             {
46036                                 Buffer (0x10){}
46037                             })
46038                             CreateField (DerefOf (PCKG [Zero]), Zero, 0x07, REV)
46039                             REV = One
46040                             CreateField (DerefOf (PCKG [Zero]), 0x40, One, VISI)
46041                             VISI = Arg0
46042                             CreateField (DerefOf (PCKG [Zero]), 0x57, 0x08, GPOS)
46043                             GPOS = Arg1
46044                             CreateField (DerefOf (PCKG [Zero]), 0x4A, 0x04, SHAP)
46045                             SHAP = One
46046                             CreateField (DerefOf (PCKG [Zero]), 0x20, 0x10, WID)
46047                             WID = 0x08
46048                             CreateField (DerefOf (PCKG [Zero]), 0x30, 0x10, HGT)
46049                             HGT = 0x03
46050                             Return (PCKG) /* \_SB_.PCI0.RP09.PXSX.TBDU.XHC_.RHUB.TPLD.PCKG */
46051                         }
46052 
46053                         Method (TUPC, 2, Serialized)
46054                         {
46055                             Name (PCKG, Package (0x04)
46056                             {
46057                                 One, 
46058                                 Zero, 
46059                                 Zero, 
46060                                 Zero
46061                             })
46062                             PCKG [Zero] = Arg0
46063                             PCKG [One] = Arg1
46064                             Return (PCKG) /* \_SB_.PCI0.RP09.PXSX.TBDU.XHC_.RHUB.TUPC.PCKG */
46065                         }
46066 
46067                         Device (HS01)
46068                         {
46069                             Name (_ADR, One)  // _ADR: Address
46070                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
46071                             {
46072                                 If ((FPSP (One) == One))
46073                                 {
46074                                     If ((SLMS (One) == Zero))
46075                                     {
46076                                         Return (FPCP (One, One))
46077                                     }
46078                                     Else
46079                                     {
46080                                         Return (TUPC (Zero, Zero))
46081                                     }
46082                                 }
46083                                 Else
46084                                 {
46085                                     Return (TUPC (Zero, 0xFF))
46086                                 }
46087                             }
46088 
46089                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
46090                             {
46091                                 If ((FPSP (One) == One))
46092                                 {
46093                                     If ((SLMS (One) == Zero))
46094                                     {
46095                                         Return (FPCP (One, 0x02))
46096                                     }
46097                                     Else
46098                                     {
46099                                         Return (TPLD (Zero, Zero))
46100                                     }
46101                                 }
46102                                 Else
46103                                 {
46104                                     Return (TPLD (Zero, Zero))
46105                                 }
46106                             }
46107                         }
46108 
46109                         Device (HS02)
46110                         {
46111                             Name (_ADR, 0x02)  // _ADR: Address
46112                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
46113                             {
46114                                 If ((FPSP (0x02) == One))
46115                                 {
46116                                     If ((SLMS (0x02) == Zero))
46117                                     {
46118                                         Return (FPCP (0x02, One))
46119                                     }
46120                                     Else
46121                                     {
46122                                         Return (TUPC (Zero, Zero))
46123                                     }
46124                                 }
46125                                 Else
46126                                 {
46127                                     Return (TUPC (Zero, 0xFF))
46128                                 }
46129                             }
46130 
46131                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
46132                             {
46133                                 If ((FPSP (0x02) == One))
46134                                 {
46135                                     If ((SLMS (0x02) == Zero))
46136                                     {
46137                                         Return (FPCP (0x02, 0x02))
46138                                     }
46139                                     Else
46140                                     {
46141                                         Return (TPLD (Zero, Zero))
46142                                     }
46143                                 }
46144                                 Else
46145                                 {
46146                                     Return (TPLD (Zero, Zero))
46147                                 }
46148                             }
46149                         }
46150 
46151                         Device (SS01)
46152                         {
46153                             Name (_ADR, 0x03)  // _ADR: Address
46154                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
46155                             {
46156                                 If ((FPSP (One) == One))
46157                                 {
46158                                     Return (FPCP (One, One))
46159                                 }
46160                                 Else
46161                                 {
46162                                     Return (TUPC (Zero, 0xFF))
46163                                 }
46164                             }
46165 
46166                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
46167                             {
46168                                 If ((FPSP (One) == One))
46169                                 {
46170                                     Return (FPCP (One, 0x02))
46171                                 }
46172                                 Else
46173                                 {
46174                                     Return (TPLD (Zero, Zero))
46175                                 }
46176                             }
46177                         }
46178 
46179                         Device (SS02)
46180                         {
46181                             Name (_ADR, 0x04)  // _ADR: Address
46182                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
46183                             {
46184                                 If ((FPSP (0x02) == One))
46185                                 {
46186                                     Return (FPCP (0x02, One))
46187                                 }
46188                                 Else
46189                                 {
46190                                     Return (TUPC (Zero, 0xFF))
46191                                 }
46192                             }
46193 
46194                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
46195                             {
46196                                 If ((FPSP (0x02) == One))
46197                                 {
46198                                     Return (FPCP (0x02, 0x02))
46199                                 }
46200                                 Else
46201                                 {
46202                                     Return (TPLD (Zero, Zero))
46203                                 }
46204                             }
46205                         }
46206                     }
46207                 }
46208             }
46209         }
46210     }
46211 
46212     If (((TBTS == One) && ((RPS0 == 0x15) || (RPS1 == 0x15))))
46213     {
46214         Scope (\_SB.PCI0.RP21.PXSX)
46215         {
46216             Name (TURP, 0x15)
46217             Device (TBDU)
46218             {
46219                 Name (_ADR, 0x00020000)  // _ADR: Address
46220                 Device (XHC)
46221                 {
46222                     Name (_ADR, Zero)  // _ADR: Address
46223                     Device (RHUB)
46224                     {
46225                         Name (_ADR, Zero)  // _ADR: Address
46226                         Method (SLMS, 1, Serialized)
46227                         {
46228                             Local0 = (TURP << 0x02)
46229                             Local0 |= One
46230                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
46231                             {
46232                                 Return ((TP1D & One))
46233                             }
46234                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
46235                             {
46236                                 Return ((TP2D & One))
46237                             }
46238                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
46239                             {
46240                                 Return ((TP3D & One))
46241                             }
46242                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
46243                             {
46244                                 Return ((TP4D & One))
46245                             }
46246                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
46247                             {
46248                                 Return ((TP5D & One))
46249                             }
46250                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
46251                             {
46252                                 Return ((TP6D & One))
46253                             }
46254                             Else
46255                             {
46256                                 Return (Zero)
46257                             }
46258                         }
46259 
46260                         Method (FPCP, 2, Serialized)
46261                         {
46262                             Local0 = (TURP << 0x02)
46263                             Local0 |= One
46264                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
46265                             {
46266                                 Return (\_SB.UBTC.RUCC (One, Arg1))
46267                             }
46268                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
46269                             {
46270                                 Return (\_SB.UBTC.RUCC (0x02, Arg1))
46271                             }
46272                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
46273                             {
46274                                 Return (\_SB.UBTC.RUCC (0x03, Arg1))
46275                             }
46276                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
46277                             {
46278                                 Return (\_SB.UBTC.RUCC (0x04, Arg1))
46279                             }
46280                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
46281                             {
46282                                 Return (\_SB.UBTC.RUCC (0x05, Arg1))
46283                             }
46284                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
46285                             {
46286                                 Return (\_SB.UBTC.RUCC (0x06, Arg1))
46287                             }
46288                             ElseIf ((Arg1 == One))
46289                             {
46290                                 Return (TUPC (Zero, Zero))
46291                             }
46292                             Else
46293                             {
46294                                 Return (TPLD (Zero, Zero))
46295                             }
46296                         }
46297 
46298                         Method (FPSP, 1, Serialized)
46299                         {
46300                             Local0 = (TURP << 0x02)
46301                             Local0 |= One
46302                             If ((((TP1D >> One) == Local0) && (Arg0 == TP1T)))
46303                             {
46304                                 Return (One)
46305                             }
46306                             ElseIf ((((TP2D >> One) == Local0) && (Arg0 == TP2T)))
46307                             {
46308                                 Return (One)
46309                             }
46310                             ElseIf ((((TP3D >> One) == Local0) && (Arg0 == TP3T)))
46311                             {
46312                                 Return (One)
46313                             }
46314                             ElseIf ((((TP4D >> One) == Local0) && (Arg0 == TP4T)))
46315                             {
46316                                 Return (One)
46317                             }
46318                             ElseIf ((((TP5D >> One) == Local0) && (Arg0 == TP5T)))
46319                             {
46320                                 Return (One)
46321                             }
46322                             ElseIf ((((TP6D >> One) == Local0) && (Arg0 == TP6T)))
46323                             {
46324                                 Return (One)
46325                             }
46326                             Else
46327                             {
46328                                 Return (Zero)
46329                             }
46330                         }
46331 
46332                         Method (TPLD, 2, Serialized)
46333                         {
46334                             Name (PCKG, Package (0x01)
46335                             {
46336                                 Buffer (0x10){}
46337                             })
46338                             CreateField (DerefOf (PCKG [Zero]), Zero, 0x07, REV)
46339                             REV = One
46340                             CreateField (DerefOf (PCKG [Zero]), 0x40, One, VISI)
46341                             VISI = Arg0
46342                             CreateField (DerefOf (PCKG [Zero]), 0x57, 0x08, GPOS)
46343                             GPOS = Arg1
46344                             CreateField (DerefOf (PCKG [Zero]), 0x4A, 0x04, SHAP)
46345                             SHAP = One
46346                             CreateField (DerefOf (PCKG [Zero]), 0x20, 0x10, WID)
46347                             WID = 0x08
46348                             CreateField (DerefOf (PCKG [Zero]), 0x30, 0x10, HGT)
46349                             HGT = 0x03
46350                             Return (PCKG) /* \_SB_.PCI0.RP21.PXSX.TBDU.XHC_.RHUB.TPLD.PCKG */
46351                         }
46352 
46353                         Method (TUPC, 2, Serialized)
46354                         {
46355                             Name (PCKG, Package (0x04)
46356                             {
46357                                 One, 
46358                                 Zero, 
46359                                 Zero, 
46360                                 Zero
46361                             })
46362                             PCKG [Zero] = Arg0
46363                             PCKG [One] = Arg1
46364                             Return (PCKG) /* \_SB_.PCI0.RP21.PXSX.TBDU.XHC_.RHUB.TUPC.PCKG */
46365                         }
46366 
46367                         Device (HS01)
46368                         {
46369                             Name (_ADR, One)  // _ADR: Address
46370                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
46371                             {
46372                                 If ((FPSP (One) == One))
46373                                 {
46374                                     If ((SLMS (One) == Zero))
46375                                     {
46376                                         Return (FPCP (One, One))
46377                                     }
46378                                     Else
46379                                     {
46380                                         Return (TUPC (Zero, Zero))
46381                                     }
46382                                 }
46383                                 Else
46384                                 {
46385                                     Return (TUPC (Zero, 0xFF))
46386                                 }
46387                             }
46388 
46389                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
46390                             {
46391                                 If ((FPSP (One) == One))
46392                                 {
46393                                     If ((SLMS (One) == Zero))
46394                                     {
46395                                         Return (FPCP (One, 0x02))
46396                                     }
46397                                     Else
46398                                     {
46399                                         Return (TPLD (Zero, Zero))
46400                                     }
46401                                 }
46402                                 Else
46403                                 {
46404                                     Return (TPLD (Zero, Zero))
46405                                 }
46406                             }
46407                         }
46408 
46409                         Device (HS02)
46410                         {
46411                             Name (_ADR, 0x02)  // _ADR: Address
46412                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
46413                             {
46414                                 If ((FPSP (0x02) == One))
46415                                 {
46416                                     If ((SLMS (0x02) == Zero))
46417                                     {
46418                                         Return (FPCP (0x02, One))
46419                                     }
46420                                     Else
46421                                     {
46422                                         Return (TUPC (Zero, Zero))
46423                                     }
46424                                 }
46425                                 Else
46426                                 {
46427                                     Return (TUPC (Zero, 0xFF))
46428                                 }
46429                             }
46430 
46431                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
46432                             {
46433                                 If ((FPSP (0x02) == One))
46434                                 {
46435                                     If ((SLMS (0x02) == Zero))
46436                                     {
46437                                         Return (FPCP (0x02, 0x02))
46438                                     }
46439                                     Else
46440                                     {
46441                                         Return (TPLD (Zero, Zero))
46442                                     }
46443                                 }
46444                                 Else
46445                                 {
46446                                     Return (TPLD (Zero, Zero))
46447                                 }
46448                             }
46449                         }
46450 
46451                         Device (SS01)
46452                         {
46453                             Name (_ADR, 0x03)  // _ADR: Address
46454                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
46455                             {
46456                                 If ((FPSP (One) == One))
46457                                 {
46458                                     Return (FPCP (One, One))
46459                                 }
46460                                 Else
46461                                 {
46462                                     Return (TUPC (Zero, 0xFF))
46463                                 }
46464                             }
46465 
46466                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
46467                             {
46468                                 If ((FPSP (One) == One))
46469                                 {
46470                                     Return (FPCP (One, 0x02))
46471                                 }
46472                                 Else
46473                                 {
46474                                     Return (TPLD (Zero, Zero))
46475                                 }
46476                             }
46477                         }
46478 
46479                         Device (SS02)
46480                         {
46481                             Name (_ADR, 0x04)  // _ADR: Address
46482                             Method (_UPC, 0, NotSerialized)  // _UPC: USB Port Capabilities
46483                             {
46484                                 If ((FPSP (0x02) == One))
46485                                 {
46486                                     Return (FPCP (0x02, One))
46487                                 }
46488                                 Else
46489                                 {
46490                                     Return (TUPC (Zero, 0xFF))
46491                                 }
46492                             }
46493 
46494                             Method (_PLD, 0, NotSerialized)  // _PLD: Physical Location of Device
46495                             {
46496                                 If ((FPSP (0x02) == One))
46497                                 {
46498                                     Return (FPCP (0x02, 0x02))
46499                                 }
46500                                 Else
46501                                 {
46502                                     Return (TPLD (Zero, Zero))
46503                                 }
46504                             }
46505                         }
46506                     }
46507                 }
46508             }
46509         }
46510     }
46511 }

Attached Files

To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.
  • [get | view] (2019-10-22T14:24:52+0000, 1424.2 KB) [[attachment:acpidump.out.txt]]
  • [get | view] (2019-10-22T14:25:32+0000, 11.9 KB) [[attachment:devinfo.out.txt]]
  • [get | view] (2019-10-22T14:25:08+0000, 35.9 KB) [[attachment:dmesg.out.txt]]
  • [get | view] (2019-10-22T14:25:44+0000, 5.8 KB) [[attachment:pciconf.out.txt]]
 All files | Selected Files: delete move to page copy to page

You are not allowed to attach a file to this page.