Attachment 'acpidump.txt'

Download

   1 /*
   2   RSD PTR: OEM=ALASKA, ACPI_Rev=2.0x (2)
   3 	XSDT=0x00000000bdd650a8, length=36, cksum=81
   4  */
   5 /*
   6   XSDT: Length=212, Revision=1, Checksum=201,
   7 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
   8 	Creator ID=AMI, Creator Revision=0x10013
   9 	Entries={ 0x00000000bdd70c70, 0x00000000bdd70d88, 0x00000000bdd70e68, 0x00000000bdd70eb0, 0x00000000bdd70f50, 0x00000000bdd76370, 0x00000000bdd763c8, 0x00000000bdd76408, 0x00000000bdd76440, 0x00000000bdd76488, 0x00000000bdd83910, 0x00000000bdd83948, 0x00000000bdd83980, 0x00000000bdd83ac0, 0x00000000bdd843a0, 0x00000000bdd84830, 0x00000000bdd84860, 0x00000000bdd84a38, 0x00000000bdd85670, 0x00000000bdd86720, 0x00000000bdd88390, 0x00000000bdd883b8 }
  10  */
  11 /*
  12   FACP: Length=276, Revision=6, Checksum=25,
  13 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
  14 	Creator ID=AMI, Creator Revision=0x10013
  15  	FACS=0xbdf33d80, DSDT=0xbdd65210
  16 	INT_MODEL=PIC
  17 	Preferred_PM_Profile=Mobile (2)
  18 	SCI_INT=9
  19 	SMI_CMD=0xb2, ACPI_ENABLE=0xa0, ACPI_DISABLE=0xa1, S4BIOS_REQ=0x0
  20 	PSTATE_CNT=0x0
  21 	PM1a_EVT_BLK=0x800-0x803
  22 	PM1a_CNT_BLK=0x804-0x805
  23 	PM_TMR_BLK=0x808-0x80b
  24 	GPE0_BLK=0x820-0x827
  25 	P_LVL2_LAT=101 us, P_LVL3_LAT=1001 us
  26 	FLUSH_SIZE=1024, FLUSH_STRIDE=16
  27 	DUTY_OFFSET=1, DUTY_WIDTH=3
  28 	DAY_ALRM=13, MON_ALRM=0, CENTURY=50
  29 	IAPC_BOOT_ARCH=
  30 	Flags={WBINVD,C1_SUPPORTED,C2_MP_SUPPORTED,SLEEP_BUTTON,S4_RTC_WAKE,32BIT_TIMER,RESET_REGISTER,PLATFORM_CLOCK}
  31 	RESET_REG=0xcf9:0[8] (IO), RESET_VALUE=0x6
  32  */
  33 /*
  34   FACS:	Length=64, HwSig=0x9e43d745, Firm_Wake_Vec=0x00000000
  35 	Global_Lock=
  36 	Flags=
  37 	Version=2
  38  */
  39 /*
  40   DSDT: Length=47711, Revision=2, Checksum=124,
  41 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
  42 	Creator ID=INTL, Creator Revision=0x20120913
  43  */
  44 /*
  45   APIC: Length=222, Revision=3, Checksum=222,
  46 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
  47 	Creator ID=AMI, Creator Revision=0x10013
  48 	Local APIC ADDR=0xfee00000
  49 	Flags={PC-AT}
  50 
  51 	Type=Local APIC
  52 	ACPI CPU=1
  53 	Flags={ENABLED}
  54 	APIC ID=0
  55 
  56 	Type=Local APIC
  57 	ACPI CPU=2
  58 	Flags={ENABLED}
  59 	APIC ID=1
  60 
  61 	Type=Local APIC
  62 	ACPI CPU=3
  63 	Flags={ENABLED}
  64 	APIC ID=2
  65 
  66 	Type=Local APIC
  67 	ACPI CPU=4
  68 	Flags={ENABLED}
  69 	APIC ID=3
  70 
  71 	Type=Local APIC
  72 	ACPI CPU=5
  73 	Flags={DISABLED}
  74 	APIC ID=0
  75 
  76 	Type=Local APIC
  77 	ACPI CPU=6
  78 	Flags={DISABLED}
  79 	APIC ID=0
  80 
  81 	Type=Local APIC
  82 	ACPI CPU=7
  83 	Flags={DISABLED}
  84 	APIC ID=0
  85 
  86 	Type=Local APIC
  87 	ACPI CPU=8
  88 	Flags={DISABLED}
  89 	APIC ID=0
  90 
  91 	Type=Local APIC
  92 	ACPI CPU=9
  93 	Flags={DISABLED}
  94 	APIC ID=0
  95 
  96 	Type=Local APIC
  97 	ACPI CPU=10
  98 	Flags={DISABLED}
  99 	APIC ID=0
 100 
 101 	Type=Local APIC
 102 	ACPI CPU=11
 103 	Flags={DISABLED}
 104 	APIC ID=0
 105 
 106 	Type=Local APIC
 107 	ACPI CPU=12
 108 	Flags={DISABLED}
 109 	APIC ID=0
 110 
 111 	Type=Local APIC
 112 	ACPI CPU=13
 113 	Flags={DISABLED}
 114 	APIC ID=0
 115 
 116 	Type=Local APIC
 117 	ACPI CPU=14
 118 	Flags={DISABLED}
 119 	APIC ID=0
 120 
 121 	Type=Local APIC
 122 	ACPI CPU=15
 123 	Flags={DISABLED}
 124 	APIC ID=0
 125 
 126 	Type=Local APIC
 127 	ACPI CPU=16
 128 	Flags={DISABLED}
 129 	APIC ID=0
 130 
 131 	Type=Local APIC NMI
 132 	ACPI CPU=ALL
 133 	LINT Pin=1
 134 	Flags={Polarity=active-hi, Trigger=edge}
 135 
 136 	Type=IO APIC
 137 	APIC ID=5
 138 	INT BASE=0
 139 	ADDR=0x00000000fec00000
 140 
 141 	Type=IO APIC
 142 	APIC ID=6
 143 	INT BASE=24
 144 	ADDR=0x00000000fec01000
 145 
 146 	Type=INT Override
 147 	BUS=0
 148 	IRQ=0
 149 	INTR=2
 150 	Flags={Polarity=conforming, Trigger=conforming}
 151 
 152 	Type=INT Override
 153 	BUS=0
 154 	IRQ=9
 155 	INTR=9
 156 	Flags={Polarity=active-lo, Trigger=level}
 157  */
 158 /*
 159   FPDT: Length=68, Revision=1, Checksum=62,
 160 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
 161 	Creator ID=AMI, Creator Revision=0x10013
 162  */
 163 /*
 164   FIDT: Length=156, Revision=1, Checksum=252,
 165 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
 166 	Creator ID=AMI, Creator Revision=0x10013
 167  */
 168 /*
 169   SSDT: Length=21529, Revision=2, Checksum=18,
 170 	OEMID=AMD, OEM Table ID=AmdTable, OEM Revision=0x2,
 171 	Creator ID=MSFT, Creator Revision=0x2000002
 172  */
 173 /*
 174   MSDM: Length=85, Revision=3, Checksum=194,
 175 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
 176 	Creator ID=AMI, Creator Revision=0x1000013
 177  */
 178 /*
 179   MCFG: Length=60, Revision=1, Checksum=44,
 180 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
 181 	Creator ID=MSFT, Creator Revision=0x10013
 182 
 183 	Base Address=0x00000000f8000000
 184 	Segment Group=0x0000
 185 	Start Bus=0
 186 	End Bus=63
 187  */
 188 /*
 189   HPET: Length=56, Revision=1, Checksum=189,
 190 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
 191 	Creator ID=AMI, Creator Revision=0x5
 192 	HPET Number=0
 193 	ADDR=0x00000000fed00000:0[64] (Memory)	HW Rev=0x1
 194 	Comparators=2
 195 	Counter Size=0
 196 	Legacy IRQ routing capable={TRUE}
 197 	PCI Vendor ID=0x1022
 198 	Minimal Tick=14318
 199 	Flags=0x00
 200  */
 201 /*
 202   UEFI: Length=66, Revision=1, Checksum=131,
 203 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x2,
 204 	Creator ID=, Creator Revision=0x1000013
 205  */
 206 /*
 207   VFCT: Length=54404, Revision=1, Checksum=249,
 208 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1,
 209 	Creator ID=AMD, Creator Revision=0x31504f47
 210  */
 211 /*
 212   BGRT: Length=56, Revision=1, Checksum=111,
 213 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
 214 	Creator ID=AMI, Creator Revision=0x10013
 215  */
 216 /*
 217   TPM2: Length=56, Revision=4, Checksum=160,
 218 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1,
 219 	Creator ID=AMI, Creator Revision=0x0
 220 		ControlArea=fd110510
 221 		StartMethod=2
 222  */
 223 /*
 224   IVRS: Length=318, Revision=2, Checksum=36,
 225 	OEMID=AMD, OEM Table ID=AMD IVRS, OEM Revision=0x1,
 226 	Creator ID=AMD, Creator Revision=0x0
 227  */
 228 /*
 229   SSDT: Length=2272, Revision=1, Checksum=47,
 230 	OEMID=AMD, OEM Table ID=AMD CPU, OEM Revision=0x1,
 231 	Creator ID=AMD, Creator Revision=0x1
 232  */
 233 /*
 234   CRAT: Length=1168, Revision=1, Checksum=7,
 235 	OEMID=AMD, OEM Table ID=AMD CRAT, OEM Revision=0x1,
 236 	Creator ID=AMD, Creator Revision=0x1
 237  */
 238 /*
 239   CDIT: Length=41, Revision=1, Checksum=203,
 240 	OEMID=AMD, OEM Table ID=AMD CDIT, OEM Revision=0x1,
 241 	Creator ID=AMD, Creator Revision=0x1
 242  */
 243 /*
 244   SSDT: Length=468, Revision=1, Checksum=196,
 245 	OEMID=AMD, OEM Table ID=AmdTable, OEM Revision=0x1,
 246 	Creator ID=INTL, Creator Revision=0x20120913
 247  */
 248 /*
 249   SSDT: Length=3123, Revision=1, Checksum=2,
 250 	OEMID=AMD, OEM Table ID=AmdTable, OEM Revision=0x1,
 251 	Creator ID=INTL, Creator Revision=0x20120913
 252  */
 253 /*
 254   SSDT: Length=4268, Revision=1, Checksum=187,
 255 	OEMID=AMD, OEM Table ID=AmdTable, OEM Revision=0x1,
 256 	Creator ID=INTL, Creator Revision=0x20120913
 257  */
 258 /*
 259   SSDT: Length=7273, Revision=1, Checksum=65,
 260 	OEMID=AMD, OEM Table ID=AmdTable, OEM Revision=0x1,
 261 	Creator ID=INTL, Creator Revision=0x20120913
 262  */
 263 /*
 264   WSMT: Length=40, Revision=1, Checksum=101,
 265 	OEMID=ALASKA, OEM Table ID=A M I, OEM Revision=0x1072009,
 266 	Creator ID=AMI, Creator Revision=0x10013
 267  */
 268 /*
 269   SSDT: Length=746, Revision=1, Checksum=27,
 270 	OEMID=AMD, OEM Table ID=AmdTable, OEM Revision=0x1,
 271 	Creator ID=INTL, Creator Revision=0x20120913
 272  */
 273 /*
 274  * Intel ACPI Component Architecture
 275  * AML/ASL+ Disassembler version 20200326 (64-bit version)
 276  * Copyright (c) 2000 - 2020 Intel Corporation
 277  * 
 278  * Disassembling to symbolic ASL+ operators
 279  *
 280  * Disassembly of /tmp/acpidump.WscMoZ/acpdump.din, Wed Apr  8 10:33:19 2020
 281  *
 282  * Original Table Header:
 283  *     Signature        "DSDT"
 284  *     Length           0x00015462 (87138)
 285  *     Revision         0x02
 286  *     Checksum         0x92
 287  *     OEM ID           "ALASKA"
 288  *     OEM Table ID     "A M I "
 289  *     OEM Revision     0x01072009 (17244169)
 290  *     Compiler ID      "INTL"
 291  *     Compiler Version 0x20120913 (538052883)
 292  */
 293 DefinitionBlock ("", "DSDT", 2, "ALASKA", "A M I ", 0x01072009)
 294 {
 295     /*
 296      * iASL Warning: There were 28 external control methods found during
 297      * disassembly, but only 0 were resolved (28 unresolved). Additional
 298      * ACPI tables may be required to properly disassemble the code. This
 299      * resulting disassembler output file may not compile because the
 300      * disassembler did not know how many arguments to assign to the
 301      * unresolved methods. Note: SSDTs can be dynamically loaded at
 302      * runtime and may or may not be available via the host OS.
 303      *
 304      * To specify the tables needed to resolve external control method
 305      * references, the -e option can be used to specify the filenames.
 306      * Example iASL invocations:
 307      *     iasl -e ssdt1.aml ssdt2.aml ssdt3.aml -d dsdt.aml
 308      *     iasl -e dsdt.aml ssdt2.aml -d ssdt1.aml
 309      *     iasl -e ssdt*.aml -d dsdt.aml
 310      *
 311      * In addition, the -fe option can be used to specify a file containing
 312      * control method external declarations with the associated method
 313      * argument counts. Each line of the file must be of the form:
 314      *     External (<method pathname>, MethodObj, <argument count>)
 315      * Invocation:
 316      *     iasl -fe refs.txt -d dsdt.aml
 317      *
 318      * The following methods were unresolved and many not compile properly
 319      * because the disassembler had to guess at the number of arguments
 320      * required for each:
 321      */
 322     External (_SB_.LID_._LID, IntObj)
 323     External (_SB_.M263, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 324     External (_SB_.M264, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 325     External (_SB_.M284, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 326     External (_SB_.PCI0.GP18.SATA.TPTS, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 327     External (_SB_.PCI0.GP18.SATA.TWAK, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 328     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN0, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 329     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN1, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 330     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN2, MethodObj)    // Warning: Unknown method, guessing 2 arguments
 331     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN3, MethodObj)    // Warning: Unknown method, guessing 2 arguments
 332     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN4, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 333     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN5, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 334     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN6, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 335     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN7, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 336     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFN8, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 337     External (_SB_.PCI0.GPP0.SWUS.SWDS.VGA_.AFNC, MethodObj)    // Warning: Unknown method, guessing 2 arguments
 338     External (_SB_.PCI0.GPP0.VGA_.AFN0, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 339     External (_SB_.PCI0.GPP0.VGA_.AFN1, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 340     External (_SB_.PCI0.GPP0.VGA_.AFN2, MethodObj)    // Warning: Unknown method, guessing 2 arguments
 341     External (_SB_.PCI0.GPP0.VGA_.AFN3, MethodObj)    // Warning: Unknown method, guessing 2 arguments
 342     External (_SB_.PCI0.GPP0.VGA_.AFN4, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 343     External (_SB_.PCI0.GPP0.VGA_.AFN5, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 344     External (_SB_.PCI0.GPP0.VGA_.AFN6, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 345     External (_SB_.PCI0.GPP0.VGA_.AFN7, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 346     External (_SB_.PCI0.GPP0.VGA_.AFN8, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 347     External (_SB_.PCI0.GPP0.VGA_.AFNC, MethodObj)    // Warning: Unknown method, guessing 2 arguments
 348     External (_SB_.PCI0.SATA.TPTS, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 349     External (_SB_.PCI0.SATA.TWAK, MethodObj)    // Warning: Unknown method, guessing 1 arguments
 350     External (_SB_.PCI0.VGA_, UnknownObj)
 351     External (_SB_.PCI0.VGA_.AFN0, MethodObj)    // Warning: Unknown method, guessing 0 arguments
 352     External (MOEM, IntObj)
 353     External (VGA_, UnknownObj)
 354     External (Z009, UnknownObj)
 355 
 356     Name (PEBL, 0x04000000)
 357     Name (NBTS, 0x5000)
 358     Name (CPVD, One)
 359     Name (SMBB, 0x0B20)
 360     Name (SMBL, 0x20)
 361     Name (SMB0, 0x0B00)
 362     Name (SMBM, 0x10)
 363     Name (PMBS, 0x0800)
 364     Name (PMLN, 0xA0)
 365     Name (SMIO, 0xB2)
 366     Name (APCB, 0xFEC00000)
 367     Name (APCL, 0x1000)
 368     Name (HPTB, 0xFED00000)
 369     Name (WDTB, Zero)
 370     Name (WDTL, Zero)
 371     Name (GIOB, 0xFED81500)
 372     Name (IOMB, 0xFED80D00)
 373     Name (SSMB, 0xFED80200)
 374     Name (CAFS, 0xBB)
 375     Name (UTDB, Zero)
 376     Name (ASSB, Zero)
 377     Name (AOTB, Zero)
 378     Name (AAXB, Zero)
 379     Name (PEHP, One)
 380     Name (SHPC, Zero)
 381     Name (PEPM, One)
 382     Name (PEER, One)
 383     Name (PECS, One)
 384     Name (ITKE, Zero)
 385     Name (PEBS, 0xF8000000)
 386     Name (PELN, 0x04000000)
 387     Name (CSMI, 0x61)
 388     Name (DSSP, Zero)
 389     Name (FHPP, One)
 390     Name (SMIA, 0xB2)
 391     Name (SMIB, 0xB3)
 392     Name (OFST, 0x35)
 393     Name (TRST, 0x02)
 394     Name (TCMF, Zero)
 395     Name (TMF1, Zero)
 396     Name (TMF2, Zero)
 397     Name (TMF3, Zero)
 398     Name (TTPF, Zero)
 399     Name (DTPT, Zero)
 400     Name (TTDP, One)
 401     Name (TPMB, 0xBDD30000)
 402     Name (TPMC, 0xBDD34000)
 403     Name (TPMM, 0xFD110510)
 404     Name (FTPM, 0xFD110510)
 405     Name (PPIM, 0xBDFEBF98)
 406     Name (PPIL, 0x1C)
 407     Name (AMDT, One)
 408     Name (TPMF, One)
 409     Name (PPIV, One)
 410     Name (MBEC, Zero)
 411     Name (NBTP, 0xFEC00000)
 412     Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
 413     {
 414         If (Arg0)
 415         {
 416             \_SB.DSPI ()
 417             \_SB.PCI0.NAPE ()
 418         }
 419 
 420         PXXX (Arg0)
 421     }
 422 
 423     Name (PICM, Zero)
 424     Method (PXXX, 1, NotSerialized)
 425     {
 426         If (Arg0)
 427         {
 428             DBG8 = 0xAA
 429         }
 430         Else
 431         {
 432             DBG8 = 0xAC
 433         }
 434 
 435         PICM = Arg0
 436     }
 437 
 438     Name (OSVR, Ones)
 439     Method (OSFL, 0, NotSerialized)
 440     {
 441         If ((OSVR != Ones))
 442         {
 443             Return (OSVR) /* \OSVR */
 444         }
 445 
 446         If ((PICM == Zero))
 447         {
 448             DBG8 = 0xAC
 449         }
 450 
 451         OSVR = 0x03
 452         If (CondRefOf (\_OSI, Local0))
 453         {
 454             If (_OSI ("Windows 2001"))
 455             {
 456                 OSVR = 0x04
 457             }
 458 
 459             If (_OSI ("Windows 2001.1"))
 460             {
 461                 OSVR = 0x05
 462             }
 463 
 464             If (_OSI ("FreeBSD"))
 465             {
 466                 OSVR = 0x06
 467             }
 468 
 469             If (_OSI ("HP-UX"))
 470             {
 471                 OSVR = 0x07
 472             }
 473 
 474             If (_OSI ("OpenVMS"))
 475             {
 476                 OSVR = 0x08
 477             }
 478 
 479             If (_OSI ("Windows 2001 SP1"))
 480             {
 481                 OSVR = 0x09
 482             }
 483 
 484             If (_OSI ("Windows 2001 SP2"))
 485             {
 486                 OSVR = 0x0A
 487             }
 488 
 489             If (_OSI ("Windows 2001 SP3"))
 490             {
 491                 OSVR = 0x0B
 492             }
 493 
 494             If (_OSI ("Windows 2006"))
 495             {
 496                 OSVR = 0x0C
 497             }
 498 
 499             If (_OSI ("Windows 2006 SP1"))
 500             {
 501                 OSVR = 0x0D
 502             }
 503 
 504             If (_OSI ("Windows 2009"))
 505             {
 506                 OSVR = 0x0E
 507             }
 508 
 509             If (_OSI ("Windows 2012"))
 510             {
 511                 OSVR = 0x0F
 512             }
 513 
 514             If (_OSI ("Windows 2013"))
 515             {
 516                 OSVR = 0x10
 517             }
 518         }
 519         Else
 520         {
 521             If (MCTH (_OS, "Microsoft Windows NT"))
 522             {
 523                 OSVR = Zero
 524             }
 525 
 526             If (MCTH (_OS, "Microsoft Windows"))
 527             {
 528                 OSVR = One
 529             }
 530 
 531             If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
 532             {
 533                 OSVR = 0x02
 534             }
 535 
 536             If (MCTH (_OS, "Linux"))
 537             {
 538                 OSVR = 0x03
 539             }
 540 
 541             If (MCTH (_OS, "FreeBSD"))
 542             {
 543                 OSVR = 0x06
 544             }
 545 
 546             If (MCTH (_OS, "HP-UX"))
 547             {
 548                 OSVR = 0x07
 549             }
 550 
 551             If (MCTH (_OS, "OpenVMS"))
 552             {
 553                 OSVR = 0x08
 554             }
 555         }
 556 
 557         Return (OSVR) /* \OSVR */
 558     }
 559 
 560     Method (MCTH, 2, NotSerialized)
 561     {
 562         If ((SizeOf (Arg0) < SizeOf (Arg1)))
 563         {
 564             Return (Zero)
 565         }
 566 
 567         Local0 = (SizeOf (Arg0) + One)
 568         Name (BUF0, Buffer (Local0){})
 569         Name (BUF1, Buffer (Local0){})
 570         BUF0 = Arg0
 571         BUF1 = Arg1
 572         While (Local0)
 573         {
 574             Local0--
 575             If ((DerefOf (BUF0 [Local0]) != DerefOf (BUF1 [Local0]
 576                 )))
 577             {
 578                 Return (Zero)
 579             }
 580         }
 581 
 582         Return (One)
 583     }
 584 
 585     Name (PRWP, Package (0x02)
 586     {
 587         Zero, 
 588         Zero
 589     })
 590     Method (GPRW, 2, NotSerialized)
 591     {
 592         PRWP [Zero] = Arg0
 593         Local0 = (SS1 << One)
 594         Local0 |= (SS2 << 0x02)
 595         Local0 |= (SS3 << 0x03)
 596         Local0 |= (SS4 << 0x04)
 597         If (((One << Arg1) & Local0))
 598         {
 599             PRWP [One] = Arg1
 600         }
 601         Else
 602         {
 603             Local0 >>= One
 604             If (((OSFL () == One) || (OSFL () == 0x02)))
 605             {
 606                 FindSetLeftBit (Local0, PRWP [One])
 607             }
 608             Else
 609             {
 610                 FindSetRightBit (Local0, PRWP [One])
 611             }
 612         }
 613 
 614         Return (PRWP) /* \PRWP */
 615     }
 616 
 617     Name (WAKP, Package (0x02)
 618     {
 619         Zero, 
 620         Zero
 621     })
 622     Method (UPWP, 1, NotSerialized)
 623     {
 624         If (DerefOf (WAKP [Zero]))
 625         {
 626             WAKP [One] = Zero
 627         }
 628         Else
 629         {
 630             WAKP [One] = Arg0
 631         }
 632     }
 633 
 634     OperationRegion (DEB0, SystemIO, 0x80, One)
 635     Field (DEB0, ByteAcc, NoLock, Preserve)
 636     {
 637         DBG8,   8
 638     }
 639 
 640     OperationRegion (DEB1, SystemIO, 0x90, 0x02)
 641     Field (DEB1, WordAcc, NoLock, Preserve)
 642     {
 643         DBG9,   16
 644     }
 645 
 646     Name (SS1, Zero)
 647     Name (SS2, Zero)
 648     Name (SS3, One)
 649     Name (SS4, One)
 650     Name (IOST, 0xFFFF)
 651     Name (TOPM, 0x00000000)
 652     Name (ROMS, 0xFFE00000)
 653     Name (VGAF, One)
 654     OperationRegion (DEB2, SystemIO, 0x80, 0x02)
 655     Field (DEB2, WordAcc, NoLock, Preserve)
 656     {
 657         P80H,   16
 658     }
 659 
 660     Name (OSTY, Ones)
 661     OperationRegion (ACMS, SystemIO, 0x72, 0x02)
 662     Field (ACMS, ByteAcc, NoLock, Preserve)
 663     {
 664         ACMX,   8, 
 665         ACMA,   8
 666     }
 667 
 668     IndexField (ACMX, ACMA, ByteAcc, NoLock, Preserve)
 669     {
 670         Offset (0xB9), 
 671         IMEN,   8
 672     }
 673 
 674     OperationRegion (PSMI, SystemIO, SMIO, 0x02)
 675     Field (PSMI, ByteAcc, NoLock, Preserve)
 676     {
 677         APMC,   8, 
 678         APMD,   8
 679     }
 680 
 681     OperationRegion (PMRG, SystemIO, 0x0CD6, 0x02)
 682     Field (PMRG, ByteAcc, NoLock, Preserve)
 683     {
 684         PMRI,   8, 
 685         PMRD,   8
 686     }
 687 
 688     IndexField (PMRI, PMRD, ByteAcc, NoLock, Preserve)
 689     {
 690             ,   6, 
 691         HPEN,   1, 
 692         Offset (0x60), 
 693         P1EB,   16, 
 694         Offset (0xF0), 
 695             ,   3, 
 696         RSTU,   1
 697     }
 698 
 699     OperationRegion (GSMG, SystemMemory, 0xFED81500, 0x03FF)
 700     Field (GSMG, AnyAcc, NoLock, Preserve)
 701     {
 702         Offset (0x5C), 
 703         Offset (0x5E), 
 704         GS23,   1, 
 705             ,   5, 
 706         GV23,   1, 
 707         GE23,   1, 
 708         Offset (0xA0), 
 709         Offset (0xA2), 
 710         GS40,   1, 
 711             ,   5, 
 712         GV40,   1, 
 713         GE40,   1
 714     }
 715 
 716     OperationRegion (GSMM, SystemMemory, 0xFED80000, 0x1000)
 717     Field (GSMM, AnyAcc, NoLock, Preserve)
 718     {
 719         Offset (0x288), 
 720             ,   1, 
 721         CLPS,   1, 
 722         Offset (0x296), 
 723             ,   7, 
 724         TMSE,   1, 
 725         Offset (0x2B0), 
 726             ,   2, 
 727         SLPS,   2, 
 728         Offset (0x3BB), 
 729             ,   6, 
 730         PWDE,   1
 731     }
 732 
 733     OperationRegion (P1E0, SystemIO, P1EB, 0x04)
 734     Field (P1E0, ByteAcc, NoLock, Preserve)
 735     {
 736         Offset (0x01), 
 737             ,   6, 
 738         PEWS,   1, 
 739         WSTA,   1, 
 740         Offset (0x03), 
 741             ,   6, 
 742         PEWD,   1
 743     }
 744 
 745     OperationRegion (IOCC, SystemIO, PMBS, 0x80)
 746     Field (IOCC, ByteAcc, NoLock, Preserve)
 747     {
 748         Offset (0x01), 
 749             ,   2, 
 750         RTCS,   1
 751     }
 752 
 753     Method (SPTS, 1, NotSerialized)
 754     {
 755         P80H = Arg0
 756         If ((Arg0 == 0x03))
 757         {
 758             RSTU = Zero
 759         }
 760 
 761         CLPS = One
 762         SLPS = One
 763         PEWS = PEWS /* \PEWS */
 764         If ((Arg0 == 0x03))
 765         {
 766             SLPS = One
 767         }
 768 
 769         If ((Arg0 == 0x04))
 770         {
 771             SLPS = One
 772             RSTU = One
 773         }
 774 
 775         If ((Arg0 == 0x05))
 776         {
 777             PWDE = One
 778         }
 779     }
 780 
 781     Method (SWAK, 1, NotSerialized)
 782     {
 783         If ((Arg0 == 0x03))
 784         {
 785             RSTU = One
 786         }
 787 
 788         PEWS = PEWS /* \PEWS */
 789         PEWD = Zero
 790         If (PICM)
 791         {
 792             \_SB.DSPI ()
 793         }
 794 
 795         If (TMSE)
 796         {
 797             TMSE = Zero
 798         }
 799 
 800         If ((Arg0 == 0x03))
 801         {
 802             Notify (\_SB.PWRB, 0x02) // Device Wake
 803         }
 804 
 805         If ((Arg0 == 0x04))
 806         {
 807             Notify (\_SB.PWRB, 0x02) // Device Wake
 808         }
 809     }
 810 
 811     Scope (_GPE)
 812     {
 813     }
 814 
 815     Name (RDHW, Zero)
 816     Name (CNSB, Zero)
 817     Name (CRBR, 0xBDFEB018)
 818     OperationRegion (CRBN, SystemMemory, CRBR, 0x08)
 819     Field (CRBN, AnyAcc, Lock, Preserve)
 820     {
 821         MWTT,   8, 
 822         THPN,   8, 
 823         THPD,   8, 
 824         NFCS,   8, 
 825         ALST,   8, 
 826         DPTC,   8, 
 827         RV2I,   8, 
 828         ISDS,   8
 829     }
 830 
 831     OperationRegion (OGNS, SystemMemory, 0xBDE28E98, 0x0008)
 832     Field (OGNS, AnyAcc, Lock, Preserve)
 833     {
 834         TPVD,   8, 
 835         SLNT,   8, 
 836         DA18,   8, 
 837         BAEX,   8, 
 838         RTCW,   8, 
 839         WOL5,   8, 
 840         PSMS,   8, 
 841         THCL,   8
 842     }
 843 
 844     Scope (_SB)
 845     {
 846         Name (PRSA, ResourceTemplate ()
 847         {
 848             IRQ (Level, ActiveLow, Shared, )
 849                 {4,5,7,10,11,14,15}
 850         })
 851         Alias (PRSA, PRSB)
 852         Alias (PRSA, PRSC)
 853         Alias (PRSA, PRSD)
 854         Alias (PRSA, PRSE)
 855         Alias (PRSA, PRSF)
 856         Alias (PRSA, PRSG)
 857         Alias (PRSA, PRSH)
 858         Name (PD10, Package (0x04)
 859         {
 860             Package (0x04)
 861             {
 862                 0xFFFF, 
 863                 Zero, 
 864                 LNKA, 
 865                 Zero
 866             }, 
 867 
 868             Package (0x04)
 869             {
 870                 0xFFFF, 
 871                 One, 
 872                 LNKB, 
 873                 Zero
 874             }, 
 875 
 876             Package (0x04)
 877             {
 878                 0xFFFF, 
 879                 0x02, 
 880                 LNKC, 
 881                 Zero
 882             }, 
 883 
 884             Package (0x04)
 885             {
 886                 0xFFFF, 
 887                 0x03, 
 888                 LNKD, 
 889                 Zero
 890             }
 891         })
 892         Name (AR10, Package (0x04)
 893         {
 894             Package (0x04)
 895             {
 896                 0xFFFF, 
 897                 Zero, 
 898                 Zero, 
 899                 0x18
 900             }, 
 901 
 902             Package (0x04)
 903             {
 904                 0xFFFF, 
 905                 One, 
 906                 Zero, 
 907                 0x19
 908             }, 
 909 
 910             Package (0x04)
 911             {
 912                 0xFFFF, 
 913                 0x02, 
 914                 Zero, 
 915                 0x1A
 916             }, 
 917 
 918             Package (0x04)
 919             {
 920                 0xFFFF, 
 921                 0x03, 
 922                 Zero, 
 923                 0x1B
 924             }
 925         })
 926         Name (PD15, Package (0x04)
 927         {
 928             Package (0x04)
 929             {
 930                 0xFFFF, 
 931                 Zero, 
 932                 LNKE, 
 933                 Zero
 934             }, 
 935 
 936             Package (0x04)
 937             {
 938                 0xFFFF, 
 939                 One, 
 940                 LNKF, 
 941                 Zero
 942             }, 
 943 
 944             Package (0x04)
 945             {
 946                 0xFFFF, 
 947                 0x02, 
 948                 LNKG, 
 949                 Zero
 950             }, 
 951 
 952             Package (0x04)
 953             {
 954                 0xFFFF, 
 955                 0x03, 
 956                 LNKH, 
 957                 Zero
 958             }
 959         })
 960         Name (AR15, Package (0x04)
 961         {
 962             Package (0x04)
 963             {
 964                 0xFFFF, 
 965                 Zero, 
 966                 Zero, 
 967                 0x1C
 968             }, 
 969 
 970             Package (0x04)
 971             {
 972                 0xFFFF, 
 973                 One, 
 974                 Zero, 
 975                 0x1D
 976             }, 
 977 
 978             Package (0x04)
 979             {
 980                 0xFFFF, 
 981                 0x02, 
 982                 Zero, 
 983                 0x1E
 984             }, 
 985 
 986             Package (0x04)
 987             {
 988                 0xFFFF, 
 989                 0x03, 
 990                 Zero, 
 991                 0x1F
 992             }
 993         })
 994         Name (PD1F, Package (0x04)
 995         {
 996             Package (0x04)
 997             {
 998                 0xFFFF, 
 999                 Zero, 
1000                 LNKA, 
1001                 Zero
1002             }, 
1003 
1004             Package (0x04)
1005             {
1006                 0xFFFF, 
1007                 One, 
1008                 LNKB, 
1009                 Zero
1010             }, 
1011 
1012             Package (0x04)
1013             {
1014                 0xFFFF, 
1015                 0x02, 
1016                 LNKC, 
1017                 Zero
1018             }, 
1019 
1020             Package (0x04)
1021             {
1022                 0xFFFF, 
1023                 0x03, 
1024                 LNKD, 
1025                 Zero
1026             }
1027         })
1028         Name (AR1F, Package (0x04)
1029         {
1030             Package (0x04)
1031             {
1032                 0xFFFF, 
1033                 Zero, 
1034                 Zero, 
1035                 0x20
1036             }, 
1037 
1038             Package (0x04)
1039             {
1040                 0xFFFF, 
1041                 One, 
1042                 Zero, 
1043                 0x21
1044             }, 
1045 
1046             Package (0x04)
1047             {
1048                 0xFFFF, 
1049                 0x02, 
1050                 Zero, 
1051                 0x22
1052             }, 
1053 
1054             Package (0x04)
1055             {
1056                 0xFFFF, 
1057                 0x03, 
1058                 Zero, 
1059                 0x23
1060             }
1061         })
1062         Name (PD24, Package (0x04)
1063         {
1064             Package (0x04)
1065             {
1066                 0xFFFF, 
1067                 Zero, 
1068                 LNKE, 
1069                 Zero
1070             }, 
1071 
1072             Package (0x04)
1073             {
1074                 0xFFFF, 
1075                 One, 
1076                 LNKF, 
1077                 Zero
1078             }, 
1079 
1080             Package (0x04)
1081             {
1082                 0xFFFF, 
1083                 0x02, 
1084                 LNKG, 
1085                 Zero
1086             }, 
1087 
1088             Package (0x04)
1089             {
1090                 0xFFFF, 
1091                 0x03, 
1092                 LNKH, 
1093                 Zero
1094             }
1095         })
1096         Name (AR24, Package (0x04)
1097         {
1098             Package (0x04)
1099             {
1100                 0xFFFF, 
1101                 Zero, 
1102                 Zero, 
1103                 0x24
1104             }, 
1105 
1106             Package (0x04)
1107             {
1108                 0xFFFF, 
1109                 One, 
1110                 Zero, 
1111                 0x25
1112             }, 
1113 
1114             Package (0x04)
1115             {
1116                 0xFFFF, 
1117                 0x02, 
1118                 Zero, 
1119                 0x26
1120             }, 
1121 
1122             Package (0x04)
1123             {
1124                 0xFFFF, 
1125                 0x03, 
1126                 Zero, 
1127                 0x27
1128             }
1129         })
1130         Name (PD29, Package (0x04)
1131         {
1132             Package (0x04)
1133             {
1134                 0xFFFF, 
1135                 Zero, 
1136                 LNKA, 
1137                 Zero
1138             }, 
1139 
1140             Package (0x04)
1141             {
1142                 0xFFFF, 
1143                 One, 
1144                 LNKB, 
1145                 Zero
1146             }, 
1147 
1148             Package (0x04)
1149             {
1150                 0xFFFF, 
1151                 0x02, 
1152                 LNKC, 
1153                 Zero
1154             }, 
1155 
1156             Package (0x04)
1157             {
1158                 0xFFFF, 
1159                 0x03, 
1160                 LNKD, 
1161                 Zero
1162             }
1163         })
1164         Name (AR29, Package (0x04)
1165         {
1166             Package (0x04)
1167             {
1168                 0xFFFF, 
1169                 Zero, 
1170                 Zero, 
1171                 0x28
1172             }, 
1173 
1174             Package (0x04)
1175             {
1176                 0xFFFF, 
1177                 One, 
1178                 Zero, 
1179                 0x29
1180             }, 
1181 
1182             Package (0x04)
1183             {
1184                 0xFFFF, 
1185                 0x02, 
1186                 Zero, 
1187                 0x2A
1188             }, 
1189 
1190             Package (0x04)
1191             {
1192                 0xFFFF, 
1193                 0x03, 
1194                 Zero, 
1195                 0x2B
1196             }
1197         })
1198         Name (PD2E, Package (0x04)
1199         {
1200             Package (0x04)
1201             {
1202                 0xFFFF, 
1203                 Zero, 
1204                 LNKE, 
1205                 Zero
1206             }, 
1207 
1208             Package (0x04)
1209             {
1210                 0xFFFF, 
1211                 One, 
1212                 LNKF, 
1213                 Zero
1214             }, 
1215 
1216             Package (0x04)
1217             {
1218                 0xFFFF, 
1219                 0x02, 
1220                 LNKG, 
1221                 Zero
1222             }, 
1223 
1224             Package (0x04)
1225             {
1226                 0xFFFF, 
1227                 0x03, 
1228                 LNKH, 
1229                 Zero
1230             }
1231         })
1232         Name (AR2E, Package (0x04)
1233         {
1234             Package (0x04)
1235             {
1236                 0xFFFF, 
1237                 Zero, 
1238                 Zero, 
1239                 0x2C
1240             }, 
1241 
1242             Package (0x04)
1243             {
1244                 0xFFFF, 
1245                 One, 
1246                 Zero, 
1247                 0x2D
1248             }, 
1249 
1250             Package (0x04)
1251             {
1252                 0xFFFF, 
1253                 0x02, 
1254                 Zero, 
1255                 0x2E
1256             }, 
1257 
1258             Package (0x04)
1259             {
1260                 0xFFFF, 
1261                 0x03, 
1262                 Zero, 
1263                 0x2F
1264             }
1265         })
1266         Name (PD33, Package (0x04)
1267         {
1268             Package (0x04)
1269             {
1270                 0xFFFF, 
1271                 Zero, 
1272                 LNKA, 
1273                 Zero
1274             }, 
1275 
1276             Package (0x04)
1277             {
1278                 0xFFFF, 
1279                 One, 
1280                 LNKB, 
1281                 Zero
1282             }, 
1283 
1284             Package (0x04)
1285             {
1286                 0xFFFF, 
1287                 0x02, 
1288                 LNKC, 
1289                 Zero
1290             }, 
1291 
1292             Package (0x04)
1293             {
1294                 0xFFFF, 
1295                 0x03, 
1296                 LNKD, 
1297                 Zero
1298             }
1299         })
1300         Name (AR33, Package (0x04)
1301         {
1302             Package (0x04)
1303             {
1304                 0xFFFF, 
1305                 Zero, 
1306                 Zero, 
1307                 0x30
1308             }, 
1309 
1310             Package (0x04)
1311             {
1312                 0xFFFF, 
1313                 One, 
1314                 Zero, 
1315                 0x31
1316             }, 
1317 
1318             Package (0x04)
1319             {
1320                 0xFFFF, 
1321                 0x02, 
1322                 Zero, 
1323                 0x32
1324             }, 
1325 
1326             Package (0x04)
1327             {
1328                 0xFFFF, 
1329                 0x03, 
1330                 Zero, 
1331                 0x33
1332             }
1333         })
1334         Name (PD38, Package (0x04)
1335         {
1336             Package (0x04)
1337             {
1338                 0xFFFF, 
1339                 Zero, 
1340                 LNKE, 
1341                 Zero
1342             }, 
1343 
1344             Package (0x04)
1345             {
1346                 0xFFFF, 
1347                 One, 
1348                 LNKF, 
1349                 Zero
1350             }, 
1351 
1352             Package (0x04)
1353             {
1354                 0xFFFF, 
1355                 0x02, 
1356                 LNKG, 
1357                 Zero
1358             }, 
1359 
1360             Package (0x04)
1361             {
1362                 0xFFFF, 
1363                 0x03, 
1364                 LNKH, 
1365                 Zero
1366             }
1367         })
1368         Name (AR38, Package (0x04)
1369         {
1370             Package (0x04)
1371             {
1372                 0xFFFF, 
1373                 Zero, 
1374                 Zero, 
1375                 0x34
1376             }, 
1377 
1378             Package (0x04)
1379             {
1380                 0xFFFF, 
1381                 One, 
1382                 Zero, 
1383                 0x35
1384             }, 
1385 
1386             Package (0x04)
1387             {
1388                 0xFFFF, 
1389                 0x02, 
1390                 Zero, 
1391                 0x36
1392             }, 
1393 
1394             Package (0x04)
1395             {
1396                 0xFFFF, 
1397                 0x03, 
1398                 Zero, 
1399                 0x37
1400             }
1401         })
1402         Name (PD39, Package (0x04)
1403         {
1404             Package (0x04)
1405             {
1406                 0xFFFF, 
1407                 Zero, 
1408                 LNKG, 
1409                 Zero
1410             }, 
1411 
1412             Package (0x04)
1413             {
1414                 0xFFFF, 
1415                 One, 
1416                 LNKH, 
1417                 Zero
1418             }, 
1419 
1420             Package (0x04)
1421             {
1422                 0xFFFF, 
1423                 0x02, 
1424                 LNKE, 
1425                 Zero
1426             }, 
1427 
1428             Package (0x04)
1429             {
1430                 0xFFFF, 
1431                 0x03, 
1432                 LNKF, 
1433                 Zero
1434             }
1435         })
1436         Name (AR39, Package (0x04)
1437         {
1438             Package (0x04)
1439             {
1440                 0xFFFF, 
1441                 Zero, 
1442                 Zero, 
1443                 0x36
1444             }, 
1445 
1446             Package (0x04)
1447             {
1448                 0xFFFF, 
1449                 One, 
1450                 Zero, 
1451                 0x37
1452             }, 
1453 
1454             Package (0x04)
1455             {
1456                 0xFFFF, 
1457                 0x02, 
1458                 Zero, 
1459                 0x34
1460             }, 
1461 
1462             Package (0x04)
1463             {
1464                 0xFFFF, 
1465                 0x03, 
1466                 Zero, 
1467                 0x35
1468             }
1469         })
1470         Name (PD00, Package (0x0C)
1471         {
1472             Package (0x04)
1473             {
1474                 0x0001FFFF, 
1475                 Zero, 
1476                 LNKA, 
1477                 Zero
1478             }, 
1479 
1480             Package (0x04)
1481             {
1482                 0x0001FFFF, 
1483                 One, 
1484                 LNKB, 
1485                 Zero
1486             }, 
1487 
1488             Package (0x04)
1489             {
1490                 0x0001FFFF, 
1491                 0x02, 
1492                 LNKC, 
1493                 Zero
1494             }, 
1495 
1496             Package (0x04)
1497             {
1498                 0x0001FFFF, 
1499                 0x03, 
1500                 LNKD, 
1501                 Zero
1502             }, 
1503 
1504             Package (0x04)
1505             {
1506                 0x0008FFFF, 
1507                 Zero, 
1508                 LNKE, 
1509                 Zero
1510             }, 
1511 
1512             Package (0x04)
1513             {
1514                 0x0008FFFF, 
1515                 One, 
1516                 LNKF, 
1517                 Zero
1518             }, 
1519 
1520             Package (0x04)
1521             {
1522                 0x0008FFFF, 
1523                 0x02, 
1524                 LNKG, 
1525                 Zero
1526             }, 
1527 
1528             Package (0x04)
1529             {
1530                 0x0008FFFF, 
1531                 0x03, 
1532                 LNKH, 
1533                 Zero
1534             }, 
1535 
1536             Package (0x04)
1537             {
1538                 0x0014FFFF, 
1539                 Zero, 
1540                 LNKA, 
1541                 Zero
1542             }, 
1543 
1544             Package (0x04)
1545             {
1546                 0x0014FFFF, 
1547                 One, 
1548                 LNKB, 
1549                 Zero
1550             }, 
1551 
1552             Package (0x04)
1553             {
1554                 0x0014FFFF, 
1555                 0x02, 
1556                 LNKC, 
1557                 Zero
1558             }, 
1559 
1560             Package (0x04)
1561             {
1562                 0x0014FFFF, 
1563                 0x03, 
1564                 LNKD, 
1565                 Zero
1566             }
1567         })
1568         Name (AR00, Package (0x0C)
1569         {
1570             Package (0x04)
1571             {
1572                 0x0001FFFF, 
1573                 Zero, 
1574                 Zero, 
1575                 0x28
1576             }, 
1577 
1578             Package (0x04)
1579             {
1580                 0x0001FFFF, 
1581                 One, 
1582                 Zero, 
1583                 0x29
1584             }, 
1585 
1586             Package (0x04)
1587             {
1588                 0x0001FFFF, 
1589                 0x02, 
1590                 Zero, 
1591                 0x2A
1592             }, 
1593 
1594             Package (0x04)
1595             {
1596                 0x0001FFFF, 
1597                 0x03, 
1598                 Zero, 
1599                 0x2B
1600             }, 
1601 
1602             Package (0x04)
1603             {
1604                 0x0008FFFF, 
1605                 Zero, 
1606                 Zero, 
1607                 0x34
1608             }, 
1609 
1610             Package (0x04)
1611             {
1612                 0x0008FFFF, 
1613                 One, 
1614                 Zero, 
1615                 0x35
1616             }, 
1617 
1618             Package (0x04)
1619             {
1620                 0x0008FFFF, 
1621                 0x02, 
1622                 Zero, 
1623                 0x36
1624             }, 
1625 
1626             Package (0x04)
1627             {
1628                 0x0008FFFF, 
1629                 0x03, 
1630                 Zero, 
1631                 0x37
1632             }, 
1633 
1634             Package (0x04)
1635             {
1636                 0x0014FFFF, 
1637                 Zero, 
1638                 Zero, 
1639                 0x10
1640             }, 
1641 
1642             Package (0x04)
1643             {
1644                 0x0014FFFF, 
1645                 One, 
1646                 Zero, 
1647                 0x11
1648             }, 
1649 
1650             Package (0x04)
1651             {
1652                 0x0014FFFF, 
1653                 0x02, 
1654                 Zero, 
1655                 0x12
1656             }, 
1657 
1658             Package (0x04)
1659             {
1660                 0x0014FFFF, 
1661                 0x03, 
1662                 Zero, 
1663                 0x13
1664             }
1665         })
1666     }
1667 
1668     Scope (_SB)
1669     {
1670         Device (PCI0)
1671         {
1672             Name (_HID, EisaId ("PNP0A08") /* PCI Express Bus */)  // _HID: Hardware ID
1673             Name (_CID, EisaId ("PNP0A03") /* PCI Bus */)  // _CID: Compatible ID
1674             Name (_ADR, Zero)  // _ADR: Address
1675             Method (^BN00, 0, NotSerialized)
1676             {
1677                 Return (Zero)
1678             }
1679 
1680             Method (_BBN, 0, NotSerialized)  // _BBN: BIOS Bus Number
1681             {
1682                 Return (BN00 ())
1683             }
1684 
1685             Name (_UID, Zero)  // _UID: Unique ID
1686             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
1687             {
1688                 If (PICM)
1689                 {
1690                     Return (AR00) /* \_SB_.AR00 */
1691                 }
1692 
1693                 Return (PD00) /* \_SB_.PD00 */
1694             }
1695 
1696             Device (AMDN)
1697             {
1698                 Name (_HID, EisaId ("PNP0C01") /* System Board */)  // _HID: Hardware ID
1699                 Name (_UID, 0xC8)  // _UID: Unique ID
1700                 Name (_STA, 0x0F)  // _STA: Status
1701                 Name (NPTR, ResourceTemplate ()
1702                 {
1703                     Memory32Fixed (ReadWrite,
1704                         0x00000000,         // Address Base
1705                         0x00000000,         // Address Length
1706                         _Y00)
1707                 })
1708                 Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
1709                 {
1710                     CreateDWordField (NPTR, \_SB.PCI0.AMDN._Y00._LEN, PL)  // _LEN: Length
1711                     CreateDWordField (NPTR, \_SB.PCI0.AMDN._Y00._BAS, PB)  // _BAS: Base Address
1712                     PB = PEBS /* \PEBS */
1713                     PL = PEBL /* \PEBL */
1714                     Return (NPTR) /* \_SB_.PCI0.AMDN.NPTR */
1715                 }
1716             }
1717 
1718             Method (NPTS, 1, NotSerialized)
1719             {
1720                 APTS (Arg0)
1721             }
1722 
1723             Method (NWAK, 1, NotSerialized)
1724             {
1725                 AWAK (Arg0)
1726             }
1727 
1728             Name (CPRB, One)
1729             Name (LVGA, 0x01)
1730             Name (STAV, 0x0F)
1731             Name (BRB, 0x0000)
1732             Name (BRL, 0x0100)
1733             Name (IOB, 0x1000)
1734             Name (IOL, 0xF000)
1735             Name (MBB, 0xE0000000)
1736             Name (MBL, 0x20000000)
1737             Name (MAB, 0x0000000000000000)
1738             Name (MAL, 0x0000000000000000)
1739             Name (MAM, 0x0000000000000000)
1740             Name (CRS1, ResourceTemplate ()
1741             {
1742                 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
1743                     0x0000,             // Granularity
1744                     0x0000,             // Range Minimum
1745                     0x007F,             // Range Maximum
1746                     0x0000,             // Translation Offset
1747                     0x0080,             // Length
1748                     ,, _Y01)
1749                 IO (Decode16,
1750                     0x0CF8,             // Range Minimum
1751                     0x0CF8,             // Range Maximum
1752                     0x01,               // Alignment
1753                     0x08,               // Length
1754                     )
1755                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1756                     0x0000,             // Granularity
1757                     0x0000,             // Range Minimum
1758                     0x03AF,             // Range Maximum
1759                     0x0000,             // Translation Offset
1760                     0x03B0,             // Length
1761                     ,, , TypeStatic, DenseTranslation)
1762                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1763                     0x0000,             // Granularity
1764                     0x03E0,             // Range Minimum
1765                     0x0CF7,             // Range Maximum
1766                     0x0000,             // Translation Offset
1767                     0x0918,             // Length
1768                     ,, , TypeStatic, DenseTranslation)
1769                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1770                     0x0000,             // Granularity
1771                     0x0000,             // Range Minimum
1772                     0x0000,             // Range Maximum
1773                     0x0000,             // Translation Offset
1774                     0x0000,             // Length
1775                     ,, _Y03, TypeStatic, DenseTranslation)
1776                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1777                     0x0000,             // Granularity
1778                     0x0D00,             // Range Minimum
1779                     0x0FFF,             // Range Maximum
1780                     0x0000,             // Translation Offset
1781                     0x0300,             // Length
1782                     ,, _Y02, TypeStatic, DenseTranslation)
1783                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1784                     0x00000000,         // Granularity
1785                     0x00000000,         // Range Minimum
1786                     0x00000000,         // Range Maximum
1787                     0x00000000,         // Translation Offset
1788                     0x00000000,         // Length
1789                     ,, _Y04, AddressRangeMemory, TypeStatic)
1790                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
1791                     0x00000000,         // Granularity
1792                     0x000C0000,         // Range Minimum
1793                     0x000DFFFF,         // Range Maximum
1794                     0x00000000,         // Translation Offset
1795                     0x00020000,         // Length
1796                     ,, , AddressRangeMemory, TypeStatic)
1797                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1798                     0x00000000,         // Granularity
1799                     0x02000000,         // Range Minimum
1800                     0xFFDFFFFF,         // Range Maximum
1801                     0x00000000,         // Translation Offset
1802                     0xFDE00000,         // Length
1803                     ,, _Y05, AddressRangeMemory, TypeStatic)
1804                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1805                     0x00000000,         // Granularity
1806                     0x02000000,         // Range Minimum
1807                     0xFFDFFFFF,         // Range Maximum
1808                     0x00000000,         // Translation Offset
1809                     0xFDE00000,         // Length
1810                     ,, _Y06, AddressRangeMemory, TypeStatic)
1811                 QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1812                     0x0000000000000000, // Granularity
1813                     0x0000000000000000, // Range Minimum
1814                     0x0000000000000000, // Range Maximum
1815                     0x0000000000000000, // Translation Offset
1816                     0x0000000000000000, // Length
1817                     ,, _Y07, AddressRangeMemory, TypeStatic)
1818             })
1819             Name (CRS2, ResourceTemplate ()
1820             {
1821                 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
1822                     0x0000,             // Granularity
1823                     0x0080,             // Range Minimum
1824                     0x00FF,             // Range Maximum
1825                     0x0000,             // Translation Offset
1826                     0x0080,             // Length
1827                     ,, _Y08)
1828                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1829                     0x0000,             // Granularity
1830                     0x0000,             // Range Minimum
1831                     0x0000,             // Range Maximum
1832                     0x0000,             // Translation Offset
1833                     0x0000,             // Length
1834                     ,, _Y0A, TypeStatic, DenseTranslation)
1835                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
1836                     0x0000,             // Granularity
1837                     0x0000,             // Range Minimum
1838                     0x0000,             // Range Maximum
1839                     0x0000,             // Translation Offset
1840                     0x0000,             // Length
1841                     ,, _Y09, TypeStatic, DenseTranslation)
1842                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1843                     0x00000000,         // Granularity
1844                     0x00000000,         // Range Minimum
1845                     0x00000000,         // Range Maximum
1846                     0x00000000,         // Translation Offset
1847                     0x00000000,         // Length
1848                     ,, _Y0B, AddressRangeMemory, TypeStatic)
1849                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1850                     0x00000000,         // Granularity
1851                     0x80000000,         // Range Minimum
1852                     0xFFFFFFFF,         // Range Maximum
1853                     0x00000000,         // Translation Offset
1854                     0x80000000,         // Length
1855                     ,, _Y0C, AddressRangeMemory, TypeStatic)
1856                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1857                     0x00000000,         // Granularity
1858                     0x80000000,         // Range Minimum
1859                     0xFFFFFFFF,         // Range Maximum
1860                     0x00000000,         // Translation Offset
1861                     0x80000000,         // Length
1862                     ,, _Y0D, AddressRangeMemory, TypeStatic)
1863                 QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
1864                     0x0000000000000000, // Granularity
1865                     0x0000000000000000, // Range Minimum
1866                     0x0000000000000000, // Range Maximum
1867                     0x0000000000000000, // Translation Offset
1868                     0x0000000000000000, // Length
1869                     ,, _Y0E, AddressRangeMemory, TypeStatic)
1870             })
1871             Method (_STA, 0, NotSerialized)  // _STA: Status
1872             {
1873                 Return (STAV) /* \_SB_.PCI0.STAV */
1874             }
1875 
1876             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
1877             {
1878                 DBG8 = 0x25
1879                 If (CPRB)
1880                 {
1881                     CreateWordField (CRS1, \_SB.PCI0._Y01._MIN, MIN0)  // _MIN: Minimum Base Address
1882                     CreateWordField (CRS1, \_SB.PCI0._Y01._MAX, MAX0)  // _MAX: Maximum Base Address
1883                     CreateWordField (CRS1, \_SB.PCI0._Y01._LEN, LEN0)  // _LEN: Length
1884                     MIN0 = BRB /* \_SB_.PCI0.BRB_ */
1885                     LEN0 = BRL /* \_SB_.PCI0.BRL_ */
1886                     Local0 = LEN0 /* \_SB_.PCI0._CRS.LEN0 */
1887                     MAX0 = (MIN0 + Local0--)
1888                     CreateWordField (CRS1, \_SB.PCI0._Y02._MIN, MIN1)  // _MIN: Minimum Base Address
1889                     CreateWordField (CRS1, \_SB.PCI0._Y02._MAX, MAX1)  // _MAX: Maximum Base Address
1890                     CreateWordField (CRS1, \_SB.PCI0._Y02._LEN, LEN1)  // _LEN: Length
1891                     If ((IOB == 0x1000))
1892                     {
1893                         Local0 = IOL /* \_SB_.PCI0.IOL_ */
1894                         MAX1 = (IOB + Local0--)
1895                         Local0 = (MAX1 - MIN1) /* \_SB_.PCI0._CRS.MIN1 */
1896                         LEN1 = (Local0 + One)
1897                     }
1898                     Else
1899                     {
1900                         MIN1 = IOB /* \_SB_.PCI0.IOB_ */
1901                         LEN1 = IOL /* \_SB_.PCI0.IOL_ */
1902                         Local0 = LEN1 /* \_SB_.PCI0._CRS.LEN1 */
1903                         MAX1 = (MIN1 + Local0--)
1904                     }
1905 
1906                     If (((LVGA == One) || (LVGA == 0x55)))
1907                     {
1908                         If (VGAF)
1909                         {
1910                             CreateWordField (CRS1, \_SB.PCI0._Y03._MIN, IMN1)  // _MIN: Minimum Base Address
1911                             CreateWordField (CRS1, \_SB.PCI0._Y03._MAX, IMX1)  // _MAX: Maximum Base Address
1912                             CreateWordField (CRS1, \_SB.PCI0._Y03._LEN, ILN1)  // _LEN: Length
1913                             IMN1 = 0x03B0
1914                             IMX1 = 0x03DF
1915                             ILN1 = 0x30
1916                             CreateDWordField (CRS1, \_SB.PCI0._Y04._MIN, VMN1)  // _MIN: Minimum Base Address
1917                             CreateDWordField (CRS1, \_SB.PCI0._Y04._MAX, VMX1)  // _MAX: Maximum Base Address
1918                             CreateDWordField (CRS1, \_SB.PCI0._Y04._LEN, VLN1)  // _LEN: Length
1919                             VMN1 = 0x000A0000
1920                             VMX1 = 0x000BFFFF
1921                             VLN1 = 0x00020000
1922                             VGAF = Zero
1923                         }
1924                     }
1925 
1926                     CreateDWordField (CRS1, \_SB.PCI0._Y05._MIN, MIN3)  // _MIN: Minimum Base Address
1927                     CreateDWordField (CRS1, \_SB.PCI0._Y05._MAX, MAX3)  // _MAX: Maximum Base Address
1928                     CreateDWordField (CRS1, \_SB.PCI0._Y05._LEN, LEN3)  // _LEN: Length
1929                     CreateDWordField (CRS1, \_SB.PCI0._Y06._MIN, MIN7)  // _MIN: Minimum Base Address
1930                     CreateDWordField (CRS1, \_SB.PCI0._Y06._MAX, MAX7)  // _MAX: Maximum Base Address
1931                     CreateDWordField (CRS1, \_SB.PCI0._Y06._LEN, LEN7)  // _LEN: Length
1932                     Local0 = (MBB + MBL) /* \_SB_.PCI0.MBL_ */
1933                     If ((Local0 < NBTP))
1934                     {
1935                         MIN3 = MBB /* \_SB_.PCI0.MBB_ */
1936                         LEN3 = MBL /* \_SB_.PCI0.MBL_ */
1937                         Local0 = LEN3 /* \_SB_.PCI0._CRS.LEN3 */
1938                         MAX3 = (MIN3 + Local0--)
1939                         MIN7 = Zero
1940                         MAX7 = Zero
1941                         LEN7 = Zero
1942                     }
1943                     Else
1944                     {
1945                         MIN3 = MBB /* \_SB_.PCI0.MBB_ */
1946                         LEN3 = (NBTP - MBB)
1947                         Local0 = LEN3 /* \_SB_.PCI0._CRS.LEN3 */
1948                         MAX3 = (MIN3 + Local0--)
1949                         MIN7 = 0xFEE00000
1950                         Local0 = (0xFEE00000 - NBTP)
1951                         LEN7 = (MBL - Local0)
1952                         LEN7 = (LEN7 - LEN3)
1953                         Local0 = LEN7 /* \_SB_.PCI0._CRS.LEN7 */
1954                         MAX7 = (MIN7 + Local0--)
1955                     }
1956 
1957                     If (MAL)
1958                     {
1959                         CreateQWordField (CRS1, \_SB.PCI0._Y07._MIN, MN8)  // _MIN: Minimum Base Address
1960                         CreateQWordField (CRS1, \_SB.PCI0._Y07._MAX, MX8)  // _MAX: Maximum Base Address
1961                         CreateQWordField (CRS1, \_SB.PCI0._Y07._LEN, LN8)  // _LEN: Length
1962                         MN8 = MAB /* \_SB_.PCI0.MAB_ */
1963                         LN8 = MAL /* \_SB_.PCI0.MAL_ */
1964                         MX8 = MAM /* \_SB_.PCI0.MAM_ */
1965                     }
1966 
1967                     DBG8 = 0x24
1968                     Return (CRS1) /* \_SB_.PCI0.CRS1 */
1969                 }
1970                 Else
1971                 {
1972                     CreateWordField (CRS2, \_SB.PCI0._Y08._MIN, MIN2)  // _MIN: Minimum Base Address
1973                     CreateWordField (CRS2, \_SB.PCI0._Y08._MAX, MAX2)  // _MAX: Maximum Base Address
1974                     CreateWordField (CRS2, \_SB.PCI0._Y08._LEN, LEN2)  // _LEN: Length
1975                     MIN2 = BRB /* \_SB_.PCI0.BRB_ */
1976                     LEN2 = BRL /* \_SB_.PCI0.BRL_ */
1977                     Local1 = LEN2 /* \_SB_.PCI0._CRS.LEN2 */
1978                     MAX2 = (MIN2 + Local1--)
1979                     CreateWordField (CRS2, \_SB.PCI0._Y09._MIN, MIN4)  // _MIN: Minimum Base Address
1980                     CreateWordField (CRS2, \_SB.PCI0._Y09._MAX, MAX4)  // _MAX: Maximum Base Address
1981                     CreateWordField (CRS2, \_SB.PCI0._Y09._LEN, LEN4)  // _LEN: Length
1982                     MIN4 = IOB /* \_SB_.PCI0.IOB_ */
1983                     LEN4 = IOL /* \_SB_.PCI0.IOL_ */
1984                     Local1 = LEN4 /* \_SB_.PCI0._CRS.LEN4 */
1985                     MAX4 = (MIN4 + Local1--)
1986                     If (LVGA)
1987                     {
1988                         CreateWordField (CRS2, \_SB.PCI0._Y0A._MIN, IMN2)  // _MIN: Minimum Base Address
1989                         CreateWordField (CRS2, \_SB.PCI0._Y0A._MAX, IMX2)  // _MAX: Maximum Base Address
1990                         CreateWordField (CRS2, \_SB.PCI0._Y0A._LEN, ILN2)  // _LEN: Length
1991                         IMN2 = 0x03B0
1992                         IMX2 = 0x03DF
1993                         ILN2 = 0x30
1994                         CreateDWordField (CRS2, \_SB.PCI0._Y0B._MIN, VMN2)  // _MIN: Minimum Base Address
1995                         CreateDWordField (CRS2, \_SB.PCI0._Y0B._MAX, VMX2)  // _MAX: Maximum Base Address
1996                         CreateDWordField (CRS2, \_SB.PCI0._Y0B._LEN, VLN2)  // _LEN: Length
1997                         VMN2 = 0x000A0000
1998                         VMX2 = 0x000BFFFF
1999                         VLN2 = 0x00020000
2000                     }
2001 
2002                     CreateDWordField (CRS2, \_SB.PCI0._Y0C._MIN, MIN5)  // _MIN: Minimum Base Address
2003                     CreateDWordField (CRS2, \_SB.PCI0._Y0C._MAX, MAX5)  // _MAX: Maximum Base Address
2004                     CreateDWordField (CRS2, \_SB.PCI0._Y0C._LEN, LEN5)  // _LEN: Length
2005                     MIN5 = MBB /* \_SB_.PCI0.MBB_ */
2006                     LEN5 = (NBTP - MBB)
2007                     Local1 = LEN5 /* \_SB_.PCI0._CRS.LEN5 */
2008                     MAX5 = (MIN5 + Local1--)
2009                     CreateDWordField (CRS2, \_SB.PCI0._Y0D._MIN, MIN6)  // _MIN: Minimum Base Address
2010                     CreateDWordField (CRS2, \_SB.PCI0._Y0D._MAX, MAX6)  // _MAX: Maximum Base Address
2011                     CreateDWordField (CRS2, \_SB.PCI0._Y0D._LEN, LEN6)  // _LEN: Length
2012                     MIN6 = (NBTP + NBTS) /* \NBTS */
2013                     LEN6 = (MBL - NBTS)
2014                     LEN6 = (LEN6 - LEN5)
2015                     Local0 = LEN6 /* \_SB_.PCI0._CRS.LEN6 */
2016                     MAX6 = (MIN6 + Local0--)
2017                     If (MAL)
2018                     {
2019                         CreateQWordField (CRS2, \_SB.PCI0._Y0E._MIN, MN9)  // _MIN: Minimum Base Address
2020                         CreateQWordField (CRS2, \_SB.PCI0._Y0E._MAX, MX9)  // _MAX: Maximum Base Address
2021                         CreateQWordField (CRS2, \_SB.PCI0._Y0E._LEN, LN9)  // _LEN: Length
2022                         MN9 = MAB /* \_SB_.PCI0.MAB_ */
2023                         LN9 = MAL /* \_SB_.PCI0.MAL_ */
2024                         MX9 = MAM /* \_SB_.PCI0.MAM_ */
2025                     }
2026 
2027                     DBG8 = 0x23
2028                     Return (CRS2) /* \_SB_.PCI0.CRS2 */
2029                 }
2030             }
2031 
2032             Method (_OSC, 4, Serialized)  // _OSC: Operating System Capabilities
2033             {
2034                 Name (SUPP, Zero)
2035                 Name (CTRL, Zero)
2036                 CreateDWordField (Arg3, Zero, CDW1)
2037                 CreateDWordField (Arg3, 0x04, CDW2)
2038                 CreateDWordField (Arg3, 0x08, CDW3)
2039                 If ((Arg0 == ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */))
2040                 {
2041                     SUPP = CDW2 /* \_SB_.PCI0._OSC.CDW2 */
2042                     CTRL = CDW3 /* \_SB_.PCI0._OSC.CDW3 */
2043                     If (((SUPP & 0x16) != 0x16))
2044                     {
2045                         CTRL &= 0x1E
2046                     }
2047 
2048                     If (!PEHP)
2049                     {
2050                         CTRL &= 0x1E
2051                     }
2052 
2053                     If (!SHPC)
2054                     {
2055                         CTRL &= 0x1D
2056                     }
2057 
2058                     If (!PEPM)
2059                     {
2060                         CTRL &= 0x1B
2061                     }
2062 
2063                     If (!PEER)
2064                     {
2065                         CTRL &= 0x15
2066                     }
2067 
2068                     If (!PECS)
2069                     {
2070                         CTRL &= 0x0F
2071                     }
2072 
2073                     If ((Arg1 != One))
2074                     {
2075                         CDW1 |= 0x08
2076                     }
2077 
2078                     If ((CDW3 != CTRL))
2079                     {
2080                         CDW1 |= 0x10
2081                     }
2082 
2083                     CDW3 = CTRL /* \_SB_.PCI0._OSC.CTRL */
2084                     Return (Arg3)
2085                 }
2086                 Else
2087                 {
2088                     CDW1 |= 0x04
2089                     Return (Arg3)
2090                 }
2091             }
2092 
2093             Mutex (NAPM, 0x00)
2094             Method (NAPE, 0, NotSerialized)
2095             {
2096                 Acquire (NAPM, 0xFFFF)
2097                 DBG8 = 0x11
2098                 Local0 = (PEBS + 0xB8)
2099                 OperationRegion (VARM, SystemMemory, Local0, 0x08)
2100                 Field (VARM, DWordAcc, NoLock, Preserve)
2101                 {
2102                     NAPX,   32, 
2103                     NAPD,   32
2104                 }
2105 
2106                 Local1 = NAPX /* \_SB_.PCI0.NAPE.NAPX */
2107                 NAPX = 0x14300000
2108                 Local0 = NAPD /* \_SB_.PCI0.NAPE.NAPD */
2109                 Local0 &= 0xFFFFFFEF
2110                 NAPD = Local0
2111                 NAPX = Local1
2112                 DBG8 = 0x12
2113                 Release (NAPM)
2114             }
2115 
2116             Device (IOMA)
2117             {
2118                 Name (_ADR, 0x02)  // _ADR: Address
2119                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
2120                 Name (_UID, 0x15)  // _UID: Unique ID
2121                 Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
2122                 {
2123                     Memory32Fixed (ReadOnly,
2124                         0xFEB80000,         // Address Base
2125                         0x00080000,         // Address Length
2126                         )
2127                 })
2128             }
2129 
2130             Device (D003)
2131             {
2132                 Name (_ADR, Zero)  // _ADR: Address
2133             }
2134 
2135             Device (GPP0)
2136             {
2137                 Name (_ADR, 0x00010001)  // _ADR: Address
2138                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2139                 {
2140                     Return (GPRW (0x08, 0x04))
2141                 }
2142 
2143                 Device (VGA)
2144                 {
2145                     Name (_ADR, Zero)  // _ADR: Address
2146                     Name (DOSA, Zero)
2147                     Method (_DOS, 1, NotSerialized)  // _DOS: Disable Output Switching
2148                     {
2149                         DOSA = Arg0
2150                     }
2151 
2152                     Method (_DOD, 0, NotSerialized)  // _DOD: Display Output Devices
2153                     {
2154                         Return (Package (0x05)
2155                         {
2156                             0x00010110, 
2157                             0x00010210, 
2158                             0x00010220, 
2159                             0x00010230, 
2160                             0x00010240
2161                         })
2162                     }
2163 
2164                     Device (LCD)
2165                     {
2166                         Name (_ADR, 0x0110)  // _ADR: Address
2167                         Name (BCLB, Package (0x34)
2168                         {
2169                             0x5A, 
2170                             0x3C, 
2171                             0x02, 
2172                             0x04, 
2173                             0x06, 
2174                             0x08, 
2175                             0x0A, 
2176                             0x0C, 
2177                             0x0E, 
2178                             0x10, 
2179                             0x12, 
2180                             0x14, 
2181                             0x16, 
2182                             0x18, 
2183                             0x1A, 
2184                             0x1C, 
2185                             0x1E, 
2186                             0x20, 
2187                             0x22, 
2188                             0x24, 
2189                             0x26, 
2190                             0x28, 
2191                             0x2A, 
2192                             0x2C, 
2193                             0x2E, 
2194                             0x30, 
2195                             0x32, 
2196                             0x34, 
2197                             0x36, 
2198                             0x38, 
2199                             0x3A, 
2200                             0x3C, 
2201                             0x3E, 
2202                             0x40, 
2203                             0x42, 
2204                             0x44, 
2205                             0x46, 
2206                             0x48, 
2207                             0x4A, 
2208                             0x4C, 
2209                             0x4E, 
2210                             0x50, 
2211                             0x52, 
2212                             0x54, 
2213                             0x56, 
2214                             0x58, 
2215                             0x5A, 
2216                             0x5C, 
2217                             0x5E, 
2218                             0x60, 
2219                             0x62, 
2220                             0x64
2221                         })
2222                         Method (_BCL, 0, NotSerialized)  // _BCL: Brightness Control Levels
2223                         {
2224                             Return (BCLB) /* \_SB_.PCI0.GPP0.VGA_.LCD_.BCLB */
2225                         }
2226 
2227                         Method (_BCM, 1, NotSerialized)  // _BCM: Brightness Control Method
2228                         {
2229                             Divide ((Arg0 * 0xFF), 0x64, Local1, Local0)
2230                             AFN7 (Local0)
2231                         }
2232                     }
2233 
2234                     Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
2235                     {
2236                         Return (Zero)
2237                     }
2238                 }
2239 
2240                 Device (HDAU)
2241                 {
2242                     Name (_ADR, One)  // _ADR: Address
2243                     Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
2244                     {
2245                         Return (Zero)
2246                     }
2247                 }
2248 
2249                 Method (MPRW, 0, NotSerialized)
2250                 {
2251                     Return (GPRW (0x08, Zero))
2252                 }
2253 
2254                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2255                 {
2256                     If (PICM)
2257                     {
2258                         Return (AR10) /* \_SB_.AR10 */
2259                     }
2260 
2261                     Return (PD10) /* \_SB_.PD10 */
2262                 }
2263 
2264                 Device (D005)
2265                 {
2266                     Name (_ADR, 0xFF)  // _ADR: Address
2267                 }
2268             }
2269 
2270             Device (GPP1)
2271             {
2272                 Name (_ADR, 0x00010002)  // _ADR: Address
2273                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2274                 {
2275                     Return (GPRW (0x08, 0x04))
2276                 }
2277 
2278                 Device (DEV0)
2279                 {
2280                     Name (_ADR, Zero)  // _ADR: Address
2281                     Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
2282                     {
2283                         Return (Zero)
2284                     }
2285                 }
2286 
2287                 Device (DEV1)
2288                 {
2289                     Name (_ADR, One)  // _ADR: Address
2290                     Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
2291                     {
2292                         Return (Zero)
2293                     }
2294                 }
2295 
2296                 Method (MPRW, 0, NotSerialized)
2297                 {
2298                     Return (GPRW (0x08, Zero))
2299                 }
2300 
2301                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2302                 {
2303                     If (PICM)
2304                     {
2305                         Return (AR15) /* \_SB_.AR15 */
2306                     }
2307 
2308                     Return (PD15) /* \_SB_.PD15 */
2309                 }
2310 
2311                 Device (D007)
2312                 {
2313                     Name (_ADR, 0xFF)  // _ADR: Address
2314                 }
2315             }
2316 
2317             Device (GPP2)
2318             {
2319                 Name (_ADR, 0x00010003)  // _ADR: Address
2320                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2321                 {
2322                     Return (GPRW (0x08, 0x04))
2323                 }
2324 
2325                 Method (MPRW, 0, NotSerialized)
2326                 {
2327                     Return (GPRW (0x08, Zero))
2328                 }
2329 
2330                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2331                 {
2332                     If (PICM)
2333                     {
2334                         Return (AR1F) /* \_SB_.AR1F */
2335                     }
2336 
2337                     Return (PD1F) /* \_SB_.PD1F */
2338                 }
2339 
2340                 Device (BCM5)
2341                 {
2342                     Name (_ADR, Zero)  // _ADR: Address
2343                 }
2344             }
2345 
2346             Device (GPP3)
2347             {
2348                 Name (_ADR, 0x00010004)  // _ADR: Address
2349                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2350                 {
2351                     Return (GPRW (0x08, 0x04))
2352                 }
2353 
2354                 Method (MPRW, 0, NotSerialized)
2355                 {
2356                     Return (GPRW (0x08, Zero))
2357                 }
2358 
2359                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2360                 {
2361                     If (PICM)
2362                     {
2363                         Return (AR24) /* \_SB_.AR24 */
2364                     }
2365 
2366                     Return (PD24) /* \_SB_.PD24 */
2367                 }
2368 
2369                 Device (D00A)
2370                 {
2371                     Name (_ADR, 0xFF)  // _ADR: Address
2372                 }
2373 
2374                 Device (RLAN)
2375                 {
2376                     Name (_ADR, Zero)  // _ADR: Address
2377                     Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2378                     {
2379                         If ((WOL5 == Zero))
2380                         {
2381                             Return (Package (0x02)
2382                             {
2383                                 0x09, 
2384                                 Zero
2385                             })
2386                         }
2387                         Else
2388                         {
2389                             Return (Package (0x02)
2390                             {
2391                                 0x09, 
2392                                 0x05
2393                             })
2394                         }
2395                     }
2396                 }
2397             }
2398 
2399             Device (GPP4)
2400             {
2401                 Name (_ADR, 0x00010005)  // _ADR: Address
2402                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2403                 {
2404                     Return (GPRW (0x08, 0x04))
2405                 }
2406 
2407                 Method (MPRW, 0, NotSerialized)
2408                 {
2409                     Return (GPRW (0x08, Zero))
2410                 }
2411 
2412                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2413                 {
2414                     If (PICM)
2415                     {
2416                         Return (AR29) /* \_SB_.AR29 */
2417                     }
2418 
2419                     Return (PD29) /* \_SB_.PD29 */
2420                 }
2421 
2422                 Device (D00C)
2423                 {
2424                     Name (_ADR, 0xFF)  // _ADR: Address
2425                 }
2426 
2427                 Device (WLAN)
2428                 {
2429                     Name (_ADR, Zero)  // _ADR: Address
2430                     Name (WRDY, Package (0x02)
2431                     {
2432                         Zero, 
2433                         Package (0x0C)
2434                         {
2435                             0x07, 
2436                             One, 
2437                             0x74, 
2438                             0x54, 
2439                             0x70, 
2440                             0x70, 
2441                             0x70, 
2442                             0x74, 
2443                             0x54, 
2444                             0x70, 
2445                             0x70, 
2446                             0x70
2447                         }
2448                     })
2449                     Method (WRDS, 0, Serialized)
2450                     {
2451                         Return (WRDY) /* \_SB_.PCI0.GPP4.WLAN.WRDY */
2452                     }
2453                 }
2454             }
2455 
2456             Device (GPP5)
2457             {
2458                 Name (_ADR, 0x00010006)  // _ADR: Address
2459                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2460                 {
2461                     Return (GPRW (0x08, 0x04))
2462                 }
2463 
2464                 Method (MPRW, 0, NotSerialized)
2465                 {
2466                     Return (GPRW (0x08, Zero))
2467                 }
2468 
2469                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2470                 {
2471                     If (PICM)
2472                     {
2473                         Return (AR2E) /* \_SB_.AR2E */
2474                     }
2475 
2476                     Return (PD2E) /* \_SB_.PD2E */
2477                 }
2478 
2479                 Device (D00E)
2480                 {
2481                     Name (_ADR, 0xFF)  // _ADR: Address
2482                 }
2483             }
2484 
2485             Device (GPP6)
2486             {
2487                 Name (_ADR, 0x00010007)  // _ADR: Address
2488                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2489                 {
2490                     Return (GPRW (0x08, 0x04))
2491                 }
2492 
2493                 Method (MPRW, 0, NotSerialized)
2494                 {
2495                     Return (GPRW (0x08, Zero))
2496                 }
2497 
2498                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2499                 {
2500                     If (PICM)
2501                     {
2502                         Return (AR33) /* \_SB_.AR33 */
2503                     }
2504 
2505                     Return (PD33) /* \_SB_.PD33 */
2506                 }
2507 
2508                 Device (D010)
2509                 {
2510                     Name (_ADR, 0xFF)  // _ADR: Address
2511                 }
2512             }
2513 
2514             Device (GP17)
2515             {
2516                 Name (_ADR, 0x00080001)  // _ADR: Address
2517                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2518                 {
2519                     Return (GPRW (0x19, 0x04))
2520                 }
2521 
2522                 Method (MPRW, 0, NotSerialized)
2523                 {
2524                     Return (GPRW (0x19, Zero))
2525                 }
2526 
2527                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2528                 {
2529                     If (PICM)
2530                     {
2531                         Return (AR38) /* \_SB_.AR38 */
2532                     }
2533 
2534                     Return (PD38) /* \_SB_.PD38 */
2535                 }
2536 
2537                 Device (VGA)
2538                 {
2539                     Name (_ADR, Zero)  // _ADR: Address
2540                     Name (AF7E, 0x80000001)
2541                     Method (_STA, 0, NotSerialized)  // _STA: Status
2542                     {
2543                         Return (0x0F)
2544                     }
2545 
2546                     Name (DOSA, Zero)
2547                     Method (_DOS, 1, NotSerialized)  // _DOS: Disable Output Switching
2548                     {
2549                         DOSA = Arg0
2550                     }
2551 
2552                     Method (_DOD, 0, NotSerialized)  // _DOD: Display Output Devices
2553                     {
2554                         Return (Package (0x07)
2555                         {
2556                             0x00010110, 
2557                             0x00010210, 
2558                             0x00010220, 
2559                             0x00010230, 
2560                             0x00010240, 
2561                             0x00031000, 
2562                             0x00032000
2563                         })
2564                     }
2565 
2566                     Device (LCD)
2567                     {
2568                         Name (_ADR, 0x0110)  // _ADR: Address
2569                         Name (BCLB, Package (0x34)
2570                         {
2571                             0x5A, 
2572                             0x3C, 
2573                             0x02, 
2574                             0x04, 
2575                             0x06, 
2576                             0x08, 
2577                             0x0A, 
2578                             0x0C, 
2579                             0x0E, 
2580                             0x10, 
2581                             0x12, 
2582                             0x14, 
2583                             0x16, 
2584                             0x18, 
2585                             0x1A, 
2586                             0x1C, 
2587                             0x1E, 
2588                             0x20, 
2589                             0x22, 
2590                             0x24, 
2591                             0x26, 
2592                             0x28, 
2593                             0x2A, 
2594                             0x2C, 
2595                             0x2E, 
2596                             0x30, 
2597                             0x32, 
2598                             0x34, 
2599                             0x36, 
2600                             0x38, 
2601                             0x3A, 
2602                             0x3C, 
2603                             0x3E, 
2604                             0x40, 
2605                             0x42, 
2606                             0x44, 
2607                             0x46, 
2608                             0x48, 
2609                             0x4A, 
2610                             0x4C, 
2611                             0x4E, 
2612                             0x50, 
2613                             0x52, 
2614                             0x54, 
2615                             0x56, 
2616                             0x58, 
2617                             0x5A, 
2618                             0x5C, 
2619                             0x5E, 
2620                             0x60, 
2621                             0x62, 
2622                             0x64
2623                         })
2624                         Method (_BCL, 0, NotSerialized)  // _BCL: Brightness Control Levels
2625                         {
2626                             Return (BCLB) /* \_SB_.PCI0.GP17.VGA_.LCD_.BCLB */
2627                         }
2628 
2629                         Method (_BCM, 1, NotSerialized)  // _BCM: Brightness Control Method
2630                         {
2631                             If ((AF7E == 0x80000001))
2632                             {
2633                                 Divide ((Arg0 * 0xFF), 0x64, Local1, Local0)
2634                                 AFN7 (Local0)
2635                             }
2636                         }
2637                     }
2638                 }
2639 
2640                 Device (HDAU)
2641                 {
2642                     Name (_ADR, One)  // _ADR: Address
2643                 }
2644 
2645                 Device (ACP)
2646                 {
2647                     Name (_ADR, 0x05)  // _ADR: Address
2648                 }
2649 
2650                 Device (AZAL)
2651                 {
2652                     Name (_ADR, 0x06)  // _ADR: Address
2653                 }
2654 
2655                 Device (MP2C)
2656                 {
2657                     Name (_ADR, 0x07)  // _ADR: Address
2658                 }
2659 
2660                 Device (XHC0)
2661                 {
2662                     Name (_ADR, 0x03)  // _ADR: Address
2663                     Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2664                     {
2665                         Return (GPRW (0x19, 0x04))
2666                     }
2667 
2668                     Method (MPRW, 0, NotSerialized)
2669                     {
2670                         Return (GPRW (0x19, Zero))
2671                     }
2672                 }
2673 
2674                 Device (XHC1)
2675                 {
2676                     Name (_ADR, 0x04)  // _ADR: Address
2677                     Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2678                     {
2679                         Return (GPRW (0x19, 0x04))
2680                     }
2681 
2682                     Method (MPRW, 0, NotSerialized)
2683                     {
2684                         Return (GPRW (0x19, Zero))
2685                     }
2686                 }
2687 
2688                 Device (APSP)
2689                 {
2690                     Name (_ADR, 0x02)  // _ADR: Address
2691                     Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
2692                     Name (PSPA, 0xFD000000)
2693                     Name (LENA, 0x01000000)
2694                     Name (PSPB, 0x00000000)
2695                     Name (LENB, 0x00000000)
2696                     Name (_STA, 0x0F)  // _STA: Status
2697                     Name (CRS, ResourceTemplate ()
2698                     {
2699                         Memory32Fixed (ReadWrite,
2700                             0x00000000,         // Address Base
2701                             0x00000000,         // Address Length
2702                             _Y0F)
2703                         Memory32Fixed (ReadWrite,
2704                             0x00000000,         // Address Base
2705                             0x00000000,         // Address Length
2706                             _Y10)
2707                     })
2708                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
2709                     {
2710                         CreateDWordField (CRS, \_SB.PCI0.GP17.APSP._Y0F._BAS, ABAS)  // _BAS: Base Address
2711                         CreateDWordField (CRS, \_SB.PCI0.GP17.APSP._Y0F._LEN, ALEN)  // _LEN: Length
2712                         CreateDWordField (CRS, \_SB.PCI0.GP17.APSP._Y10._BAS, BBAS)  // _BAS: Base Address
2713                         CreateDWordField (CRS, \_SB.PCI0.GP17.APSP._Y10._LEN, BLEN)  // _LEN: Length
2714                         ABAS = PSPA /* \_SB_.PCI0.GP17.APSP.PSPA */
2715                         ALEN = LENA /* \_SB_.PCI0.GP17.APSP.LENA */
2716                         BBAS = PSPB /* \_SB_.PCI0.GP17.APSP.PSPB */
2717                         BLEN = LENB /* \_SB_.PCI0.GP17.APSP.LENB */
2718                         Return (CRS) /* \_SB_.PCI0.GP17.APSP.CRS_ */
2719                     }
2720                 }
2721             }
2722 
2723             Device (GP18)
2724             {
2725                 Name (_ADR, 0x00080002)  // _ADR: Address
2726                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
2727                 {
2728                     Return (GPRW (0x08, 0x04))
2729                 }
2730 
2731                 Method (MPRW, 0, NotSerialized)
2732                 {
2733                     Return (GPRW (0x08, Zero))
2734                 }
2735 
2736                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
2737                 {
2738                     If (PICM)
2739                     {
2740                         Return (AR39) /* \_SB_.AR39 */
2741                     }
2742 
2743                     Return (PD39) /* \_SB_.PD39 */
2744                 }
2745 
2746                 Device (SATA)
2747                 {
2748                     Name (_ADR, Zero)  // _ADR: Address
2749                 }
2750 
2751                 Device (D025)
2752                 {
2753                     Name (_ADR, One)  // _ADR: Address
2754                 }
2755 
2756                 Device (D026)
2757                 {
2758                     Name (_ADR, 0x02)  // _ADR: Address
2759                 }
2760             }
2761 
2762             Device (D01F)
2763             {
2764                 Name (_ADR, 0x00140000)  // _ADR: Address
2765             }
2766 
2767             Device (D021)
2768             {
2769                 Name (_ADR, 0x00140006)  // _ADR: Address
2770             }
2771 
2772             Device (SBRG)
2773             {
2774                 Name (_ADR, 0x00140003)  // _ADR: Address
2775                 Device (PIC)
2776                 {
2777                     Name (_HID, EisaId ("PNP0000") /* 8259-compatible Programmable Interrupt Controller */)  // _HID: Hardware ID
2778                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
2779                     {
2780                         IO (Decode16,
2781                             0x0020,             // Range Minimum
2782                             0x0020,             // Range Maximum
2783                             0x00,               // Alignment
2784                             0x02,               // Length
2785                             )
2786                         IO (Decode16,
2787                             0x00A0,             // Range Minimum
2788                             0x00A0,             // Range Maximum
2789                             0x00,               // Alignment
2790                             0x02,               // Length
2791                             )
2792                         IRQNoFlags ()
2793                             {2}
2794                     })
2795                 }
2796 
2797                 Device (DMAD)
2798                 {
2799                     Name (_HID, EisaId ("PNP0200") /* PC-class DMA Controller */)  // _HID: Hardware ID
2800                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
2801                     {
2802                         DMA (Compatibility, BusMaster, Transfer8, )
2803                             {4}
2804                         IO (Decode16,
2805                             0x0000,             // Range Minimum
2806                             0x0000,             // Range Maximum
2807                             0x00,               // Alignment
2808                             0x10,               // Length
2809                             )
2810                         IO (Decode16,
2811                             0x0081,             // Range Minimum
2812                             0x0081,             // Range Maximum
2813                             0x00,               // Alignment
2814                             0x03,               // Length
2815                             )
2816                         IO (Decode16,
2817                             0x0087,             // Range Minimum
2818                             0x0087,             // Range Maximum
2819                             0x00,               // Alignment
2820                             0x01,               // Length
2821                             )
2822                         IO (Decode16,
2823                             0x0089,             // Range Minimum
2824                             0x0089,             // Range Maximum
2825                             0x00,               // Alignment
2826                             0x03,               // Length
2827                             )
2828                         IO (Decode16,
2829                             0x008F,             // Range Minimum
2830                             0x008F,             // Range Maximum
2831                             0x00,               // Alignment
2832                             0x01,               // Length
2833                             )
2834                         IO (Decode16,
2835                             0x00C0,             // Range Minimum
2836                             0x00C0,             // Range Maximum
2837                             0x00,               // Alignment
2838                             0x20,               // Length
2839                             )
2840                     })
2841                 }
2842 
2843                 Device (TMR)
2844                 {
2845                     Name (_HID, EisaId ("PNP0100") /* PC-class System Timer */)  // _HID: Hardware ID
2846                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
2847                     {
2848                         IO (Decode16,
2849                             0x0040,             // Range Minimum
2850                             0x0040,             // Range Maximum
2851                             0x00,               // Alignment
2852                             0x04,               // Length
2853                             )
2854                         IRQNoFlags ()
2855                             {0}
2856                     })
2857                 }
2858 
2859                 Device (RTC0)
2860                 {
2861                     Name (_HID, EisaId ("PNP0B00") /* AT Real-Time Clock */)  // _HID: Hardware ID
2862                     Name (BUF0, ResourceTemplate ()
2863                     {
2864                         IO (Decode16,
2865                             0x0070,             // Range Minimum
2866                             0x0070,             // Range Maximum
2867                             0x00,               // Alignment
2868                             0x02,               // Length
2869                             )
2870                     })
2871                     Name (BUF1, ResourceTemplate ()
2872                     {
2873                         IO (Decode16,
2874                             0x0070,             // Range Minimum
2875                             0x0070,             // Range Maximum
2876                             0x00,               // Alignment
2877                             0x02,               // Length
2878                             )
2879                         IRQNoFlags ()
2880                             {8}
2881                     })
2882                     Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
2883                     {
2884                         If ((HPEN == One))
2885                         {
2886                             Return (BUF0) /* \_SB_.PCI0.SBRG.RTC0.BUF0 */
2887                         }
2888 
2889                         Return (BUF1) /* \_SB_.PCI0.SBRG.RTC0.BUF1 */
2890                     }
2891                 }
2892 
2893                 Device (SPKR)
2894                 {
2895                     Name (_HID, EisaId ("PNP0800") /* Microsoft Sound System Compatible Device */)  // _HID: Hardware ID
2896                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
2897                     {
2898                         IO (Decode16,
2899                             0x0061,             // Range Minimum
2900                             0x0061,             // Range Maximum
2901                             0x00,               // Alignment
2902                             0x01,               // Length
2903                             )
2904                     })
2905                 }
2906 
2907                 OperationRegion (SMI0, SystemIO, SMIO, One)
2908                 Field (SMI0, ByteAcc, NoLock, Preserve)
2909                 {
2910                     SMIC,   8
2911                 }
2912 
2913                 Scope (\_SB)
2914                 {
2915                     Scope (PCI0)
2916                     {
2917                         Device (S900)
2918                         {
2919                             Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
2920                             Name (_UID, 0x0700)  // _UID: Unique ID
2921                             Name (_STA, 0x0F)  // _STA: Status
2922                             Name (CRS, ResourceTemplate ()
2923                             {
2924                                 IO (Decode16,
2925                                     0x0010,             // Range Minimum
2926                                     0x0010,             // Range Maximum
2927                                     0x00,               // Alignment
2928                                     0x10,               // Length
2929                                     )
2930                                 IO (Decode16,
2931                                     0x0022,             // Range Minimum
2932                                     0x0022,             // Range Maximum
2933                                     0x00,               // Alignment
2934                                     0x1E,               // Length
2935                                     )
2936                                 IO (Decode16,
2937                                     0x0063,             // Range Minimum
2938                                     0x0063,             // Range Maximum
2939                                     0x00,               // Alignment
2940                                     0x01,               // Length
2941                                     )
2942                                 IO (Decode16,
2943                                     0x0065,             // Range Minimum
2944                                     0x0065,             // Range Maximum
2945                                     0x00,               // Alignment
2946                                     0x01,               // Length
2947                                     )
2948                                 IO (Decode16,
2949                                     0x0067,             // Range Minimum
2950                                     0x0067,             // Range Maximum
2951                                     0x00,               // Alignment
2952                                     0x09,               // Length
2953                                     )
2954                                 IO (Decode16,
2955                                     0x0072,             // Range Minimum
2956                                     0x0072,             // Range Maximum
2957                                     0x00,               // Alignment
2958                                     0x0E,               // Length
2959                                     )
2960                                 IO (Decode16,
2961                                     0x0080,             // Range Minimum
2962                                     0x0080,             // Range Maximum
2963                                     0x00,               // Alignment
2964                                     0x01,               // Length
2965                                     )
2966                                 IO (Decode16,
2967                                     0x0084,             // Range Minimum
2968                                     0x0084,             // Range Maximum
2969                                     0x00,               // Alignment
2970                                     0x03,               // Length
2971                                     )
2972                                 IO (Decode16,
2973                                     0x0088,             // Range Minimum
2974                                     0x0088,             // Range Maximum
2975                                     0x00,               // Alignment
2976                                     0x01,               // Length
2977                                     )
2978                                 IO (Decode16,
2979                                     0x008C,             // Range Minimum
2980                                     0x008C,             // Range Maximum
2981                                     0x00,               // Alignment
2982                                     0x03,               // Length
2983                                     )
2984                                 IO (Decode16,
2985                                     0x0090,             // Range Minimum
2986                                     0x0090,             // Range Maximum
2987                                     0x00,               // Alignment
2988                                     0x10,               // Length
2989                                     )
2990                                 IO (Decode16,
2991                                     0x00A2,             // Range Minimum
2992                                     0x00A2,             // Range Maximum
2993                                     0x00,               // Alignment
2994                                     0x1E,               // Length
2995                                     )
2996                                 IO (Decode16,
2997                                     0x00B1,             // Range Minimum
2998                                     0x00B1,             // Range Maximum
2999                                     0x00,               // Alignment
3000                                     0x01,               // Length
3001                                     )
3002                                 IO (Decode16,
3003                                     0x00E0,             // Range Minimum
3004                                     0x00E0,             // Range Maximum
3005                                     0x00,               // Alignment
3006                                     0x10,               // Length
3007                                     )
3008                                 IO (Decode16,
3009                                     0x04D0,             // Range Minimum
3010                                     0x04D0,             // Range Maximum
3011                                     0x00,               // Alignment
3012                                     0x02,               // Length
3013                                     )
3014                                 IO (Decode16,
3015                                     0x040B,             // Range Minimum
3016                                     0x040B,             // Range Maximum
3017                                     0x00,               // Alignment
3018                                     0x01,               // Length
3019                                     )
3020                                 IO (Decode16,
3021                                     0x04D6,             // Range Minimum
3022                                     0x04D6,             // Range Maximum
3023                                     0x00,               // Alignment
3024                                     0x01,               // Length
3025                                     )
3026                                 IO (Decode16,
3027                                     0x0C00,             // Range Minimum
3028                                     0x0C00,             // Range Maximum
3029                                     0x00,               // Alignment
3030                                     0x02,               // Length
3031                                     )
3032                                 IO (Decode16,
3033                                     0x0C14,             // Range Minimum
3034                                     0x0C14,             // Range Maximum
3035                                     0x00,               // Alignment
3036                                     0x01,               // Length
3037                                     )
3038                                 IO (Decode16,
3039                                     0x0C50,             // Range Minimum
3040                                     0x0C50,             // Range Maximum
3041                                     0x00,               // Alignment
3042                                     0x02,               // Length
3043                                     )
3044                                 IO (Decode16,
3045                                     0x0C52,             // Range Minimum
3046                                     0x0C52,             // Range Maximum
3047                                     0x00,               // Alignment
3048                                     0x01,               // Length
3049                                     )
3050                                 IO (Decode16,
3051                                     0x0C6C,             // Range Minimum
3052                                     0x0C6C,             // Range Maximum
3053                                     0x00,               // Alignment
3054                                     0x01,               // Length
3055                                     )
3056                                 IO (Decode16,
3057                                     0x0C6F,             // Range Minimum
3058                                     0x0C6F,             // Range Maximum
3059                                     0x00,               // Alignment
3060                                     0x01,               // Length
3061                                     )
3062                                 IO (Decode16,
3063                                     0x0CD0,             // Range Minimum
3064                                     0x0CD0,             // Range Maximum
3065                                     0x00,               // Alignment
3066                                     0x02,               // Length
3067                                     )
3068                                 IO (Decode16,
3069                                     0x0CD2,             // Range Minimum
3070                                     0x0CD2,             // Range Maximum
3071                                     0x00,               // Alignment
3072                                     0x02,               // Length
3073                                     )
3074                                 IO (Decode16,
3075                                     0x0CD4,             // Range Minimum
3076                                     0x0CD4,             // Range Maximum
3077                                     0x00,               // Alignment
3078                                     0x02,               // Length
3079                                     )
3080                                 IO (Decode16,
3081                                     0x0CD6,             // Range Minimum
3082                                     0x0CD6,             // Range Maximum
3083                                     0x00,               // Alignment
3084                                     0x02,               // Length
3085                                     )
3086                                 IO (Decode16,
3087                                     0x0CD8,             // Range Minimum
3088                                     0x0CD8,             // Range Maximum
3089                                     0x00,               // Alignment
3090                                     0x08,               // Length
3091                                     )
3092                                 IO (Decode16,
3093                                     0x0000,             // Range Minimum
3094                                     0x0000,             // Range Maximum
3095                                     0x00,               // Alignment
3096                                     0x00,               // Length
3097                                     _Y11)
3098                                 IO (Decode16,
3099                                     0x0000,             // Range Minimum
3100                                     0x0000,             // Range Maximum
3101                                     0x00,               // Alignment
3102                                     0x00,               // Length
3103                                     _Y13)
3104                                 IO (Decode16,
3105                                     0x0000,             // Range Minimum
3106                                     0x0000,             // Range Maximum
3107                                     0x00,               // Alignment
3108                                     0x00,               // Length
3109                                     _Y12)
3110                                 IO (Decode16,
3111                                     0x0900,             // Range Minimum
3112                                     0x0900,             // Range Maximum
3113                                     0x00,               // Alignment
3114                                     0x10,               // Length
3115                                     )
3116                                 IO (Decode16,
3117                                     0x0910,             // Range Minimum
3118                                     0x0910,             // Range Maximum
3119                                     0x00,               // Alignment
3120                                     0x10,               // Length
3121                                     )
3122                                 IO (Decode16,
3123                                     0x0060,             // Range Minimum
3124                                     0x0060,             // Range Maximum
3125                                     0x00,               // Alignment
3126                                     0x00,               // Length
3127                                     )
3128                                 IO (Decode16,
3129                                     0x0064,             // Range Minimum
3130                                     0x0064,             // Range Maximum
3131                                     0x00,               // Alignment
3132                                     0x00,               // Length
3133                                     )
3134                                 Memory32Fixed (ReadWrite,
3135                                     0x00000000,         // Address Base
3136                                     0x00000000,         // Address Length
3137                                     _Y14)
3138                                 Memory32Fixed (ReadWrite,
3139                                     0xFEC01000,         // Address Base
3140                                     0x00001000,         // Address Length
3141                                     )
3142                                 Memory32Fixed (ReadWrite,
3143                                     0xFEDC0000,         // Address Base
3144                                     0x00001000,         // Address Length
3145                                     )
3146                                 Memory32Fixed (ReadWrite,
3147                                     0xFEE00000,         // Address Base
3148                                     0x00001000,         // Address Length
3149                                     )
3150                                 Memory32Fixed (ReadWrite,
3151                                     0xFED80000,         // Address Base
3152                                     0x00010000,         // Address Length
3153                                     )
3154                                 Memory32Fixed (ReadWrite,
3155                                     0x00000000,         // Address Base
3156                                     0x00000000,         // Address Length
3157                                     _Y15)
3158                                 Memory32Fixed (ReadWrite,
3159                                     0x00000000,         // Address Base
3160                                     0x00000000,         // Address Length
3161                                     _Y16)
3162                                 Memory32Fixed (ReadWrite,
3163                                     0x00000000,         // Address Base
3164                                     0x00000000,         // Address Length
3165                                     _Y17)
3166                             })
3167                             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3168                             {
3169                                 CreateWordField (CRS, \_SB.PCI0.S900._Y11._MIN, PBB)  // _MIN: Minimum Base Address
3170                                 CreateWordField (CRS, \_SB.PCI0.S900._Y11._MAX, PBH)  // _MAX: Maximum Base Address
3171                                 CreateByteField (CRS, \_SB.PCI0.S900._Y11._LEN, PML)  // _LEN: Length
3172                                 PBB = PMBS /* \PMBS */
3173                                 PBH = PMBS /* \PMBS */
3174                                 PML = PMLN /* \PMLN */
3175                                 If (SMBB)
3176                                 {
3177                                     CreateWordField (CRS, \_SB.PCI0.S900._Y12._MIN, SMB1)  // _MIN: Minimum Base Address
3178                                     CreateWordField (CRS, \_SB.PCI0.S900._Y12._MAX, SMH1)  // _MAX: Maximum Base Address
3179                                     CreateByteField (CRS, \_SB.PCI0.S900._Y12._LEN, SML1)  // _LEN: Length
3180                                     SMB1 = SMBB /* \SMBB */
3181                                     SMH1 = SMBB /* \SMBB */
3182                                     SML1 = SMBL /* \SMBL */
3183                                     CreateWordField (CRS, \_SB.PCI0.S900._Y13._MIN, SMBZ)  // _MIN: Minimum Base Address
3184                                     CreateWordField (CRS, \_SB.PCI0.S900._Y13._MAX, SMH0)  // _MAX: Maximum Base Address
3185                                     CreateByteField (CRS, \_SB.PCI0.S900._Y13._LEN, SML0)  // _LEN: Length
3186                                     SMBZ = SMB0 /* \SMB0 */
3187                                     SMH0 = SMB0 /* \SMB0 */
3188                                     SML0 = SMBM /* \SMBM */
3189                                 }
3190 
3191                                 If (APCB)
3192                                 {
3193                                     CreateDWordField (CRS, \_SB.PCI0.S900._Y14._BAS, APB)  // _BAS: Base Address
3194                                     CreateDWordField (CRS, \_SB.PCI0.S900._Y14._LEN, APL)  // _LEN: Length
3195                                     APB = APCB /* \APCB */
3196                                     APL = APCL /* \APCL */
3197                                 }
3198 
3199                                 CreateDWordField (CRS, \_SB.PCI0.S900._Y15._BAS, SPIB)  // _BAS: Base Address
3200                                 CreateDWordField (CRS, \_SB.PCI0.S900._Y15._LEN, SPIL)  // _LEN: Length
3201                                 SPIB = 0xFEC10000
3202                                 SPIL = 0x1000
3203                                 If (WDTB)
3204                                 {
3205                                     CreateDWordField (CRS, \_SB.PCI0.S900._Y16._BAS, WDTB)  // _BAS: Base Address
3206                                     CreateDWordField (CRS, \_SB.PCI0.S900._Y16._LEN, WDTL)  // _LEN: Length
3207                                     WDTB = \WDTB
3208                                     WDTL = \WDTL
3209                                 }
3210 
3211                                 CreateDWordField (CRS, \_SB.PCI0.S900._Y17._BAS, ROMB)  // _BAS: Base Address
3212                                 CreateDWordField (CRS, \_SB.PCI0.S900._Y17._LEN, ROML)  // _LEN: Length
3213                                 ROMB = 0xFF000000
3214                                 ROML = 0x01000000
3215                                 Return (CRS) /* \_SB_.PCI0.S900.CRS_ */
3216                             }
3217                         }
3218                     }
3219                 }
3220 
3221                 Scope (\_SB)
3222                 {
3223                     Scope (PCI0)
3224                     {
3225                         Scope (SBRG)
3226                         {
3227                             Method (RRIO, 4, NotSerialized)
3228                             {
3229                                 Debug = "RRIO"
3230                             }
3231 
3232                             Method (RDMA, 3, NotSerialized)
3233                             {
3234                                 Debug = "rDMA"
3235                             }
3236                         }
3237                     }
3238                 }
3239 
3240                 Device (PS2K)
3241                 {
3242                     Name (_HID, "MSFT0001")  // _HID: Hardware ID
3243                     Name (_CID, EisaId ("PNP0303") /* IBM Enhanced Keyboard (101/102-key, PS/2 Mouse) */)  // _CID: Compatible ID
3244                     Method (_STA, 0, NotSerialized)  // _STA: Status
3245                     {
3246                         Return (0x0F)
3247                     }
3248 
3249                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
3250                     {
3251                         IO (Decode16,
3252                             0x0060,             // Range Minimum
3253                             0x0060,             // Range Maximum
3254                             0x00,               // Alignment
3255                             0x01,               // Length
3256                             )
3257                         IO (Decode16,
3258                             0x0064,             // Range Minimum
3259                             0x0064,             // Range Maximum
3260                             0x00,               // Alignment
3261                             0x01,               // Length
3262                             )
3263                         IRQNoFlags ()
3264                             {1}
3265                     })
3266                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3267                     {
3268                         StartDependentFn (0x00, 0x00)
3269                         {
3270                             IO (Decode16,
3271                                 0x0060,             // Range Minimum
3272                                 0x0060,             // Range Maximum
3273                                 0x00,               // Alignment
3274                                 0x01,               // Length
3275                                 )
3276                             IO (Decode16,
3277                                 0x0064,             // Range Minimum
3278                                 0x0064,             // Range Maximum
3279                                 0x00,               // Alignment
3280                                 0x01,               // Length
3281                                 )
3282                             IRQNoFlags ()
3283                                 {1}
3284                         }
3285                         EndDependentFn ()
3286                     })
3287                     Method (_PSW, 1, NotSerialized)  // _PSW: Power State Wake
3288                     {
3289                         KBFG = Arg0
3290                     }
3291                 }
3292 
3293                 Scope (\)
3294                 {
3295                     Name (KBFG, One)
3296                 }
3297 
3298                 Device (PS2M)
3299                 {
3300                     Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
3301                     {
3302                         Return ("MSFT0003")
3303                     }
3304 
3305                     Method (_CID, 0, NotSerialized)  // _CID: Compatible ID
3306                     {
3307                         Return (0x130FD041)
3308                     }
3309 
3310                     Method (_STA, 0, NotSerialized)  // _STA: Status
3311                     {
3312                         If ((DA18 == One))
3313                         {
3314                             Return (Zero)
3315                         }
3316                         ElseIf ((TPVD == Zero))
3317                         {
3318                             If ((PSMS == Zero))
3319                             {
3320                                 Return (0x0B)
3321                             }
3322                             Else
3323                             {
3324                                 Return (0x0F)
3325                             }
3326                         }
3327                         Else
3328                         {
3329                             Return (Zero)
3330                         }
3331                     }
3332 
3333                     Name (CRS1, ResourceTemplate ()
3334                     {
3335                         IRQNoFlags ()
3336                             {12}
3337                     })
3338                     Name (CRS2, ResourceTemplate ()
3339                     {
3340                         IO (Decode16,
3341                             0x0060,             // Range Minimum
3342                             0x0060,             // Range Maximum
3343                             0x00,               // Alignment
3344                             0x01,               // Length
3345                             )
3346                         IO (Decode16,
3347                             0x0064,             // Range Minimum
3348                             0x0064,             // Range Maximum
3349                             0x00,               // Alignment
3350                             0x01,               // Length
3351                             )
3352                         IRQNoFlags ()
3353                             {12}
3354                     })
3355                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3356                     {
3357                         If ((IOST & 0x0400))
3358                         {
3359                             Return (CRS1) /* \_SB_.PCI0.SBRG.PS2M.CRS1 */
3360                         }
3361                         Else
3362                         {
3363                             Return (CRS2) /* \_SB_.PCI0.SBRG.PS2M.CRS2 */
3364                         }
3365                     }
3366 
3367                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3368                     {
3369                         StartDependentFn (0x00, 0x00)
3370                         {
3371                             IRQNoFlags ()
3372                                 {12}
3373                         }
3374                         EndDependentFn ()
3375                     })
3376                     Method (_PSW, 1, NotSerialized)  // _PSW: Power State Wake
3377                     {
3378                         MSFG = Arg0
3379                     }
3380                 }
3381 
3382                 Device (AVC0)
3383                 {
3384                     Name (_HID, EisaId ("STU1B01"))  // _HID: Hardware ID
3385                     Name (_CID, Package (0x02)  // _CID: Compatible ID
3386                     {
3387                         EisaId ("STU1B01"), 
3388                         EisaId ("PNP0F13") /* PS/2 Mouse */
3389                     })
3390                     Method (_STA, 0, NotSerialized)  // _STA: Status
3391                     {
3392                         If ((DA18 == One))
3393                         {
3394                             Return (Zero)
3395                         }
3396                         ElseIf ((TPVD == 0x03))
3397                         {
3398                             If ((PSMS == Zero))
3399                             {
3400                                 Return (0x0B)
3401                             }
3402                             Else
3403                             {
3404                                 Return (0x0F)
3405                             }
3406                         }
3407                         Else
3408                         {
3409                             Return (Zero)
3410                         }
3411                     }
3412 
3413                     Name (CRS1, ResourceTemplate ()
3414                     {
3415                         IRQNoFlags ()
3416                             {12}
3417                     })
3418                     Name (CRS2, ResourceTemplate ()
3419                     {
3420                         IO (Decode16,
3421                             0x0060,             // Range Minimum
3422                             0x0060,             // Range Maximum
3423                             0x00,               // Alignment
3424                             0x01,               // Length
3425                             )
3426                         IO (Decode16,
3427                             0x0064,             // Range Minimum
3428                             0x0064,             // Range Maximum
3429                             0x00,               // Alignment
3430                             0x01,               // Length
3431                             )
3432                         IRQNoFlags ()
3433                             {12}
3434                     })
3435                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3436                     {
3437                         If ((IOST & 0x0400))
3438                         {
3439                             Return (CRS1) /* \_SB_.PCI0.SBRG.AVC0.CRS1 */
3440                         }
3441                         Else
3442                         {
3443                             Return (CRS2) /* \_SB_.PCI0.SBRG.AVC0.CRS2 */
3444                         }
3445                     }
3446 
3447                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3448                     {
3449                         StartDependentFn (0x00, 0x00)
3450                         {
3451                             IRQNoFlags ()
3452                                 {12}
3453                         }
3454                         EndDependentFn ()
3455                     })
3456                 }
3457 
3458                 Device (AVC1)
3459                 {
3460                     Name (_HID, EisaId ("STU1B06"))  // _HID: Hardware ID
3461                     Name (_CID, Package (0x02)  // _CID: Compatible ID
3462                     {
3463                         EisaId ("STU1B06"), 
3464                         EisaId ("PNP0F13") /* PS/2 Mouse */
3465                     })
3466                     Method (_STA, 0, NotSerialized)  // _STA: Status
3467                     {
3468                         If ((DA18 == One))
3469                         {
3470                             Return (Zero)
3471                         }
3472                         ElseIf ((TPVD == 0x04))
3473                         {
3474                             If ((PSMS == Zero))
3475                             {
3476                                 Return (0x0B)
3477                             }
3478                             Else
3479                             {
3480                                 Return (0x0F)
3481                             }
3482                         }
3483                         Else
3484                         {
3485                             Return (Zero)
3486                         }
3487                     }
3488 
3489                     Name (CRS1, ResourceTemplate ()
3490                     {
3491                         IRQNoFlags ()
3492                             {12}
3493                     })
3494                     Name (CRS2, ResourceTemplate ()
3495                     {
3496                         IO (Decode16,
3497                             0x0060,             // Range Minimum
3498                             0x0060,             // Range Maximum
3499                             0x00,               // Alignment
3500                             0x01,               // Length
3501                             )
3502                         IO (Decode16,
3503                             0x0064,             // Range Minimum
3504                             0x0064,             // Range Maximum
3505                             0x00,               // Alignment
3506                             0x01,               // Length
3507                             )
3508                         IRQNoFlags ()
3509                             {12}
3510                     })
3511                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3512                     {
3513                         If ((IOST & 0x0400))
3514                         {
3515                             Return (CRS1) /* \_SB_.PCI0.SBRG.AVC1.CRS1 */
3516                         }
3517                         Else
3518                         {
3519                             Return (CRS2) /* \_SB_.PCI0.SBRG.AVC1.CRS2 */
3520                         }
3521                     }
3522 
3523                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3524                     {
3525                         StartDependentFn (0x00, 0x00)
3526                         {
3527                             IRQNoFlags ()
3528                                 {12}
3529                         }
3530                         EndDependentFn ()
3531                     })
3532                 }
3533 
3534                 Device (AVC2)
3535                 {
3536                     Name (_HID, EisaId ("STU0404"))  // _HID: Hardware ID
3537                     Name (_CID, Package (0x02)  // _CID: Compatible ID
3538                     {
3539                         EisaId ("STU0404"), 
3540                         EisaId ("PNP0F13") /* PS/2 Mouse */
3541                     })
3542                     Method (_STA, 0, NotSerialized)  // _STA: Status
3543                     {
3544                         If ((DA18 == One))
3545                         {
3546                             Return (Zero)
3547                         }
3548                         ElseIf ((TPVD == 0x06))
3549                         {
3550                             If ((PSMS == Zero))
3551                             {
3552                                 Return (0x0B)
3553                             }
3554                             Else
3555                             {
3556                                 Return (0x0F)
3557                             }
3558                         }
3559                         Else
3560                         {
3561                             Return (Zero)
3562                         }
3563                     }
3564 
3565                     Name (CRS1, ResourceTemplate ()
3566                     {
3567                         IRQNoFlags ()
3568                             {12}
3569                     })
3570                     Name (CRS2, ResourceTemplate ()
3571                     {
3572                         IO (Decode16,
3573                             0x0060,             // Range Minimum
3574                             0x0060,             // Range Maximum
3575                             0x00,               // Alignment
3576                             0x01,               // Length
3577                             )
3578                         IO (Decode16,
3579                             0x0064,             // Range Minimum
3580                             0x0064,             // Range Maximum
3581                             0x00,               // Alignment
3582                             0x01,               // Length
3583                             )
3584                         IRQNoFlags ()
3585                             {12}
3586                     })
3587                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3588                     {
3589                         If ((IOST & 0x0400))
3590                         {
3591                             Return (CRS1) /* \_SB_.PCI0.SBRG.AVC2.CRS1 */
3592                         }
3593                         Else
3594                         {
3595                             Return (CRS2) /* \_SB_.PCI0.SBRG.AVC2.CRS2 */
3596                         }
3597                     }
3598 
3599                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3600                     {
3601                         StartDependentFn (0x00, 0x00)
3602                         {
3603                             IRQNoFlags ()
3604                                 {12}
3605                         }
3606                         EndDependentFn ()
3607                     })
3608                 }
3609 
3610                 Device (SYN0)
3611                 {
3612                     Name (_HID, EisaId ("SYN2E01"))  // _HID: Hardware ID
3613                     Name (_CID, Package (0x03)  // _CID: Compatible ID
3614                     {
3615                         EisaId ("SYN2E00"), 
3616                         EisaId ("SYN0002"), 
3617                         EisaId ("PNP0F13") /* PS/2 Mouse */
3618                     })
3619                     Method (_STA, 0, NotSerialized)  // _STA: Status
3620                     {
3621                         If ((DA18 == One))
3622                         {
3623                             Return (Zero)
3624                         }
3625                         ElseIf ((TPVD == 0x02))
3626                         {
3627                             If ((PSMS == Zero))
3628                             {
3629                                 Return (0x0B)
3630                             }
3631                             Else
3632                             {
3633                                 Return (0x0F)
3634                             }
3635                         }
3636                         Else
3637                         {
3638                             Return (Zero)
3639                         }
3640                     }
3641 
3642                     Name (CRS1, ResourceTemplate ()
3643                     {
3644                         IRQNoFlags ()
3645                             {12}
3646                     })
3647                     Name (CRS2, ResourceTemplate ()
3648                     {
3649                         IO (Decode16,
3650                             0x0060,             // Range Minimum
3651                             0x0060,             // Range Maximum
3652                             0x00,               // Alignment
3653                             0x01,               // Length
3654                             )
3655                         IO (Decode16,
3656                             0x0064,             // Range Minimum
3657                             0x0064,             // Range Maximum
3658                             0x00,               // Alignment
3659                             0x01,               // Length
3660                             )
3661                         IRQNoFlags ()
3662                             {12}
3663                     })
3664                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3665                     {
3666                         If ((IOST & 0x0400))
3667                         {
3668                             Return (CRS1) /* \_SB_.PCI0.SBRG.SYN0.CRS1 */
3669                         }
3670                         Else
3671                         {
3672                             Return (CRS2) /* \_SB_.PCI0.SBRG.SYN0.CRS2 */
3673                         }
3674                     }
3675 
3676                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3677                     {
3678                         StartDependentFn (0x00, 0x00)
3679                         {
3680                             IRQNoFlags ()
3681                                 {12}
3682                         }
3683                         EndDependentFn ()
3684                     })
3685                 }
3686 
3687                 Device (SYN1)
3688                 {
3689                     Name (_HID, EisaId ("SYN2902"))  // _HID: Hardware ID
3690                     Name (_CID, Package (0x03)  // _CID: Compatible ID
3691                     {
3692                         EisaId ("SYN2900"), 
3693                         EisaId ("SYN0002"), 
3694                         EisaId ("PNP0F13") /* PS/2 Mouse */
3695                     })
3696                     Method (_STA, 0, NotSerialized)  // _STA: Status
3697                     {
3698                         If ((DA18 == One))
3699                         {
3700                             Return (Zero)
3701                         }
3702                         ElseIf ((TPVD == 0x05))
3703                         {
3704                             If ((PSMS == Zero))
3705                             {
3706                                 Return (0x0B)
3707                             }
3708                             Else
3709                             {
3710                                 Return (0x0F)
3711                             }
3712                         }
3713                         Else
3714                         {
3715                             Return (Zero)
3716                         }
3717                     }
3718 
3719                     Name (CRS1, ResourceTemplate ()
3720                     {
3721                         IRQNoFlags ()
3722                             {12}
3723                     })
3724                     Name (CRS2, ResourceTemplate ()
3725                     {
3726                         IO (Decode16,
3727                             0x0060,             // Range Minimum
3728                             0x0060,             // Range Maximum
3729                             0x00,               // Alignment
3730                             0x01,               // Length
3731                             )
3732                         IO (Decode16,
3733                             0x0064,             // Range Minimum
3734                             0x0064,             // Range Maximum
3735                             0x00,               // Alignment
3736                             0x01,               // Length
3737                             )
3738                         IRQNoFlags ()
3739                             {12}
3740                     })
3741                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3742                     {
3743                         If ((IOST & 0x0400))
3744                         {
3745                             Return (CRS1) /* \_SB_.PCI0.SBRG.SYN1.CRS1 */
3746                         }
3747                         Else
3748                         {
3749                             Return (CRS2) /* \_SB_.PCI0.SBRG.SYN1.CRS2 */
3750                         }
3751                     }
3752 
3753                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3754                     {
3755                         StartDependentFn (0x00, 0x00)
3756                         {
3757                             IRQNoFlags ()
3758                                 {12}
3759                         }
3760                         EndDependentFn ()
3761                     })
3762                 }
3763 
3764                 Device (ELAN)
3765                 {
3766                     Name (_HID, EisaId ("ETD0432"))  // _HID: Hardware ID
3767                     Name (_CID, Package (0x02)  // _CID: Compatible ID
3768                     {
3769                         EisaId ("ETD0000"), 
3770                         EisaId ("PNP0F13") /* PS/2 Mouse */
3771                     })
3772                     Method (_STA, 0, NotSerialized)  // _STA: Status
3773                     {
3774                         If ((DA18 == One))
3775                         {
3776                             Return (Zero)
3777                         }
3778                         ElseIf ((TPVD == One))
3779                         {
3780                             If ((PSMS == Zero))
3781                             {
3782                                 Return (0x0B)
3783                             }
3784                             Else
3785                             {
3786                                 Return (0x0F)
3787                             }
3788                         }
3789                         Else
3790                         {
3791                             Return (Zero)
3792                         }
3793                     }
3794 
3795                     Name (CRS1, ResourceTemplate ()
3796                     {
3797                         IRQNoFlags ()
3798                             {12}
3799                     })
3800                     Name (CRS2, ResourceTemplate ()
3801                     {
3802                         IO (Decode16,
3803                             0x0060,             // Range Minimum
3804                             0x0060,             // Range Maximum
3805                             0x00,               // Alignment
3806                             0x01,               // Length
3807                             )
3808                         IO (Decode16,
3809                             0x0064,             // Range Minimum
3810                             0x0064,             // Range Maximum
3811                             0x00,               // Alignment
3812                             0x01,               // Length
3813                             )
3814                         IRQNoFlags ()
3815                             {12}
3816                     })
3817                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3818                     {
3819                         If ((IOST & 0x0400))
3820                         {
3821                             Return (CRS1) /* \_SB_.PCI0.SBRG.ELAN.CRS1 */
3822                         }
3823                         Else
3824                         {
3825                             Return (CRS2) /* \_SB_.PCI0.SBRG.ELAN.CRS2 */
3826                         }
3827                     }
3828 
3829                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3830                     {
3831                         StartDependentFn (0x00, 0x00)
3832                         {
3833                             IRQNoFlags ()
3834                                 {12}
3835                         }
3836                         EndDependentFn ()
3837                     })
3838                 }
3839 
3840                 Device (PXR1)
3841                 {
3842                     Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
3843                     {
3844                         Return ("PXRD0001")
3845                     }
3846 
3847                     Method (_CID, 0, NotSerialized)  // _CID: Compatible ID
3848                     {
3849                         Return (0x130FD041)
3850                     }
3851 
3852                     Method (_STA, 0, NotSerialized)  // _STA: Status
3853                     {
3854                         If ((TPVD == 0x0A))
3855                         {
3856                             If ((PSMS == Zero))
3857                             {
3858                                 Return (0x0B)
3859                             }
3860                             Else
3861                             {
3862                                 Return (0x0F)
3863                             }
3864                         }
3865                         Else
3866                         {
3867                             Return (Zero)
3868                         }
3869                     }
3870 
3871                     Name (CRS1, ResourceTemplate ()
3872                     {
3873                         IRQNoFlags ()
3874                             {12}
3875                     })
3876                     Name (CRS2, ResourceTemplate ()
3877                     {
3878                         IO (Decode16,
3879                             0x0060,             // Range Minimum
3880                             0x0060,             // Range Maximum
3881                             0x00,               // Alignment
3882                             0x01,               // Length
3883                             )
3884                         IO (Decode16,
3885                             0x0064,             // Range Minimum
3886                             0x0064,             // Range Maximum
3887                             0x00,               // Alignment
3888                             0x01,               // Length
3889                             )
3890                         IRQNoFlags ()
3891                             {12}
3892                     })
3893                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3894                     {
3895                         If ((IOST & 0x0400))
3896                         {
3897                             Return (CRS1) /* \_SB_.PCI0.SBRG.PXR1.CRS1 */
3898                         }
3899                         Else
3900                         {
3901                             Return (CRS2) /* \_SB_.PCI0.SBRG.PXR1.CRS2 */
3902                         }
3903                     }
3904 
3905                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3906                     {
3907                         StartDependentFn (0x00, 0x00)
3908                         {
3909                             IRQNoFlags ()
3910                                 {12}
3911                         }
3912                         EndDependentFn ()
3913                     })
3914                 }
3915 
3916                 Device (PXR2)
3917                 {
3918                     Name (_HID, EisaId ("PXR0001"))  // _HID: Hardware ID
3919                     Name (_CID, Package (0x02)  // _CID: Compatible ID
3920                     {
3921                         EisaId ("PXR0000"), 
3922                         EisaId ("PNP0F13") /* PS/2 Mouse */
3923                     })
3924                     Method (_STA, 0, NotSerialized)  // _STA: Status
3925                     {
3926                         If ((TPVD == 0x0E))
3927                         {
3928                             If ((PSMS == Zero))
3929                             {
3930                                 Return (0x0B)
3931                             }
3932                             Else
3933                             {
3934                                 Return (0x0F)
3935                             }
3936                         }
3937                         Else
3938                         {
3939                             Return (Zero)
3940                         }
3941                     }
3942 
3943                     Name (CRS1, ResourceTemplate ()
3944                     {
3945                         IRQNoFlags ()
3946                             {12}
3947                     })
3948                     Name (CRS2, ResourceTemplate ()
3949                     {
3950                         IO (Decode16,
3951                             0x0060,             // Range Minimum
3952                             0x0060,             // Range Maximum
3953                             0x00,               // Alignment
3954                             0x01,               // Length
3955                             )
3956                         IO (Decode16,
3957                             0x0064,             // Range Minimum
3958                             0x0064,             // Range Maximum
3959                             0x00,               // Alignment
3960                             0x01,               // Length
3961                             )
3962                         IRQNoFlags ()
3963                             {12}
3964                     })
3965                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
3966                     {
3967                         If ((IOST & 0x0400))
3968                         {
3969                             Return (CRS1) /* \_SB_.PCI0.SBRG.PXR2.CRS1 */
3970                         }
3971                         Else
3972                         {
3973                             Return (CRS2) /* \_SB_.PCI0.SBRG.PXR2.CRS2 */
3974                         }
3975                     }
3976 
3977                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
3978                     {
3979                         StartDependentFn (0x00, 0x00)
3980                         {
3981                             IRQNoFlags ()
3982                                 {12}
3983                         }
3984                         EndDependentFn ()
3985                     })
3986                 }
3987 
3988                 Scope (\)
3989                 {
3990                     Name (MSFG, One)
3991                 }
3992             }
3993         }
3994     }
3995 
3996     Scope (_GPE)
3997     {
3998         Method (_L08, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
3999         {
4000             Notify (\_SB.PCI0.GPP0, 0x02) // Device Wake
4001             Notify (\_SB.PCI0.GPP1, 0x02) // Device Wake
4002             Notify (\_SB.PCI0.GPP2, 0x02) // Device Wake
4003             Notify (\_SB.PCI0.GPP3, 0x02) // Device Wake
4004             Notify (\_SB.PCI0.GPP4, 0x02) // Device Wake
4005             Notify (\_SB.PCI0.GPP5, 0x02) // Device Wake
4006             Notify (\_SB.PCI0.GPP6, 0x02) // Device Wake
4007             Notify (\_SB.PCI0.GP18, 0x02) // Device Wake
4008             Notify (\_SB.PWRB, 0x02) // Device Wake
4009         }
4010 
4011         Method (_L19, 0, NotSerialized)  // _Lxx: Level-Triggered GPE, xx=0x00-0xFF
4012         {
4013             Notify (\_SB.PCI0.GP17, 0x02) // Device Wake
4014             Notify (\_SB.PCI0.GP17.XHC0, 0x02) // Device Wake
4015             Notify (\_SB.PCI0.GP17.XHC1, 0x02) // Device Wake
4016             Notify (\_SB.PWRB, 0x02) // Device Wake
4017         }
4018     }
4019 
4020     Scope (_SB)
4021     {
4022         Device (PWRB)
4023         {
4024             Name (_HID, EisaId ("PNP0C0C") /* Power Button Device */)  // _HID: Hardware ID
4025             Name (_UID, 0xAA)  // _UID: Unique ID
4026             Name (_STA, 0x0B)  // _STA: Status
4027         }
4028     }
4029 
4030     Name (_S0, Package (0x04)  // _S0_: S0 System State
4031     {
4032         Zero, 
4033         Zero, 
4034         Zero, 
4035         Zero
4036     })
4037     Name (_S3, Package (0x04)  // _S3_: S3 System State
4038     {
4039         0x03, 
4040         Zero, 
4041         Zero, 
4042         Zero
4043     })
4044     Name (_S4, Package (0x04)  // _S4_: S4 System State
4045     {
4046         0x04, 
4047         Zero, 
4048         Zero, 
4049         Zero
4050     })
4051     Name (_S5, Package (0x04)  // _S5_: S5 System State
4052     {
4053         0x05, 
4054         Zero, 
4055         Zero, 
4056         Zero
4057     })
4058     Method (_PTS, 1, NotSerialized)  // _PTS: Prepare To Sleep
4059     {
4060         If (Arg0)
4061         {
4062             \_SB.TPM.TPTS (Arg0)
4063             SPTS (Arg0)
4064             MPTS (Arg0)
4065             \_SB.PCI0.NPTS (Arg0)
4066         }
4067     }
4068 
4069     Method (_WAK, 1, NotSerialized)  // _WAK: Wake
4070     {
4071         DBG8 = (Arg0 << 0x04)
4072         \_SB.PCI0.NWAK (Arg0)
4073         If (((Arg0 == 0x03) || (Arg0 == 0x04)))
4074         {
4075             If ((PICM != Zero))
4076             {
4077                 \_SB.PCI0.NAPE ()
4078             }
4079         }
4080 
4081         MWAK (Arg0)
4082         DBG8 = (Arg0 << 0x04)
4083         SWAK (Arg0)
4084         If ((Arg0 == 0x04))
4085         {
4086             \_SB.PCI0.SBRG.EC0.XSEC = \_SB.PCI0.SBRG.EC0.OSEC
4087         }
4088 
4089         Return (WAKP) /* \WAKP */
4090     }
4091 
4092     Scope (_PR)
4093     {
4094         OperationRegion (SSDT, SystemMemory, 0xFFFF0000, 0xFFFF)
4095         Name (DCOR, 0x02)
4096         Name (TBLD, 0x04)
4097         Name (NPSS, 0x05)
4098         Name (HNDL, 0x80000000)
4099         Name (APSS, Package (0x0A)
4100         {
4101             Package (0x06)
4102             {
4103                 0xFFFF, 
4104                 0xFFFF, 
4105                 0xFFFF, 
4106                 0xFFFF, 
4107                 0xFFFF, 
4108                 0xFFFF
4109             }, 
4110 
4111             Package (0x06)
4112             {
4113                 0xFFFF, 
4114                 0xFFFF, 
4115                 0xFFFF, 
4116                 0xFFFF, 
4117                 0xFFFF, 
4118                 0xFFFF
4119             }, 
4120 
4121             Package (0x06)
4122             {
4123                 0xFFFF, 
4124                 0xFFFF, 
4125                 0xFFFF, 
4126                 0xFFFF, 
4127                 0xFFFF, 
4128                 0xFFFF
4129             }, 
4130 
4131             Package (0x06)
4132             {
4133                 0xFFFF, 
4134                 0xFFFF, 
4135                 0xFFFF, 
4136                 0xFFFF, 
4137                 0xFFFF, 
4138                 0xFFFF
4139             }, 
4140 
4141             Package (0x06)
4142             {
4143                 0xFFFF, 
4144                 0xFFFF, 
4145                 0xFFFF, 
4146                 0xFFFF, 
4147                 0xFFFF, 
4148                 0xFFFF
4149             }, 
4150 
4151             Package (0x06)
4152             {
4153                 0xFFFF, 
4154                 0xFFFF, 
4155                 0xFFFF, 
4156                 0xFFFF, 
4157                 0xFFFF, 
4158                 0xFFFF
4159             }, 
4160 
4161             Package (0x06)
4162             {
4163                 0xFFFF, 
4164                 0xFFFF, 
4165                 0xFFFF, 
4166                 0xFFFF, 
4167                 0xFFFF, 
4168                 0xFFFF
4169             }, 
4170 
4171             Package (0x06)
4172             {
4173                 0xFFFF, 
4174                 0xFFFF, 
4175                 0xFFFF, 
4176                 0xFFFF, 
4177                 0xFFFF, 
4178                 0xFFFF
4179             }, 
4180 
4181             Package (0x06)
4182             {
4183                 0xFFFF, 
4184                 0xFFFF, 
4185                 0xFFFF, 
4186                 0xFFFF, 
4187                 0xFFFF, 
4188                 0xFFFF
4189             }, 
4190 
4191             Package (0x06)
4192             {
4193                 0xFFFF, 
4194                 0xFFFF, 
4195                 0xFFFF, 
4196                 0xFFFF, 
4197                 0xFFFF, 
4198                 0xFFFF
4199             }
4200         })
4201         Processor (P000, 0x01, 0x00000810, 0x06)
4202         {
4203             Name (TYPE, 0x80000000)
4204             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4205             {
4206                 CreateDWordField (Arg0, 0x08, DAT0)
4207                 TYPE = DAT0 /* \_PR_.P000._PDC.DAT0 */
4208                 If (((TBLD == Zero) && (NPSS != Zero)))
4209                 {
4210                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4211                     {
4212                         TBLD = One
4213                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4214                     }
4215                 }
4216             }
4217         }
4218 
4219         Processor (P001, 0x02, 0x00000810, 0x06)
4220         {
4221             Name (TYPE, 0x80000000)
4222             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4223             {
4224                 CreateDWordField (Arg0, 0x08, DAT0)
4225                 TYPE = DAT0 /* \_PR_.P001._PDC.DAT0 */
4226                 If (((TBLD == Zero) && (NPSS != Zero)))
4227                 {
4228                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4229                     {
4230                         TBLD = One
4231                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4232                     }
4233                 }
4234             }
4235         }
4236 
4237         Processor (P002, 0x03, 0x00000810, 0x06)
4238         {
4239             Name (TYPE, 0x80000000)
4240             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4241             {
4242                 CreateDWordField (Arg0, 0x08, DAT0)
4243                 TYPE = DAT0 /* \_PR_.P002._PDC.DAT0 */
4244                 If (((TBLD == Zero) && (NPSS != Zero)))
4245                 {
4246                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4247                     {
4248                         TBLD = One
4249                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4250                     }
4251                 }
4252             }
4253         }
4254 
4255         Processor (P003, 0x04, 0x00000810, 0x06)
4256         {
4257             Name (TYPE, 0x80000000)
4258             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4259             {
4260                 CreateDWordField (Arg0, 0x08, DAT0)
4261                 TYPE = DAT0 /* \_PR_.P003._PDC.DAT0 */
4262                 If (((TBLD == Zero) && (NPSS != Zero)))
4263                 {
4264                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4265                     {
4266                         TBLD = One
4267                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4268                     }
4269                 }
4270             }
4271         }
4272 
4273         Processor (P004, 0x05, 0x00000810, 0x06)
4274         {
4275             Name (TYPE, 0x80000000)
4276             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4277             {
4278                 CreateDWordField (Arg0, 0x08, DAT0)
4279                 TYPE = DAT0 /* \_PR_.P004._PDC.DAT0 */
4280                 If (((TBLD == Zero) && (NPSS != Zero)))
4281                 {
4282                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4283                     {
4284                         TBLD = One
4285                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4286                     }
4287                 }
4288             }
4289         }
4290 
4291         Processor (P005, 0x06, 0x00000810, 0x06)
4292         {
4293             Name (TYPE, 0x80000000)
4294             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4295             {
4296                 CreateDWordField (Arg0, 0x08, DAT0)
4297                 TYPE = DAT0 /* \_PR_.P005._PDC.DAT0 */
4298                 If (((TBLD == Zero) && (NPSS != Zero)))
4299                 {
4300                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4301                     {
4302                         TBLD = One
4303                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4304                     }
4305                 }
4306             }
4307         }
4308 
4309         Processor (P006, 0x07, 0x00000810, 0x06)
4310         {
4311             Name (TYPE, 0x80000000)
4312             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4313             {
4314                 CreateDWordField (Arg0, 0x08, DAT0)
4315                 TYPE = DAT0 /* \_PR_.P006._PDC.DAT0 */
4316                 If (((TBLD == Zero) && (NPSS != Zero)))
4317                 {
4318                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4319                     {
4320                         TBLD = One
4321                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4322                     }
4323                 }
4324             }
4325         }
4326 
4327         Processor (P007, 0x08, 0x00000810, 0x06)
4328         {
4329             Name (TYPE, 0x80000000)
4330             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4331             {
4332                 CreateDWordField (Arg0, 0x08, DAT0)
4333                 TYPE = DAT0 /* \_PR_.P007._PDC.DAT0 */
4334                 If (((TBLD == Zero) && (NPSS != Zero)))
4335                 {
4336                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4337                     {
4338                         TBLD = One
4339                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4340                     }
4341                 }
4342             }
4343         }
4344 
4345         Processor (P008, 0x09, 0x00000810, 0x06)
4346         {
4347             Name (TYPE, 0x80000000)
4348             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4349             {
4350                 CreateDWordField (Arg0, 0x08, DAT0)
4351                 TYPE = DAT0 /* \_PR_.P008._PDC.DAT0 */
4352                 If (((TBLD == Zero) && (NPSS != Zero)))
4353                 {
4354                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4355                     {
4356                         TBLD = One
4357                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4358                     }
4359                 }
4360             }
4361         }
4362 
4363         Processor (P009, 0x0A, 0x00000810, 0x06)
4364         {
4365             Name (TYPE, 0x80000000)
4366             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4367             {
4368                 CreateDWordField (Arg0, 0x08, DAT0)
4369                 TYPE = DAT0 /* \_PR_.P009._PDC.DAT0 */
4370                 If (((TBLD == Zero) && (NPSS != Zero)))
4371                 {
4372                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4373                     {
4374                         TBLD = One
4375                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4376                     }
4377                 }
4378             }
4379         }
4380 
4381         Processor (P00A, 0x0B, 0x00000810, 0x06)
4382         {
4383             Name (TYPE, 0x80000000)
4384             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4385             {
4386                 CreateDWordField (Arg0, 0x08, DAT0)
4387                 TYPE = DAT0 /* \_PR_.P00A._PDC.DAT0 */
4388                 If (((TBLD == Zero) && (NPSS != Zero)))
4389                 {
4390                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4391                     {
4392                         TBLD = One
4393                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4394                     }
4395                 }
4396             }
4397         }
4398 
4399         Processor (P00B, 0x0C, 0x00000810, 0x06)
4400         {
4401             Name (TYPE, 0x80000000)
4402             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4403             {
4404                 CreateDWordField (Arg0, 0x08, DAT0)
4405                 TYPE = DAT0 /* \_PR_.P00B._PDC.DAT0 */
4406                 If (((TBLD == Zero) && (NPSS != Zero)))
4407                 {
4408                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4409                     {
4410                         TBLD = One
4411                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4412                     }
4413                 }
4414             }
4415         }
4416 
4417         Processor (P00C, 0x0D, 0x00000810, 0x06)
4418         {
4419             Name (TYPE, 0x80000000)
4420             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4421             {
4422                 CreateDWordField (Arg0, 0x08, DAT0)
4423                 TYPE = DAT0 /* \_PR_.P00C._PDC.DAT0 */
4424                 If (((TBLD == Zero) && (NPSS != Zero)))
4425                 {
4426                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4427                     {
4428                         TBLD = One
4429                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4430                     }
4431                 }
4432             }
4433         }
4434 
4435         Processor (P00D, 0x0E, 0x00000810, 0x06)
4436         {
4437             Name (TYPE, 0x80000000)
4438             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4439             {
4440                 CreateDWordField (Arg0, 0x08, DAT0)
4441                 TYPE = DAT0 /* \_PR_.P00D._PDC.DAT0 */
4442                 If (((TBLD == Zero) && (NPSS != Zero)))
4443                 {
4444                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4445                     {
4446                         TBLD = One
4447                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4448                     }
4449                 }
4450             }
4451         }
4452 
4453         Processor (P00E, 0x0F, 0x00000810, 0x06)
4454         {
4455             Name (TYPE, 0x80000000)
4456             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4457             {
4458                 CreateDWordField (Arg0, 0x08, DAT0)
4459                 TYPE = DAT0 /* \_PR_.P00E._PDC.DAT0 */
4460                 If (((TBLD == Zero) && (NPSS != Zero)))
4461                 {
4462                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4463                     {
4464                         TBLD = One
4465                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4466                     }
4467                 }
4468             }
4469         }
4470 
4471         Processor (P00F, 0x10, 0x00000810, 0x06)
4472         {
4473             Name (TYPE, 0x80000000)
4474             Method (_PDC, 1, NotSerialized)  // _PDC: Processor Driver Capabilities
4475             {
4476                 CreateDWordField (Arg0, 0x08, DAT0)
4477                 TYPE = DAT0 /* \_PR_.P00F._PDC.DAT0 */
4478                 If (((TBLD == Zero) && (NPSS != Zero)))
4479                 {
4480                     If ((((TYPE & 0x1B) == 0x1B) || (DCOR == Zero)))
4481                     {
4482                         TBLD = One
4483                         Load (SSDT, HNDL) /* \_PR_.HNDL */
4484                     }
4485                 }
4486             }
4487         }
4488     }
4489 
4490     Scope (_SB)
4491     {
4492         OperationRegion (PIRQ, SystemIO, 0x0C00, 0x02)
4493         Field (PIRQ, ByteAcc, NoLock, Preserve)
4494         {
4495             PIDX,   8, 
4496             PDAT,   8
4497         }
4498 
4499         IndexField (PIDX, PDAT, ByteAcc, NoLock, Preserve)
4500         {
4501             PIRA,   8, 
4502             PIRB,   8, 
4503             PIRC,   8, 
4504             PIRD,   8, 
4505             PIRE,   8, 
4506             PIRF,   8, 
4507             PIRG,   8, 
4508             PIRH,   8, 
4509             Offset (0x0C), 
4510             SIRA,   8, 
4511             SIRB,   8, 
4512             SIRC,   8, 
4513             SIRD,   8, 
4514             PIRS,   8, 
4515             Offset (0x13), 
4516             HDAD,   8, 
4517             Offset (0x17), 
4518             SDCL,   8, 
4519             Offset (0x1A), 
4520             SDIO,   8, 
4521             Offset (0x30), 
4522             USB1,   8, 
4523             Offset (0x34), 
4524             USB3,   8, 
4525             Offset (0x41), 
4526             SATA,   8, 
4527             Offset (0x62), 
4528             GIOC,   8, 
4529             Offset (0x70), 
4530             I2C0,   8, 
4531             I2C1,   8, 
4532             I2C2,   8, 
4533             I2C3,   8, 
4534             URT0,   8, 
4535             URT1,   8
4536         }
4537 
4538         OperationRegion (KBDD, SystemIO, 0x64, One)
4539         Field (KBDD, ByteAcc, NoLock, Preserve)
4540         {
4541             PD64,   8
4542         }
4543 
4544         Method (DSPI, 0, NotSerialized)
4545         {
4546             INTA (0x1F)
4547             INTB (0x1F)
4548             INTC (0x1F)
4549             INTD (0x1F)
4550             Local1 = PD64 /* \_SB_.PD64 */
4551             PIRE = 0x1F
4552             PIRF = 0x1F
4553             PIRG = 0x1F
4554             PIRH = 0x1F
4555         }
4556 
4557         Method (INTA, 1, NotSerialized)
4558         {
4559             PIRA = Arg0
4560             HDAD = Arg0
4561         }
4562 
4563         Method (INTB, 1, NotSerialized)
4564         {
4565             PIRB = Arg0
4566         }
4567 
4568         Method (INTC, 1, NotSerialized)
4569         {
4570             PIRC = Arg0
4571             USB1 = Arg0
4572             USB3 = Arg0
4573         }
4574 
4575         Method (INTD, 1, NotSerialized)
4576         {
4577             PIRD = Arg0
4578             SATA = Arg0
4579         }
4580 
4581         Name (BUFA, ResourceTemplate ()
4582         {
4583             IRQ (Level, ActiveLow, Shared, )
4584                 {15}
4585         })
4586         Name (IPRA, ResourceTemplate ()
4587         {
4588             IRQ (Level, ActiveLow, Shared, )
4589                 {5,10,11}
4590         })
4591         Name (IPRB, ResourceTemplate ()
4592         {
4593             IRQ (Level, ActiveLow, Shared, )
4594                 {5,10,11}
4595         })
4596         Name (IPRC, ResourceTemplate ()
4597         {
4598             IRQ (Level, ActiveLow, Shared, )
4599                 {5,10,11}
4600         })
4601         Name (IPRD, ResourceTemplate ()
4602         {
4603             IRQ (Level, ActiveLow, Shared, )
4604                 {5,10,11}
4605         })
4606         Device (LNKA)
4607         {
4608             Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */)  // _HID: Hardware ID
4609             Name (_UID, One)  // _UID: Unique ID
4610             Method (_STA, 0, NotSerialized)  // _STA: Status
4611             {
4612                 If (PIRA)
4613                 {
4614                     Return (0x0B)
4615                 }
4616                 Else
4617                 {
4618                     Return (0x09)
4619                 }
4620             }
4621 
4622             Method (_PRS, 0, NotSerialized)  // _PRS: Possible Resource Settings
4623             {
4624                 Return (PRSA) /* \_SB_.PRSA */
4625             }
4626 
4627             Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
4628             {
4629                 INTA (0x1F)
4630             }
4631 
4632             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
4633             {
4634                 CreateWordField (BUFA, One, IRQX)
4635                 IRQX = (One << PIRA) /* \_SB_.PIRA */
4636                 Return (BUFA) /* \_SB_.BUFA */
4637             }
4638 
4639             Method (_SRS, 1, NotSerialized)  // _SRS: Set Resource Settings
4640             {
4641                 CreateWordField (Arg0, One, IRA)
4642                 FindSetRightBit (IRA, Local0)
4643                 Local0--
4644                 INTA (Local0)
4645             }
4646         }
4647 
4648         Device (LNKB)
4649         {
4650             Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */)  // _HID: Hardware ID
4651             Name (_UID, 0x02)  // _UID: Unique ID
4652             Method (_STA, 0, NotSerialized)  // _STA: Status
4653             {
4654                 If (PIRB)
4655                 {
4656                     Return (0x0B)
4657                 }
4658                 Else
4659                 {
4660                     Return (0x09)
4661                 }
4662             }
4663 
4664             Method (_PRS, 0, NotSerialized)  // _PRS: Possible Resource Settings
4665             {
4666                 Return (PRSB) /* \_SB_.PRSB */
4667             }
4668 
4669             Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
4670             {
4671                 INTB (0x1F)
4672             }
4673 
4674             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
4675             {
4676                 CreateWordField (BUFA, One, IRQX)
4677                 IRQX = (One << PIRB) /* \_SB_.PIRB */
4678                 Return (BUFA) /* \_SB_.BUFA */
4679             }
4680 
4681             Method (_SRS, 1, NotSerialized)  // _SRS: Set Resource Settings
4682             {
4683                 CreateWordField (Arg0, One, IRA)
4684                 FindSetRightBit (IRA, Local0)
4685                 Local0--
4686                 INTB (Local0)
4687             }
4688         }
4689 
4690         Device (LNKC)
4691         {
4692             Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */)  // _HID: Hardware ID
4693             Name (_UID, 0x03)  // _UID: Unique ID
4694             Method (_STA, 0, NotSerialized)  // _STA: Status
4695             {
4696                 If (PIRC)
4697                 {
4698                     Return (0x0B)
4699                 }
4700                 Else
4701                 {
4702                     Return (0x09)
4703                 }
4704             }
4705 
4706             Method (_PRS, 0, NotSerialized)  // _PRS: Possible Resource Settings
4707             {
4708                 Return (PRSC) /* \_SB_.PRSC */
4709             }
4710 
4711             Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
4712             {
4713                 INTC (0x1F)
4714             }
4715 
4716             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
4717             {
4718                 CreateWordField (BUFA, One, IRQX)
4719                 IRQX = (One << PIRC) /* \_SB_.PIRC */
4720                 Return (BUFA) /* \_SB_.BUFA */
4721             }
4722 
4723             Method (_SRS, 1, NotSerialized)  // _SRS: Set Resource Settings
4724             {
4725                 CreateWordField (Arg0, One, IRA)
4726                 FindSetRightBit (IRA, Local0)
4727                 Local0--
4728                 INTC (Local0)
4729             }
4730         }
4731 
4732         Device (LNKD)
4733         {
4734             Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */)  // _HID: Hardware ID
4735             Name (_UID, 0x04)  // _UID: Unique ID
4736             Method (_STA, 0, NotSerialized)  // _STA: Status
4737             {
4738                 If (PIRD)
4739                 {
4740                     Return (0x0B)
4741                 }
4742                 Else
4743                 {
4744                     Return (0x09)
4745                 }
4746             }
4747 
4748             Method (_PRS, 0, NotSerialized)  // _PRS: Possible Resource Settings
4749             {
4750                 Return (PRSD) /* \_SB_.PRSD */
4751             }
4752 
4753             Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
4754             {
4755                 INTD (0x1F)
4756             }
4757 
4758             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
4759             {
4760                 CreateWordField (BUFA, One, IRQX)
4761                 IRQX = (One << PIRD) /* \_SB_.PIRD */
4762                 Return (BUFA) /* \_SB_.BUFA */
4763             }
4764 
4765             Method (_SRS, 1, NotSerialized)  // _SRS: Set Resource Settings
4766             {
4767                 CreateWordField (Arg0, One, IRA)
4768                 FindSetRightBit (IRA, Local0)
4769                 Local0--
4770                 INTD (Local0)
4771             }
4772         }
4773 
4774         Device (LNKE)
4775         {
4776             Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */)  // _HID: Hardware ID
4777             Name (_UID, 0x05)  // _UID: Unique ID
4778             Method (_STA, 0, NotSerialized)  // _STA: Status
4779             {
4780                 If (PIRE)
4781                 {
4782                     Return (0x0B)
4783                 }
4784                 Else
4785                 {
4786                     Return (0x09)
4787                 }
4788             }
4789 
4790             Method (_PRS, 0, NotSerialized)  // _PRS: Possible Resource Settings
4791             {
4792                 Return (PRSE) /* \_SB_.PRSE */
4793             }
4794 
4795             Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
4796             {
4797                 PIRE = 0x1F
4798             }
4799 
4800             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
4801             {
4802                 CreateWordField (BUFA, One, IRQX)
4803                 IRQX = (One << PIRE) /* \_SB_.PIRE */
4804                 Return (BUFA) /* \_SB_.BUFA */
4805             }
4806 
4807             Method (_SRS, 1, NotSerialized)  // _SRS: Set Resource Settings
4808             {
4809                 CreateWordField (Arg0, One, IRA)
4810                 FindSetRightBit (PIRE, Local0)
4811                 Local0--
4812                 PIRE = Local0
4813             }
4814         }
4815 
4816         Device (LNKF)
4817         {
4818             Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */)  // _HID: Hardware ID
4819             Name (_UID, 0x06)  // _UID: Unique ID
4820             Method (_STA, 0, NotSerialized)  // _STA: Status
4821             {
4822                 If (PIRF)
4823                 {
4824                     Return (0x0B)
4825                 }
4826                 Else
4827                 {
4828                     Return (0x09)
4829                 }
4830             }
4831 
4832             Method (_PRS, 0, NotSerialized)  // _PRS: Possible Resource Settings
4833             {
4834                 Return (PRSF) /* \_SB_.PRSF */
4835             }
4836 
4837             Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
4838             {
4839                 PIRF = 0x1F
4840             }
4841 
4842             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
4843             {
4844                 CreateWordField (BUFA, One, IRQX)
4845                 IRQX = (One << PIRF) /* \_SB_.PIRF */
4846                 Return (BUFA) /* \_SB_.BUFA */
4847             }
4848 
4849             Method (_SRS, 1, NotSerialized)  // _SRS: Set Resource Settings
4850             {
4851                 CreateWordField (Arg0, One, IRA)
4852                 FindSetRightBit (IRA, Local0)
4853                 Local0--
4854                 PIRF = Local0
4855             }
4856         }
4857 
4858         Device (LNKG)
4859         {
4860             Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */)  // _HID: Hardware ID
4861             Name (_UID, 0x07)  // _UID: Unique ID
4862             Method (_STA, 0, NotSerialized)  // _STA: Status
4863             {
4864                 If (PIRG)
4865                 {
4866                     Return (0x0B)
4867                 }
4868                 Else
4869                 {
4870                     Return (0x09)
4871                 }
4872             }
4873 
4874             Method (_PRS, 0, NotSerialized)  // _PRS: Possible Resource Settings
4875             {
4876                 Return (PRSG) /* \_SB_.PRSG */
4877             }
4878 
4879             Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
4880             {
4881                 PIRG = 0x1F
4882             }
4883 
4884             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
4885             {
4886                 CreateWordField (BUFA, One, IRQX)
4887                 IRQX = (One << PIRG) /* \_SB_.PIRG */
4888                 Return (BUFA) /* \_SB_.BUFA */
4889             }
4890 
4891             Method (_SRS, 1, NotSerialized)  // _SRS: Set Resource Settings
4892             {
4893                 CreateWordField (Arg0, One, IRA)
4894                 FindSetRightBit (IRA, Local0)
4895                 Local0--
4896                 PIRG = Local0
4897             }
4898         }
4899 
4900         Device (LNKH)
4901         {
4902             Name (_HID, EisaId ("PNP0C0F") /* PCI Interrupt Link Device */)  // _HID: Hardware ID
4903             Name (_UID, 0x08)  // _UID: Unique ID
4904             Method (_STA, 0, NotSerialized)  // _STA: Status
4905             {
4906                 If (PIRH)
4907                 {
4908                     Return (0x0B)
4909                 }
4910                 Else
4911                 {
4912                     Return (0x09)
4913                 }
4914             }
4915 
4916             Method (_PRS, 0, NotSerialized)  // _PRS: Possible Resource Settings
4917             {
4918                 Return (PRSH) /* \_SB_.PRSH */
4919             }
4920 
4921             Method (_DIS, 0, NotSerialized)  // _DIS: Disable Device
4922             {
4923                 PIRH = 0x1F
4924             }
4925 
4926             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
4927             {
4928                 CreateWordField (BUFA, One, IRQX)
4929                 IRQX = (One << PIRH) /* \_SB_.PIRH */
4930                 Return (BUFA) /* \_SB_.BUFA */
4931             }
4932 
4933             Method (_SRS, 1, NotSerialized)  // _SRS: Set Resource Settings
4934             {
4935                 CreateWordField (Arg0, One, IRA)
4936                 FindSetRightBit (IRA, Local0)
4937                 Local0--
4938                 PIRH = Local0
4939             }
4940         }
4941     }
4942 
4943     Name (OSTB, Ones)
4944     Name (TPOS, Zero)
4945     Name (LINX, Zero)
4946     Name (OSSP, Zero)
4947     Method (SEQL, 2, Serialized)
4948     {
4949         Local0 = SizeOf (Arg0)
4950         Local1 = SizeOf (Arg1)
4951         If ((Local0 != Local1))
4952         {
4953             Return (Zero)
4954         }
4955 
4956         Name (BUF0, Buffer (Local0){})
4957         BUF0 = Arg0
4958         Name (BUF1, Buffer (Local0){})
4959         BUF1 = Arg1
4960         Local2 = Zero
4961         While ((Local2 < Local0))
4962         {
4963             Local3 = DerefOf (BUF0 [Local2])
4964             Local4 = DerefOf (BUF1 [Local2])
4965             If ((Local3 != Local4))
4966             {
4967                 Return (Zero)
4968             }
4969 
4970             Local2++
4971         }
4972 
4973         Return (One)
4974     }
4975 
4976     Method (OSTP, 0, NotSerialized)
4977     {
4978         If ((OSTB == Ones))
4979         {
4980             If (CondRefOf (\_OSI, Local0))
4981             {
4982                 OSTB = Zero
4983                 TPOS = Zero
4984                 If (_OSI ("Windows 2001"))
4985                 {
4986                     OSTB = 0x08
4987                     TPOS = 0x08
4988                 }
4989 
4990                 If (_OSI ("Windows 2001.1"))
4991                 {
4992                     OSTB = 0x20
4993                     TPOS = 0x20
4994                 }
4995 
4996                 If (_OSI ("Windows 2001 SP1"))
4997                 {
4998                     OSTB = 0x10
4999                     TPOS = 0x10
5000                 }
5001 
5002                 If (_OSI ("Windows 2001 SP2"))
5003                 {
5004                     OSTB = 0x11
5005                     TPOS = 0x11
5006                 }
5007 
5008                 If (_OSI ("Windows 2001 SP3"))
5009                 {
5010                     OSTB = 0x12
5011                     TPOS = 0x12
5012                 }
5013 
5014                 If (_OSI ("Windows 2006"))
5015                 {
5016                     OSTB = 0x40
5017                     TPOS = 0x40
5018                 }
5019 
5020                 If (_OSI ("Windows 2006 SP1"))
5021                 {
5022                     OSTB = 0x41
5023                     TPOS = 0x41
5024                     OSSP = One
5025                 }
5026 
5027                 If (_OSI ("Windows 2009"))
5028                 {
5029                     OSSP = One
5030                     OSTB = 0x50
5031                     TPOS = 0x50
5032                 }
5033 
5034                 If (_OSI ("Windows 2012"))
5035                 {
5036                     OSSP = One
5037                     OSTB = 0x60
5038                     TPOS = 0x60
5039                 }
5040 
5041                 If (_OSI ("Windows 2013"))
5042                 {
5043                     OSSP = One
5044                     OSTB = 0x61
5045                     TPOS = 0x61
5046                 }
5047 
5048                 If (_OSI ("Windows 2015"))
5049                 {
5050                     OSSP = One
5051                     OSTB = 0x70
5052                     TPOS = 0x70
5053                 }
5054 
5055                 If (_OSI ("Linux"))
5056                 {
5057                     LINX = One
5058                     OSTB = 0x80
5059                     TPOS = 0x80
5060                 }
5061             }
5062             ElseIf (CondRefOf (\_OS, Local0))
5063             {
5064                 If (SEQL (_OS, "Microsoft Windows"))
5065                 {
5066                     OSTB = One
5067                     TPOS = One
5068                 }
5069                 ElseIf (SEQL (_OS, "Microsoft WindowsME: Millennium Edition"))
5070                 {
5071                     OSTB = 0x02
5072                     TPOS = 0x02
5073                 }
5074                 ElseIf (SEQL (_OS, "Microsoft Windows NT"))
5075                 {
5076                     OSTB = 0x04
5077                     TPOS = 0x04
5078                 }
5079                 Else
5080                 {
5081                     OSTB = Zero
5082                     TPOS = Zero
5083                 }
5084             }
5085             Else
5086             {
5087                 OSTB = Zero
5088                 TPOS = Zero
5089             }
5090         }
5091 
5092         Return (OSTB) /* \OSTB */
5093     }
5094 
5095     Scope (_SB.PCI0)
5096     {
5097         Method (_INI, 0, NotSerialized)  // _INI: Initialize
5098         {
5099             If ((PICM != Zero))
5100             {
5101                 DSPI ()
5102                 NAPE ()
5103             }
5104 
5105             OSTP ()
5106             OSFL ()
5107         }
5108     }
5109 
5110     OperationRegion (DBGB, SystemIO, 0x80, One)
5111     Field (DBGB, ByteAcc, NoLock, Preserve)
5112     {
5113         P80B,   8
5114     }
5115 
5116     OperationRegion (DBGW, SystemIO, 0x80, 0x02)
5117     Field (DBGW, WordAcc, NoLock, Preserve)
5118     {
5119         P80W,   16
5120     }
5121 
5122     OperationRegion (DBGD, SystemIO, 0x80, 0x04)
5123     Field (DBGD, DWordAcc, NoLock, Preserve)
5124     {
5125         P80D,   32
5126     }
5127 
5128     Name (TSOS, 0x75)
5129     If (CondRefOf (\_OSI))
5130     {
5131         If (_OSI ("Windows 2009"))
5132         {
5133             TSOS = 0x50
5134         }
5135 
5136         If (_OSI ("Windows 2015"))
5137         {
5138             TSOS = 0x70
5139         }
5140     }
5141 
5142     Scope (_SB)
5143     {
5144         OperationRegion (SMIC, SystemMemory, 0xFED80000, 0x00800000)
5145         Field (SMIC, ByteAcc, NoLock, Preserve)
5146         {
5147             Offset (0x36A), 
5148             SMIB,   8
5149         }
5150 
5151         OperationRegion (SSMI, SystemIO, SMIB, 0x02)
5152         Field (SSMI, AnyAcc, NoLock, Preserve)
5153         {
5154             SMIW,   16
5155         }
5156 
5157         OperationRegion (ECMC, SystemIO, 0x72, 0x02)
5158         Field (ECMC, AnyAcc, NoLock, Preserve)
5159         {
5160             ECMI,   8, 
5161             ECMD,   8
5162         }
5163 
5164         IndexField (ECMI, ECMD, ByteAcc, NoLock, Preserve)
5165         {
5166             Offset (0x08), 
5167             FRTB,   32
5168         }
5169 
5170         OperationRegion (FRTP, SystemMemory, FRTB, 0x0100)
5171         Field (FRTP, AnyAcc, NoLock, Preserve)
5172         {
5173             PEBA,   32, 
5174             SPIE,   1, 
5175             P80E,   1, 
5176                 ,   2, 
5177             NI2C,   1, 
5178             IC0E,   1, 
5179             IC1E,   1, 
5180             IC2E,   1, 
5181             IC3E,   1, 
5182             IC4E,   1, 
5183             IC5E,   1, 
5184             UT0E,   1, 
5185             UT1E,   1, 
5186                 ,   1, 
5187                 ,   1, 
5188             ST_E,   1, 
5189             UT2E,   1, 
5190                 ,   1, 
5191             EMMD,   2, 
5192                 ,   3, 
5193             XHCE,   1, 
5194                 ,   1, 
5195                 ,   1, 
5196             UT3E,   1, 
5197             ESPI,   1, 
5198             EMME,   1, 
5199             Offset (0x08), 
5200             PCEF,   1, 
5201                 ,   4, 
5202             IC0D,   1, 
5203             IC1D,   1, 
5204             IC2D,   1, 
5205             IC3D,   1, 
5206             IC4D,   1, 
5207             IC5D,   1, 
5208             UT0D,   1, 
5209             UT1D,   1, 
5210                 ,   1, 
5211                 ,   1, 
5212             ST_D,   1, 
5213             UT2D,   1, 
5214                 ,   1, 
5215             EHCD,   1, 
5216                 ,   4, 
5217             XHCD,   1, 
5218             SD_D,   1, 
5219                 ,   1, 
5220             UT3D,   1, 
5221                 ,   1, 
5222             EMD3,   1, 
5223                 ,   2, 
5224             S03D,   1, 
5225             FW00,   16, 
5226             FW01,   32, 
5227             FW02,   16, 
5228             FW03,   32, 
5229             SDS0,   8, 
5230             SDS1,   8, 
5231             CZFG,   1, 
5232             Offset (0x20), 
5233             SD10,   32, 
5234             EH10,   32, 
5235             XH10,   32, 
5236             STBA,   32
5237         }
5238 
5239         OperationRegion (FCFG, SystemMemory, PEBA, 0x01000000)
5240         Field (FCFG, DWordAcc, NoLock, Preserve)
5241         {
5242             Offset (0xA3044), 
5243             IPDE,   32, 
5244             IMPE,   32, 
5245             Offset (0xA306C), 
5246             RAR2,   32, 
5247             Offset (0xA3078), 
5248                 ,   2, 
5249             LDQ0,   1, 
5250             Offset (0xA30CB), 
5251                 ,   7, 
5252             AUSS,   1, 
5253             Offset (0xA30D0), 
5254                 ,   13, 
5255             LCLK,   2
5256         }
5257 
5258         OperationRegion (IOMX, SystemMemory, 0xFED80D00, 0x0100)
5259         Field (IOMX, AnyAcc, NoLock, Preserve)
5260         {
5261             Offset (0x15), 
5262             IM15,   8, 
5263             IM16,   8, 
5264             IM17,   8, 
5265             Offset (0x1F), 
5266             IM1F,   8, 
5267             IM20,   8, 
5268             Offset (0x44), 
5269             IM44,   8, 
5270             Offset (0x46), 
5271             IM46,   8, 
5272             Offset (0x4A), 
5273             IM4A,   8, 
5274             IM4B,   8, 
5275             Offset (0x57), 
5276             IM57,   8, 
5277             IM58,   8, 
5278             Offset (0x68), 
5279             IM68,   8, 
5280             IM69,   8, 
5281             IM6A,   8, 
5282             IM6B,   8, 
5283             Offset (0x6D), 
5284             IM6D,   8
5285         }
5286 
5287         OperationRegion (FMIS, SystemMemory, 0xFED80E00, 0x0100)
5288         Field (FMIS, AnyAcc, NoLock, Preserve)
5289         {
5290             Offset (0x40), 
5291                 ,   13, 
5292             I24M,   1
5293         }
5294 
5295         OperationRegion (FGIO, SystemMemory, 0xFED81500, 0x0300)
5296         Field (FGIO, AnyAcc, NoLock, Preserve)
5297         {
5298             Offset (0xA8), 
5299                 ,   22, 
5300             O042,   1, 
5301             Offset (0x164), 
5302                 ,   22, 
5303             O089,   1
5304         }
5305 
5306         OperationRegion (FACR, SystemMemory, 0xFED81E00, 0x0100)
5307         Field (FACR, AnyAcc, NoLock, Preserve)
5308         {
5309             Offset (0x62), 
5310             AMTD,   2, 
5311             Offset (0x80), 
5312                 ,   28, 
5313             RD28,   1, 
5314                 ,   1, 
5315             RQTY,   1, 
5316             Offset (0x84), 
5317                 ,   28, 
5318             SD28,   1, 
5319                 ,   1, 
5320             Offset (0xA0), 
5321             PG1A,   1
5322         }
5323 
5324         OperationRegion (EMMX, SystemMemory, 0xFEDD5800, 0x0130)
5325         Field (EMMX, AnyAcc, NoLock, Preserve)
5326         {
5327             Offset (0xD0), 
5328                 ,   17, 
5329             FC18,   1, 
5330             FC33,   1, 
5331                 ,   7, 
5332             CD_T,   1, 
5333             WP_T,   1
5334         }
5335 
5336         OperationRegion (EMMB, SystemMemory, 0xFEDD5800, 0x0130)
5337         Field (EMMB, AnyAcc, NoLock, Preserve)
5338         {
5339             Offset (0xA4), 
5340             E0A4,   32, 
5341             E0A8,   32, 
5342             Offset (0xB0), 
5343             E0B0,   32, 
5344             Offset (0xD0), 
5345             E0D0,   32, 
5346             Offset (0x116), 
5347             E116,   32
5348         }
5349 
5350         OperationRegion (SPIM, SystemMemory, 0xFEC10000, 0x0100)
5351         Field (SPIM, AnyAcc, NoLock, Preserve)
5352         {
5353             Offset (0x1D), 
5354             ASCE,   2, 
5355             Offset (0x22), 
5356             SSSC,   16, 
5357             Offset (0xFC), 
5358             STRN,   1, 
5359                 ,   2, 
5360             BOWS,   1, 
5361             DOWS,   1
5362         }
5363 
5364         Mutex (ASSM, 0x00)
5365         Name (SVBF, Buffer (0x0100)
5366         {
5367              0x00                                             // .
5368         })
5369         CreateDWordField (SVBF, Zero, S0A4)
5370         CreateDWordField (SVBF, 0x04, S0A8)
5371         CreateDWordField (SVBF, 0x08, S0B0)
5372         CreateDWordField (SVBF, 0x0C, S0D0)
5373         CreateDWordField (SVBF, 0x10, S116)
5374         CreateWordField (SVBF, 0x14, RG22)
5375         CreateDWordField (SVBF, 0x18, SAR2)
5376         Method (SECR, 0, Serialized)
5377         {
5378             S116 = E116 /* \_SB_.E116 */
5379             RQTY = Zero
5380             RD28 = One
5381             Local0 = SD28 /* \_SB_.SD28 */
5382             While (Local0)
5383             {
5384                 Local0 = SD28 /* \_SB_.SD28 */
5385             }
5386         }
5387 
5388         Method (RECR, 0, Serialized)
5389         {
5390             E116 = S116 /* \_SB_.S116 */
5391         }
5392 
5393         OperationRegion (LUIE, SystemMemory, 0xFEDC0020, 0x04)
5394         Field (LUIE, AnyAcc, NoLock, Preserve)
5395         {
5396             IER0,   1, 
5397             IER1,   1, 
5398             IER2,   1, 
5399             IER3,   1, 
5400             UOL0,   1, 
5401             UOL1,   1, 
5402             UOL2,   1, 
5403             UOL3,   1, 
5404             WUR0,   2, 
5405             WUR1,   2, 
5406             WUR2,   2, 
5407             WUR3,   2
5408         }
5409 
5410         Method (FRUI, 1, Serialized)
5411         {
5412             If ((Arg0 == Zero))
5413             {
5414                 Return (IUA0) /* \_SB_.IUA0 */
5415             }
5416 
5417             If ((Arg0 == One))
5418             {
5419                 Return (IUA1) /* \_SB_.IUA1 */
5420             }
5421 
5422             If ((Arg0 == 0x02))
5423             {
5424                 Return (IUA2) /* \_SB_.IUA2 */
5425             }
5426 
5427             If ((Arg0 == 0x03))
5428             {
5429                 Return (IUA3) /* \_SB_.IUA3 */
5430             }
5431 
5432             Return (Zero)
5433         }
5434 
5435         Method (OP80, 1, Serialized)
5436         {
5437             If (P80E)
5438             {
5439                 P80D = Arg0
5440             }
5441         }
5442 
5443         Method (SRAD, 2, Serialized)
5444         {
5445             Local1 = (Arg1 << 0x05)
5446             Local1 += 0xB000AF80
5447             Local1 += Arg0
5448             OP80 (Local1)
5449             Local0 = (Arg0 << One)
5450             Local0 += 0xFED81E40
5451             OperationRegion (ADCR, SystemMemory, Local0, 0x02)
5452             Field (ADCR, ByteAcc, NoLock, Preserve)
5453             {
5454                 ADTD,   2, 
5455                 ADPS,   1, 
5456                 ADPD,   1, 
5457                 ADSO,   1, 
5458                 ADSC,   1, 
5459                 ADSR,   1, 
5460                 ADIS,   1, 
5461                 ADDS,   3
5462             }
5463 
5464             ADIS = One
5465             ADSR = Zero
5466             Stall (Arg1)
5467             ADSR = One
5468             ADIS = Zero
5469             Stall (Arg1)
5470         }
5471 
5472         Method (DSAD, 2, Serialized)
5473         {
5474             Local1 = (Arg1 << 0x05)
5475             Local1 += 0xB000AF80
5476             Local1 += Arg0
5477             OP80 (Local1)
5478             Local0 = (Arg0 << One)
5479             Local0 += 0xFED81E40
5480             OperationRegion (ADCR, SystemMemory, Local0, 0x02)
5481             Field (ADCR, ByteAcc, NoLock, Preserve)
5482             {
5483                 ADTD,   2, 
5484                 ADPS,   1, 
5485                 ADPD,   1, 
5486                 ADSO,   1, 
5487                 ADSC,   1, 
5488                 ADSR,   1, 
5489                 ADIS,   1, 
5490                 ADDS,   3
5491             }
5492 
5493             If ((Arg1 != ADTD))
5494             {
5495                 If ((Arg1 == Zero))
5496                 {
5497                     ADTD = Zero
5498                     ADPD = One
5499                     Local0 = ADDS /* \_SB_.DSAD.ADDS */
5500                     While ((Local0 != 0x07))
5501                     {
5502                         Local0 = ADDS /* \_SB_.DSAD.ADDS */
5503                     }
5504                 }
5505 
5506                 If ((Arg1 == 0x03))
5507                 {
5508                     ADPD = Zero
5509                     Local0 = ADDS /* \_SB_.DSAD.ADDS */
5510                     While ((Local0 != Zero))
5511                     {
5512                         Local0 = ADDS /* \_SB_.DSAD.ADDS */
5513                     }
5514 
5515                     ADTD = 0x03
5516                 }
5517             }
5518         }
5519 
5520         Method (HSAD, 2, Serialized)
5521         {
5522             Local0 = (Arg0 << One)
5523             Local0 += 0xFED81E40
5524             OperationRegion (ADCR, SystemMemory, Local0, 0x02)
5525             Field (ADCR, ByteAcc, NoLock, Preserve)
5526             {
5527                 ADTD,   2, 
5528                 ADPS,   1, 
5529                 ADPD,   1, 
5530                 ADSO,   1, 
5531                 ADSC,   1, 
5532                 ADSR,   1, 
5533                 ADIS,   1, 
5534                 ADDS,   3
5535             }
5536 
5537             If ((Arg1 != ADTD))
5538             {
5539                 If ((Arg1 == Zero))
5540                 {
5541                     ADTD = Zero
5542                     ADPD = One
5543                     Local0 = ADDS /* \_SB_.HSAD.ADDS */
5544                     While ((Local0 != 0x07))
5545                     {
5546                         Local0 = ADDS /* \_SB_.HSAD.ADDS */
5547                     }
5548 
5549                     RQTY = One
5550                     RD28 = One
5551                     Local0 = SD28 /* \_SB_.SD28 */
5552                     While (!Local0)
5553                     {
5554                         Local0 = SD28 /* \_SB_.SD28 */
5555                     }
5556                 }
5557 
5558                 If ((Arg1 == 0x03))
5559                 {
5560                     RQTY = Zero
5561                     RD28 = One
5562                     Local0 = SD28 /* \_SB_.SD28 */
5563                     While (Local0)
5564                     {
5565                         Local0 = SD28 /* \_SB_.SD28 */
5566                     }
5567 
5568                     ADPD = Zero
5569                     Local0 = ADDS /* \_SB_.HSAD.ADDS */
5570                     While ((Local0 != Zero))
5571                     {
5572                         Local0 = ADDS /* \_SB_.HSAD.ADDS */
5573                     }
5574 
5575                     ADTD = 0x03
5576                 }
5577             }
5578         }
5579 
5580         OperationRegion (FPIC, SystemIO, 0x0C00, 0x02)
5581         Field (FPIC, AnyAcc, NoLock, Preserve)
5582         {
5583             FPII,   8, 
5584             FPID,   8
5585         }
5586 
5587         IndexField (FPII, FPID, ByteAcc, NoLock, Preserve)
5588         {
5589             Offset (0xF4), 
5590             IUA0,   8, 
5591             IUA1,   8, 
5592             Offset (0xF8), 
5593             IUA2,   8, 
5594             IUA3,   8
5595         }
5596 
5597         Device (SPI1)
5598         {
5599             Name (_HID, "AMDI0060")  // _HID: Hardware ID
5600             Name (_UID, Zero)  // _UID: Unique ID
5601             Method (_STA, 0, NotSerialized)  // _STA: Status
5602             {
5603                 If (SPIE)
5604                 {
5605                     Return (0x0F)
5606                 }
5607                 Else
5608                 {
5609                     Return (Zero)
5610                 }
5611             }
5612 
5613             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
5614             {
5615                 Name (RBUF, ResourceTemplate ()
5616                 {
5617                     Memory32Fixed (ReadWrite,
5618                         0xFEC10000,         // Address Base
5619                         0x00000100,         // Address Length
5620                         )
5621                 })
5622                 Return (RBUF) /* \_SB_.SPI1._CRS.RBUF */
5623             }
5624 
5625             Method (ASSC, 2, Serialized)
5626             {
5627                 Acquire (ASSM, 0xFFFF)
5628                 Local0 = Arg1
5629                 Switch (ToInteger (Arg0))
5630                 {
5631                     Case (0x03)
5632                     {
5633                         DOWS = One
5634                         STRN = One
5635                         While ((BOWS && STRN))
5636                         {
5637                             If (Arg1)
5638                             {
5639                                 Stall (One)
5640                                 Local0 -= One
5641                                 If ((Local0 == Zero))
5642                                 {
5643                                     Break
5644                                 }
5645                             }
5646                         }
5647 
5648                         SAR2 = RAR2 /* \_SB_.RAR2 */
5649                         RAR2 = Zero
5650                         ASCE = 0x02
5651                         RG22 = SSSC /* \_SB_.SSSC */
5652                     }
5653                     Case (0x04)
5654                     {
5655                         SSSC = RG22 /* \_SB_.RG22 */
5656                         ASCE = Zero
5657                         RAR2 = SAR2 /* \_SB_.SAR2 */
5658                         Local0 = One
5659                         DOWS = Zero
5660                     }
5661 
5662                 }
5663 
5664                 Release (ASSM)
5665                 Return (Local0)
5666             }
5667         }
5668 
5669         Device (GPIO)
5670         {
5671             Name (_HID, "AMDI0030")  // _HID: Hardware ID
5672             Name (_CID, "AMDI0030")  // _CID: Compatible ID
5673             Name (_UID, Zero)  // _UID: Unique ID
5674             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
5675             {
5676                 Name (RBUF, ResourceTemplate ()
5677                 {
5678                     Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
5679                     {
5680                         0x00000007,
5681                     }
5682                     Memory32Fixed (ReadWrite,
5683                         0xFED81500,         // Address Base
5684                         0x00000400,         // Address Length
5685                         )
5686                 })
5687                 Return (RBUF) /* \_SB_.GPIO._CRS.RBUF */
5688             }
5689 
5690             Method (RST, 0, NotSerialized)
5691             {
5692                 Notify (GPIO, Zero) // Bus Check
5693             }
5694 
5695             Method (_STA, 0, NotSerialized)  // _STA: Status
5696             {
5697                 If ((TSOS >= 0x70))
5698                 {
5699                     Return (0x0F)
5700                 }
5701                 Else
5702                 {
5703                     Return (Zero)
5704                 }
5705             }
5706         }
5707 
5708         Device (FUR0)
5709         {
5710             Name (_HID, "AMDI0020")  // _HID: Hardware ID
5711             Name (_UID, Zero)  // _UID: Unique ID
5712             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
5713             {
5714                 IRQ (Edge, ActiveHigh, Exclusive, )
5715                     {3}
5716                 Memory32Fixed (ReadWrite,
5717                     0xFEDC9000,         // Address Base
5718                     0x00001000,         // Address Length
5719                     )
5720                 Memory32Fixed (ReadWrite,
5721                     0xFEDC7000,         // Address Base
5722                     0x00001000,         // Address Length
5723                     )
5724             })
5725             Method (_STA, 0, NotSerialized)  // _STA: Status
5726             {
5727                 If ((TSOS >= 0x70))
5728                 {
5729                     If ((UT0E == One))
5730                     {
5731                         If (UOL0)
5732                         {
5733                             Return (Zero)
5734                         }
5735 
5736                         Return (0x0F)
5737                     }
5738 
5739                     Return (Zero)
5740                 }
5741                 Else
5742                 {
5743                     Return (Zero)
5744                 }
5745             }
5746 
5747             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
5748             {
5749                 If ((UT0D && UT0E))
5750                 {
5751                     Return (0x04)
5752                 }
5753                 Else
5754                 {
5755                     Return (Zero)
5756                 }
5757             }
5758 
5759             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
5760             {
5761                 If ((UT0D && UT0E))
5762                 {
5763                     DSAD (0x0B, Zero)
5764                 }
5765             }
5766 
5767             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
5768             {
5769                 If ((UT0D && UT0E))
5770                 {
5771                     DSAD (0x0B, 0x03)
5772                 }
5773             }
5774         }
5775 
5776         Device (FUR1)
5777         {
5778             Name (_HID, "AMDI0020")  // _HID: Hardware ID
5779             Name (_UID, One)  // _UID: Unique ID
5780             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
5781             {
5782                 IRQ (Edge, ActiveHigh, Exclusive, )
5783                     {4}
5784                 Memory32Fixed (ReadWrite,
5785                     0xFEDCA000,         // Address Base
5786                     0x00001000,         // Address Length
5787                     )
5788                 Memory32Fixed (ReadWrite,
5789                     0xFEDC8000,         // Address Base
5790                     0x00001000,         // Address Length
5791                     )
5792             })
5793             Method (_STA, 0, NotSerialized)  // _STA: Status
5794             {
5795                 If ((TSOS >= 0x70))
5796                 {
5797                     If ((UT1E == One))
5798                     {
5799                         If (UOL1)
5800                         {
5801                             Return (Zero)
5802                         }
5803 
5804                         Return (0x0F)
5805                     }
5806 
5807                     Return (Zero)
5808                 }
5809                 Else
5810                 {
5811                     Return (Zero)
5812                 }
5813             }
5814 
5815             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
5816             {
5817                 If ((UT1D && UT1E))
5818                 {
5819                     Return (0x04)
5820                 }
5821                 Else
5822                 {
5823                     Return (Zero)
5824                 }
5825             }
5826 
5827             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
5828             {
5829                 If ((UT1D && UT1E))
5830                 {
5831                     DSAD (0x0C, Zero)
5832                 }
5833             }
5834 
5835             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
5836             {
5837                 If ((UT1D && UT1E))
5838                 {
5839                     DSAD (0x0C, 0x03)
5840                 }
5841             }
5842         }
5843 
5844         Device (FUR2)
5845         {
5846             Name (_HID, "AMDI0020")  // _HID: Hardware ID
5847             Name (_UID, 0x02)  // _UID: Unique ID
5848             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
5849             {
5850                 IRQ (Edge, ActiveHigh, Exclusive, )
5851                     {15}
5852                 Memory32Fixed (ReadWrite,
5853                     0xFEDCE000,         // Address Base
5854                     0x00001000,         // Address Length
5855                     )
5856                 Memory32Fixed (ReadWrite,
5857                     0xFEDCC000,         // Address Base
5858                     0x00001000,         // Address Length
5859                     )
5860             })
5861             Method (_STA, 0, NotSerialized)  // _STA: Status
5862             {
5863                 If ((TSOS >= 0x70))
5864                 {
5865                     If ((UT2E == One))
5866                     {
5867                         If (UOL2)
5868                         {
5869                             Return (Zero)
5870                         }
5871 
5872                         Return (0x0F)
5873                     }
5874 
5875                     Return (Zero)
5876                 }
5877                 Else
5878                 {
5879                     Return (Zero)
5880                 }
5881             }
5882 
5883             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
5884             {
5885                 If ((UT2D && UT2E))
5886                 {
5887                     Return (0x04)
5888                 }
5889                 Else
5890                 {
5891                     Return (Zero)
5892                 }
5893             }
5894 
5895             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
5896             {
5897                 If ((UT2D && UT2E))
5898                 {
5899                     DSAD (0x10, Zero)
5900                 }
5901             }
5902 
5903             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
5904             {
5905                 If ((UT2D && UT2E))
5906                 {
5907                     DSAD (0x10, 0x03)
5908                 }
5909             }
5910         }
5911 
5912         Device (FUR3)
5913         {
5914             Name (_HID, "AMDI0020")  // _HID: Hardware ID
5915             Name (_UID, 0x03)  // _UID: Unique ID
5916             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
5917             {
5918                 IRQ (Edge, ActiveHigh, Exclusive, )
5919                     {5}
5920                 Memory32Fixed (ReadWrite,
5921                     0xFEDCF000,         // Address Base
5922                     0x00001000,         // Address Length
5923                     )
5924                 Memory32Fixed (ReadWrite,
5925                     0xFEDCD000,         // Address Base
5926                     0x00001000,         // Address Length
5927                     )
5928             })
5929             Method (_STA, 0, NotSerialized)  // _STA: Status
5930             {
5931                 If ((TSOS >= 0x70))
5932                 {
5933                     If ((UT3E == One))
5934                     {
5935                         If (UOL3)
5936                         {
5937                             Return (Zero)
5938                         }
5939 
5940                         Return (0x0F)
5941                     }
5942 
5943                     Return (Zero)
5944                 }
5945                 Else
5946                 {
5947                     Return (Zero)
5948                 }
5949             }
5950 
5951             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
5952             {
5953                 If ((UT3D && UT3E))
5954                 {
5955                     Return (0x04)
5956                 }
5957                 Else
5958                 {
5959                     Return (Zero)
5960                 }
5961             }
5962 
5963             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
5964             {
5965                 If ((UT3D && UT3E))
5966                 {
5967                     DSAD (0x1A, Zero)
5968                 }
5969             }
5970 
5971             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
5972             {
5973                 If ((UT3D && UT3E))
5974                 {
5975                     DSAD (0x1A, 0x03)
5976                 }
5977             }
5978         }
5979 
5980         Device (I2CA)
5981         {
5982             Name (_HID, "AMDI0011")  // _HID: Hardware ID
5983             Name (_UID, Zero)  // _UID: Unique ID
5984             Name (_ADR, Zero)  // _ADR: Address
5985             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
5986             {
5987                 IRQ (Edge, ActiveHigh, Exclusive, )
5988                     {10}
5989                 Memory32Fixed (ReadWrite,
5990                     0xFEDC2000,         // Address Base
5991                     0x00001000,         // Address Length
5992                     )
5993             })
5994             Name (_DEP, Package (0x01)  // _DEP: Dependencies
5995             {
5996                 ^PCI0.GP17.MP2C
5997             })
5998             Method (_STA, 0, NotSerialized)  // _STA: Status
5999             {
6000                 If ((TSOS >= 0x70))
6001                 {
6002                     If ((IC0E == One))
6003                     {
6004                         If ((NI2C == Zero))
6005                         {
6006                             Return (0x0F)
6007                         }
6008                     }
6009 
6010                     Return (Zero)
6011                 }
6012                 Else
6013                 {
6014                     Return (Zero)
6015                 }
6016             }
6017 
6018             Method (RSET, 0, NotSerialized)
6019             {
6020                 SRAD (0x05, 0xC8)
6021             }
6022         }
6023 
6024         Device (I2CB)
6025         {
6026             Name (_HID, "AMDI0011")  // _HID: Hardware ID
6027             Name (_UID, One)  // _UID: Unique ID
6028             Name (_ADR, One)  // _ADR: Address
6029             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
6030             {
6031                 IRQ (Edge, ActiveHigh, Exclusive, )
6032                     {11}
6033                 Memory32Fixed (ReadWrite,
6034                     0xFEDC3000,         // Address Base
6035                     0x00001000,         // Address Length
6036                     )
6037             })
6038             Name (_DEP, Package (0x01)  // _DEP: Dependencies
6039             {
6040                 ^PCI0.GP17.MP2C
6041             })
6042             Method (_STA, 0, NotSerialized)  // _STA: Status
6043             {
6044                 If ((TSOS >= 0x70))
6045                 {
6046                     If ((IC1E == One))
6047                     {
6048                         If ((NI2C == Zero))
6049                         {
6050                             Return (0x0F)
6051                         }
6052                     }
6053 
6054                     Return (Zero)
6055                 }
6056                 Else
6057                 {
6058                     Return (Zero)
6059                 }
6060             }
6061 
6062             Method (RSET, 0, NotSerialized)
6063             {
6064                 SRAD (0x06, 0xC8)
6065             }
6066         }
6067 
6068         Device (I2CC)
6069         {
6070             Name (_HID, "AMDI0010")  // _HID: Hardware ID
6071             Name (_UID, 0x02)  // _UID: Unique ID
6072             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
6073             {
6074                 IRQ (Edge, ActiveHigh, Exclusive, )
6075                     {14}
6076                 Memory32Fixed (ReadWrite,
6077                     0xFEDC4000,         // Address Base
6078                     0x00001000,         // Address Length
6079                     )
6080             })
6081             Method (_STA, 0, NotSerialized)  // _STA: Status
6082             {
6083                 If ((TSOS >= 0x70))
6084                 {
6085                     If ((IC2E == One))
6086                     {
6087                         Return (0x0F)
6088                     }
6089 
6090                     Return (Zero)
6091                 }
6092                 Else
6093                 {
6094                     Return (Zero)
6095                 }
6096             }
6097 
6098             Method (RSET, 0, NotSerialized)
6099             {
6100                 SRAD (0x07, 0xC8)
6101             }
6102 
6103             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
6104             {
6105                 If ((IC2D && IC2E))
6106                 {
6107                     Return (0x04)
6108                 }
6109                 Else
6110                 {
6111                     Return (Zero)
6112                 }
6113             }
6114 
6115             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
6116             {
6117                 If ((IC2D && IC2E))
6118                 {
6119                     DSAD (0x07, Zero)
6120                 }
6121             }
6122 
6123             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
6124             {
6125                 If ((IC2D && IC2E))
6126                 {
6127                     DSAD (0x07, 0x03)
6128                 }
6129             }
6130         }
6131 
6132         Device (I2CD)
6133         {
6134             Name (_HID, "AMDI0010")  // _HID: Hardware ID
6135             Name (_UID, 0x03)  // _UID: Unique ID
6136             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
6137             {
6138                 IRQ (Edge, ActiveHigh, Exclusive, )
6139                     {6}
6140                 Memory32Fixed (ReadWrite,
6141                     0xFEDC5000,         // Address Base
6142                     0x00001000,         // Address Length
6143                     )
6144             })
6145             Method (_STA, 0, NotSerialized)  // _STA: Status
6146             {
6147                 If ((TSOS >= 0x70))
6148                 {
6149                     If ((IC3E == One))
6150                     {
6151                         Return (0x0F)
6152                     }
6153 
6154                     Return (Zero)
6155                 }
6156                 Else
6157                 {
6158                     Return (Zero)
6159                 }
6160             }
6161 
6162             Method (RSET, 0, NotSerialized)
6163             {
6164                 SRAD (0x08, 0xC8)
6165             }
6166 
6167             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
6168             {
6169                 If ((IC3D && IC3E))
6170                 {
6171                     Return (0x04)
6172                 }
6173                 Else
6174                 {
6175                     Return (Zero)
6176                 }
6177             }
6178 
6179             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
6180             {
6181                 If ((IC3D && IC3E))
6182                 {
6183                     DSAD (0x08, Zero)
6184                 }
6185             }
6186 
6187             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
6188             {
6189                 If ((IC3D && IC3E))
6190                 {
6191                     DSAD (0x08, 0x03)
6192                 }
6193             }
6194         }
6195 
6196         Device (I2CE)
6197         {
6198             Name (_HID, "AMDI0010")  // _HID: Hardware ID
6199             Name (_UID, Zero)  // _UID: Unique ID
6200             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
6201             {
6202                 IRQ (Edge, ActiveHigh, Exclusive, )
6203                     {10}
6204                 Memory32Fixed (ReadWrite,
6205                     0xFEDC2000,         // Address Base
6206                     0x00001000,         // Address Length
6207                     )
6208             })
6209             Method (_STA, 0, NotSerialized)  // _STA: Status
6210             {
6211                 If ((TSOS >= 0x70))
6212                 {
6213                     If ((IC0E == One))
6214                     {
6215                         If ((NI2C == One))
6216                         {
6217                             Return (0x0F)
6218                         }
6219                     }
6220 
6221                     Return (Zero)
6222                 }
6223                 Else
6224                 {
6225                     Return (Zero)
6226                 }
6227             }
6228 
6229             Method (RSET, 0, NotSerialized)
6230             {
6231                 SRAD (0x09, 0xC8)
6232             }
6233         }
6234 
6235         Device (I2CF)
6236         {
6237             Name (_HID, "AMDI0010")  // _HID: Hardware ID
6238             Name (_UID, One)  // _UID: Unique ID
6239             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
6240             {
6241                 IRQ (Edge, ActiveHigh, Exclusive, )
6242                     {11}
6243                 Memory32Fixed (ReadWrite,
6244                     0xFEDC3000,         // Address Base
6245                     0x00001000,         // Address Length
6246                     )
6247             })
6248             Method (_STA, 0, NotSerialized)  // _STA: Status
6249             {
6250                 If ((TSOS >= 0x70))
6251                 {
6252                     If ((IC1E == One))
6253                     {
6254                         If ((NI2C == One))
6255                         {
6256                             Return (0x0F)
6257                         }
6258                     }
6259 
6260                     Return (Zero)
6261                 }
6262                 Else
6263                 {
6264                     Return (Zero)
6265                 }
6266             }
6267 
6268             Method (RSET, 0, NotSerialized)
6269             {
6270                 SRAD (0x0A, 0xC8)
6271             }
6272         }
6273 
6274         Method (EPIN, 0, NotSerialized)
6275         {
6276             IPDE = Zero
6277             IMPE = 0xFF00
6278             IM15 = One
6279             IM16 = One
6280             IM20 = One
6281             IM44 = One
6282             IM46 = One
6283             IM68 = One
6284             IM69 = One
6285             IM6A = One
6286             IM6B = One
6287             IM1F = One
6288             If ((EMMD != One))
6289             {
6290                 IM4A = One
6291                 IM58 = One
6292                 IM4B = One
6293                 IM57 = One
6294                 IM6D = One
6295             }
6296 
6297             SECR ()
6298         }
6299 
6300         Name (NCRS, ResourceTemplate ()
6301         {
6302             Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6303             {
6304                 0x00000005,
6305             }
6306             Memory32Fixed (ReadWrite,
6307                 0xFEDD5000,         // Address Base
6308                 0x00001000,         // Address Length
6309                 )
6310         })
6311         Name (DCRS, ResourceTemplate ()
6312         {
6313             Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6314             {
6315                 0x00000005,
6316             }
6317             Memory32Fixed (ReadWrite,
6318                 0xFEDD5000,         // Address Base
6319                 0x00001000,         // Address Length
6320                 )
6321             GpioInt (Edge, ActiveBoth, SharedAndWake, PullUp, 0x0BB8,
6322                 "\\_SB.GPIO", 0x00, ResourceConsumer, ,
6323                 )
6324                 {   // Pin list
6325                     0x0044
6326                 }
6327             GpioIo (Shared, PullUp, 0x0000, 0x0000, IoRestrictionNone,
6328                 "\\_SB.GPIO", 0x00, ResourceConsumer, ,
6329                 )
6330                 {   // Pin list
6331                     0x0044
6332                 }
6333         })
6334         Name (ECRS, ResourceTemplate ()
6335         {
6336             Interrupt (ResourceConsumer, Level, ActiveLow, Shared, ,, )
6337             {
6338                 0x00000005,
6339             }
6340             Memory32Fixed (ReadWrite,
6341                 0xFEDD5000,         // Address Base
6342                 0x00001000,         // Address Length
6343                 )
6344             GpioInt (Edge, ActiveLow, SharedAndWake, PullUp, 0x0BB8,
6345                 "\\_SB.GPIO", 0x00, ResourceConsumer, ,
6346                 )
6347                 {   // Pin list
6348                     0x0044
6349                 }
6350         })
6351         Name (AHID, "AMDI0040")
6352         Name (ACID, "AMDI0040")
6353         Name (MHID, "AMDI0041")
6354         Name (MCID, "AMDI0041")
6355         Name (SHID, 0x400DD041)
6356         Name (SCID, "PCI\\CC_080501")
6357         Device (EMM0)
6358         {
6359             Method (_HID, 0, Serialized)  // _HID: Hardware ID
6360             {
6361                 If ((EMMD == Zero))
6362                 {
6363                     Return (AHID) /* \_SB_.AHID */
6364                 }
6365 
6366                 If ((EMMD == One))
6367                 {
6368                     Return (SHID) /* \_SB_.SHID */
6369                 }
6370 
6371                 If ((EMMD == 0x02))
6372                 {
6373                     Return (MHID) /* \_SB_.MHID */
6374                 }
6375 
6376                 Return (Zero)
6377             }
6378 
6379             Method (_CID, 0, Serialized)  // _CID: Compatible ID
6380             {
6381                 If ((EMMD == Zero))
6382                 {
6383                     Return (ACID) /* \_SB_.ACID */
6384                 }
6385 
6386                 If ((EMMD == One))
6387                 {
6388                     Return (SCID) /* \_SB_.SCID */
6389                 }
6390 
6391                 If ((EMMD == 0x02))
6392                 {
6393                     Return (MCID) /* \_SB_.MCID */
6394                 }
6395 
6396                 Return (Zero)
6397             }
6398 
6399             Name (_UID, Zero)  // _UID: Unique ID
6400             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
6401             {
6402                 If (EMD3)
6403                 {
6404                     If ((EMMD == One))
6405                     {
6406                         Return (DCRS) /* \_SB_.DCRS */
6407                     }
6408 
6409                     Return (ECRS) /* \_SB_.ECRS */
6410                 }
6411                 Else
6412                 {
6413                     Return (NCRS) /* \_SB_.NCRS */
6414                 }
6415             }
6416 
6417             Method (_STA, 0, NotSerialized)  // _STA: Status
6418             {
6419                 If ((TSOS >= 0x70))
6420                 {
6421                     If (EMME)
6422                     {
6423                         Return (0x0F)
6424                     }
6425 
6426                     Return (Zero)
6427                 }
6428                 Else
6429                 {
6430                     Return (Zero)
6431                 }
6432             }
6433 
6434             Method (_INI, 0, NotSerialized)  // _INI: Initialize
6435             {
6436                 If (EMME)
6437                 {
6438                     EPIN ()
6439                 }
6440             }
6441 
6442             Method (_S0W, 0, NotSerialized)  // _S0W: S0 Device Wake State
6443             {
6444                 If ((EMD3 && EMME))
6445                 {
6446                     Return (0x04)
6447                 }
6448                 Else
6449                 {
6450                     Return (Zero)
6451                 }
6452             }
6453 
6454             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
6455             {
6456                 If ((EMD3 && EMME))
6457                 {
6458                     HSAD (0x1C, Zero)
6459                     RECR ()
6460                 }
6461             }
6462 
6463             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
6464             {
6465                 If ((EMD3 && EMME))
6466                 {
6467                     HSAD (0x1C, 0x03)
6468                 }
6469             }
6470 
6471             Device (CARD)
6472             {
6473                 Name (_ADR, Zero)  // _ADR: Address
6474                 Method (_RMV, 0, NotSerialized)  // _RMV: Removal Status
6475                 {
6476                     If ((EMMD == One))
6477                     {
6478                         Return (One)
6479                     }
6480 
6481                     Return (Zero)
6482                 }
6483             }
6484         }
6485     }
6486 
6487     Scope (_SB.PCI0)
6488     {
6489         Device (UAR1)
6490         {
6491             Name (_HID, EisaId ("PNP0501") /* 16550A-compatible COM Serial Port */)  // _HID: Hardware ID
6492             Name (_DDN, "COM4")  // _DDN: DOS Device Name
6493             Name (_UID, 0x04)  // _UID: Unique ID
6494             Method (_STA, 0, NotSerialized)  // _STA: Status
6495             {
6496                 If ((IER0 && (AMTD != 0x03)))
6497                 {
6498                     Return (0x0F)
6499                 }
6500 
6501                 Return (Zero)
6502             }
6503 
6504             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
6505             {
6506                 Name (BUF0, ResourceTemplate ()
6507                 {
6508                     IO (Decode16,
6509                         0x02E8,             // Range Minimum
6510                         0x02E8,             // Range Maximum
6511                         0x01,               // Alignment
6512                         0x08,               // Length
6513                         _Y18)
6514                     IRQNoFlags (_Y19)
6515                         {3}
6516                 })
6517                 CreateByteField (BUF0, \_SB.PCI0.UAR1._CRS._Y18._MIN, IOLO)  // _MIN: Minimum Base Address
6518                 CreateByteField (BUF0, 0x03, IOHI)
6519                 CreateByteField (BUF0, \_SB.PCI0.UAR1._CRS._Y18._MAX, IORL)  // _MAX: Maximum Base Address
6520                 CreateByteField (BUF0, 0x05, IORH)
6521                 CreateWordField (BUF0, \_SB.PCI0.UAR1._CRS._Y19._INT, IRQL)  // _INT: Interrupts
6522                 IRQL = (One << FRUI (WUR0))
6523                 Return (BUF0) /* \_SB_.PCI0.UAR1._CRS.BUF0 */
6524             }
6525         }
6526 
6527         Device (UAR2)
6528         {
6529             Name (_HID, EisaId ("PNP0501") /* 16550A-compatible COM Serial Port */)  // _HID: Hardware ID
6530             Name (_DDN, "COM2")  // _DDN: DOS Device Name
6531             Name (_UID, 0x02)  // _UID: Unique ID
6532             Method (_STA, 0, NotSerialized)  // _STA: Status
6533             {
6534                 If ((IER1 && (AMTD != 0x03)))
6535                 {
6536                     Return (0x0F)
6537                 }
6538 
6539                 Return (Zero)
6540             }
6541 
6542             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
6543             {
6544                 Name (BUF0, ResourceTemplate ()
6545                 {
6546                     IO (Decode16,
6547                         0x02F8,             // Range Minimum
6548                         0x02F8,             // Range Maximum
6549                         0x01,               // Alignment
6550                         0x08,               // Length
6551                         _Y1A)
6552                     IRQNoFlags (_Y1B)
6553                         {4}
6554                 })
6555                 CreateByteField (BUF0, \_SB.PCI0.UAR2._CRS._Y1A._MIN, IOLO)  // _MIN: Minimum Base Address
6556                 CreateByteField (BUF0, 0x03, IOHI)
6557                 CreateByteField (BUF0, \_SB.PCI0.UAR2._CRS._Y1A._MAX, IORL)  // _MAX: Maximum Base Address
6558                 CreateByteField (BUF0, 0x05, IORH)
6559                 CreateWordField (BUF0, \_SB.PCI0.UAR2._CRS._Y1B._INT, IRQL)  // _INT: Interrupts
6560                 IRQL = (One << FRUI (WUR1))
6561                 Return (BUF0) /* \_SB_.PCI0.UAR2._CRS.BUF0 */
6562             }
6563         }
6564 
6565         Device (UAR3)
6566         {
6567             Name (_HID, EisaId ("PNP0501") /* 16550A-compatible COM Serial Port */)  // _HID: Hardware ID
6568             Name (_DDN, "COM3")  // _DDN: DOS Device Name
6569             Name (_UID, 0x03)  // _UID: Unique ID
6570             Method (_STA, 0, NotSerialized)  // _STA: Status
6571             {
6572                 If ((IER2 && (AMTD != 0x03)))
6573                 {
6574                     Return (0x0F)
6575                 }
6576 
6577                 Return (Zero)
6578             }
6579 
6580             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
6581             {
6582                 Name (BUF0, ResourceTemplate ()
6583                 {
6584                     IO (Decode16,
6585                         0x03E8,             // Range Minimum
6586                         0x03E8,             // Range Maximum
6587                         0x01,               // Alignment
6588                         0x08,               // Length
6589                         _Y1C)
6590                     IRQNoFlags (_Y1D)
6591                         {3}
6592                 })
6593                 CreateByteField (BUF0, \_SB.PCI0.UAR3._CRS._Y1C._MIN, IOLO)  // _MIN: Minimum Base Address
6594                 CreateByteField (BUF0, 0x03, IOHI)
6595                 CreateByteField (BUF0, \_SB.PCI0.UAR3._CRS._Y1C._MAX, IORL)  // _MAX: Maximum Base Address
6596                 CreateByteField (BUF0, 0x05, IORH)
6597                 CreateWordField (BUF0, \_SB.PCI0.UAR3._CRS._Y1D._INT, IRQL)  // _INT: Interrupts
6598                 IRQL = (One << FRUI (WUR2))
6599                 Return (BUF0) /* \_SB_.PCI0.UAR3._CRS.BUF0 */
6600             }
6601         }
6602 
6603         Device (UAR4)
6604         {
6605             Name (_HID, EisaId ("PNP0501") /* 16550A-compatible COM Serial Port */)  // _HID: Hardware ID
6606             Name (_DDN, "COM1")  // _DDN: DOS Device Name
6607             Name (_UID, One)  // _UID: Unique ID
6608             Method (_STA, 0, NotSerialized)  // _STA: Status
6609             {
6610                 If ((IER3 && (AMTD != 0x03)))
6611                 {
6612                     Return (0x0F)
6613                 }
6614 
6615                 Return (Zero)
6616             }
6617 
6618             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
6619             {
6620                 Name (BUF0, ResourceTemplate ()
6621                 {
6622                     IO (Decode16,
6623                         0x03F8,             // Range Minimum
6624                         0x03F8,             // Range Maximum
6625                         0x01,               // Alignment
6626                         0x08,               // Length
6627                         _Y1E)
6628                     IRQNoFlags (_Y1F)
6629                         {4}
6630                 })
6631                 CreateByteField (BUF0, \_SB.PCI0.UAR4._CRS._Y1E._MIN, IOLO)  // _MIN: Minimum Base Address
6632                 CreateByteField (BUF0, 0x03, IOHI)
6633                 CreateByteField (BUF0, \_SB.PCI0.UAR4._CRS._Y1E._MAX, IORL)  // _MAX: Maximum Base Address
6634                 CreateByteField (BUF0, 0x05, IORH)
6635                 CreateWordField (BUF0, \_SB.PCI0.UAR4._CRS._Y1F._INT, IRQL)  // _INT: Interrupts
6636                 IRQL = (One << FRUI (WUR3))
6637                 Return (BUF0) /* \_SB_.PCI0.UAR4._CRS.BUF0 */
6638             }
6639         }
6640     }
6641 
6642     Scope (_SB.PCI0.GP17.VGA)
6643     {
6644         Device (CAMF)
6645         {
6646             Name (_ADR, 0x1000)  // _ADR: Address
6647             Method (_STA, 0, NotSerialized)  // _STA: Status
6648             {
6649                 If ((O042 == One))
6650                 {
6651                     Return (0x0F)
6652                 }
6653 
6654                 Return (0x0B)
6655             }
6656 
6657             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
6658             {
6659                 O042 = One
6660             }
6661 
6662             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
6663             {
6664                 O042 = Zero
6665             }
6666         }
6667 
6668         Device (CAMR)
6669         {
6670             Name (_ADR, 0x2000)  // _ADR: Address
6671             Method (_STA, 0, NotSerialized)  // _STA: Status
6672             {
6673                 If ((O089 == One))
6674                 {
6675                     Return (0x0F)
6676                 }
6677 
6678                 Return (0x0B)
6679             }
6680 
6681             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
6682             {
6683                 O089 = One
6684             }
6685 
6686             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
6687             {
6688                 O089 = Zero
6689             }
6690         }
6691 
6692         Method (RCPU, 0, NotSerialized)
6693         {
6694             O089 = One
6695         }
6696 
6697         Method (RCPD, 0, NotSerialized)
6698         {
6699             O089 = Zero
6700         }
6701 
6702         Method (FCPU, 0, NotSerialized)
6703         {
6704             O042 = One
6705         }
6706 
6707         Method (FCPD, 0, NotSerialized)
6708         {
6709             O042 = Zero
6710         }
6711 
6712         Method (ICLE, 0, NotSerialized)
6713         {
6714             I24M = Zero
6715         }
6716 
6717         Method (ICLD, 0, NotSerialized)
6718         {
6719             I24M = One
6720         }
6721     }
6722 
6723     Device (HPET)
6724     {
6725         Name (_HID, EisaId ("PNP0103") /* HPET System Timer */)  // _HID: Hardware ID
6726         Method (_STA, 0, NotSerialized)  // _STA: Status
6727         {
6728             If ((HPEN == One))
6729             {
6730                 If ((OSVR >= 0x0C))
6731                 {
6732                     Return (0x0F)
6733                 }
6734 
6735                 HPEN = Zero
6736                 Return (One)
6737             }
6738 
6739             Return (One)
6740         }
6741 
6742         Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
6743         {
6744             Name (BUF0, ResourceTemplate ()
6745             {
6746                 IRQNoFlags ()
6747                     {0}
6748                 IRQNoFlags ()
6749                     {8}
6750                 Memory32Fixed (ReadOnly,
6751                     0xFED00000,         // Address Base
6752                     0x00000400,         // Address Length
6753                     )
6754             })
6755             Return (BUF0) /* \HPET._CRS.BUF0 */
6756         }
6757     }
6758 
6759     Device (_SB.TPM)
6760     {
6761         Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
6762         {
6763             If (TCMF)
6764             {
6765                 Return (0x01013469)
6766             }
6767             ElseIf ((TTDP == Zero))
6768             {
6769                 Return (0x310CD041)
6770             }
6771             Else
6772             {
6773                 Return ("MSFT0101")
6774             }
6775         }
6776 
6777         Method (_STR, 0, NotSerialized)  // _STR: Description String
6778         {
6779             If ((TTDP == Zero))
6780             {
6781                 Return (Unicode ("TPM 1.2 Device"))
6782             }
6783             Else
6784             {
6785                 Return (Unicode ("TPM 2.0 Device"))
6786             }
6787         }
6788 
6789         Name (_UID, One)  // _UID: Unique ID
6790         Name (CRST, ResourceTemplate ()
6791         {
6792             Memory32Fixed (ReadOnly,
6793                 0x00000000,         // Address Base
6794                 0x00001000,         // Address Length
6795                 _Y20)
6796             Memory32Fixed (ReadOnly,
6797                 0xFED70000,         // Address Base
6798                 0x00001000,         // Address Length
6799                 _Y21)
6800         })
6801         Name (CRSD, ResourceTemplate ()
6802         {
6803             Memory32Fixed (ReadWrite,
6804                 0xFED40000,         // Address Base
6805                 0x00005000,         // Address Length
6806                 _Y22)
6807         })
6808         Name (CRSI, ResourceTemplate ()
6809         {
6810             Memory32Fixed (ReadWrite,
6811                 0xFED40000,         // Address Base
6812                 0x00005000,         // Address Length
6813                 _Y23)
6814         })
6815         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
6816         {
6817             If ((AMDT == One))
6818             {
6819                 CreateDWordField (CRST, \_SB.TPM._Y20._BAS, MTFB)  // _BAS: Base Address
6820                 CreateDWordField (CRST, \_SB.TPM._Y20._LEN, LTFB)  // _LEN: Length
6821                 MTFB = TPMB /* \TPMB */
6822                 LTFB = 0x1000
6823                 CreateDWordField (CRST, \_SB.TPM._Y21._BAS, MTFC)  // _BAS: Base Address
6824                 CreateDWordField (CRST, \_SB.TPM._Y21._LEN, LTFC)  // _LEN: Length
6825                 MTFC = TPMC /* \TPMC */
6826                 LTFC = 0x1000
6827                 Return (CRST) /* \_SB_.TPM_.CRST */
6828             }
6829             Else
6830             {
6831                 If ((DTPT == One))
6832                 {
6833                     CreateDWordField (CRSD, \_SB.TPM._Y22._BAS, MTFE)  // _BAS: Base Address
6834                     CreateDWordField (CRSD, \_SB.TPM._Y22._LEN, LTFE)  // _LEN: Length
6835                     MTFE = 0xFED40000
6836                     LTFE = 0x5000
6837                     Return (CRSD) /* \_SB_.TPM_.CRSD */
6838                 }
6839                 ElseIf ((TTPF == One))
6840                 {
6841                     CreateDWordField (CRSI, \_SB.TPM._Y23._BAS, MTFD)  // _BAS: Base Address
6842                     CreateDWordField (CRSI, \_SB.TPM._Y23._LEN, LTFD)  // _LEN: Length
6843                     MTFD = 0xFED40000
6844                     LTFD = 0x5000
6845                     Return (CRSI) /* \_SB_.TPM_.CRSI */
6846                 }
6847                 ElseIf ((TTPF == Zero))
6848                 {
6849                     CreateDWordField (CRST, \_SB.TPM._Y20._BAS, MTFF)  // _BAS: Base Address
6850                     MTFF = FTPM /* \FTPM */
6851                     Return (CRST) /* \_SB_.TPM_.CRST */
6852                 }
6853 
6854                 MTFE = Zero
6855                 LTFE = Zero
6856                 Return (CRSI) /* \_SB_.TPM_.CRSI */
6857             }
6858 
6859             Return (CRSI) /* \_SB_.TPM_.CRSI */
6860         }
6861 
6862         OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x5000)
6863         Field (TMMB, ByteAcc, Lock, Preserve)
6864         {
6865             Offset (0x04), 
6866             LCST,   32, 
6867             Offset (0x40), 
6868             CREQ,   32, 
6869             CSTS,   32, 
6870             Offset (0x4C), 
6871             SCMD,   32
6872         }
6873 
6874         OperationRegion (CRBD, SystemMemory, TPMM, 0x48)
6875         Field (CRBD, AnyAcc, NoLock, Preserve)
6876         {
6877             Offset (0x04), 
6878             HERR,   32, 
6879             Offset (0x40), 
6880             HCMD,   32, 
6881             HSTS,   32
6882         }
6883 
6884         Method (_STA, 0, NotSerialized)  // _STA: Status
6885         {
6886             If ((TTDP == Zero))
6887             {
6888                 If (TPMF)
6889                 {
6890                     Return (0x0F)
6891                 }
6892 
6893                 Return (Zero)
6894             }
6895             ElseIf ((TTDP == One))
6896             {
6897                 If (TPMF)
6898                 {
6899                     Return (0x0F)
6900                 }
6901 
6902                 Return (Zero)
6903             }
6904 
6905             Return (Zero)
6906         }
6907 
6908         Method (STRT, 3, Serialized)
6909         {
6910             OperationRegion (TPMR, SystemMemory, FTPM, 0x1000)
6911             Field (TPMR, AnyAcc, NoLock, Preserve)
6912             {
6913                 Offset (0x04), 
6914                 FERR,   32, 
6915                 Offset (0x0C), 
6916                 BEGN,   32
6917             }
6918 
6919             Name (TIMR, Zero)
6920             If ((ToInteger (Arg0) != Zero)){}
6921             Switch (ToInteger (Arg1))
6922             {
6923                 Case (Zero)
6924                 {
6925                     Return (Buffer (One)
6926                     {
6927                          0x03                                             // .
6928                     })
6929                 }
6930                 Case (One)
6931                 {
6932                     TIMR = Zero
6933                     If ((AMDT == One))
6934                     {
6935                         While (((BEGN == One) && (TIMR < 0x0200)))
6936                         {
6937                             If ((BEGN == One))
6938                             {
6939                                 Sleep (One)
6940                                 TIMR++
6941                             }
6942                         }
6943                     }
6944                     ElseIf ((((HSTS & 0x02) | (HSTS & One)
6945                         ) == 0x03))
6946                     {
6947                         HCMD = One
6948                     }
6949                     Else
6950                     {
6951                         FERR = One
6952                         BEGN = Zero
6953                     }
6954 
6955                     Return (Zero)
6956                 }
6957 
6958             }
6959 
6960             Return (One)
6961         }
6962 
6963         Method (CRYF, 3, Serialized)
6964         {
6965             If ((ToInteger (Arg0) != One)){}
6966             Switch (ToInteger (Arg1))
6967             {
6968                 Case (Zero)
6969                 {
6970                     Return (Buffer (One)
6971                     {
6972                          0x03                                             // .
6973                     })
6974                 }
6975                 Case (One)
6976                 {
6977                     Name (TPMV, Package (0x02)
6978                     {
6979                         One, 
6980                         Package (0x02)
6981                         {
6982                             One, 
6983                             0x20
6984                         }
6985                     })
6986                     If ((_STA () == Zero))
6987                     {
6988                         Return (Package (0x01)
6989                         {
6990                             Zero
6991                         })
6992                     }
6993 
6994                     Return (TPMV) /* \_SB_.TPM_.CRYF.TPMV */
6995                 }
6996 
6997             }
6998 
6999             Return (Buffer (One)
7000             {
7001                  0x00                                             // .
7002             })
7003         }
7004     }
7005 
7006     Scope (_SB.TPM)
7007     {
7008         OperationRegion (TSMI, SystemIO, SMIA, 0x02)
7009         Field (TSMI, WordAcc, NoLock, Preserve)
7010         {
7011             SMI,    16
7012         }
7013 
7014         OperationRegion (ATNV, SystemMemory, PPIM, PPIL)
7015         Field (ATNV, AnyAcc, NoLock, Preserve)
7016         {
7017             RQST,   32, 
7018             RCNT,   32, 
7019             ERRO,   32, 
7020             FLAG,   32, 
7021             MISC,   32, 
7022             OPTN,   32, 
7023             SRSP,   32
7024         }
7025 
7026         Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
7027         {
7028             If ((Arg0 == ToUUID ("3dddfaa6-361b-4eb4-a424-8d10089d1653") /* Physical Presence Interface */))
7029             {
7030                 Switch (ToInteger (Arg2))
7031                 {
7032                     Case (Zero)
7033                     {
7034                         Return (Buffer (0x02)
7035                         {
7036                              0xFF, 0x01                                       // ..
7037                         })
7038                     }
7039                     Case (One)
7040                     {
7041                         If ((PPIV == Zero))
7042                         {
7043                             Return ("1.2")
7044                         }
7045                         Else
7046                         {
7047                             Return ("1.3")
7048                         }
7049                     }
7050                     Case (0x02)
7051                     {
7052                         RQST = DerefOf (Arg3 [Zero])
7053                         SRSP = Zero
7054                         FLAG = 0x02
7055                         TMF1 = OFST /* \OFST */
7056                         SRSP = Zero
7057                         SMI = TMF1 /* \TMF1 */
7058                         Return (SRSP) /* \_SB_.TPM_.SRSP */
7059                     }
7060                     Case (0x03)
7061                     {
7062                         Name (PPI1, Package (0x02)
7063                         {
7064                             Zero, 
7065                             Zero
7066                         })
7067                         PPI1 [One] = RQST /* \_SB_.TPM_.RQST */
7068                         Return (PPI1) /* \_SB_.TPM_._DSM.PPI1 */
7069                     }
7070                     Case (0x04)
7071                     {
7072                         Return (TRST) /* \TRST */
7073                     }
7074                     Case (0x05)
7075                     {
7076                         Name (PPI2, Package (0x03)
7077                         {
7078                             Zero, 
7079                             Zero, 
7080                             Zero
7081                         })
7082                         SRSP = Zero
7083                         FLAG = 0x05
7084                         SMI = OFST /* \OFST */
7085                         PPI2 [One] = RCNT /* \_SB_.TPM_.RCNT */
7086                         PPI2 [0x02] = ERRO /* \_SB_.TPM_.ERRO */
7087                         Return (PPI2) /* \_SB_.TPM_._DSM.PPI2 */
7088                     }
7089                     Case (0x06)
7090                     {
7091                         Return (0x03)
7092                     }
7093                     Case (0x07)
7094                     {
7095                         RQST = DerefOf (Arg3 [Zero])
7096                         FLAG = 0x07
7097                         OPTN = Zero
7098                         If ((RQST == 0x17))
7099                         {
7100                             ToInteger (DerefOf (Arg3 [One]), OPTN) /* \_SB_.TPM_.OPTN */
7101                         }
7102 
7103                         TMF1 = OFST /* \OFST */
7104                         SRSP = Zero
7105                         SMI = TMF1 /* \TMF1 */
7106                         Return (SRSP) /* \_SB_.TPM_.SRSP */
7107                     }
7108                     Case (0x08)
7109                     {
7110                         RQST = DerefOf (Arg3 [Zero])
7111                         FLAG = 0x08
7112                         TMF1 = OFST /* \OFST */
7113                         SRSP = Zero
7114                         SMI = TMF1 /* \TMF1 */
7115                         Return (SRSP) /* \_SB_.TPM_.SRSP */
7116                     }
7117                     Default
7118                     {
7119                     }
7120 
7121                 }
7122             }
7123             ElseIf ((Arg0 == ToUUID ("376054ed-cc13-4675-901c-4756d7f2d45d")))
7124             {
7125                 Switch (ToInteger (Arg2))
7126                 {
7127                     Case (Zero)
7128                     {
7129                         Return (Buffer (One)
7130                         {
7131                              0x03                                             // .
7132                         })
7133                     }
7134                     Case (One)
7135                     {
7136                         RQST = DerefOf (Arg3 [Zero])
7137                         FLAG = 0x09
7138                         TMF1 = OFST /* \OFST */
7139                         SRSP = Zero
7140                         SMI = TMF1 /* \TMF1 */
7141                         Return (SRSP) /* \_SB_.TPM_.SRSP */
7142                     }
7143                     Default
7144                     {
7145                     }
7146 
7147                 }
7148             }
7149 
7150             If ((Arg0 == ToUUID ("cf8e16a5-c1e8-4e25-b712-4f54a96702c8")))
7151             {
7152                 Return (CRYF (Arg1, Arg2, Arg3))
7153             }
7154 
7155             If ((Arg0 == ToUUID ("6bbf6cab-5463-4714-b7cd-f0203c0368d4")))
7156             {
7157                 Return (STRT (Arg1, Arg2, Arg3))
7158             }
7159 
7160             Return (Buffer (One)
7161             {
7162                  0x00                                             // .
7163             })
7164         }
7165 
7166         Method (TPTS, 1, Serialized)
7167         {
7168             Switch (ToInteger (Arg0))
7169             {
7170                 Case (0x04)
7171                 {
7172                     RQST = Zero
7173                     FLAG = 0x09
7174                     SRSP = Zero
7175                     SMI = OFST /* \OFST */
7176                 }
7177                 Case (0x05)
7178                 {
7179                     RQST = Zero
7180                     FLAG = 0x09
7181                     SRSP = Zero
7182                     SMI = OFST /* \OFST */
7183                 }
7184 
7185             }
7186 
7187             Sleep (0x012C)
7188         }
7189     }
7190 
7191     Scope (_SB.PCI0.GP17.XHC0)
7192     {
7193         Device (RHUB)
7194         {
7195             Name (_ADR, Zero)  // _ADR: Address
7196             Device (PRT1)
7197             {
7198                 Name (_ADR, One)  // _ADR: Address
7199                 Name (UPC1, Package (0x04)
7200                 {
7201                     0xFF, 
7202                     0x03, 
7203                     Zero, 
7204                     Zero
7205                 })
7206                 Name (UPC2, Package (0x04)
7207                 {
7208                     0xFF, 
7209                     0x03, 
7210                     Zero, 
7211                     Zero
7212                 })
7213                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7214                 {
7215                     If (RV2I)
7216                     {
7217                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT1.UPC2 */
7218                     }
7219                     Else
7220                     {
7221                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT1.UPC1 */
7222                     }
7223                 }
7224 
7225                 Name (PLD1, Package (0x01)
7226                 {
7227                     Buffer (0x14)
7228                     {
7229                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7230                         /* 0008 */  0x01, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7231                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7232                     }
7233                 })
7234                 Name (PLD2, Package (0x01)
7235                 {
7236                     Buffer (0x14)
7237                     {
7238                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7239                         /* 0008 */  0x01, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7240                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7241                     }
7242                 })
7243                 Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
7244                 {
7245                     If (RV2I)
7246                     {
7247                         Return (PLD2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT1.PLD2 */
7248                     }
7249                     Else
7250                     {
7251                         Return (PLD1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT1.PLD1 */
7252                     }
7253                 }
7254             }
7255 
7256             Device (PRT2)
7257             {
7258                 Name (_ADR, 0x02)  // _ADR: Address
7259                 Name (UPC1, Package (0x04)
7260                 {
7261                     0xFF, 
7262                     0x03, 
7263                     Zero, 
7264                     Zero
7265                 })
7266                 Name (UPC2, Package (0x04)
7267                 {
7268                     0xFF, 
7269                     0x03, 
7270                     Zero, 
7271                     Zero
7272                 })
7273                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7274                 {
7275                     If (RV2I)
7276                     {
7277                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT2.UPC2 */
7278                     }
7279                     Else
7280                     {
7281                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT2.UPC1 */
7282                     }
7283                 }
7284 
7285                 Name (PLD1, Package (0x01)
7286                 {
7287                     Buffer (0x14)
7288                     {
7289                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7290                         /* 0008 */  0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,  // ........
7291                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7292                     }
7293                 })
7294                 Name (PLD2, Package (0x01)
7295                 {
7296                     Buffer (0x14)
7297                     {
7298                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7299                         /* 0008 */  0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,  // ........
7300                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7301                     }
7302                 })
7303                 Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
7304                 {
7305                     If (RV2I)
7306                     {
7307                         Return (PLD2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT2.PLD2 */
7308                     }
7309                     Else
7310                     {
7311                         Return (PLD1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT2.PLD1 */
7312                     }
7313                 }
7314             }
7315 
7316             Device (PRT3)
7317             {
7318                 Name (_ADR, 0x03)  // _ADR: Address
7319                 Name (UPC1, Package (0x04)
7320                 {
7321                     0xFF, 
7322                     0x03, 
7323                     Zero, 
7324                     Zero
7325                 })
7326                 Name (UPC2, Package (0x04)
7327                 {
7328                     0xFF, 
7329                     0x03, 
7330                     Zero, 
7331                     Zero
7332                 })
7333                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7334                 {
7335                     If (RV2I)
7336                     {
7337                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT3.UPC2 */
7338                     }
7339                     Else
7340                     {
7341                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT3.UPC1 */
7342                     }
7343                 }
7344 
7345                 Name (PLD1, Package (0x01)
7346                 {
7347                     Buffer (0x14)
7348                     {
7349                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7350                         /* 0008 */  0x01, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00,  // ........
7351                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7352                     }
7353                 })
7354                 Name (PLD2, Package (0x01)
7355                 {
7356                     Buffer (0x14)
7357                     {
7358                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7359                         /* 0008 */  0x01, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00,  // ........
7360                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7361                     }
7362                 })
7363                 Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
7364                 {
7365                     If (RV2I)
7366                     {
7367                         Return (PLD2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT3.PLD2 */
7368                     }
7369                     Else
7370                     {
7371                         Return (PLD1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT3.PLD1 */
7372                     }
7373                 }
7374             }
7375 
7376             Device (PRT4)
7377             {
7378                 Name (_ADR, 0x04)  // _ADR: Address
7379                 Name (UPC1, Package (0x04)
7380                 {
7381                     0xFF, 
7382                     0x03, 
7383                     Zero, 
7384                     Zero
7385                 })
7386                 Name (UPC2, Package (0x04)
7387                 {
7388                     0xFF, 
7389                     0x03, 
7390                     Zero, 
7391                     Zero
7392                 })
7393                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7394                 {
7395                     If (RV2I)
7396                     {
7397                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT4.UPC2 */
7398                     }
7399                     Else
7400                     {
7401                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT4.UPC1 */
7402                     }
7403                 }
7404 
7405                 Name (PLD1, Package (0x01)
7406                 {
7407                     Buffer (0x14)
7408                     {
7409                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7410                         /* 0008 */  0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,  // ........
7411                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7412                     }
7413                 })
7414                 Name (PLD2, Package (0x01)
7415                 {
7416                     Buffer (0x14)
7417                     {
7418                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7419                         /* 0008 */  0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,  // ........
7420                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7421                     }
7422                 })
7423                 Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
7424                 {
7425                     If (RV2I)
7426                     {
7427                         Return (PLD2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT4.PLD2 */
7428                     }
7429                     Else
7430                     {
7431                         Return (PLD1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT4.PLD1 */
7432                     }
7433                 }
7434             }
7435 
7436             Device (PRT5)
7437             {
7438                 Name (_ADR, 0x05)  // _ADR: Address
7439                 Name (UPC1, Package (0x04)
7440                 {
7441                     0xFF, 
7442                     0x03, 
7443                     Zero, 
7444                     Zero
7445                 })
7446                 Name (UPC2, Package (0x04)
7447                 {
7448                     0xFF, 
7449                     0x03, 
7450                     Zero, 
7451                     Zero
7452                 })
7453                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7454                 {
7455                     If (RV2I)
7456                     {
7457                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT5.UPC2 */
7458                     }
7459                     Else
7460                     {
7461                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT5.UPC1 */
7462                     }
7463                 }
7464 
7465                 Name (PLD1, Package (0x01)
7466                 {
7467                     Buffer (0x14)
7468                     {
7469                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7470                         /* 0008 */  0x01, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7471                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7472                     }
7473                 })
7474                 Name (PLD2, Package (0x01)
7475                 {
7476                     Buffer (0x14)
7477                     {
7478                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7479                         /* 0008 */  0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // ........
7480                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7481                     }
7482                 })
7483                 Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
7484                 {
7485                     If (RV2I)
7486                     {
7487                         Return (PLD2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT5.PLD2 */
7488                     }
7489                     Else
7490                     {
7491                         Return (PLD1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT5.PLD1 */
7492                     }
7493                 }
7494             }
7495 
7496             Device (PRT6)
7497             {
7498                 Name (_ADR, 0x06)  // _ADR: Address
7499                 Name (UPC1, Package (0x04)
7500                 {
7501                     0xFF, 
7502                     0x03, 
7503                     Zero, 
7504                     Zero
7505                 })
7506                 Name (UPC2, Package (0x04)
7507                 {
7508                     0xFF, 
7509                     0xFF, 
7510                     Zero, 
7511                     Zero
7512                 })
7513                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7514                 {
7515                     If (RV2I)
7516                     {
7517                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT6.UPC2 */
7518                     }
7519                     Else
7520                     {
7521                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT6.UPC1 */
7522                     }
7523                 }
7524 
7525                 Name (PLD1, Package (0x01)
7526                 {
7527                     Buffer (0x14)
7528                     {
7529                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7530                         /* 0008 */  0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,  // ........
7531                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7532                     }
7533                 })
7534                 Name (PLD2, Package (0x01)
7535                 {
7536                     Buffer (0x14)
7537                     {
7538                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7539                         /* 0008 */  0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,  // ........
7540                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7541                     }
7542                 })
7543                 Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
7544                 {
7545                     If (RV2I)
7546                     {
7547                         Return (PLD2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT6.PLD2 */
7548                     }
7549                     Else
7550                     {
7551                         Return (PLD1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT6.PLD1 */
7552                     }
7553                 }
7554             }
7555 
7556             Device (PRT7)
7557             {
7558                 Name (_ADR, 0x07)  // _ADR: Address
7559                 Name (UPC1, Package (0x04)
7560                 {
7561                     0xFF, 
7562                     0x03, 
7563                     Zero, 
7564                     Zero
7565                 })
7566                 Name (UPC2, Package (0x04)
7567                 {
7568                     0xFF, 
7569                     0x03, 
7570                     Zero, 
7571                     Zero
7572                 })
7573                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7574                 {
7575                     If (RV2I)
7576                     {
7577                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT7.UPC2 */
7578                     }
7579                     Else
7580                     {
7581                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT7.UPC1 */
7582                     }
7583                 }
7584 
7585                 Name (PLD1, Package (0x01)
7586                 {
7587                     Buffer (0x14)
7588                     {
7589                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7590                         /* 0008 */  0x01, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00,  // ........
7591                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7592                     }
7593                 })
7594                 Name (PLD2, Package (0x01)
7595                 {
7596                     Buffer (0x14)
7597                     {
7598                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7599                         /* 0008 */  0x01, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7600                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7601                     }
7602                 })
7603                 Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
7604                 {
7605                     If (RV2I)
7606                     {
7607                         Return (PLD2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT7.PLD2 */
7608                     }
7609                     Else
7610                     {
7611                         Return (PLD1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT7.PLD1 */
7612                     }
7613                 }
7614             }
7615 
7616             Device (PRT8)
7617             {
7618                 Name (_ADR, 0x08)  // _ADR: Address
7619                 Name (UPC1, Package (0x04)
7620                 {
7621                     0xFF, 
7622                     0x03, 
7623                     Zero, 
7624                     Zero
7625                 })
7626                 Name (UPC2, Package (0x04)
7627                 {
7628                     0xFF, 
7629                     0x03, 
7630                     Zero, 
7631                     Zero
7632                 })
7633                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7634                 {
7635                     If (RV2I)
7636                     {
7637                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT8.UPC2 */
7638                     }
7639                     Else
7640                     {
7641                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT8.UPC1 */
7642                     }
7643                 }
7644 
7645                 Name (PLD1, Package (0x01)
7646                 {
7647                     Buffer (0x14)
7648                     {
7649                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7650                         /* 0008 */  0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,  // ........
7651                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7652                     }
7653                 })
7654                 Name (PLD2, Package (0x01)
7655                 {
7656                     Buffer (0x14)
7657                     {
7658                         /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
7659                         /* 0008 */  0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,  // ........
7660                         /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                           // ....
7661                     }
7662                 })
7663                 Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
7664                 {
7665                     If (RV2I)
7666                     {
7667                         Return (PLD2) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT8.PLD2 */
7668                     }
7669                     Else
7670                     {
7671                         Return (PLD1) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT8.PLD1 */
7672                     }
7673                 }
7674             }
7675 
7676             Device (PRT9)
7677             {
7678                 Name (_ADR, 0x09)  // _ADR: Address
7679                 Method (_STA, 0, NotSerialized)  // _STA: Status
7680                 {
7681                     If (RV2I)
7682                     {
7683                         Return (0x0F)
7684                     }
7685                     Else
7686                     {
7687                         Return (Zero)
7688                     }
7689                 }
7690 
7691                 Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
7692                 {
7693                     0xFF, 
7694                     0x03, 
7695                     Zero, 
7696                     Zero
7697                 })
7698                 Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
7699                 {
7700                     ToPLD (
7701                         PLD_Revision           = 0x2,
7702                         PLD_IgnoreColor        = 0x0,
7703                         PLD_Red                = 0x0,
7704                         PLD_Green              = 0x0,
7705                         PLD_Blue               = 0x0,
7706                         PLD_Width              = 0x0,
7707                         PLD_Height             = 0x0,
7708                         PLD_UserVisible        = 0x1,
7709                         PLD_Dock               = 0x0,
7710                         PLD_Lid                = 0x0,
7711                         PLD_Panel              = "TOP",
7712                         PLD_VerticalPosition   = "UPPER",
7713                         PLD_HorizontalPosition = "LEFT",
7714                         PLD_Shape              = "ROUND",
7715                         PLD_GroupOrientation   = 0x0,
7716                         PLD_GroupToken         = 0x0,
7717                         PLD_GroupPosition      = 0x3,
7718                         PLD_Bay                = 0x0,
7719                         PLD_Ejectable          = 0x0,
7720                         PLD_EjectRequired      = 0x0,
7721                         PLD_CabinetNumber      = 0x0,
7722                         PLD_CardCageNumber     = 0x0,
7723                         PLD_Reference          = 0x0,
7724                         PLD_Rotation           = 0x0,
7725                         PLD_Order              = 0x0,
7726                         PLD_VerticalOffset     = 0xFFFF,
7727                         PLD_HorizontalOffset   = 0xFFFF)
7728 
7729                 })
7730             }
7731 
7732             Device (PRTA)
7733             {
7734                 Name (_ADR, 0x0A)  // _ADR: Address
7735                 Method (_STA, 0, NotSerialized)  // _STA: Status
7736                 {
7737                     If (RV2I)
7738                     {
7739                         Return (0x0F)
7740                     }
7741                     Else
7742                     {
7743                         Return (Zero)
7744                     }
7745                 }
7746 
7747                 Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
7748                 {
7749                     0xFF, 
7750                     0x03, 
7751                     Zero, 
7752                     Zero
7753                 })
7754                 Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
7755                 {
7756                     ToPLD (
7757                         PLD_Revision           = 0x2,
7758                         PLD_IgnoreColor        = 0x0,
7759                         PLD_Red                = 0x0,
7760                         PLD_Green              = 0x0,
7761                         PLD_Blue               = 0x0,
7762                         PLD_Width              = 0x0,
7763                         PLD_Height             = 0x0,
7764                         PLD_UserVisible        = 0x1,
7765                         PLD_Dock               = 0x0,
7766                         PLD_Lid                = 0x0,
7767                         PLD_Panel              = "TOP",
7768                         PLD_VerticalPosition   = "UPPER",
7769                         PLD_HorizontalPosition = "LEFT",
7770                         PLD_Shape              = "ROUND",
7771                         PLD_GroupOrientation   = 0x0,
7772                         PLD_GroupToken         = 0x0,
7773                         PLD_GroupPosition      = 0x4,
7774                         PLD_Bay                = 0x0,
7775                         PLD_Ejectable          = 0x0,
7776                         PLD_EjectRequired      = 0x0,
7777                         PLD_CabinetNumber      = 0x0,
7778                         PLD_CardCageNumber     = 0x0,
7779                         PLD_Reference          = 0x0,
7780                         PLD_Rotation           = 0x0,
7781                         PLD_Order              = 0x0,
7782                         PLD_VerticalOffset     = 0xFFFF,
7783                         PLD_HorizontalOffset   = 0xFFFF)
7784 
7785                 })
7786             }
7787         }
7788     }
7789 
7790     Scope (_SB.PCI0.GP17.XHC1)
7791     {
7792         Device (RHUB)
7793         {
7794             Name (_ADR, Zero)  // _ADR: Address
7795             Method (_STA, 0, NotSerialized)  // _STA: Status
7796             {
7797                 If (RV2I)
7798                 {
7799                     Return (Zero)
7800                 }
7801                 Else
7802                 {
7803                     Return (0x0F)
7804                 }
7805             }
7806 
7807             Device (PRT1)
7808             {
7809                 Name (_ADR, One)  // _ADR: Address
7810                 Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
7811                 {
7812                     0xFF, 
7813                     0x03, 
7814                     Zero, 
7815                     Zero
7816                 })
7817                 Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
7818                 {
7819                     ToPLD (
7820                         PLD_Revision           = 0x2,
7821                         PLD_IgnoreColor        = 0x0,
7822                         PLD_Red                = 0x0,
7823                         PLD_Green              = 0x0,
7824                         PLD_Blue               = 0x0,
7825                         PLD_Width              = 0x0,
7826                         PLD_Height             = 0x0,
7827                         PLD_UserVisible        = 0x0,
7828                         PLD_Dock               = 0x0,
7829                         PLD_Lid                = 0x0,
7830                         PLD_Panel              = "TOP",
7831                         PLD_VerticalPosition   = "UPPER",
7832                         PLD_HorizontalPosition = "LEFT",
7833                         PLD_Shape              = "ROUND",
7834                         PLD_GroupOrientation   = 0x0,
7835                         PLD_GroupToken         = 0x0,
7836                         PLD_GroupPosition      = 0x5,
7837                         PLD_Bay                = 0x0,
7838                         PLD_Ejectable          = 0x0,
7839                         PLD_EjectRequired      = 0x0,
7840                         PLD_CabinetNumber      = 0x0,
7841                         PLD_CardCageNumber     = 0x0,
7842                         PLD_Reference          = 0x0,
7843                         PLD_Rotation           = 0x0,
7844                         PLD_Order              = 0x0,
7845                         PLD_VerticalOffset     = 0xFFFF,
7846                         PLD_HorizontalOffset   = 0xFFFF)
7847 
7848                 })
7849             }
7850 
7851             Device (PRT2)
7852             {
7853                 Name (_ADR, 0x02)  // _ADR: Address
7854                 Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
7855                 {
7856                     0xFF, 
7857                     0xFF, 
7858                     Zero, 
7859                     Zero
7860                 })
7861                 Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
7862                 {
7863                     ToPLD (
7864                         PLD_Revision           = 0x2,
7865                         PLD_IgnoreColor        = 0x0,
7866                         PLD_Red                = 0x0,
7867                         PLD_Green              = 0x0,
7868                         PLD_Blue               = 0x0,
7869                         PLD_Width              = 0x0,
7870                         PLD_Height             = 0x0,
7871                         PLD_UserVisible        = 0x0,
7872                         PLD_Dock               = 0x0,
7873                         PLD_Lid                = 0x0,
7874                         PLD_Panel              = "TOP",
7875                         PLD_VerticalPosition   = "UPPER",
7876                         PLD_HorizontalPosition = "LEFT",
7877                         PLD_Shape              = "ROUND",
7878                         PLD_GroupOrientation   = 0x0,
7879                         PLD_GroupToken         = 0x0,
7880                         PLD_GroupPosition      = 0x6,
7881                         PLD_Bay                = 0x0,
7882                         PLD_Ejectable          = 0x0,
7883                         PLD_EjectRequired      = 0x0,
7884                         PLD_CabinetNumber      = 0x0,
7885                         PLD_CardCageNumber     = 0x0,
7886                         PLD_Reference          = 0x0,
7887                         PLD_Rotation           = 0x0,
7888                         PLD_Order              = 0x0,
7889                         PLD_VerticalOffset     = 0xFFFF,
7890                         PLD_HorizontalOffset   = 0xFFFF)
7891 
7892                 })
7893             }
7894 
7895             Device (PRT3)
7896             {
7897                 Name (_ADR, 0x03)  // _ADR: Address
7898                 Name (UPC1, Package (0x04)
7899                 {
7900                     Zero, 
7901                     0x03, 
7902                     Zero, 
7903                     Zero
7904                 })
7905                 Name (UPC2, Package (0x04)
7906                 {
7907                     Zero, 
7908                     0x03, 
7909                     Zero, 
7910                     Zero
7911                 })
7912                 Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
7913                 {
7914                     If (ISDS)
7915                     {
7916                         Return (UPC2) /* \_SB_.PCI0.GP17.XHC1.RHUB.PRT3.UPC2 */
7917                     }
7918                     Else
7919                     {
7920                         Return (UPC1) /* \_SB_.PCI0.GP17.XHC1.RHUB.PRT3.UPC1 */
7921                     }
7922                 }
7923 
7924                 Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
7925                 {
7926                     ToPLD (
7927                         PLD_Revision           = 0x2,
7928                         PLD_IgnoreColor        = 0x1,
7929                         PLD_Red                = 0x0,
7930                         PLD_Green              = 0x0,
7931                         PLD_Blue               = 0x0,
7932                         PLD_Width              = 0x0,
7933                         PLD_Height             = 0x0,
7934                         PLD_UserVisible        = 0x1,
7935                         PLD_Dock               = 0x0,
7936                         PLD_Lid                = 0x0,
7937                         PLD_Panel              = "LEFT",
7938                         PLD_VerticalPosition   = "UPPER",
7939                         PLD_HorizontalPosition = "LEFT",
7940                         PLD_Shape              = "VERTICALRECTANGLE",
7941                         PLD_GroupOrientation   = 0x0,
7942                         PLD_GroupToken         = 0x0,
7943                         PLD_GroupPosition      = 0x5,
7944                         PLD_Bay                = 0x0,
7945                         PLD_Ejectable          = 0x1,
7946                         PLD_EjectRequired      = 0x0,
7947                         PLD_CabinetNumber      = 0x0,
7948                         PLD_CardCageNumber     = 0x0,
7949                         PLD_Reference          = 0x0,
7950                         PLD_Rotation           = 0x0,
7951                         PLD_Order              = 0x0,
7952                         PLD_VerticalOffset     = 0xFFFF,
7953                         PLD_HorizontalOffset   = 0xFFFF)
7954 
7955                 })
7956             }
7957         }
7958     }
7959 
7960     Scope (_SB.I2CA)
7961     {
7962         Device (WTP1)
7963         {
7964             Name (_ADR, Zero)  // _ADR: Address
7965             Name (_HID, "STK0001")  // _HID: Hardware ID
7966             Name (_CID, "SPBTestKMDF")  // _CID: Compatible ID
7967             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
7968             {
7969                 Name (RBUF, ResourceTemplate ()
7970                 {
7971                     I2cSerialBusV2 (0x007F, ControllerInitiated, 0x000186A0,
7972                         AddressingMode7Bit, "\\_SB.I2CA",
7973                         0x00, ResourceConsumer, , Exclusive,
7974                         )
7975                 })
7976                 Return (RBUF) /* \_SB_.I2CA.WTP1._CRS.RBUF */
7977             }
7978 
7979             Method (_STA, 0, NotSerialized)  // _STA: Status
7980             {
7981                 If ((MWTT == One))
7982                 {
7983                     Return (0x0F)
7984                 }
7985                 Else
7986                 {
7987                     Return (Zero)
7988                 }
7989             }
7990         }
7991 
7992         Device (MTP1)
7993         {
7994             Name (_HID, "STK0001")  // _HID: Hardware ID
7995             Name (_CID, "WITTTest")  // _CID: Compatible ID
7996             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
7997             {
7998                 Name (RBUF, ResourceTemplate ()
7999                 {
8000                     I2cSerialBusV2 (0x0011, ControllerInitiated, 0x000186A0,
8001                         AddressingMode7Bit, "\\_SB_.I2CA",
8002                         0x00, ResourceConsumer, , Exclusive,
8003                         )
8004                 })
8005                 Return (RBUF) /* \_SB_.I2CA.MTP1._CRS.RBUF */
8006             }
8007 
8008             Method (_STA, 0, NotSerialized)  // _STA: Status
8009             {
8010                 If ((MWTT == Zero))
8011                 {
8012                     Return (0x0F)
8013                 }
8014                 Else
8015                 {
8016                     Return (Zero)
8017                 }
8018             }
8019         }
8020 
8021         Device (WTP2)
8022         {
8023             Name (_ADR, Zero)  // _ADR: Address
8024             Name (_HID, "STK0002")  // _HID: Hardware ID
8025             Name (_CID, "SPBTestKMDF")  // _CID: Compatible ID
8026             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8027             {
8028                 Name (RBUF, ResourceTemplate ()
8029                 {
8030                     I2cSerialBusV2 (0x0011, ControllerInitiated, 0x000186A0,
8031                         AddressingMode7Bit, "\\_SB.I2CA",
8032                         0x00, ResourceConsumer, , Exclusive,
8033                         )
8034                 })
8035                 Return (RBUF) /* \_SB_.I2CA.WTP2._CRS.RBUF */
8036             }
8037 
8038             Method (_STA, 0, NotSerialized)  // _STA: Status
8039             {
8040                 If ((MWTT == One))
8041                 {
8042                     Return (0x0F)
8043                 }
8044                 Else
8045                 {
8046                     Return (Zero)
8047                 }
8048             }
8049         }
8050 
8051         Device (MTP2)
8052         {
8053             Name (_HID, "STK0002")  // _HID: Hardware ID
8054             Name (_CID, "WITTTest")  // _CID: Compatible ID
8055             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8056             {
8057                 Name (RBUF, ResourceTemplate ()
8058                 {
8059                     I2cSerialBusV2 (0x0012, ControllerInitiated, 0x00061A80,
8060                         AddressingMode7Bit, "\\_SB_.I2CA",
8061                         0x00, ResourceConsumer, , Exclusive,
8062                         )
8063                 })
8064                 Return (RBUF) /* \_SB_.I2CA.MTP2._CRS.RBUF */
8065             }
8066 
8067             Method (_STA, 0, NotSerialized)  // _STA: Status
8068             {
8069                 If ((MWTT == Zero))
8070                 {
8071                     Return (0x0F)
8072                 }
8073                 Else
8074                 {
8075                     Return (Zero)
8076                 }
8077             }
8078         }
8079 
8080         Device (WTP3)
8081         {
8082             Name (_ADR, Zero)  // _ADR: Address
8083             Name (_HID, "STK0003")  // _HID: Hardware ID
8084             Name (_CID, "SPBTestKMDF")  // _CID: Compatible ID
8085             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8086             {
8087                 Name (RBUF, ResourceTemplate ()
8088                 {
8089                     I2cSerialBusV2 (0x0012, ControllerInitiated, 0x00061A80,
8090                         AddressingMode7Bit, "\\_SB.I2CA",
8091                         0x00, ResourceConsumer, , Exclusive,
8092                         )
8093                 })
8094                 Return (RBUF) /* \_SB_.I2CA.WTP3._CRS.RBUF */
8095             }
8096 
8097             Method (_STA, 0, NotSerialized)  // _STA: Status
8098             {
8099                 If ((MWTT == One))
8100                 {
8101                     Return (0x0F)
8102                 }
8103                 Else
8104                 {
8105                     Return (Zero)
8106                 }
8107             }
8108         }
8109 
8110         Device (MTP3)
8111         {
8112             Name (_HID, "STK0003")  // _HID: Hardware ID
8113             Name (_CID, "WITTTest")  // _CID: Compatible ID
8114             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8115             {
8116                 Name (RBUF, ResourceTemplate ()
8117                 {
8118                     I2cSerialBusV2 (0x0013, ControllerInitiated, 0x000F4240,
8119                         AddressingMode7Bit, "\\_SB_.I2CA",
8120                         0x00, ResourceConsumer, , Exclusive,
8121                         )
8122                 })
8123                 Return (RBUF) /* \_SB_.I2CA.MTP3._CRS.RBUF */
8124             }
8125 
8126             Method (_STA, 0, NotSerialized)  // _STA: Status
8127             {
8128                 If ((MWTT == Zero))
8129                 {
8130                     Return (0x0F)
8131                 }
8132                 Else
8133                 {
8134                     Return (Zero)
8135                 }
8136             }
8137         }
8138 
8139         Device (WTP4)
8140         {
8141             Name (_ADR, Zero)  // _ADR: Address
8142             Name (_HID, "STK0004")  // _HID: Hardware ID
8143             Name (_CID, "SPBTestKMDF")  // _CID: Compatible ID
8144             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8145             {
8146                 Name (RBUF, ResourceTemplate ()
8147                 {
8148                     I2cSerialBusV2 (0x0013, ControllerInitiated, 0x000F4240,
8149                         AddressingMode7Bit, "\\_SB.I2CA",
8150                         0x00, ResourceConsumer, , Exclusive,
8151                         )
8152                 })
8153                 Return (RBUF) /* \_SB_.I2CA.WTP4._CRS.RBUF */
8154             }
8155 
8156             Method (_STA, 0, NotSerialized)  // _STA: Status
8157             {
8158                 If ((MWTT == One))
8159                 {
8160                     Return (0x0F)
8161                 }
8162                 Else
8163                 {
8164                     Return (Zero)
8165                 }
8166             }
8167         }
8168 
8169         Device (MTP4)
8170         {
8171             Name (_HID, "STK0004")  // _HID: Hardware ID
8172             Name (_CID, "WITTTest")  // _CID: Compatible ID
8173             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8174             {
8175                 Name (RBUF, ResourceTemplate ()
8176                 {
8177                     I2cSerialBusV2 (0x0014, ControllerInitiated, 0x000222E0,
8178                         AddressingMode7Bit, "\\_SB_.I2CA",
8179                         0x00, ResourceConsumer, , Exclusive,
8180                         )
8181                 })
8182                 Return (RBUF) /* \_SB_.I2CA.MTP4._CRS.RBUF */
8183             }
8184 
8185             Method (_STA, 0, NotSerialized)  // _STA: Status
8186             {
8187                 If ((MWTT == Zero))
8188                 {
8189                     Return (0x0F)
8190                 }
8191                 Else
8192                 {
8193                     Return (Zero)
8194                 }
8195             }
8196         }
8197 
8198         Device (MTP5)
8199         {
8200             Name (_HID, "STK0005")  // _HID: Hardware ID
8201             Name (_CID, "WITTTest")  // _CID: Compatible ID
8202             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8203             {
8204                 Name (RBUF, ResourceTemplate ()
8205                 {
8206                     I2cSerialBusV2 (0x0015, ControllerInitiated, 0x00053020,
8207                         AddressingMode7Bit, "\\_SB_.I2CA",
8208                         0x00, ResourceConsumer, , Exclusive,
8209                         )
8210                 })
8211                 Return (RBUF) /* \_SB_.I2CA.MTP5._CRS.RBUF */
8212             }
8213 
8214             Method (_STA, 0, NotSerialized)  // _STA: Status
8215             {
8216                 If ((MWTT == Zero))
8217                 {
8218                     Return (0x0F)
8219                 }
8220                 Else
8221                 {
8222                     Return (Zero)
8223                 }
8224             }
8225         }
8226     }
8227 
8228     Scope (_SB.I2CB)
8229     {
8230         Device (WT21)
8231         {
8232             Name (_ADR, Zero)  // _ADR: Address
8233             Name (_HID, "STK00012")  // _HID: Hardware ID
8234             Name (_CID, "SPBTestKMDF2")  // _CID: Compatible ID
8235             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8236             {
8237                 Name (RBUF, ResourceTemplate ()
8238                 {
8239                     I2cSerialBusV2 (0x007F, ControllerInitiated, 0x000186A0,
8240                         AddressingMode7Bit, "\\_SB.I2CB",
8241                         0x00, ResourceConsumer, , Exclusive,
8242                         )
8243                 })
8244                 Return (RBUF) /* \_SB_.I2CB.WT21._CRS.RBUF */
8245             }
8246 
8247             Method (_STA, 0, NotSerialized)  // _STA: Status
8248             {
8249                 If ((MWTT == One))
8250                 {
8251                     Return (0x0F)
8252                 }
8253                 Else
8254                 {
8255                     Return (Zero)
8256                 }
8257             }
8258         }
8259 
8260         Device (MT21)
8261         {
8262             Name (_HID, "STK00012")  // _HID: Hardware ID
8263             Name (_CID, "WITTTest")  // _CID: Compatible ID
8264             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8265             {
8266                 Name (RBUF, ResourceTemplate ()
8267                 {
8268                     I2cSerialBusV2 (0x0011, ControllerInitiated, 0x000186A0,
8269                         AddressingMode7Bit, "\\_SB_.I2CB",
8270                         0x00, ResourceConsumer, , Exclusive,
8271                         )
8272                 })
8273                 Return (RBUF) /* \_SB_.I2CB.MT21._CRS.RBUF */
8274             }
8275 
8276             Method (_STA, 0, NotSerialized)  // _STA: Status
8277             {
8278                 If ((MWTT == Zero))
8279                 {
8280                     Return (0x0F)
8281                 }
8282                 Else
8283                 {
8284                     Return (Zero)
8285                 }
8286             }
8287         }
8288 
8289         Device (WT22)
8290         {
8291             Name (_ADR, Zero)  // _ADR: Address
8292             Name (_HID, "STK00022")  // _HID: Hardware ID
8293             Name (_CID, "SPBTestKMDF2")  // _CID: Compatible ID
8294             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8295             {
8296                 Name (RBUF, ResourceTemplate ()
8297                 {
8298                     I2cSerialBusV2 (0x0011, ControllerInitiated, 0x000186A0,
8299                         AddressingMode7Bit, "\\_SB.I2CB",
8300                         0x00, ResourceConsumer, , Exclusive,
8301                         )
8302                 })
8303                 Return (RBUF) /* \_SB_.I2CB.WT22._CRS.RBUF */
8304             }
8305 
8306             Method (_STA, 0, NotSerialized)  // _STA: Status
8307             {
8308                 If ((MWTT == One))
8309                 {
8310                     Return (0x0F)
8311                 }
8312                 Else
8313                 {
8314                     Return (Zero)
8315                 }
8316             }
8317         }
8318 
8319         Device (MT22)
8320         {
8321             Name (_HID, "STK00022")  // _HID: Hardware ID
8322             Name (_CID, "WITTTest")  // _CID: Compatible ID
8323             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8324             {
8325                 Name (RBUF, ResourceTemplate ()
8326                 {
8327                     I2cSerialBusV2 (0x0012, ControllerInitiated, 0x00061A80,
8328                         AddressingMode7Bit, "\\_SB_.I2CB",
8329                         0x00, ResourceConsumer, , Exclusive,
8330                         )
8331                 })
8332                 Return (RBUF) /* \_SB_.I2CB.MT22._CRS.RBUF */
8333             }
8334 
8335             Method (_STA, 0, NotSerialized)  // _STA: Status
8336             {
8337                 If ((MWTT == Zero))
8338                 {
8339                     Return (0x0F)
8340                 }
8341                 Else
8342                 {
8343                     Return (Zero)
8344                 }
8345             }
8346         }
8347 
8348         Device (WT23)
8349         {
8350             Name (_ADR, Zero)  // _ADR: Address
8351             Name (_HID, "STK00032")  // _HID: Hardware ID
8352             Name (_CID, "SPBTestKMDF2")  // _CID: Compatible ID
8353             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8354             {
8355                 Name (RBUF, ResourceTemplate ()
8356                 {
8357                     I2cSerialBusV2 (0x0012, ControllerInitiated, 0x00061A80,
8358                         AddressingMode7Bit, "\\_SB.I2CB",
8359                         0x00, ResourceConsumer, , Exclusive,
8360                         )
8361                 })
8362                 Return (RBUF) /* \_SB_.I2CB.WT23._CRS.RBUF */
8363             }
8364 
8365             Method (_STA, 0, NotSerialized)  // _STA: Status
8366             {
8367                 If ((MWTT == One))
8368                 {
8369                     Return (0x0F)
8370                 }
8371                 Else
8372                 {
8373                     Return (Zero)
8374                 }
8375             }
8376         }
8377 
8378         Device (MT23)
8379         {
8380             Name (_HID, "STK00032")  // _HID: Hardware ID
8381             Name (_CID, "WITTTest")  // _CID: Compatible ID
8382             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8383             {
8384                 Name (RBUF, ResourceTemplate ()
8385                 {
8386                     I2cSerialBusV2 (0x0013, ControllerInitiated, 0x000F4240,
8387                         AddressingMode7Bit, "\\_SB_.I2CB",
8388                         0x00, ResourceConsumer, , Exclusive,
8389                         )
8390                 })
8391                 Return (RBUF) /* \_SB_.I2CB.MT23._CRS.RBUF */
8392             }
8393 
8394             Method (_STA, 0, NotSerialized)  // _STA: Status
8395             {
8396                 If ((MWTT == Zero))
8397                 {
8398                     Return (0x0F)
8399                 }
8400                 Else
8401                 {
8402                     Return (Zero)
8403                 }
8404             }
8405         }
8406 
8407         Device (WT24)
8408         {
8409             Name (_ADR, Zero)  // _ADR: Address
8410             Name (_HID, "STK00042")  // _HID: Hardware ID
8411             Name (_CID, "SPBTestKMDF2")  // _CID: Compatible ID
8412             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8413             {
8414                 Name (RBUF, ResourceTemplate ()
8415                 {
8416                     I2cSerialBusV2 (0x0013, ControllerInitiated, 0x000F4240,
8417                         AddressingMode7Bit, "\\_SB.I2CB",
8418                         0x00, ResourceConsumer, , Exclusive,
8419                         )
8420                 })
8421                 Return (RBUF) /* \_SB_.I2CB.WT24._CRS.RBUF */
8422             }
8423 
8424             Method (_STA, 0, NotSerialized)  // _STA: Status
8425             {
8426                 If ((MWTT == One))
8427                 {
8428                     Return (0x0F)
8429                 }
8430                 Else
8431                 {
8432                     Return (Zero)
8433                 }
8434             }
8435         }
8436 
8437         Device (MT24)
8438         {
8439             Name (_HID, "STK00042")  // _HID: Hardware ID
8440             Name (_CID, "WITTTest")  // _CID: Compatible ID
8441             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8442             {
8443                 Name (RBUF, ResourceTemplate ()
8444                 {
8445                     I2cSerialBusV2 (0x0014, ControllerInitiated, 0x000222E0,
8446                         AddressingMode7Bit, "\\_SB_.I2CB",
8447                         0x00, ResourceConsumer, , Exclusive,
8448                         )
8449                 })
8450                 Return (RBUF) /* \_SB_.I2CB.MT24._CRS.RBUF */
8451             }
8452 
8453             Method (_STA, 0, NotSerialized)  // _STA: Status
8454             {
8455                 If ((MWTT == Zero))
8456                 {
8457                     Return (0x0F)
8458                 }
8459                 Else
8460                 {
8461                     Return (Zero)
8462                 }
8463             }
8464         }
8465 
8466         Device (MT25)
8467         {
8468             Name (_HID, "STK00052")  // _HID: Hardware ID
8469             Name (_CID, "WITTTest")  // _CID: Compatible ID
8470             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8471             {
8472                 Name (RBUF, ResourceTemplate ()
8473                 {
8474                     I2cSerialBusV2 (0x0015, ControllerInitiated, 0x00053020,
8475                         AddressingMode7Bit, "\\_SB_.I2CB",
8476                         0x00, ResourceConsumer, , Exclusive,
8477                         )
8478                 })
8479                 Return (RBUF) /* \_SB_.I2CB.MT25._CRS.RBUF */
8480             }
8481 
8482             Method (_STA, 0, NotSerialized)  // _STA: Status
8483             {
8484                 If ((MWTT == Zero))
8485                 {
8486                     Return (0x0F)
8487                 }
8488                 Else
8489                 {
8490                     Return (Zero)
8491                 }
8492             }
8493         }
8494     }
8495 
8496     Scope (_SB.I2CC)
8497     {
8498         Device (WT31)
8499         {
8500             Name (_ADR, Zero)  // _ADR: Address
8501             Name (_HID, "STK00013")  // _HID: Hardware ID
8502             Name (_CID, "SPBTestKMDF3")  // _CID: Compatible ID
8503             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8504             {
8505                 Name (RBUF, ResourceTemplate ()
8506                 {
8507                     I2cSerialBusV2 (0x007F, ControllerInitiated, 0x000186A0,
8508                         AddressingMode7Bit, "\\_SB.I2CC",
8509                         0x00, ResourceConsumer, , Exclusive,
8510                         )
8511                 })
8512                 Return (RBUF) /* \_SB_.I2CC.WT31._CRS.RBUF */
8513             }
8514 
8515             Method (_STA, 0, NotSerialized)  // _STA: Status
8516             {
8517                 If ((MWTT == One))
8518                 {
8519                     Return (0x0F)
8520                 }
8521                 Else
8522                 {
8523                     Return (Zero)
8524                 }
8525             }
8526         }
8527 
8528         Device (MT31)
8529         {
8530             Name (_HID, "STK00013")  // _HID: Hardware ID
8531             Name (_CID, "WITTTest")  // _CID: Compatible ID
8532             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8533             {
8534                 Name (RBUF, ResourceTemplate ()
8535                 {
8536                     I2cSerialBusV2 (0x0011, ControllerInitiated, 0x000186A0,
8537                         AddressingMode7Bit, "\\_SB_.I2CC",
8538                         0x00, ResourceConsumer, , Exclusive,
8539                         )
8540                 })
8541                 Return (RBUF) /* \_SB_.I2CC.MT31._CRS.RBUF */
8542             }
8543 
8544             Method (_STA, 0, NotSerialized)  // _STA: Status
8545             {
8546                 If ((MWTT == Zero))
8547                 {
8548                     Return (0x0F)
8549                 }
8550                 Else
8551                 {
8552                     Return (Zero)
8553                 }
8554             }
8555         }
8556 
8557         Device (WT32)
8558         {
8559             Name (_ADR, Zero)  // _ADR: Address
8560             Name (_HID, "STK00023")  // _HID: Hardware ID
8561             Name (_CID, "SPBTestKMDF3")  // _CID: Compatible ID
8562             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8563             {
8564                 Name (RBUF, ResourceTemplate ()
8565                 {
8566                     I2cSerialBusV2 (0x0011, ControllerInitiated, 0x000186A0,
8567                         AddressingMode7Bit, "\\_SB.I2CC",
8568                         0x00, ResourceConsumer, , Exclusive,
8569                         )
8570                 })
8571                 Return (RBUF) /* \_SB_.I2CC.WT32._CRS.RBUF */
8572             }
8573 
8574             Method (_STA, 0, NotSerialized)  // _STA: Status
8575             {
8576                 If ((MWTT == One))
8577                 {
8578                     Return (0x0F)
8579                 }
8580                 Else
8581                 {
8582                     Return (Zero)
8583                 }
8584             }
8585         }
8586 
8587         Device (MT32)
8588         {
8589             Name (_HID, "STK00023")  // _HID: Hardware ID
8590             Name (_CID, "WITTTest")  // _CID: Compatible ID
8591             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8592             {
8593                 Name (RBUF, ResourceTemplate ()
8594                 {
8595                     I2cSerialBusV2 (0x0012, ControllerInitiated, 0x00061A80,
8596                         AddressingMode7Bit, "\\_SB_.I2CC",
8597                         0x00, ResourceConsumer, , Exclusive,
8598                         )
8599                 })
8600                 Return (RBUF) /* \_SB_.I2CC.MT32._CRS.RBUF */
8601             }
8602 
8603             Method (_STA, 0, NotSerialized)  // _STA: Status
8604             {
8605                 If ((MWTT == Zero))
8606                 {
8607                     Return (0x0F)
8608                 }
8609                 Else
8610                 {
8611                     Return (Zero)
8612                 }
8613             }
8614         }
8615 
8616         Device (WT33)
8617         {
8618             Name (_ADR, Zero)  // _ADR: Address
8619             Name (_HID, "STK00033")  // _HID: Hardware ID
8620             Name (_CID, "SPBTestKMDF3")  // _CID: Compatible ID
8621             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8622             {
8623                 Name (RBUF, ResourceTemplate ()
8624                 {
8625                     I2cSerialBusV2 (0x0012, ControllerInitiated, 0x00061A80,
8626                         AddressingMode7Bit, "\\_SB.I2CC",
8627                         0x00, ResourceConsumer, , Exclusive,
8628                         )
8629                 })
8630                 Return (RBUF) /* \_SB_.I2CC.WT33._CRS.RBUF */
8631             }
8632 
8633             Method (_STA, 0, NotSerialized)  // _STA: Status
8634             {
8635                 If ((MWTT == One))
8636                 {
8637                     Return (0x0F)
8638                 }
8639                 Else
8640                 {
8641                     Return (Zero)
8642                 }
8643             }
8644         }
8645 
8646         Device (MT33)
8647         {
8648             Name (_HID, "STK00033")  // _HID: Hardware ID
8649             Name (_CID, "WITTTest")  // _CID: Compatible ID
8650             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8651             {
8652                 Name (RBUF, ResourceTemplate ()
8653                 {
8654                     I2cSerialBusV2 (0x0013, ControllerInitiated, 0x000F4240,
8655                         AddressingMode7Bit, "\\_SB_.I2CC",
8656                         0x00, ResourceConsumer, , Exclusive,
8657                         )
8658                 })
8659                 Return (RBUF) /* \_SB_.I2CC.MT33._CRS.RBUF */
8660             }
8661 
8662             Method (_STA, 0, NotSerialized)  // _STA: Status
8663             {
8664                 If ((MWTT == Zero))
8665                 {
8666                     Return (0x0F)
8667                 }
8668                 Else
8669                 {
8670                     Return (Zero)
8671                 }
8672             }
8673         }
8674 
8675         Device (WT34)
8676         {
8677             Name (_ADR, Zero)  // _ADR: Address
8678             Name (_HID, "STK00043")  // _HID: Hardware ID
8679             Name (_CID, "SPBTestKMDF3")  // _CID: Compatible ID
8680             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8681             {
8682                 Name (RBUF, ResourceTemplate ()
8683                 {
8684                     I2cSerialBusV2 (0x0013, ControllerInitiated, 0x000F4240,
8685                         AddressingMode7Bit, "\\_SB.I2CC",
8686                         0x00, ResourceConsumer, , Exclusive,
8687                         )
8688                 })
8689                 Return (RBUF) /* \_SB_.I2CC.WT34._CRS.RBUF */
8690             }
8691 
8692             Method (_STA, 0, NotSerialized)  // _STA: Status
8693             {
8694                 If ((MWTT == One))
8695                 {
8696                     Return (0x0F)
8697                 }
8698                 Else
8699                 {
8700                     Return (Zero)
8701                 }
8702             }
8703         }
8704 
8705         Device (MT34)
8706         {
8707             Name (_HID, "STK00043")  // _HID: Hardware ID
8708             Name (_CID, "WITTTest")  // _CID: Compatible ID
8709             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8710             {
8711                 Name (RBUF, ResourceTemplate ()
8712                 {
8713                     I2cSerialBusV2 (0x0014, ControllerInitiated, 0x000222E0,
8714                         AddressingMode7Bit, "\\_SB_.I2CC",
8715                         0x00, ResourceConsumer, , Exclusive,
8716                         )
8717                 })
8718                 Return (RBUF) /* \_SB_.I2CC.MT34._CRS.RBUF */
8719             }
8720 
8721             Method (_STA, 0, NotSerialized)  // _STA: Status
8722             {
8723                 If ((MWTT == Zero))
8724                 {
8725                     Return (0x0F)
8726                 }
8727                 Else
8728                 {
8729                     Return (Zero)
8730                 }
8731             }
8732         }
8733 
8734         Device (MT35)
8735         {
8736             Name (_HID, "STK00053")  // _HID: Hardware ID
8737             Name (_CID, "WITTTest")  // _CID: Compatible ID
8738             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8739             {
8740                 Name (RBUF, ResourceTemplate ()
8741                 {
8742                     I2cSerialBusV2 (0x0015, ControllerInitiated, 0x00053020,
8743                         AddressingMode7Bit, "\\_SB_.I2CC",
8744                         0x00, ResourceConsumer, , Exclusive,
8745                         )
8746                 })
8747                 Return (RBUF) /* \_SB_.I2CC.MT35._CRS.RBUF */
8748             }
8749 
8750             Method (_STA, 0, NotSerialized)  // _STA: Status
8751             {
8752                 If ((MWTT == Zero))
8753                 {
8754                     Return (0x0F)
8755                 }
8756                 Else
8757                 {
8758                     Return (Zero)
8759                 }
8760             }
8761         }
8762     }
8763 
8764     Scope (_SB.I2CD)
8765     {
8766         Device (WT41)
8767         {
8768             Name (_ADR, Zero)  // _ADR: Address
8769             Name (_HID, "STK00014")  // _HID: Hardware ID
8770             Name (_CID, "SPBTestKMDF4")  // _CID: Compatible ID
8771             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8772             {
8773                 Name (RBUF, ResourceTemplate ()
8774                 {
8775                     I2cSerialBusV2 (0x007F, ControllerInitiated, 0x000186A0,
8776                         AddressingMode7Bit, "\\_SB.I2CD",
8777                         0x00, ResourceConsumer, , Exclusive,
8778                         )
8779                 })
8780                 Return (RBUF) /* \_SB_.I2CD.WT41._CRS.RBUF */
8781             }
8782 
8783             Method (_STA, 0, NotSerialized)  // _STA: Status
8784             {
8785                 If ((MWTT == One))
8786                 {
8787                     Return (0x0F)
8788                 }
8789                 Else
8790                 {
8791                     Return (Zero)
8792                 }
8793             }
8794         }
8795 
8796         Device (MT41)
8797         {
8798             Name (_HID, "STK00014")  // _HID: Hardware ID
8799             Name (_CID, "WITTTest")  // _CID: Compatible ID
8800             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8801             {
8802                 Name (RBUF, ResourceTemplate ()
8803                 {
8804                     I2cSerialBusV2 (0x0011, ControllerInitiated, 0x000186A0,
8805                         AddressingMode7Bit, "\\_SB_.I2CD",
8806                         0x00, ResourceConsumer, , Exclusive,
8807                         )
8808                 })
8809                 Return (RBUF) /* \_SB_.I2CD.MT41._CRS.RBUF */
8810             }
8811 
8812             Method (_STA, 0, NotSerialized)  // _STA: Status
8813             {
8814                 If ((MWTT == Zero))
8815                 {
8816                     Return (0x0F)
8817                 }
8818                 Else
8819                 {
8820                     Return (Zero)
8821                 }
8822             }
8823         }
8824 
8825         Device (WT42)
8826         {
8827             Name (_ADR, Zero)  // _ADR: Address
8828             Name (_HID, "STK00024")  // _HID: Hardware ID
8829             Name (_CID, "SPBTestKMDF4")  // _CID: Compatible ID
8830             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8831             {
8832                 Name (RBUF, ResourceTemplate ()
8833                 {
8834                     I2cSerialBusV2 (0x0011, ControllerInitiated, 0x000186A0,
8835                         AddressingMode7Bit, "\\_SB.I2CD",
8836                         0x00, ResourceConsumer, , Exclusive,
8837                         )
8838                 })
8839                 Return (RBUF) /* \_SB_.I2CD.WT42._CRS.RBUF */
8840             }
8841 
8842             Method (_STA, 0, NotSerialized)  // _STA: Status
8843             {
8844                 If ((MWTT == One))
8845                 {
8846                     Return (0x0F)
8847                 }
8848                 Else
8849                 {
8850                     Return (Zero)
8851                 }
8852             }
8853         }
8854 
8855         Device (MT42)
8856         {
8857             Name (_HID, "STK00024")  // _HID: Hardware ID
8858             Name (_CID, "WITTTest")  // _CID: Compatible ID
8859             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8860             {
8861                 Name (RBUF, ResourceTemplate ()
8862                 {
8863                     I2cSerialBusV2 (0x0012, ControllerInitiated, 0x00061A80,
8864                         AddressingMode7Bit, "\\_SB_.I2CD",
8865                         0x00, ResourceConsumer, , Exclusive,
8866                         )
8867                 })
8868                 Return (RBUF) /* \_SB_.I2CD.MT42._CRS.RBUF */
8869             }
8870 
8871             Method (_STA, 0, NotSerialized)  // _STA: Status
8872             {
8873                 If ((MWTT == Zero))
8874                 {
8875                     Return (0x0F)
8876                 }
8877                 Else
8878                 {
8879                     Return (Zero)
8880                 }
8881             }
8882         }
8883 
8884         Device (WT43)
8885         {
8886             Name (_ADR, Zero)  // _ADR: Address
8887             Name (_HID, "STK00034")  // _HID: Hardware ID
8888             Name (_CID, "SPBTestKMDF4")  // _CID: Compatible ID
8889             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8890             {
8891                 Name (RBUF, ResourceTemplate ()
8892                 {
8893                     I2cSerialBusV2 (0x0012, ControllerInitiated, 0x00061A80,
8894                         AddressingMode7Bit, "\\_SB.I2CD",
8895                         0x00, ResourceConsumer, , Exclusive,
8896                         )
8897                 })
8898                 Return (RBUF) /* \_SB_.I2CD.WT43._CRS.RBUF */
8899             }
8900 
8901             Method (_STA, 0, NotSerialized)  // _STA: Status
8902             {
8903                 If ((MWTT == One))
8904                 {
8905                     Return (0x0F)
8906                 }
8907                 Else
8908                 {
8909                     Return (Zero)
8910                 }
8911             }
8912         }
8913 
8914         Device (MT43)
8915         {
8916             Name (_HID, "STK00034")  // _HID: Hardware ID
8917             Name (_CID, "WITTTest")  // _CID: Compatible ID
8918             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8919             {
8920                 Name (RBUF, ResourceTemplate ()
8921                 {
8922                     I2cSerialBusV2 (0x0013, ControllerInitiated, 0x000F4240,
8923                         AddressingMode7Bit, "\\_SB_.I2CD",
8924                         0x00, ResourceConsumer, , Exclusive,
8925                         )
8926                 })
8927                 Return (RBUF) /* \_SB_.I2CD.MT43._CRS.RBUF */
8928             }
8929 
8930             Method (_STA, 0, NotSerialized)  // _STA: Status
8931             {
8932                 If ((MWTT == Zero))
8933                 {
8934                     Return (0x0F)
8935                 }
8936                 Else
8937                 {
8938                     Return (Zero)
8939                 }
8940             }
8941         }
8942 
8943         Device (WT44)
8944         {
8945             Name (_ADR, Zero)  // _ADR: Address
8946             Name (_HID, "STK00044")  // _HID: Hardware ID
8947             Name (_CID, "SPBTestKMDF4")  // _CID: Compatible ID
8948             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8949             {
8950                 Name (RBUF, ResourceTemplate ()
8951                 {
8952                     I2cSerialBusV2 (0x0013, ControllerInitiated, 0x000F4240,
8953                         AddressingMode7Bit, "\\_SB.I2CD",
8954                         0x00, ResourceConsumer, , Exclusive,
8955                         )
8956                 })
8957                 Return (RBUF) /* \_SB_.I2CD.WT44._CRS.RBUF */
8958             }
8959 
8960             Method (_STA, 0, NotSerialized)  // _STA: Status
8961             {
8962                 If ((MWTT == One))
8963                 {
8964                     Return (0x0F)
8965                 }
8966                 Else
8967                 {
8968                     Return (Zero)
8969                 }
8970             }
8971         }
8972 
8973         Device (MT44)
8974         {
8975             Name (_HID, "STK00044")  // _HID: Hardware ID
8976             Name (_CID, "WITTTest")  // _CID: Compatible ID
8977             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
8978             {
8979                 Name (RBUF, ResourceTemplate ()
8980                 {
8981                     I2cSerialBusV2 (0x0014, ControllerInitiated, 0x000222E0,
8982                         AddressingMode7Bit, "\\_SB_.I2CD",
8983                         0x00, ResourceConsumer, , Exclusive,
8984                         )
8985                 })
8986                 Return (RBUF) /* \_SB_.I2CD.MT44._CRS.RBUF */
8987             }
8988 
8989             Method (_STA, 0, NotSerialized)  // _STA: Status
8990             {
8991                 If ((MWTT == Zero))
8992                 {
8993                     Return (0x0F)
8994                 }
8995                 Else
8996                 {
8997                     Return (Zero)
8998                 }
8999             }
9000         }
9001 
9002         Device (MT45)
9003         {
9004             Name (_HID, "STK00054")  // _HID: Hardware ID
9005             Name (_CID, "WITTTest")  // _CID: Compatible ID
9006             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9007             {
9008                 Name (RBUF, ResourceTemplate ()
9009                 {
9010                     I2cSerialBusV2 (0x0015, ControllerInitiated, 0x00053020,
9011                         AddressingMode7Bit, "\\_SB_.I2CD",
9012                         0x00, ResourceConsumer, , Exclusive,
9013                         )
9014                 })
9015                 Return (RBUF) /* \_SB_.I2CD.MT45._CRS.RBUF */
9016             }
9017 
9018             Method (_STA, 0, NotSerialized)  // _STA: Status
9019             {
9020                 If ((MWTT == Zero))
9021                 {
9022                     Return (0x0F)
9023                 }
9024                 Else
9025                 {
9026                     Return (Zero)
9027                 }
9028             }
9029         }
9030     }
9031 
9032     Scope (_SB.I2CA)
9033     {
9034         Device (NFC1)
9035         {
9036             Name (_HID, EisaId ("NXP8013"))  // _HID: Hardware ID
9037             Name (_UID, One)  // _UID: Unique ID
9038             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9039             {
9040                 Name (RBUF, ResourceTemplate ()
9041                 {
9042                     I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80,
9043                         AddressingMode7Bit, "\\_SB.I2CA",
9044                         0x00, ResourceConsumer, , Exclusive,
9045                         )
9046                     GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
9047                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9048                         )
9049                         {   // Pin list
9050                             0x0045
9051                         }
9052                     GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9053                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9054                         )
9055                         {   // Pin list
9056                             0x0089
9057                         }
9058                     GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9059                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9060                         )
9061                         {   // Pin list
9062                             0x008A
9063                         }
9064                 })
9065                 Return (RBUF) /* \_SB_.I2CA.NFC1._CRS.RBUF */
9066             }
9067 
9068             Method (_STA, 0, NotSerialized)  // _STA: Status
9069             {
9070                 If (((TPOS >= 0x60) & (NFCS == One)))
9071                 {
9072                     Return (0x0F)
9073                 }
9074                 Else
9075                 {
9076                     Return (Zero)
9077                 }
9078             }
9079         }
9080     }
9081 
9082     Scope (_SB.I2CB)
9083     {
9084         Device (NFC1)
9085         {
9086             Name (_HID, EisaId ("NXP8013"))  // _HID: Hardware ID
9087             Name (_UID, 0x02)  // _UID: Unique ID
9088             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9089             {
9090                 Name (RBUF, ResourceTemplate ()
9091                 {
9092                     I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80,
9093                         AddressingMode7Bit, "\\_SB.I2CB",
9094                         0x00, ResourceConsumer, , Exclusive,
9095                         )
9096                     GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
9097                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9098                         )
9099                         {   // Pin list
9100                             0x0045
9101                         }
9102                     GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9103                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9104                         )
9105                         {   // Pin list
9106                             0x0089
9107                         }
9108                     GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9109                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9110                         )
9111                         {   // Pin list
9112                             0x008A
9113                         }
9114                 })
9115                 Return (RBUF) /* \_SB_.I2CB.NFC1._CRS.RBUF */
9116             }
9117 
9118             Method (_STA, 0, NotSerialized)  // _STA: Status
9119             {
9120                 If (((TPOS >= 0x60) & (NFCS == 0x02)))
9121                 {
9122                     Return (0x0F)
9123                 }
9124                 Else
9125                 {
9126                     Return (Zero)
9127                 }
9128             }
9129         }
9130     }
9131 
9132     Scope (_SB.I2CC)
9133     {
9134         Device (NFC1)
9135         {
9136             Name (_HID, EisaId ("NXP8013"))  // _HID: Hardware ID
9137             Name (_UID, 0x03)  // _UID: Unique ID
9138             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9139             {
9140                 Name (RBUF, ResourceTemplate ()
9141                 {
9142                     I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80,
9143                         AddressingMode7Bit, "\\_SB.I2CC",
9144                         0x00, ResourceConsumer, , Exclusive,
9145                         )
9146                     GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
9147                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9148                         )
9149                         {   // Pin list
9150                             0x0045
9151                         }
9152                     GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9153                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9154                         )
9155                         {   // Pin list
9156                             0x0089
9157                         }
9158                     GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9159                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9160                         )
9161                         {   // Pin list
9162                             0x008A
9163                         }
9164                 })
9165                 Return (RBUF) /* \_SB_.I2CC.NFC1._CRS.RBUF */
9166             }
9167 
9168             Method (_STA, 0, NotSerialized)  // _STA: Status
9169             {
9170                 If (((TPOS >= 0x60) & (NFCS == 0x03)))
9171                 {
9172                     Return (0x0F)
9173                 }
9174                 Else
9175                 {
9176                     Return (Zero)
9177                 }
9178             }
9179         }
9180     }
9181 
9182     Scope (_SB.I2CD)
9183     {
9184         Device (NFC1)
9185         {
9186             Name (_HID, EisaId ("NXP8013"))  // _HID: Hardware ID
9187             Name (_UID, 0x04)  // _UID: Unique ID
9188             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9189             {
9190                 Name (RBUF, ResourceTemplate ()
9191                 {
9192                     I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80,
9193                         AddressingMode7Bit, "\\_SB.I2CD",
9194                         0x00, ResourceConsumer, , Exclusive,
9195                         )
9196                     GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
9197                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9198                         )
9199                         {   // Pin list
9200                             0x0045
9201                         }
9202                     GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9203                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9204                         )
9205                         {   // Pin list
9206                             0x0089
9207                         }
9208                     GpioIo (Exclusive, PullNone, 0x0000, 0x0000, IoRestrictionOutputOnly,
9209                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9210                         )
9211                         {   // Pin list
9212                             0x008A
9213                         }
9214                 })
9215                 Return (RBUF) /* \_SB_.I2CD.NFC1._CRS.RBUF */
9216             }
9217 
9218             Method (_STA, 0, NotSerialized)  // _STA: Status
9219             {
9220                 If (((TPOS >= 0x60) & (NFCS == 0x04)))
9221                 {
9222                     Return (0x0F)
9223                 }
9224                 Else
9225                 {
9226                     Return (Zero)
9227                 }
9228             }
9229         }
9230     }
9231 
9232     Scope (_SB.I2CA)
9233     {
9234         Device (TPNL)
9235         {
9236             Name (_HID, EisaId ("PNP0C50") /* HID Protocol Device (I2C bus) */)  // _HID: Hardware ID
9237             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
9238             Name (_UID, One)  // _UID: Unique ID
9239             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9240             {
9241                 Name (RBUF, ResourceTemplate ()
9242                 {
9243                     I2cSerialBusV2 (0x004A, ControllerInitiated, 0x000F4240,
9244                         AddressingMode7Bit, "\\_SB.I2CA",
9245                         0x00, ResourceConsumer, , Exclusive,
9246                         )
9247                     GpioInt (Level, ActiveLow, Shared, PullUp, 0x0000,
9248                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9249                         )
9250                         {   // Pin list
9251                             0x000C
9252                         }
9253                 })
9254                 Return (RBUF) /* \_SB_.I2CA.TPNL._CRS.RBUF */
9255             }
9256 
9257             Method (_STA, 0, NotSerialized)  // _STA: Status
9258             {
9259                 If (((TPOS >= 0x60) & (THPN == One)))
9260                 {
9261                     Return (0x0F)
9262                 }
9263                 Else
9264                 {
9265                     Return (Zero)
9266                 }
9267             }
9268 
9269             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
9270             {
9271                 If (Arg0){}
9272                 Else
9273                 {
9274                 }
9275             }
9276 
9277             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
9278             {
9279             }
9280 
9281             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
9282             {
9283             }
9284 
9285             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9286             {
9287                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
9288                 {
9289                     Switch (ToInteger (Arg2))
9290                     {
9291                         Case (Zero)
9292                         {
9293                             Switch (ToInteger (Arg1))
9294                             {
9295                                 Case (One)
9296                                 {
9297                                     Return (Buffer (One)
9298                                     {
9299                                          0x03                                             // .
9300                                     })
9301                                 }
9302                                 Default
9303                                 {
9304                                     Return (Buffer (One)
9305                                     {
9306                                          0x00                                             // .
9307                                     })
9308                                 }
9309 
9310                             }
9311                         }
9312                         Case (One)
9313                         {
9314                             Return (Zero)
9315                         }
9316                         Default
9317                         {
9318                             Return (Zero)
9319                         }
9320 
9321                     }
9322                 }
9323                 Else
9324                 {
9325                     Return (Buffer (One)
9326                     {
9327                          0x00                                             // .
9328                     })
9329                 }
9330             }
9331         }
9332 
9333         Device (ELAN)
9334         {
9335             Name (_HID, "04F31234")  // _HID: Hardware ID
9336             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
9337             Name (_UID, One)  // _UID: Unique ID
9338             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9339             {
9340                 Name (RBUF, ResourceTemplate ()
9341                 {
9342                     I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
9343                         AddressingMode7Bit, "\\_SB.I2CA",
9344                         0x00, ResourceConsumer, , Exclusive,
9345                         )
9346                     GpioInt (Level, ActiveLow, Exclusive, PullUp, 0x0000,
9347                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9348                         )
9349                         {   // Pin list
9350                             0x000C
9351                         }
9352                 })
9353                 Return (RBUF) /* \_SB_.I2CA.ELAN._CRS.RBUF */
9354             }
9355 
9356             Method (_STA, 0, NotSerialized)  // _STA: Status
9357             {
9358                 If (((TPOS >= 0x60) & (THPN == 0x05)))
9359                 {
9360                     Return (0x0F)
9361                 }
9362                 Else
9363                 {
9364                     Return (Zero)
9365                 }
9366             }
9367 
9368             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
9369             {
9370                 If (Arg0){}
9371                 Else
9372                 {
9373                 }
9374             }
9375 
9376             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
9377             {
9378             }
9379 
9380             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
9381             {
9382             }
9383 
9384             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9385             {
9386                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
9387                 {
9388                     Switch (ToInteger (Arg2))
9389                     {
9390                         Case (Zero)
9391                         {
9392                             Switch (ToInteger (Arg1))
9393                             {
9394                                 Case (One)
9395                                 {
9396                                     Return (Buffer (One)
9397                                     {
9398                                          0x03                                             // .
9399                                     })
9400                                 }
9401                                 Default
9402                                 {
9403                                     Return (Buffer (One)
9404                                     {
9405                                          0x00                                             // .
9406                                     })
9407                                 }
9408 
9409                             }
9410                         }
9411                         Case (One)
9412                         {
9413                             Return (One)
9414                         }
9415                         Default
9416                         {
9417                             Return (Zero)
9418                         }
9419 
9420                     }
9421                 }
9422                 Else
9423                 {
9424                     Return (Buffer (One)
9425                     {
9426                          0x00                                             // .
9427                     })
9428                 }
9429             }
9430         }
9431     }
9432 
9433     Scope (_SB.I2CB)
9434     {
9435         Device (TPNL)
9436         {
9437             Name (_HID, EisaId ("PNP0C50") /* HID Protocol Device (I2C bus) */)  // _HID: Hardware ID
9438             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
9439             Name (_UID, 0x02)  // _UID: Unique ID
9440             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9441             {
9442                 Name (RBUF, ResourceTemplate ()
9443                 {
9444                     I2cSerialBusV2 (0x004A, ControllerInitiated, 0x000F4240,
9445                         AddressingMode7Bit, "\\_SB.I2CB",
9446                         0x00, ResourceConsumer, , Exclusive,
9447                         )
9448                     GpioInt (Level, ActiveLow, Shared, PullUp, 0x0000,
9449                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9450                         )
9451                         {   // Pin list
9452                             0x000C
9453                         }
9454                 })
9455                 Return (RBUF) /* \_SB_.I2CB.TPNL._CRS.RBUF */
9456             }
9457 
9458             Method (_STA, 0, NotSerialized)  // _STA: Status
9459             {
9460                 If (((TPOS >= 0x60) & (THPN == 0x02)))
9461                 {
9462                     Return (0x0F)
9463                 }
9464                 Else
9465                 {
9466                     Return (Zero)
9467                 }
9468             }
9469 
9470             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
9471             {
9472                 If (Arg0){}
9473                 Else
9474                 {
9475                 }
9476             }
9477 
9478             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
9479             {
9480             }
9481 
9482             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
9483             {
9484             }
9485 
9486             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9487             {
9488                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
9489                 {
9490                     Switch (ToInteger (Arg2))
9491                     {
9492                         Case (Zero)
9493                         {
9494                             Switch (ToInteger (Arg1))
9495                             {
9496                                 Case (One)
9497                                 {
9498                                     Return (Buffer (One)
9499                                     {
9500                                          0x03                                             // .
9501                                     })
9502                                 }
9503                                 Default
9504                                 {
9505                                     Return (Buffer (One)
9506                                     {
9507                                          0x00                                             // .
9508                                     })
9509                                 }
9510 
9511                             }
9512                         }
9513                         Case (One)
9514                         {
9515                             Return (Zero)
9516                         }
9517                         Default
9518                         {
9519                             Return (Zero)
9520                         }
9521 
9522                     }
9523                 }
9524                 Else
9525                 {
9526                     Return (Buffer (One)
9527                     {
9528                          0x00                                             // .
9529                     })
9530                 }
9531             }
9532         }
9533 
9534         Device (ELAN)
9535         {
9536             Name (_HID, "04F31234")  // _HID: Hardware ID
9537             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
9538             Name (_UID, One)  // _UID: Unique ID
9539             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9540             {
9541                 Name (RBUF, ResourceTemplate ()
9542                 {
9543                     I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
9544                         AddressingMode7Bit, "\\_SB.I2CB",
9545                         0x00, ResourceConsumer, , Exclusive,
9546                         )
9547                     GpioInt (Level, ActiveLow, Exclusive, PullUp, 0x0000,
9548                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9549                         )
9550                         {   // Pin list
9551                             0x000C
9552                         }
9553                 })
9554                 Return (RBUF) /* \_SB_.I2CB.ELAN._CRS.RBUF */
9555             }
9556 
9557             Method (_STA, 0, NotSerialized)  // _STA: Status
9558             {
9559                 If (((TPOS >= 0x60) & (THPN == 0x06)))
9560                 {
9561                     Return (0x0F)
9562                 }
9563                 Else
9564                 {
9565                     Return (Zero)
9566                 }
9567             }
9568 
9569             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
9570             {
9571                 If (Arg0){}
9572                 Else
9573                 {
9574                 }
9575             }
9576 
9577             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
9578             {
9579             }
9580 
9581             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
9582             {
9583             }
9584 
9585             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9586             {
9587                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
9588                 {
9589                     Switch (ToInteger (Arg2))
9590                     {
9591                         Case (Zero)
9592                         {
9593                             Switch (ToInteger (Arg1))
9594                             {
9595                                 Case (One)
9596                                 {
9597                                     Return (Buffer (One)
9598                                     {
9599                                          0x03                                             // .
9600                                     })
9601                                 }
9602                                 Default
9603                                 {
9604                                     Return (Buffer (One)
9605                                     {
9606                                          0x00                                             // .
9607                                     })
9608                                 }
9609 
9610                             }
9611                         }
9612                         Case (One)
9613                         {
9614                             Return (One)
9615                         }
9616                         Default
9617                         {
9618                             Return (Zero)
9619                         }
9620 
9621                     }
9622                 }
9623                 Else
9624                 {
9625                     Return (Buffer (One)
9626                     {
9627                          0x00                                             // .
9628                     })
9629                 }
9630             }
9631         }
9632     }
9633 
9634     Scope (_SB.I2CC)
9635     {
9636         Device (TPNL)
9637         {
9638             Name (_HID, EisaId ("PNP0C50") /* HID Protocol Device (I2C bus) */)  // _HID: Hardware ID
9639             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
9640             Name (_UID, 0x03)  // _UID: Unique ID
9641             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9642             {
9643                 Name (RBUF, ResourceTemplate ()
9644                 {
9645                     I2cSerialBusV2 (0x004A, ControllerInitiated, 0x000F4240,
9646                         AddressingMode7Bit, "\\_SB.I2CC",
9647                         0x00, ResourceConsumer, , Exclusive,
9648                         )
9649                     GpioInt (Level, ActiveLow, Shared, PullUp, 0x0000,
9650                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9651                         )
9652                         {   // Pin list
9653                             0x000C
9654                         }
9655                 })
9656                 Return (RBUF) /* \_SB_.I2CC.TPNL._CRS.RBUF */
9657             }
9658 
9659             Method (_STA, 0, NotSerialized)  // _STA: Status
9660             {
9661                 If (((TPOS >= 0x60) & (THPN == 0x03)))
9662                 {
9663                     Return (0x0F)
9664                 }
9665                 Else
9666                 {
9667                     Return (Zero)
9668                 }
9669             }
9670 
9671             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
9672             {
9673                 If (Arg0){}
9674                 Else
9675                 {
9676                 }
9677             }
9678 
9679             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
9680             {
9681             }
9682 
9683             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
9684             {
9685             }
9686 
9687             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9688             {
9689                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
9690                 {
9691                     Switch (ToInteger (Arg2))
9692                     {
9693                         Case (Zero)
9694                         {
9695                             Switch (ToInteger (Arg1))
9696                             {
9697                                 Case (One)
9698                                 {
9699                                     Return (Buffer (One)
9700                                     {
9701                                          0x03                                             // .
9702                                     })
9703                                 }
9704                                 Default
9705                                 {
9706                                     Return (Buffer (One)
9707                                     {
9708                                          0x00                                             // .
9709                                     })
9710                                 }
9711 
9712                             }
9713                         }
9714                         Case (One)
9715                         {
9716                             Return (Zero)
9717                         }
9718                         Default
9719                         {
9720                             Return (Zero)
9721                         }
9722 
9723                     }
9724                 }
9725                 Else
9726                 {
9727                     Return (Buffer (One)
9728                     {
9729                          0x00                                             // .
9730                     })
9731                 }
9732             }
9733         }
9734 
9735         Device (ELAN)
9736         {
9737             Name (_HID, "04F31234")  // _HID: Hardware ID
9738             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
9739             Name (_UID, One)  // _UID: Unique ID
9740             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9741             {
9742                 Name (RBUF, ResourceTemplate ()
9743                 {
9744                     I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
9745                         AddressingMode7Bit, "\\_SB.I2CC",
9746                         0x00, ResourceConsumer, , Exclusive,
9747                         )
9748                     GpioInt (Level, ActiveLow, Exclusive, PullUp, 0x0000,
9749                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9750                         )
9751                         {   // Pin list
9752                             0x000C
9753                         }
9754                 })
9755                 Return (RBUF) /* \_SB_.I2CC.ELAN._CRS.RBUF */
9756             }
9757 
9758             Method (_STA, 0, NotSerialized)  // _STA: Status
9759             {
9760                 If (((TPOS >= 0x60) & (THPN == 0x07)))
9761                 {
9762                     Return (0x0F)
9763                 }
9764                 Else
9765                 {
9766                     Return (Zero)
9767                 }
9768             }
9769 
9770             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
9771             {
9772                 If (Arg0){}
9773                 Else
9774                 {
9775                 }
9776             }
9777 
9778             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
9779             {
9780             }
9781 
9782             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
9783             {
9784             }
9785 
9786             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9787             {
9788                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
9789                 {
9790                     Switch (ToInteger (Arg2))
9791                     {
9792                         Case (Zero)
9793                         {
9794                             Switch (ToInteger (Arg1))
9795                             {
9796                                 Case (One)
9797                                 {
9798                                     Return (Buffer (One)
9799                                     {
9800                                          0x03                                             // .
9801                                     })
9802                                 }
9803                                 Default
9804                                 {
9805                                     Return (Buffer (One)
9806                                     {
9807                                          0x00                                             // .
9808                                     })
9809                                 }
9810 
9811                             }
9812                         }
9813                         Case (One)
9814                         {
9815                             Return (One)
9816                         }
9817                         Default
9818                         {
9819                             Return (Zero)
9820                         }
9821 
9822                     }
9823                 }
9824                 Else
9825                 {
9826                     Return (Buffer (One)
9827                     {
9828                          0x00                                             // .
9829                     })
9830                 }
9831             }
9832         }
9833     }
9834 
9835     Scope (_SB.I2CD)
9836     {
9837         Device (TPNL)
9838         {
9839             Name (_HID, EisaId ("PNP0C50") /* HID Protocol Device (I2C bus) */)  // _HID: Hardware ID
9840             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
9841             Name (_UID, 0x04)  // _UID: Unique ID
9842             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9843             {
9844                 Name (RBUF, ResourceTemplate ()
9845                 {
9846                     I2cSerialBusV2 (0x004A, ControllerInitiated, 0x000F4240,
9847                         AddressingMode7Bit, "\\_SB.I2CD",
9848                         0x00, ResourceConsumer, , Exclusive,
9849                         )
9850                     GpioInt (Level, ActiveLow, Shared, PullUp, 0x0000,
9851                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9852                         )
9853                         {   // Pin list
9854                             0x000C
9855                         }
9856                 })
9857                 Return (RBUF) /* \_SB_.I2CD.TPNL._CRS.RBUF */
9858             }
9859 
9860             Method (_STA, 0, NotSerialized)  // _STA: Status
9861             {
9862                 If (((TPOS >= 0x60) & (THPN == 0x04)))
9863                 {
9864                     Return (0x0F)
9865                 }
9866                 Else
9867                 {
9868                     Return (Zero)
9869                 }
9870             }
9871 
9872             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
9873             {
9874                 If (Arg0){}
9875                 Else
9876                 {
9877                 }
9878             }
9879 
9880             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
9881             {
9882             }
9883 
9884             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
9885             {
9886             }
9887 
9888             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9889             {
9890                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
9891                 {
9892                     Switch (ToInteger (Arg2))
9893                     {
9894                         Case (Zero)
9895                         {
9896                             Switch (ToInteger (Arg1))
9897                             {
9898                                 Case (One)
9899                                 {
9900                                     Return (Buffer (One)
9901                                     {
9902                                          0x03                                             // .
9903                                     })
9904                                 }
9905                                 Default
9906                                 {
9907                                     Return (Buffer (One)
9908                                     {
9909                                          0x00                                             // .
9910                                     })
9911                                 }
9912 
9913                             }
9914                         }
9915                         Case (One)
9916                         {
9917                             Return (Zero)
9918                         }
9919                         Default
9920                         {
9921                             Return (Zero)
9922                         }
9923 
9924                     }
9925                 }
9926                 Else
9927                 {
9928                     Return (Buffer (One)
9929                     {
9930                          0x00                                             // .
9931                     })
9932                 }
9933             }
9934         }
9935 
9936         Device (ELAN)
9937         {
9938             Name (_HID, "04F31234")  // _HID: Hardware ID
9939             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
9940             Name (_UID, One)  // _UID: Unique ID
9941             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
9942             {
9943                 Name (RBUF, ResourceTemplate ()
9944                 {
9945                     I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
9946                         AddressingMode7Bit, "\\_SB.I2CD",
9947                         0x00, ResourceConsumer, , Exclusive,
9948                         )
9949                     GpioInt (Level, ActiveLow, Exclusive, PullUp, 0x0000,
9950                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
9951                         )
9952                         {   // Pin list
9953                             0x000C
9954                         }
9955                 })
9956                 Return (RBUF) /* \_SB_.I2CD.ELAN._CRS.RBUF */
9957             }
9958 
9959             Method (_STA, 0, NotSerialized)  // _STA: Status
9960             {
9961                 If (((TPOS >= 0x60) & (THPN == 0x08)))
9962                 {
9963                     Return (0x0F)
9964                 }
9965                 Else
9966                 {
9967                     Return (Zero)
9968                 }
9969             }
9970 
9971             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
9972             {
9973                 If (Arg0){}
9974                 Else
9975                 {
9976                 }
9977             }
9978 
9979             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
9980             {
9981             }
9982 
9983             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
9984             {
9985             }
9986 
9987             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
9988             {
9989                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
9990                 {
9991                     Switch (ToInteger (Arg2))
9992                     {
9993                         Case (Zero)
9994                         {
9995                             Switch (ToInteger (Arg1))
9996                             {
9997                                 Case (One)
9998                                 {
9999                                     Return (Buffer (One)
10000                                     {
10001                                          0x03                                             // .
10002                                     })
10003                                 }
10004                                 Default
10005                                 {
10006                                     Return (Buffer (One)
10007                                     {
10008                                          0x00                                             // .
10009                                     })
10010                                 }
10011 
10012                             }
10013                         }
10014                         Case (One)
10015                         {
10016                             Return (One)
10017                         }
10018                         Default
10019                         {
10020                             Return (Zero)
10021                         }
10022 
10023                     }
10024                 }
10025                 Else
10026                 {
10027                     Return (Buffer (One)
10028                     {
10029                          0x00                                             // .
10030                     })
10031                 }
10032             }
10033         }
10034     }
10035 
10036     Scope (_SB.I2CA)
10037     {
10038         Device (TPDD)
10039         {
10040             Name (_HID, EisaId ("PNP0C50") /* HID Protocol Device (I2C bus) */)  // _HID: Hardware ID
10041             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
10042             Name (_UID, 0x05)  // _UID: Unique ID
10043             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
10044             {
10045                 Name (RBUF, ResourceTemplate ()
10046                 {
10047                     I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
10048                         AddressingMode7Bit, "\\_SB.I2CA",
10049                         0x00, ResourceConsumer, , Exclusive,
10050                         )
10051                     GpioInt (Level, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10052                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
10053                         )
10054                         {   // Pin list
10055                             0x0009
10056                         }
10057                 })
10058                 Return (RBUF) /* \_SB_.I2CA.TPDD._CRS.RBUF */
10059             }
10060 
10061             Method (_STA, 0, NotSerialized)  // _STA: Status
10062             {
10063                 If (((TPOS >= 0x60) & (THPD == One)))
10064                 {
10065                     Return (0x0F)
10066                 }
10067                 Else
10068                 {
10069                     Return (Zero)
10070                 }
10071             }
10072 
10073             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
10074             {
10075                 If (Arg0){}
10076                 Else
10077                 {
10078                 }
10079             }
10080 
10081             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
10082             {
10083             }
10084 
10085             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
10086             {
10087             }
10088 
10089             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
10090             {
10091                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
10092                 {
10093                     Switch (ToInteger (Arg2))
10094                     {
10095                         Case (Zero)
10096                         {
10097                             Switch (ToInteger (Arg1))
10098                             {
10099                                 Case (One)
10100                                 {
10101                                     Return (Buffer (One)
10102                                     {
10103                                          0x03                                             // .
10104                                     })
10105                                 }
10106                                 Default
10107                                 {
10108                                     Return (Buffer (One)
10109                                     {
10110                                          0x00                                             // .
10111                                     })
10112                                 }
10113 
10114                             }
10115                         }
10116                         Case (One)
10117                         {
10118                             Return (0x20)
10119                         }
10120                         Default
10121                         {
10122                             Return (Zero)
10123                         }
10124 
10125                     }
10126                 }
10127                 Else
10128                 {
10129                     Return (Buffer (One)
10130                     {
10131                          0x00                                             // .
10132                     })
10133                 }
10134             }
10135         }
10136     }
10137 
10138     Scope (_SB.I2CB)
10139     {
10140         Device (TPDD)
10141         {
10142             Name (_HID, EisaId ("PNP0C50") /* HID Protocol Device (I2C bus) */)  // _HID: Hardware ID
10143             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
10144             Name (_UID, 0x06)  // _UID: Unique ID
10145             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
10146             {
10147                 Name (RBUF, ResourceTemplate ()
10148                 {
10149                     I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
10150                         AddressingMode7Bit, "\\_SB.I2CB",
10151                         0x00, ResourceConsumer, , Exclusive,
10152                         )
10153                     GpioInt (Level, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10154                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
10155                         )
10156                         {   // Pin list
10157                             0x0009
10158                         }
10159                 })
10160                 Return (RBUF) /* \_SB_.I2CB.TPDD._CRS.RBUF */
10161             }
10162 
10163             Method (_STA, 0, NotSerialized)  // _STA: Status
10164             {
10165                 If (((TPOS >= 0x60) & (THPD == 0x02)))
10166                 {
10167                     Return (0x0F)
10168                 }
10169                 Else
10170                 {
10171                     Return (Zero)
10172                 }
10173             }
10174 
10175             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
10176             {
10177                 If (Arg0){}
10178                 Else
10179                 {
10180                 }
10181             }
10182 
10183             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
10184             {
10185             }
10186 
10187             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
10188             {
10189             }
10190 
10191             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
10192             {
10193                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
10194                 {
10195                     Switch (ToInteger (Arg2))
10196                     {
10197                         Case (Zero)
10198                         {
10199                             Switch (ToInteger (Arg1))
10200                             {
10201                                 Case (One)
10202                                 {
10203                                     Return (Buffer (One)
10204                                     {
10205                                          0x03                                             // .
10206                                     })
10207                                 }
10208                                 Default
10209                                 {
10210                                     Return (Buffer (One)
10211                                     {
10212                                          0x00                                             // .
10213                                     })
10214                                 }
10215 
10216                             }
10217                         }
10218                         Case (One)
10219                         {
10220                             Return (0x20)
10221                         }
10222                         Default
10223                         {
10224                             Return (Zero)
10225                         }
10226 
10227                     }
10228                 }
10229                 Else
10230                 {
10231                     Return (Buffer (One)
10232                     {
10233                          0x00                                             // .
10234                     })
10235                 }
10236             }
10237         }
10238     }
10239 
10240     Scope (_SB.I2CC)
10241     {
10242         Device (TPDD)
10243         {
10244             Name (_HID, EisaId ("PNP0C50") /* HID Protocol Device (I2C bus) */)  // _HID: Hardware ID
10245             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
10246             Name (_UID, 0x07)  // _UID: Unique ID
10247             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
10248             {
10249                 Name (RBUF, ResourceTemplate ()
10250                 {
10251                     I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
10252                         AddressingMode7Bit, "\\_SB.I2CC",
10253                         0x00, ResourceConsumer, , Exclusive,
10254                         )
10255                     GpioInt (Level, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10256                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
10257                         )
10258                         {   // Pin list
10259                             0x0009
10260                         }
10261                 })
10262                 Return (RBUF) /* \_SB_.I2CC.TPDD._CRS.RBUF */
10263             }
10264 
10265             Method (_STA, 0, NotSerialized)  // _STA: Status
10266             {
10267                 If (((TPOS >= 0x60) & (THPD == 0x03)))
10268                 {
10269                     Return (0x0F)
10270                 }
10271                 Else
10272                 {
10273                     Return (Zero)
10274                 }
10275             }
10276 
10277             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
10278             {
10279                 If (Arg0){}
10280                 Else
10281                 {
10282                 }
10283             }
10284 
10285             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
10286             {
10287             }
10288 
10289             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
10290             {
10291             }
10292 
10293             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
10294             {
10295                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
10296                 {
10297                     Switch (ToInteger (Arg2))
10298                     {
10299                         Case (Zero)
10300                         {
10301                             Switch (ToInteger (Arg1))
10302                             {
10303                                 Case (One)
10304                                 {
10305                                     Return (Buffer (One)
10306                                     {
10307                                          0x03                                             // .
10308                                     })
10309                                 }
10310                                 Default
10311                                 {
10312                                     Return (Buffer (One)
10313                                     {
10314                                          0x00                                             // .
10315                                     })
10316                                 }
10317 
10318                             }
10319                         }
10320                         Case (One)
10321                         {
10322                             Return (0x20)
10323                         }
10324                         Default
10325                         {
10326                             Return (Zero)
10327                         }
10328 
10329                     }
10330                 }
10331                 Else
10332                 {
10333                     Return (Buffer (One)
10334                     {
10335                          0x00                                             // .
10336                     })
10337                 }
10338             }
10339         }
10340     }
10341 
10342     Scope (_SB.I2CD)
10343     {
10344         Device (TPDD)
10345         {
10346             Name (_HID, EisaId ("PNP0C50") /* HID Protocol Device (I2C bus) */)  // _HID: Hardware ID
10347             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
10348             Name (_UID, 0x08)  // _UID: Unique ID
10349             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
10350             {
10351                 Name (RBUF, ResourceTemplate ()
10352                 {
10353                     I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
10354                         AddressingMode7Bit, "\\_SB.I2CD",
10355                         0x00, ResourceConsumer, , Exclusive,
10356                         )
10357                     GpioInt (Level, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10358                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
10359                         )
10360                         {   // Pin list
10361                             0x0009
10362                         }
10363                 })
10364                 Return (RBUF) /* \_SB_.I2CD.TPDD._CRS.RBUF */
10365             }
10366 
10367             Method (_STA, 0, NotSerialized)  // _STA: Status
10368             {
10369                 If (((TPOS >= 0x60) & (THPD == 0x04)))
10370                 {
10371                     Return (0x0F)
10372                 }
10373                 Else
10374                 {
10375                     Return (Zero)
10376                 }
10377             }
10378 
10379             Method (_DSW, 3, NotSerialized)  // _DSW: Device Sleep Wake
10380             {
10381                 If (Arg0){}
10382                 Else
10383                 {
10384                 }
10385             }
10386 
10387             Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
10388             {
10389             }
10390 
10391             Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
10392             {
10393             }
10394 
10395             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
10396             {
10397                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
10398                 {
10399                     Switch (ToInteger (Arg2))
10400                     {
10401                         Case (Zero)
10402                         {
10403                             Switch (ToInteger (Arg1))
10404                             {
10405                                 Case (One)
10406                                 {
10407                                     Return (Buffer (One)
10408                                     {
10409                                          0x03                                             // .
10410                                     })
10411                                 }
10412                                 Default
10413                                 {
10414                                     Return (Buffer (One)
10415                                     {
10416                                          0x00                                             // .
10417                                     })
10418                                 }
10419 
10420                             }
10421                         }
10422                         Case (One)
10423                         {
10424                             Return (0x20)
10425                         }
10426                         Default
10427                         {
10428                             Return (Zero)
10429                         }
10430 
10431                     }
10432                 }
10433                 Else
10434                 {
10435                     Return (Buffer (One)
10436                     {
10437                          0x00                                             // .
10438                     })
10439                 }
10440             }
10441         }
10442     }
10443 
10444     Scope (_SB.I2CA)
10445     {
10446         Device (CMSR)
10447         {
10448             Name (_ADR, Zero)  // _ADR: Address
10449             Name (_HID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */)  // _HID: Hardware ID
10450             Name (_CID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */)  // _CID: Compatible ID
10451             Name (_UID, One)  // _UID: Unique ID
10452             Name (_DEP, Package (0x01)  // _DEP: Dependencies
10453             {
10454                 I2CA
10455             })
10456             Method (_STA, 0, NotSerialized)  // _STA: Status
10457             {
10458                 If (((TPOS >= 0x60) & (ALST == One)))
10459                 {
10460                     Return (0x0F)
10461                 }
10462 
10463                 Return (Zero)
10464             }
10465 
10466             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
10467             {
10468                 Name (SBUF, ResourceTemplate ()
10469                 {
10470                     I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
10471                         AddressingMode7Bit, "\\_SB.I2CA",
10472                         0x00, ResourceConsumer, , Exclusive,
10473                         )
10474                     GpioInt (Level, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10475                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
10476                         )
10477                         {   // Pin list
10478                             0x0018
10479                         }
10480                 })
10481                 Return (SBUF) /* \_SB_.I2CA.CMSR._CRS.SBUF */
10482             }
10483 
10484             Name (CPM0, Package (0x07)
10485             {
10486                 0x7DB5, 
10487                 One, 
10488                 0x0F, 
10489                 0x0840, 
10490                 0x013B, 
10491                 0x011D, 
10492                 Zero
10493             })
10494             Name (CPM1, Package (0x03)
10495             {
10496                 0x0898, 
10497                 0x000186A0, 
10498                 0x000186A0
10499             })
10500             Name (CPM2, Package (0x06)
10501             {
10502                 0x61A8, 
10503                 0x000186A0, 
10504                 0x000186A0, 
10505                 0x000186A0, 
10506                 0x00030D40, 
10507                 0x00186A00
10508             })
10509             Name (CPM3, Package (0x04)
10510             {
10511                 Package (0x02)
10512                 {
10513                     0x3C, 
10514                     0x0A
10515                 }, 
10516 
10517                 Package (0x02)
10518                 {
10519                     0x64, 
10520                     0x0B
10521                 }, 
10522 
10523                 Package (0x02)
10524                 {
10525                     0x64, 
10526                     0x1F40
10527                 }, 
10528 
10529                 Package (0x02)
10530                 {
10531                     0x01F4, 
10532                     0x1F41
10533                 }
10534             })
10535             Name (CPM5, Package (0x07)
10536             {
10537                 Zero, 
10538                 0x000249F0, 
10539                 0x0190, 
10540                 0x03E8, 
10541                 0x02, 
10542                 0x32, 
10543                 0x05
10544             })
10545             Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
10546             {
10547                 If ((Arg0 == ToUUID ("0703c6b6-1cca-4144-9fe7-4654f53a0bd9")))
10548                 {
10549                     If ((Arg2 == Zero))
10550                     {
10551                         Return (Buffer (One)
10552                         {
10553                              0x03                                             // .
10554                         })
10555                     }
10556 
10557                     If ((Arg2 == One))
10558                     {
10559                         If ((ToInteger (Arg3) == Zero))
10560                         {
10561                             Return (CPM0) /* \_SB_.I2CA.CMSR.CPM0 */
10562                         }
10563 
10564                         If ((ToInteger (Arg3) == One))
10565                         {
10566                             Return (CPM1) /* \_SB_.I2CA.CMSR.CPM1 */
10567                         }
10568 
10569                         If ((ToInteger (Arg3) == 0x02))
10570                         {
10571                             Return (CPM2) /* \_SB_.I2CA.CMSR.CPM2 */
10572                         }
10573 
10574                         If ((ToInteger (Arg3) == 0x03))
10575                         {
10576                             Return (CPM3) /* \_SB_.I2CA.CMSR.CPM3 */
10577                         }
10578 
10579                         If ((ToInteger (Arg3) == 0x05))
10580                         {
10581                             Return (CPM5) /* \_SB_.I2CA.CMSR.CPM5 */
10582                         }
10583                     }
10584                 }
10585 
10586                 Return (Buffer (One)
10587                 {
10588                      0x00                                             // .
10589                 })
10590             }
10591         }
10592     }
10593 
10594     Scope (_SB.I2CB)
10595     {
10596         Device (CMSR)
10597         {
10598             Name (_ADR, Zero)  // _ADR: Address
10599             Name (_HID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */)  // _HID: Hardware ID
10600             Name (_CID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */)  // _CID: Compatible ID
10601             Name (_UID, One)  // _UID: Unique ID
10602             Name (_DEP, Package (0x01)  // _DEP: Dependencies
10603             {
10604                 I2CB
10605             })
10606             Method (_STA, 0, NotSerialized)  // _STA: Status
10607             {
10608                 If (((TPOS >= 0x60) & (ALST == 0x02)))
10609                 {
10610                     Return (0x0F)
10611                 }
10612 
10613                 Return (Zero)
10614             }
10615 
10616             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
10617             {
10618                 Name (SBUF, ResourceTemplate ()
10619                 {
10620                     I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
10621                         AddressingMode7Bit, "\\_SB.I2CB",
10622                         0x00, ResourceConsumer, , Exclusive,
10623                         )
10624                     GpioInt (Level, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10625                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
10626                         )
10627                         {   // Pin list
10628                             0x0018
10629                         }
10630                 })
10631                 Return (SBUF) /* \_SB_.I2CB.CMSR._CRS.SBUF */
10632             }
10633 
10634             Name (CPM0, Package (0x07)
10635             {
10636                 0x7DB5, 
10637                 One, 
10638                 0x0F, 
10639                 0x0840, 
10640                 0x013B, 
10641                 0x011D, 
10642                 Zero
10643             })
10644             Name (CPM1, Package (0x03)
10645             {
10646                 0x0898, 
10647                 0x000186A0, 
10648                 0x000186A0
10649             })
10650             Name (CPM2, Package (0x06)
10651             {
10652                 0x61A8, 
10653                 0x000186A0, 
10654                 0x000186A0, 
10655                 0x000186A0, 
10656                 0x00030D40, 
10657                 0x00186A00
10658             })
10659             Name (CPM3, Package (0x04)
10660             {
10661                 Package (0x02)
10662                 {
10663                     0x3C, 
10664                     0x0A
10665                 }, 
10666 
10667                 Package (0x02)
10668                 {
10669                     0x64, 
10670                     0x0B
10671                 }, 
10672 
10673                 Package (0x02)
10674                 {
10675                     0x64, 
10676                     0x1F40
10677                 }, 
10678 
10679                 Package (0x02)
10680                 {
10681                     0x01F4, 
10682                     0x1F41
10683                 }
10684             })
10685             Name (CPM5, Package (0x07)
10686             {
10687                 Zero, 
10688                 0x000249F0, 
10689                 0x0190, 
10690                 0x03E8, 
10691                 0x02, 
10692                 0x32, 
10693                 0x05
10694             })
10695             Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
10696             {
10697                 If ((Arg0 == ToUUID ("0703c6b6-1cca-4144-9fe7-4654f53a0bd9")))
10698                 {
10699                     If ((Arg2 == Zero))
10700                     {
10701                         Return (Buffer (One)
10702                         {
10703                              0x03                                             // .
10704                         })
10705                     }
10706 
10707                     If ((Arg2 == One))
10708                     {
10709                         If ((ToInteger (Arg3) == Zero))
10710                         {
10711                             Return (CPM0) /* \_SB_.I2CB.CMSR.CPM0 */
10712                         }
10713 
10714                         If ((ToInteger (Arg3) == One))
10715                         {
10716                             Return (CPM1) /* \_SB_.I2CB.CMSR.CPM1 */
10717                         }
10718 
10719                         If ((ToInteger (Arg3) == 0x02))
10720                         {
10721                             Return (CPM2) /* \_SB_.I2CB.CMSR.CPM2 */
10722                         }
10723 
10724                         If ((ToInteger (Arg3) == 0x03))
10725                         {
10726                             Return (CPM3) /* \_SB_.I2CB.CMSR.CPM3 */
10727                         }
10728 
10729                         If ((ToInteger (Arg3) == 0x05))
10730                         {
10731                             Return (CPM5) /* \_SB_.I2CB.CMSR.CPM5 */
10732                         }
10733                     }
10734                 }
10735 
10736                 Return (Buffer (One)
10737                 {
10738                      0x00                                             // .
10739                 })
10740             }
10741         }
10742     }
10743 
10744     Scope (_SB.I2CC)
10745     {
10746         Device (CMSR)
10747         {
10748             Name (_ADR, Zero)  // _ADR: Address
10749             Name (_HID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */)  // _HID: Hardware ID
10750             Name (_CID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */)  // _CID: Compatible ID
10751             Name (_UID, One)  // _UID: Unique ID
10752             Name (_DEP, Package (0x01)  // _DEP: Dependencies
10753             {
10754                 I2CC
10755             })
10756             Method (_STA, 0, NotSerialized)  // _STA: Status
10757             {
10758                 If (((TPOS >= 0x60) & (ALST == 0x03)))
10759                 {
10760                     Return (0x0F)
10761                 }
10762 
10763                 Return (Zero)
10764             }
10765 
10766             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
10767             {
10768                 Name (SBUF, ResourceTemplate ()
10769                 {
10770                     I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
10771                         AddressingMode7Bit, "\\_SB.I2CC",
10772                         0x00, ResourceConsumer, , Exclusive,
10773                         )
10774                     GpioInt (Level, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10775                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
10776                         )
10777                         {   // Pin list
10778                             0x0018
10779                         }
10780                 })
10781                 Return (SBUF) /* \_SB_.I2CC.CMSR._CRS.SBUF */
10782             }
10783 
10784             Name (CPM0, Package (0x07)
10785             {
10786                 0x7DB5, 
10787                 One, 
10788                 0x0F, 
10789                 0x0840, 
10790                 0x013B, 
10791                 0x011D, 
10792                 Zero
10793             })
10794             Name (CPM1, Package (0x03)
10795             {
10796                 0x0898, 
10797                 0x000186A0, 
10798                 0x000186A0
10799             })
10800             Name (CPM2, Package (0x06)
10801             {
10802                 0x61A8, 
10803                 0x000186A0, 
10804                 0x000186A0, 
10805                 0x000186A0, 
10806                 0x00030D40, 
10807                 0x00186A00
10808             })
10809             Name (CPM3, Package (0x04)
10810             {
10811                 Package (0x02)
10812                 {
10813                     0x3C, 
10814                     0x0A
10815                 }, 
10816 
10817                 Package (0x02)
10818                 {
10819                     0x64, 
10820                     0x0B
10821                 }, 
10822 
10823                 Package (0x02)
10824                 {
10825                     0x64, 
10826                     0x1F40
10827                 }, 
10828 
10829                 Package (0x02)
10830                 {
10831                     0x01F4, 
10832                     0x1F41
10833                 }
10834             })
10835             Name (CPM5, Package (0x07)
10836             {
10837                 Zero, 
10838                 0x000249F0, 
10839                 0x0190, 
10840                 0x03E8, 
10841                 0x02, 
10842                 0x32, 
10843                 0x05
10844             })
10845             Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
10846             {
10847                 If ((Arg0 == ToUUID ("0703c6b6-1cca-4144-9fe7-4654f53a0bd9")))
10848                 {
10849                     If ((Arg2 == Zero))
10850                     {
10851                         Return (Buffer (One)
10852                         {
10853                              0x03                                             // .
10854                         })
10855                     }
10856 
10857                     If ((Arg2 == One))
10858                     {
10859                         If ((ToInteger (Arg3) == Zero))
10860                         {
10861                             Return (CPM0) /* \_SB_.I2CC.CMSR.CPM0 */
10862                         }
10863 
10864                         If ((ToInteger (Arg3) == One))
10865                         {
10866                             Return (CPM1) /* \_SB_.I2CC.CMSR.CPM1 */
10867                         }
10868 
10869                         If ((ToInteger (Arg3) == 0x02))
10870                         {
10871                             Return (CPM2) /* \_SB_.I2CC.CMSR.CPM2 */
10872                         }
10873 
10874                         If ((ToInteger (Arg3) == 0x03))
10875                         {
10876                             Return (CPM3) /* \_SB_.I2CC.CMSR.CPM3 */
10877                         }
10878 
10879                         If ((ToInteger (Arg3) == 0x05))
10880                         {
10881                             Return (CPM5) /* \_SB_.I2CC.CMSR.CPM5 */
10882                         }
10883                     }
10884                 }
10885 
10886                 Return (Buffer (One)
10887                 {
10888                      0x00                                             // .
10889                 })
10890             }
10891         }
10892     }
10893 
10894     Scope (_SB.I2CD)
10895     {
10896         Device (CMSR)
10897         {
10898             Name (_ADR, Zero)  // _ADR: Address
10899             Name (_HID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */)  // _HID: Hardware ID
10900             Name (_CID, "CPLM3218" /* Capella Micro CM3218x Ambient Light Sensor */)  // _CID: Compatible ID
10901             Name (_UID, One)  // _UID: Unique ID
10902             Name (_DEP, Package (0x01)  // _DEP: Dependencies
10903             {
10904                 I2CD
10905             })
10906             Method (_STA, 0, NotSerialized)  // _STA: Status
10907             {
10908                 If (((TPOS >= 0x60) & (ALST == 0x04)))
10909                 {
10910                     Return (0x0F)
10911                 }
10912 
10913                 Return (Zero)
10914             }
10915 
10916             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
10917             {
10918                 Name (SBUF, ResourceTemplate ()
10919                 {
10920                     I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
10921                         AddressingMode7Bit, "\\_SB.I2CD",
10922                         0x00, ResourceConsumer, , Exclusive,
10923                         )
10924                     GpioInt (Level, ActiveLow, ExclusiveAndWake, PullUp, 0x0000,
10925                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
10926                         )
10927                         {   // Pin list
10928                             0x0018
10929                         }
10930                 })
10931                 Return (SBUF) /* \_SB_.I2CD.CMSR._CRS.SBUF */
10932             }
10933 
10934             Name (CPM0, Package (0x07)
10935             {
10936                 0x7DB5, 
10937                 One, 
10938                 0x0F, 
10939                 0x0840, 
10940                 0x013B, 
10941                 0x011D, 
10942                 Zero
10943             })
10944             Name (CPM1, Package (0x03)
10945             {
10946                 0x0898, 
10947                 0x000186A0, 
10948                 0x000186A0
10949             })
10950             Name (CPM2, Package (0x06)
10951             {
10952                 0x61A8, 
10953                 0x000186A0, 
10954                 0x000186A0, 
10955                 0x000186A0, 
10956                 0x00030D40, 
10957                 0x00186A00
10958             })
10959             Name (CPM3, Package (0x04)
10960             {
10961                 Package (0x02)
10962                 {
10963                     0x3C, 
10964                     0x0A
10965                 }, 
10966 
10967                 Package (0x02)
10968                 {
10969                     0x64, 
10970                     0x0B
10971                 }, 
10972 
10973                 Package (0x02)
10974                 {
10975                     0x64, 
10976                     0x1F40
10977                 }, 
10978 
10979                 Package (0x02)
10980                 {
10981                     0x01F4, 
10982                     0x1F41
10983                 }
10984             })
10985             Name (CPM5, Package (0x07)
10986             {
10987                 Zero, 
10988                 0x000249F0, 
10989                 0x0190, 
10990                 0x03E8, 
10991                 0x02, 
10992                 0x32, 
10993                 0x05
10994             })
10995             Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
10996             {
10997                 If ((Arg0 == ToUUID ("0703c6b6-1cca-4144-9fe7-4654f53a0bd9")))
10998                 {
10999                     If ((Arg2 == Zero))
11000                     {
11001                         Return (Buffer (One)
11002                         {
11003                              0x03                                             // .
11004                         })
11005                     }
11006 
11007                     If ((Arg2 == One))
11008                     {
11009                         If ((ToInteger (Arg3) == Zero))
11010                         {
11011                             Return (CPM0) /* \_SB_.I2CD.CMSR.CPM0 */
11012                         }
11013 
11014                         If ((ToInteger (Arg3) == One))
11015                         {
11016                             Return (CPM1) /* \_SB_.I2CD.CMSR.CPM1 */
11017                         }
11018 
11019                         If ((ToInteger (Arg3) == 0x02))
11020                         {
11021                             Return (CPM2) /* \_SB_.I2CD.CMSR.CPM2 */
11022                         }
11023 
11024                         If ((ToInteger (Arg3) == 0x03))
11025                         {
11026                             Return (CPM3) /* \_SB_.I2CD.CMSR.CPM3 */
11027                         }
11028 
11029                         If ((ToInteger (Arg3) == 0x05))
11030                         {
11031                             Return (CPM5) /* \_SB_.I2CD.CMSR.CPM5 */
11032                         }
11033                     }
11034                 }
11035 
11036                 Return (Buffer (One)
11037                 {
11038                      0x00                                             // .
11039                 })
11040             }
11041         }
11042     }
11043 
11044     Scope (_SB)
11045     {
11046         Name (UWSV, 0x02)
11047         OperationRegion (UWNV, SystemMemory, 0xBDF65018, 0x00070000)
11048     }
11049 
11050     Scope (_SB.PCI0)
11051     {
11052         Name (OTPM, 0x02)
11053     }
11054 
11055     Scope (_SB.I2CC)
11056     {
11057         Device (TPAD)
11058         {
11059             Name (HADR, 0x0020)
11060             Name (_HID, "UNIW0001")  // _HID: Hardware ID
11061             Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */)  // _CID: Compatible ID
11062             Name (_UID, One)  // _UID: Unique ID
11063             Name (_S0W, Zero)  // _S0W: S0 Device Wake State
11064             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
11065             {
11066                 Name (RBUF, ResourceTemplate ()
11067                 {
11068                     I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80,
11069                         AddressingMode7Bit, "\\_SB.I2CC",
11070                         0x00, ResourceConsumer, , Exclusive,
11071                         )
11072                     GpioInt (Level, ActiveLow, Exclusive, PullNone, 0x0000,
11073                         "\\_SB.GPIO", 0x00, ResourceConsumer, ,
11074                         )
11075                         {   // Pin list
11076                             0x0009
11077                         }
11078                 })
11079                 Return (RBUF) /* \_SB_.I2CC.TPAD._CRS.RBUF */
11080             }
11081 
11082             Method (_STA, 0, NotSerialized)  // _STA: Status
11083             {
11084                 If ((^^^PCI0.OTPM != 0x02))
11085                 {
11086                     Return (Zero)
11087                 }
11088 
11089                 Return (0x0F)
11090             }
11091 
11092             Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
11093             {
11094                 If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
11095                 {
11096                     If ((Arg2 == Zero))
11097                     {
11098                         If ((Arg1 == One))
11099                         {
11100                             Return (Buffer (One)
11101                             {
11102                                  0x03                                             // .
11103                             })
11104                         }
11105                         Else
11106                         {
11107                             Return (Buffer (One)
11108                             {
11109                                  0x00                                             // .
11110                             })
11111                         }
11112                     }
11113 
11114                     If ((Arg2 == One))
11115                     {
11116                         Return (HADR) /* \_SB_.I2CC.TPAD.HADR */
11117                     }
11118                 }
11119 
11120                 Return (Buffer (One)
11121                 {
11122                      0x00                                             // .
11123                 })
11124             }
11125         }
11126     }
11127 
11128     Scope (_SB)
11129     {
11130         Device (SLPB)
11131         {
11132             Name (_HID, EisaId ("PNP0C0E") /* Sleep Button Device */)  // _HID: Hardware ID
11133         }
11134     }
11135 
11136     Name (ECON, Zero)
11137     Scope (_SB.PCI0.SBRG)
11138     {
11139         Device (EC0)
11140         {
11141             OperationRegion (IO, SystemIO, 0x60, 0x07)
11142             Field (IO, ByteAcc, Lock, Preserve)
11143             {
11144                 CMD0,   8, 
11145                 Offset (0x02), 
11146                 CMD2,   8, 
11147                 Offset (0x04), 
11148                 CMD4,   8, 
11149                 Offset (0x06), 
11150                 CMD6,   8
11151             }
11152 
11153             Field (IO, ByteAcc, Lock, Preserve)
11154             {
11155                 KBDT,   8, 
11156                 Offset (0x02), 
11157                 ECDT,   8, 
11158                 Offset (0x04), 
11159                 OUTS,   1, 
11160                 INPS,   1, 
11161                 Offset (0x06), 
11162                 OUT6,   1, 
11163                 INP6,   1
11164             }
11165 
11166             Name (\CPSZ, Zero)
11167             Name (OSEC, 0x06)
11168             Name (THOT, Zero)
11169             Name (NVCB, Zero)
11170             OperationRegion (ECMP, EmbeddedControl, Zero, 0xFF)
11171             Field (ECMP, ByteAcc, Lock, Preserve)
11172             {
11173                 Offset (0x7B), 
11174                 DEVS,   8
11175             }
11176 
11177             OperationRegion (ECXP, EmbeddedControl, Zero, 0xFF)
11178             Field (ECXP, ByteAcc, Lock, Preserve)
11179             {
11180                 XIF0,   16, 
11181                 XIF1,   16, 
11182                 XIF2,   16, 
11183                 XIF3,   16, 
11184                 XIF4,   16, 
11185                 XIF5,   16, 
11186                 XIF6,   16, 
11187                 XIF7,   16, 
11188                 XIF8,   16, 
11189                 XIF9,   64, 
11190                 XIFA,   64, 
11191                 XIFB,   64, 
11192                 XIFC,   64, 
11193                 XST0,   16, 
11194                 XST1,   16, 
11195                 XST2,   16, 
11196                 XST3,   16, 
11197                 XTP0,   16, 
11198                 XCIN,   1, 
11199                     ,   1, 
11200                 XTIN,   1, 
11201                 Offset (0x3D), 
11202                 Offset (0x3E), 
11203                 XHPP,   7, 
11204                 Offset (0x3F), 
11205                 Offset (0x40), 
11206                 XSEC,   8, 
11207                 XLPT,   8, 
11208                     ,   3, 
11209                 Q70D,   1, 
11210                 Q70M,   1, 
11211                 Offset (0x43), 
11212                 XBRL,   3, 
11213                     ,   4, 
11214                 XBKL,   1, 
11215                 Offset (0x56), 
11216                 VGTP,   1, 
11217                     ,   3, 
11218                 MDTP,   2, 
11219                 Offset (0x58), 
11220                     ,   7, 
11221                 EIST,   1, 
11222                 Offset (0x5A), 
11223                 DEXS,   8, 
11224                 XSLT,   1, 
11225                     ,   2, 
11226                 GC6I,   1, 
11227                 GPST,   1, 
11228                 Offset (0x5C), 
11229                 Offset (0x63), 
11230                 TCOS,   8, 
11231                 Offset (0x66), 
11232                 TURB,   8, 
11233                 Offset (0x6A), 
11234                 PL1L,   8, 
11235                 PL2L,   8, 
11236                 Offset (0x6E), 
11237                 PL3L,   8, 
11238                 PL4L,   8, 
11239                 Offset (0x72), 
11240                     ,   4, 
11241                 XS4F,   1, 
11242                 Offset (0x76), 
11243                     ,   1, 
11244                 SLID,   1, 
11245                     ,   1, 
11246                 S3WA,   1, 
11247                     ,   1, 
11248                 HPEN,   1, 
11249                 Offset (0x77), 
11250                 Offset (0x78), 
11251                 HBTN,   8, 
11252                 BRTS,   8, 
11253                 W8BR,   8, 
11254                     ,   1, 
11255                 TOPD,   1, 
11256                 WUSB,   1, 
11257                 FGPT,   1, 
11258                 WEBC,   1, 
11259                 BLTH,   1, 
11260                 DV3G,   1, 
11261                 WLAN,   1, 
11262                 OSDF,   8, 
11263                 CGVT,   8, 
11264                 Offset (0x8A), 
11265                 LDAT,   8, 
11266                 HDAT,   8, 
11267                 RFLG,   1, 
11268                 WFLG,   1, 
11269                 BFLG,   1, 
11270                 CFLG,   1, 
11271                     ,   3, 
11272                 DRDY,   1, 
11273                 CMDL,   8, 
11274                 CMDH,   8, 
11275                 Offset (0x90), 
11276                 ACIC,   1, 
11277                 BPST,   1, 
11278                 BSOK,   1, 
11279                 Offset (0x9F), 
11280                 ACWT,   1, 
11281                 HTMF,   1, 
11282                 ACFL,   1, 
11283                 Offset (0xA0), 
11284                 Offset (0xA6), 
11285                 CYCN,   16, 
11286                 Offset (0xC0), 
11287                 BIF0,   16, 
11288                 BIF1,   16, 
11289                 BIF2,   16, 
11290                 BIF3,   16, 
11291                 BIF4,   16, 
11292                 BIF5,   16, 
11293                 BIF6,   16, 
11294                 BIF7,   16, 
11295                 BIF8,   16, 
11296                 BIF9,   64, 
11297                 BIFA,   64, 
11298                 BIFB,   64, 
11299                 BIFC,   64, 
11300                 BST0,   16, 
11301                 BST1,   16, 
11302                 BST2,   16, 
11303                 BST3,   16, 
11304                 BTP0,   16, 
11305                 ACIN,   1, 
11306                     ,   1, 
11307                 BTIN,   1, 
11308                 Offset (0xFD)
11309             }
11310 
11311             Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */)  // _HID: Hardware ID
11312             Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
11313             {
11314                 IO (Decode16,
11315                     0x0062,             // Range Minimum
11316                     0x0062,             // Range Maximum
11317                     0x00,               // Alignment
11318                     0x01,               // Length
11319                     )
11320                 IO (Decode16,
11321                     0x0066,             // Range Minimum
11322                     0x0066,             // Range Maximum
11323                     0x00,               // Alignment
11324                     0x01,               // Length
11325                     )
11326             })
11327             Mutex (ECMT, 0x00)
11328             Method (ECMD, 1, Serialized)
11329             {
11330                 Local0 = Acquire (ECMT, 0x03E8)
11331                 If ((Local0 == Zero))
11332                 {
11333                     If (ECON)
11334                     {
11335                         While ((CMD6 & 0x02))
11336                         {
11337                             Stall (0x05)
11338                         }
11339 
11340                         CMD6 = Arg0
11341                     }
11342 
11343                     Release (ECMT)
11344                     Return (Zero)
11345                 }
11346                 Else
11347                 {
11348                     Return (0xFF)
11349                 }
11350             }
11351 
11352             Name (_GPE, 0x03)  // _GPE: General Purpose Events
11353             Method (_REG, 2, NotSerialized)  // _REG: Region Availability
11354             {
11355                 If (((Arg0 == 0x03) && (Arg1 == One)))
11356                 {
11357                     ECON = One
11358                     If ((OSVR == 0x10))
11359                     {
11360                         OSEC = 0x07
11361                         DBG8 = 0x07
11362                     }
11363                     ElseIf (((OSVR == 0x0E) || (OSVR == 0x0F)))
11364                     {
11365                         OSEC = 0x06
11366                         DBG8 = 0x06
11367                     }
11368                     Else
11369                     {
11370                         OSEC = 0x05
11371                         DBG8 = 0x05
11372                     }
11373 
11374                     XSEC = OSEC /* \_SB_.PCI0.SBRG.EC0_.OSEC */
11375                 }
11376             }
11377 
11378             Method (_Q06, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11379             {
11380                 DBG8 = 0x06
11381                 If ((BPST == One))
11382                 {
11383                     Notify (BAT0, 0x81) // Information Change
11384                 }
11385 
11386                 Notify (BAT0, 0x80) // Status Change
11387                 Notify (AC0, 0x80) // Status Change
11388             }
11389 
11390             Method (_Q07, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11391             {
11392                 DBG8 = 0x07
11393                 Local0 = Zero
11394                 Notify (AC0, 0x80) // Status Change
11395                 Sleep (0x14)
11396                 Notify (BAT0, 0x80) // Status Change
11397                 Sleep (0x14)
11398             }
11399 
11400             Method (_Q0A, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11401             {
11402                 DBG8 = 0x0A
11403                 Notify (SLPB, 0x80) // Status Change
11404             }
11405 
11406             Method (_Q0B, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11407             {
11408                 DBG8 = 0x0B
11409             }
11410 
11411             Method (_Q0C, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11412             {
11413                 DBG8 = 0x0C
11414                 ^^^VGA.AFN0 ()
11415                 Notify (VGA, 0x80) // Status Change
11416             }
11417 
11418             Method (_Q0D, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11419             {
11420                 DBG8 = 0x0D
11421             }
11422 
11423             Method (_Q0E, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11424             {
11425                 DBG8 = 0x0E
11426             }
11427 
11428             Method (_Q0F, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11429             {
11430                 DBG8 = 0x0F
11431             }
11432 
11433             Method (_Q10, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11434             {
11435                 DBG8 = 0x10
11436             }
11437 
11438             Method (_Q11, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11439             {
11440                 DBG8 = 0x11
11441             }
11442 
11443             Method (_Q12, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11444             {
11445                 DBG8 = 0x12
11446             }
11447 
11448             Method (_Q13, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11449             {
11450                 DBG8 = 0x13
11451             }
11452 
11453             Method (_Q14, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11454             {
11455                 DBG8 = 0x14
11456                 Notify (^^^GP17.VGA.LCD, 0x87) // Device-Specific
11457             }
11458 
11459             Method (_Q15, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11460             {
11461                 DBG8 = 0x15
11462                 Notify (^^^GP17.VGA.LCD, 0x86) // Device-Specific
11463             }
11464 
11465             Method (_Q2D, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11466             {
11467                 DBG8 = 0x2D
11468             }
11469 
11470             Method (_Q2E, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11471             {
11472                 DBG8 = 0x2E
11473                 \_PR.NPSS = 0x04
11474                 Notify (\_PR.P001, 0x80) // Performance Capability Change
11475                 XSLT = One
11476             }
11477 
11478             Method (_Q2F, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11479             {
11480                 DBG8 = 0x2F
11481                 \_PR.NPSS = Zero
11482                 Notify (\_PR.P001, 0x80) // Performance Capability Change
11483                 XSLT = Zero
11484             }
11485 
11486             Method (_Q16, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11487             {
11488                 DBG8 = 0x16
11489                 ^^^^LID1.LIDS = One
11490                 Notify (LID1, 0x80) // Status Change
11491             }
11492 
11493             Method (_Q19, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11494             {
11495                 DBG8 = 0x19
11496                 ^^^^LID1.LIDS = Zero
11497                 Notify (LID1, 0x80) // Status Change
11498             }
11499 
11500             Method (_Q27, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11501             {
11502                 DBG8 = 0x27
11503                 THOT = One
11504                 Notify (ECTZ, 0x80) // Thermal Status Change
11505             }
11506 
11507             Method (_Q30, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11508             {
11509                 DBG8 = 0x30
11510             }
11511 
11512             Method (_Q40, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11513             {
11514                 DBG8 = 0x40
11515             }
11516 
11517             Method (_Q41, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11518             {
11519                 DBG8 = 0x41
11520             }
11521 
11522             Method (_Q42, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11523             {
11524                 DBG8 = 0x42
11525             }
11526 
11527             Method (_Q43, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11528             {
11529                 DBG8 = 0x43
11530             }
11531 
11532             Method (_Q44, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11533             {
11534                 DBG8 = 0x44
11535             }
11536 
11537             Method (_Q45, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11538             {
11539                 DBG8 = 0x45
11540             }
11541 
11542             Method (_Q46, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11543             {
11544                 DBG8 = 0x46
11545             }
11546 
11547             Method (_Q47, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11548             {
11549                 DBG8 = 0x47
11550             }
11551 
11552             Method (_Q70, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11553             {
11554                 DBG8 = 0x70
11555                 Local0 = (PL1L * 0x03E8)
11556                 Local1 = (PL2L * 0x03E8)
11557                 Local2 = (PL4L * 0x03E8)
11558                 PLIM (0x05, Local0)
11559                 PLIM (0x07, Local1)
11560                 PLIM (0x06, Local2)
11561             }
11562 
11563             Method (_Q71, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11564             {
11565                 DBG8 = 0x71
11566                 If ((TCOS == 0x7F))
11567                 {
11568                     PLIM (0x03, THCL)
11569                 }
11570                 Else
11571                 {
11572                     PLIM (0x03, TCOS)
11573                 }
11574             }
11575 
11576             Method (_Q72, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11577             {
11578                 DBG8 = 0x72
11579             }
11580 
11581             Method (_QD1, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11582             {
11583                 DBG8 = 0xD1
11584                 Debug = "=== QD1 ==="
11585             }
11586 
11587             Method (_QD2, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11588             {
11589                 DBG8 = 0xD2
11590                 Debug = "=== QD2 ==="
11591             }
11592 
11593             Method (_QD3, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11594             {
11595                 DBG8 = 0xD3
11596                 Debug = "=== QD3 ==="
11597             }
11598 
11599             Method (_QD4, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11600             {
11601                 DBG8 = 0xD4
11602                 Debug = "=== QD4 ==="
11603             }
11604 
11605             Method (_QD5, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11606             {
11607                 DBG8 = 0xD5
11608                 Debug = "=== QD5 ==="
11609             }
11610 
11611             Name (OSDT, Zero)
11612             Method (_Q53, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11613             {
11614                 DBG8 = 0x53
11615                 Sleep (0x14)
11616                 OSDT = OSDF /* \_SB_.PCI0.SBRG.EC0_.OSDF */
11617                 ^^^^AMW0.WMBC (Zero, 0x03, OSDT)
11618                 OSDT = Zero
11619                 Sleep (0x14)
11620                 OSDF = Zero
11621             }
11622 
11623             Method (_Q6E, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11624             {
11625                 DBG8 = 0x6E
11626                 S3WA = One
11627             }
11628 
11629             Method (_Q74, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11630             {
11631                 DBG8 = 0x74
11632             }
11633 
11634             Method (_Q75, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11635             {
11636                 DBG8 = 0x75
11637             }
11638 
11639             Method (_Q76, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11640             {
11641                 DBG8 = 0x76
11642             }
11643 
11644             Method (_Q77, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11645             {
11646                 DBG8 = 0x77
11647             }
11648 
11649             Method (_Q78, 0, NotSerialized)  // _Qxx: EC Query, xx=0x00-0xFF
11650             {
11651                 DBG8 = 0x78
11652             }
11653 
11654             Name (XX11, Buffer (0x07){})
11655             Method (PLIM, 2, NotSerialized)
11656             {
11657                 CreateWordField (XX11, Zero, SSZE)
11658                 CreateByteField (XX11, 0x02, SMUF)
11659                 CreateDWordField (XX11, 0x03, SMUD)
11660                 SSZE = 0x07
11661                 SMUF = Arg0
11662                 SMUD = Arg1
11663                 ALIB (0x0C, XX11)
11664             }
11665         }
11666     }
11667 
11668     Scope (_SB)
11669     {
11670         Mutex (MUEX, 0x00)
11671         Device (AC0)
11672         {
11673             Name (_HID, "ACPI0003" /* Power Source Device */)  // _HID: Hardware ID
11674             Name (_PCL, Package (0x01)  // _PCL: Power Consumer List
11675             {
11676                 _SB
11677             })
11678             Name (XX00, Buffer (0x03){})
11679             Name (ACDC, 0xFF)
11680             Method (_PSR, 0, NotSerialized)  // _PSR: Power Source
11681             {
11682                 Acquire (MUEX, 0xFFFF)
11683                 If (ECON)
11684                 {
11685                     Local0 = ^^PCI0.SBRG.EC0.XCIN /* \_SB_.PCI0.SBRG.EC0_.XCIN */
11686                 }
11687                 Else
11688                 {
11689                     Local0 = One
11690                 }
11691 
11692                 Release (MUEX)
11693                 CreateWordField (XX00, Zero, SSZE)
11694                 CreateByteField (XX00, 0x02, ACST)
11695                 SSZE = 0x03
11696                 If (Local0)
11697                 {
11698                     AFN4 (One)
11699                     ACST = Zero
11700                 }
11701                 Else
11702                 {
11703                     AFN4 (0x02)
11704                     ACST = One
11705                 }
11706 
11707                 ALIB (One, XX00)
11708                 ACDC = Local0
11709                 Return (Local0)
11710             }
11711         }
11712 
11713         Device (BAT0)
11714         {
11715             Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */)  // _HID: Hardware ID
11716             Name (_UID, Zero)  // _UID: Unique ID
11717             Name (_PCL, Package (0x01)  // _PCL: Power Consumer List
11718             {
11719                 _SB
11720             })
11721             Name (PAK0, Package (0x0D)
11722             {
11723                 One, 
11724                 0x0C56, 
11725                 0x0C56, 
11726                 Zero, 
11727                 0x2A30, 
11728                 Zero, 
11729                 Zero, 
11730                 0x10, 
11731                 0x08, 
11732                 "standard", 
11733                 "00001", 
11734                 "LiON", 
11735                 "OEM"
11736             })
11737             Method (ECBE, 0, NotSerialized)
11738             {
11739                 Acquire (MUEX, 0xFFFF)
11740                 Debug = "ECBE"
11741                 PAK0 [One] = ^^PCI0.SBRG.EC0.XIF1 /* \_SB_.PCI0.SBRG.EC0_.XIF1 */
11742                 If ((^^PCI0.SBRG.EC0.CYCN >= 0x32))
11743                 {
11744                     PAK0 [0x02] = ^^PCI0.SBRG.EC0.XIF2 /* \_SB_.PCI0.SBRG.EC0_.XIF2 */
11745                 }
11746                 Else
11747                 {
11748                     PAK0 [0x02] = ^^PCI0.SBRG.EC0.XIF1 /* \_SB_.PCI0.SBRG.EC0_.XIF1 */
11749                 }
11750 
11751                 PAK0 [0x03] = ^^PCI0.SBRG.EC0.XIF3 /* \_SB_.PCI0.SBRG.EC0_.XIF3 */
11752                 PAK0 [0x04] = ^^PCI0.SBRG.EC0.XIF4 /* \_SB_.PCI0.SBRG.EC0_.XIF4 */
11753                 PAK0 [0x07] = ^^PCI0.SBRG.EC0.XIF7 /* \_SB_.PCI0.SBRG.EC0_.XIF7 */
11754                 Release (MUEX)
11755             }
11756 
11757             Method (_BIF, 0, NotSerialized)  // _BIF: Battery Information
11758             {
11759                 If (ECON)
11760                 {
11761                     ECBE ()
11762                 }
11763                 Else
11764                 {
11765                     PAK0 [One] = 0xFFFFFFFF
11766                     PAK0 [0x02] = 0xFFFFFFFF
11767                     PAK0 [0x04] = 0xFFFFFFFF
11768                     PAK0 [0x09] = "Error"
11769                     PAK0 [0x0A] = "00000"
11770                     PAK0 [0x0B] = "Error"
11771                     PAK0 [0x0C] = "Error"
11772                 }
11773 
11774                 Return (PAK0) /* \_SB_.BAT0.PAK0 */
11775             }
11776 
11777             Name (BFB0, Package (0x04)
11778             {
11779                 Zero, 
11780                 Zero, 
11781                 Zero, 
11782                 Zero
11783             })
11784             Method (_BST, 0, NotSerialized)  // _BST: Battery Status
11785             {
11786                 Acquire (MUEX, 0xFFFF)
11787                 Debug = "BST1 Start"
11788                 If ((^^PCI0.SBRG.EC0.BSOK == One))
11789                 {
11790                     BFB0 [Zero] = ^^PCI0.SBRG.EC0.XST0 /* \_SB_.PCI0.SBRG.EC0_.XST0 */
11791                     BFB0 [One] = ^^PCI0.SBRG.EC0.XST1 /* \_SB_.PCI0.SBRG.EC0_.XST1 */
11792                     If ((^^PCI0.SBRG.EC0.CYCN >= 0x32))
11793                     {
11794                         BFB0 [0x02] = ^^PCI0.SBRG.EC0.XST2 /* \_SB_.PCI0.SBRG.EC0_.XST2 */
11795                     }
11796                     Else
11797                     {
11798                         Local0 = (^^PCI0.SBRG.EC0.XST2 * ^^PCI0.SBRG.EC0.XIF1)
11799                         Local1 = ^^PCI0.SBRG.EC0.XIF2 /* \_SB_.PCI0.SBRG.EC0_.XIF2 */
11800                         BFB0 [0x02] = (Local0 / Local1)
11801                     }
11802 
11803                     BFB0 [0x03] = ^^PCI0.SBRG.EC0.XST3 /* \_SB_.PCI0.SBRG.EC0_.XST3 */
11804                     Debug = "BST1 End"
11805                 }
11806 
11807                 Release (MUEX)
11808                 Return (BFB0) /* \_SB_.BAT0.BFB0 */
11809             }
11810 
11811             Method (_STA, 0, NotSerialized)  // _STA: Status
11812             {
11813                 Debug = "BAT0_STA Start"
11814                 If (((BAEX == Zero) || (DA18 == One)))
11815                 {
11816                     Return (Zero)
11817                 }
11818                 ElseIf (ECON)
11819                 {
11820                     Acquire (MUEX, 0xFFFF)
11821                     Local0 = ^^PCI0.SBRG.EC0.BPST /* \_SB_.PCI0.SBRG.EC0_.BPST */
11822                     Release (MUEX)
11823                     If ((Local0 == One))
11824                     {
11825                         Return (0x1F)
11826                     }
11827                     Else
11828                     {
11829                         Return (0x0F)
11830                     }
11831                 }
11832                 Else
11833                 {
11834                     Return (0x0F)
11835                 }
11836 
11837                 Debug = "BAT0_STA END"
11838             }
11839         }
11840 
11841         ThermalZone (ECTZ)
11842         {
11843             Method (_CRT, 0, Serialized)  // _CRT: Critical Temperature
11844             {
11845                 Return (0x0E94)
11846             }
11847 
11848             Method (_TMP, 0, Serialized)  // _TMP: Temperature
11849             {
11850                 If ((ECON == Zero))
11851                 {
11852                     Return (0x0BC2)
11853                 }
11854 
11855                 If ((^^PCI0.SBRG.EC0.THOT != Zero))
11856                 {
11857                     ^^PCI0.SBRG.EC0.THOT = Zero
11858                     Return (0x0FA0)
11859                 }
11860                 Else
11861                 {
11862                     Return ((0x0AAC + (^^PCI0.SBRG.EC0.XHPP * 0x0A)))
11863                 }
11864             }
11865         }
11866     }
11867 
11868     Scope (\)
11869     {
11870         OperationRegion (CMS2, SystemIO, 0x72, 0x02)
11871         Field (CMS2, ByteAcc, NoLock, Preserve)
11872         {
11873             INDX,   8, 
11874             DATA,   8
11875         }
11876 
11877         IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
11878         {
11879             Offset (0xB4), 
11880             FHAP,   8, 
11881             Offset (0xE0), 
11882             VCMD,   8, 
11883             FLSH,   8, 
11884             Offset (0xE4), 
11885             SLFG,   8, 
11886             Offset (0xEA), 
11887             STAU,   8, 
11888             Offset (0xED), 
11889             VTDW,   8, 
11890             BLAC,   8, 
11891             BLBT,   8, 
11892             WBFG,   1, 
11893             Offset (0xF1), 
11894             R47B,   8, 
11895             R45A,   8
11896         }
11897     }
11898 
11899     Scope (_SB)
11900     {
11901         Device (LID1)
11902         {
11903             Name (_HID, EisaId ("PNP0C0D") /* Lid Device */)  // _HID: Hardware ID
11904             Name (LIDS, One)
11905             Method (_LID, 0, NotSerialized)  // _LID: Lid Status
11906             {
11907                 Return (LIDS) /* \_SB_.LID1.LIDS */
11908             }
11909 
11910             Method (_STA, 0, NotSerialized)  // _STA: Status
11911             {
11912                 If ((DA18 == One))
11913                 {
11914                     Return (Zero)
11915                 }
11916                 Else
11917                 {
11918                     Return (0x0F)
11919                 }
11920             }
11921         }
11922     }
11923 
11924     Scope (_SB)
11925     {
11926         Device (AMW0)
11927         {
11928             OperationRegion (DBG8, SystemIO, 0x80, One)
11929             Field (DBG8, ByteAcc, NoLock, Preserve)
11930             {
11931                 IO80,   8
11932             }
11933 
11934             Name (_HID, EisaId ("PNP0C14") /* Windows Management Instrumentation Device */)  // _HID: Hardware ID
11935             Name (_UID, One)  // _UID: Unique ID
11936             Name (RPES, Zero)
11937             Name (FFNT, Zero)
11938             Name (DTRD, Zero)
11939             Name (_WDG, Buffer (0xC8)
11940             {
11941                 /* 0000 */  0x6A, 0x0F, 0xBC, 0xAB, 0xA1, 0x8E, 0xD1, 0x11,  // j.......
11942                 /* 0008 */  0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, 0x00, 0x00,  // ....)...
11943                 /* 0010 */  0x41, 0x41, 0x01, 0x01, 0x6B, 0x0F, 0xBC, 0xAB,  // AA..k...
11944                 /* 0018 */  0xA1, 0x8E, 0xD1, 0x11, 0x00, 0xA0, 0xC9, 0x06,  // ........
11945                 /* 0020 */  0x29, 0x10, 0x00, 0x00, 0x41, 0x42, 0x01, 0x05,  // )...AB..
11946                 /* 0028 */  0x6C, 0x0F, 0xBC, 0xAB, 0xA1, 0x8E, 0xD1, 0x11,  // l.......
11947                 /* 0030 */  0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, 0x00, 0x00,  // ....)...
11948                 /* 0038 */  0x41, 0x43, 0x01, 0x01, 0x6D, 0x0F, 0xBC, 0xAB,  // AC..m...
11949                 /* 0040 */  0xA1, 0x8E, 0xD1, 0x11, 0x00, 0xA0, 0xC9, 0x06,  // ........
11950                 /* 0048 */  0x29, 0x10, 0x00, 0x00, 0x42, 0x41, 0x03, 0x02,  // )...BA..
11951                 /* 0050 */  0x6E, 0x0F, 0xBC, 0xAB, 0xA1, 0x8E, 0xD1, 0x11,  // n.......
11952                 /* 0058 */  0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, 0x00, 0x00,  // ....)...
11953                 /* 0060 */  0x42, 0x42, 0x02, 0x06, 0x6F, 0x0F, 0xBC, 0xAB,  // BB..o...
11954                 /* 0068 */  0xA1, 0x8E, 0xD1, 0x11, 0x00, 0xA0, 0xC9, 0x06,  // ........
11955                 /* 0070 */  0x29, 0x10, 0x00, 0x00, 0x42, 0x43, 0x0A, 0x02,  // )...BC..
11956                 /* 0078 */  0x70, 0x0F, 0xBC, 0xAB, 0xA1, 0x8E, 0xD1, 0x11,  // p.......
11957                 /* 0080 */  0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, 0x00, 0x00,  // ....)...
11958                 /* 0088 */  0xD0, 0x00, 0x01, 0x08, 0x71, 0x0F, 0xBC, 0xAB,  // ....q...
11959                 /* 0090 */  0xA1, 0x8E, 0xD1, 0x11, 0x00, 0xA0, 0xC9, 0x06,  // ........
11960                 /* 0098 */  0x29, 0x10, 0x00, 0x00, 0xD1, 0x00, 0x01, 0x0C,  // ).......
11961                 /* 00A0 */  0x72, 0x0F, 0xBC, 0xAB, 0xA1, 0x8E, 0xD1, 0x11,  // r.......
11962                 /* 00A8 */  0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10, 0x00, 0x00,  // ....)...
11963                 /* 00B0 */  0xD2, 0x00, 0x01, 0x08, 0x21, 0x12, 0x90, 0x05,  // ....!...
11964                 /* 00B8 */  0x66, 0xD5, 0xD1, 0x11, 0xB2, 0xF0, 0x00, 0xA0,  // f.......
11965                 /* 00C0 */  0xC9, 0x06, 0x29, 0x10, 0x42, 0x41, 0x01, 0x00   // ..).BA..
11966             })
11967             Name (SAA0, Buffer (0x10)
11968             {
11969                 /* 0000 */  0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,  // ........
11970                 /* 0008 */  0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00   // ........
11971             })
11972             Name (SAA1, Buffer (0x10)
11973             {
11974                 /* 0000 */  0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,  // ........
11975                 /* 0008 */  0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00   // ........
11976             })
11977             Name (SAA2, Buffer (0x10)
11978             {
11979                 /* 0000 */  0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,  // ........
11980                 /* 0008 */  0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00   // ........
11981             })
11982             Name (SAA3, Buffer (0x10)
11983             {
11984                 /* 0000 */  0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,  // ........
11985                 /* 0008 */  0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00   // ........
11986             })
11987             Name (SAB0, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#$%^&*()1234567890-_=+[]{}")
11988             Name (SAB1, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#$%^&*()1234567890-_=+[]{}")
11989             Name (SAB2, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#$%^&*()1234567890-_=+[]{}")
11990             Name (SAB3, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#$%^&*()1234567890-_=+[]{}")
11991             Name (AC00, Buffer (0x28)
11992             {
11993                 /* 0000 */  0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,  // ........
11994                 /* 0008 */  0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03,  // ........
11995                 /* 0010 */  0x04, 0x04, 0x04, 0x04, 0x05, 0x05, 0x05, 0x05,  // ........
11996                 /* 0018 */  0x06, 0x06, 0x06, 0x06, 0x07, 0x07, 0x07, 0x07,  // ........
11997                 /* 0020 */  0x08, 0x08, 0x08, 0x08, 0x09, 0x09, 0x09, 0x09   // ........
11998             })
11999             CreateDWordField (AC00, Zero, SAC0)
12000             CreateDWordField (AC00, 0x04, SAC1)
12001             CreateDWordField (AC00, 0x08, SAC2)
12002             CreateDWordField (AC00, 0x0C, SAC3)
12003             CreateDWordField (AC00, 0x10, SAC4)
12004             CreateDWordField (AC00, 0x14, SAC5)
12005             CreateDWordField (AC00, 0x18, SAC6)
12006             CreateDWordField (AC00, 0x1C, SAC7)
12007             CreateDWordField (AC00, 0x20, SAC8)
12008             CreateDWordField (AC00, 0x24, SAC9)
12009             CreateByteField (AC00, Zero, SA00)
12010             CreateByteField (AC00, One, SA01)
12011             CreateByteField (AC00, 0x02, SA02)
12012             CreateByteField (AC00, 0x03, SA03)
12013             CreateByteField (AC00, 0x04, SA04)
12014             CreateByteField (AC00, 0x05, SA05)
12015             CreateByteField (AC00, 0x06, SA06)
12016             CreateByteField (AC00, 0x07, SA07)
12017             CreateByteField (AC00, 0x08, SA08)
12018             CreateByteField (AC00, 0x09, SA09)
12019             CreateByteField (AC00, 0x0A, SA0A)
12020             CreateByteField (AC00, 0x0B, SA0B)
12021             CreateByteField (AC00, 0x0C, SA0C)
12022             CreateByteField (AC00, 0x0D, SA0D)
12023             CreateByteField (AC00, 0x0E, SA0E)
12024             CreateByteField (AC00, 0x0F, SA0F)
12025             CreateByteField (AC00, 0x10, SA10)
12026             CreateByteField (AC00, 0x11, SA11)
12027             CreateByteField (AC00, 0x12, SA12)
12028             CreateByteField (AC00, 0x13, SA13)
12029             CreateByteField (AC00, 0x14, SA14)
12030             CreateByteField (AC00, 0x15, SA15)
12031             CreateByteField (AC00, 0x16, SA16)
12032             CreateByteField (AC00, 0x17, SA17)
12033             CreateByteField (AC00, 0x18, SA18)
12034             CreateByteField (AC00, 0x19, SA19)
12035             CreateByteField (AC00, 0x1A, SA1A)
12036             CreateByteField (AC00, 0x1B, SA1B)
12037             CreateByteField (AC00, 0x1C, SA1C)
12038             CreateByteField (AC00, 0x1D, SA1D)
12039             CreateByteField (AC00, 0x1E, SA1E)
12040             CreateByteField (AC00, 0x1F, SA1F)
12041             Name (CCAA, Zero)
12042             Name (CCAB, Zero)
12043             Name (CCAC, Zero)
12044             Name (ECD0, Zero)
12045             Name (ECD1, Zero)
12046             Name (ECD2, Zero)
12047             Name (\ECOK, One)
12048             Mutex (\ECMX, 0x00)
12049             Method (WCAA, 1, NotSerialized)
12050             {
12051                 If ((Arg0 == Zero))
12052                 {
12053                     If ((CCAA == Zero)){}
12054                 }
12055                 ElseIf ((CCAA != Zero)){}
12056                 CCAA = Arg0
12057             }
12058 
12059             Method (WCAB, 1, NotSerialized)
12060             {
12061                 If ((Arg0 == Zero))
12062                 {
12063                     If ((CCAB == Zero)){}
12064                 }
12065                 ElseIf ((CCAB != Zero)){}
12066                 CCAB = Arg0
12067             }
12068 
12069             Method (WCAC, 1, NotSerialized)
12070             {
12071                 If ((Arg0 == Zero))
12072                 {
12073                     If ((CCAC == Zero)){}
12074                 }
12075                 ElseIf ((CCAC != Zero)){}
12076                 CCAC = Arg0
12077             }
12078 
12079             Method (WED0, 1, NotSerialized)
12080             {
12081                 If ((Arg0 == Zero))
12082                 {
12083                     If ((ECD0 == Zero)){}
12084                 }
12085                 ElseIf ((ECD0 != Zero)){}
12086                 ECD0 = Arg0
12087             }
12088 
12089             Method (WED1, 1, NotSerialized)
12090             {
12091                 If ((Arg0 == Zero))
12092                 {
12093                     If ((ECD1 == Zero)){}
12094                 }
12095                 ElseIf ((ECD1 != Zero)){}
12096                 ECD1 = Arg0
12097             }
12098 
12099             Method (WED2, 1, NotSerialized)
12100             {
12101                 If ((Arg0 == Zero))
12102                 {
12103                     If ((ECD2 == Zero)){}
12104                 }
12105                 ElseIf ((ECD2 != Zero)){}
12106                 ECD2 = Arg0
12107             }
12108 
12109             Method (GETA, 1, NotSerialized)
12110             {
12111                 If ((Arg0 == Zero))
12112                 {
12113                     Return (SAA0) /* \_SB_.AMW0.SAA0 */
12114                 }
12115 
12116                 If ((Arg0 == One))
12117                 {
12118                     Return (SAA1) /* \_SB_.AMW0.SAA1 */
12119                 }
12120 
12121                 If ((Arg0 == 0x02))
12122                 {
12123                     Return (SAA2) /* \_SB_.AMW0.SAA2 */
12124                 }
12125 
12126                 If ((Arg0 == 0x03))
12127                 {
12128                     Return (SAA3) /* \_SB_.AMW0.SAA3 */
12129                 }
12130 
12131                 Return (0xFFFFFFFF)
12132             }
12133 
12134             Method (GETB, 1, NotSerialized)
12135             {
12136                 If ((Arg0 == Zero))
12137                 {
12138                     Return (SAB0) /* \_SB_.AMW0.SAB0 */
12139                 }
12140 
12141                 If ((Arg0 == One))
12142                 {
12143                     Return (SAB1) /* \_SB_.AMW0.SAB1 */
12144                 }
12145 
12146                 If ((Arg0 == 0x02))
12147                 {
12148                     Return (SAB2) /* \_SB_.AMW0.SAB2 */
12149                 }
12150 
12151                 If ((Arg0 == 0x03))
12152                 {
12153                     Return (SAB3) /* \_SB_.AMW0.SAB3 */
12154                 }
12155 
12156                 Return (0xFFFFFFFF)
12157             }
12158 
12159             Method (GETC, 1, NotSerialized)
12160             {
12161                 If ((Arg0 == Zero))
12162                 {
12163                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12164                 }
12165 
12166                 If ((Arg0 == One))
12167                 {
12168                     Return (SAC1) /* \_SB_.AMW0.SAC1 */
12169                 }
12170 
12171                 If ((Arg0 == 0x02))
12172                 {
12173                     Return (SAC2) /* \_SB_.AMW0.SAC2 */
12174                 }
12175 
12176                 If ((Arg0 == 0x03))
12177                 {
12178                     Return (SAC3) /* \_SB_.AMW0.SAC3 */
12179                 }
12180 
12181                 If ((Arg0 == 0x04))
12182                 {
12183                     Return (SAC4) /* \_SB_.AMW0.SAC4 */
12184                 }
12185 
12186                 If ((Arg0 == 0x05))
12187                 {
12188                     Return (SAC5) /* \_SB_.AMW0.SAC5 */
12189                 }
12190 
12191                 If ((Arg0 == 0x06))
12192                 {
12193                     Return (SAC6) /* \_SB_.AMW0.SAC6 */
12194                 }
12195 
12196                 If ((Arg0 == 0x07))
12197                 {
12198                     Return (SAC7) /* \_SB_.AMW0.SAC7 */
12199                 }
12200 
12201                 If ((Arg0 == 0x08))
12202                 {
12203                     Return (SAC8) /* \_SB_.AMW0.SAC8 */
12204                 }
12205 
12206                 If ((Arg0 == 0x09))
12207                 {
12208                     Return (SAC9) /* \_SB_.AMW0.SAC9 */
12209                 }
12210 
12211                 Return (0xFFFFFFFF)
12212             }
12213 
12214             Method (WQAA, 1, NotSerialized)
12215             {
12216                 If ((CCAA == Zero)){}
12217                 Return (GETA (Arg0))
12218             }
12219 
12220             Method (WQAB, 1, NotSerialized)
12221             {
12222                 If ((CCAB == Zero)){}
12223                 Return (GETB (Arg0))
12224             }
12225 
12226             Method (WQAC, 1, NotSerialized)
12227             {
12228                 If ((CCAC == Zero)){}
12229                 Return (GETC (Arg0))
12230             }
12231 
12232             Method (SETA, 2, NotSerialized)
12233             {
12234                 If ((Arg0 == Zero))
12235                 {
12236                     SAA0 = Arg1
12237                     Return (SAA0) /* \_SB_.AMW0.SAA0 */
12238                 }
12239 
12240                 If ((Arg0 == One))
12241                 {
12242                     SAA1 = Arg1
12243                     Return (SAA1) /* \_SB_.AMW0.SAA1 */
12244                 }
12245 
12246                 If ((Arg0 == 0x02))
12247                 {
12248                     SAA2 = Arg1
12249                     Return (SAA2) /* \_SB_.AMW0.SAA2 */
12250                 }
12251 
12252                 If ((Arg0 == 0x03))
12253                 {
12254                     SAA3 = Arg1
12255                     Return (SAA3) /* \_SB_.AMW0.SAA3 */
12256                 }
12257 
12258                 Return (0xFFFFFFFF)
12259             }
12260 
12261             Method (SETB, 2, NotSerialized)
12262             {
12263                 If ((Arg0 == Zero))
12264                 {
12265                     SAB0 = Arg1
12266                     Return (SAB0) /* \_SB_.AMW0.SAB0 */
12267                 }
12268 
12269                 If ((Arg0 == One))
12270                 {
12271                     SAB1 = Arg1
12272                     Return (SAB1) /* \_SB_.AMW0.SAB1 */
12273                 }
12274 
12275                 If ((Arg0 == 0x02))
12276                 {
12277                     SAB2 = Arg1
12278                     Return (SAB2) /* \_SB_.AMW0.SAB2 */
12279                 }
12280 
12281                 If ((Arg0 == 0x03))
12282                 {
12283                     SAB3 = Arg1
12284                     Return (SAB3) /* \_SB_.AMW0.SAB3 */
12285                 }
12286 
12287                 Return (0xFFFFFFFF)
12288             }
12289 
12290             Method (SETC, 2, NotSerialized)
12291             {
12292                 If ((Arg0 == Zero))
12293                 {
12294                     AC00 = Arg1
12295                     OEMF (AC00)
12296                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12297                 }
12298 
12299                 If ((Arg0 == One))
12300                 {
12301                     SAC1 = Arg1
12302                     Return (SAC1) /* \_SB_.AMW0.SAC1 */
12303                 }
12304 
12305                 If ((Arg0 == 0x02))
12306                 {
12307                     SAC2 = Arg1
12308                     Return (SAC2) /* \_SB_.AMW0.SAC2 */
12309                 }
12310 
12311                 If ((Arg0 == 0x03))
12312                 {
12313                     SAC3 = Arg1
12314                     Return (SAC3) /* \_SB_.AMW0.SAC3 */
12315                 }
12316 
12317                 If ((Arg0 == 0x04))
12318                 {
12319                     SAC4 = Arg1
12320                     Return (SAC4) /* \_SB_.AMW0.SAC4 */
12321                 }
12322 
12323                 If ((Arg0 == 0x05))
12324                 {
12325                     SAC5 = Arg1
12326                     Return (SAC5) /* \_SB_.AMW0.SAC5 */
12327                 }
12328 
12329                 If ((Arg0 == 0x06))
12330                 {
12331                     SAC6 = Arg1
12332                     Return (SAC6) /* \_SB_.AMW0.SAC6 */
12333                 }
12334 
12335                 If ((Arg0 == 0x07))
12336                 {
12337                     SAC7 = Arg1
12338                     Return (SAC7) /* \_SB_.AMW0.SAC7 */
12339                 }
12340 
12341                 If ((Arg0 == 0x08))
12342                 {
12343                     SAC8 = Arg1
12344                     Return (SAC8) /* \_SB_.AMW0.SAC8 */
12345                 }
12346 
12347                 If ((Arg0 == 0x09))
12348                 {
12349                     SAC9 = Arg1
12350                     Return (SAC9) /* \_SB_.AMW0.SAC9 */
12351                 }
12352 
12353                 Return (0xFFFFFFFF)
12354             }
12355 
12356             Method (WSAA, 2, NotSerialized)
12357             {
12358                 If ((CCAA == Zero)){}
12359                 Return (SETA (Arg0, Arg1))
12360             }
12361 
12362             Method (WSAB, 2, NotSerialized)
12363             {
12364                 If ((CCAB == Zero)){}
12365                 Return (SETB (Arg0, Arg1))
12366             }
12367 
12368             Method (WSAC, 2, NotSerialized)
12369             {
12370                 If ((CCAC == Zero)){}
12371                 Return (SETC (Arg0, Arg1))
12372             }
12373 
12374             Method (VINS, 1, NotSerialized)
12375             {
12376                 If ((Arg0 < Zero)){}
12377                 If ((Arg0 > 0x03)){}
12378             }
12379 
12380             Method (WMBA, 3, NotSerialized)
12381             {
12382                 If ((Arg1 == One))
12383                 {
12384                     Return (GETA (Arg0))
12385                 }
12386 
12387                 If ((Arg1 == 0x02))
12388                 {
12389                     SETA (Arg0, Arg2)
12390                     Return (Zero)
12391                 }
12392 
12393                 If ((Arg1 == 0x03))
12394                 {
12395                     VINS (Arg0)
12396                     If ((ECD0 == Zero)){}
12397                     SAA1 = Arg2
12398                     Notify (AMW0, 0xD0) // Hardware-Specific
12399                     Return (Zero)
12400                 }
12401 
12402                 Return (0xFFFFFFFF)
12403             }
12404 
12405             Method (WMBB, 3, NotSerialized)
12406             {
12407                 If ((Arg1 == One))
12408                 {
12409                     Return (GETB (Arg0))
12410                 }
12411 
12412                 If ((Arg1 == 0x02))
12413                 {
12414                     SETB (Arg0, Arg2)
12415                     Return (Zero)
12416                 }
12417 
12418                 If ((Arg1 == 0x03))
12419                 {
12420                     VINS (Arg0)
12421                     If ((ECD1 == Zero)){}
12422                     SAB1 = Arg2
12423                     Notify (AMW0, 0xD1) // Hardware-Specific
12424                     Return (Zero)
12425                 }
12426 
12427                 Return (0xFFFFFFFF)
12428             }
12429 
12430             Method (WMBC, 3, NotSerialized)
12431             {
12432                 If ((Arg1 == One))
12433                 {
12434                     Return (GETC (Arg0))
12435                 }
12436 
12437                 If ((Arg1 == 0x02))
12438                 {
12439                     Return (SETC (Arg0, Arg2))
12440                 }
12441 
12442                 If ((Arg1 == 0x03))
12443                 {
12444                     VINS (Arg0)
12445                     If ((ECD2 == Zero)){}
12446                     SAC1 = Arg2
12447                     Notify (AMW0, 0xD2) // Hardware-Specific
12448                     Return (Zero)
12449                 }
12450 
12451                 If ((Arg1 == 0x04))
12452                 {
12453                     AC00 = Arg2
12454                     OEMG (AC00)
12455                     SAC1 = Zero
12456                     SAC2 = Zero
12457                     Return (AC00) /* \_SB_.AMW0.AC00 */
12458                 }
12459 
12460                 Return (0xFFFFFFFF)
12461             }
12462 
12463             Method (_WED, 1, NotSerialized)  // _Wxx: Wake Event, xx=0x00-0xFF
12464             {
12465                 If ((Arg0 == 0xD0))
12466                 {
12467                     Return (SAA1) /* \_SB_.AMW0.SAA1 */
12468                 }
12469 
12470                 If ((Arg0 == 0xD1))
12471                 {
12472                     Return (SAB1) /* \_SB_.AMW0.SAB1 */
12473                 }
12474 
12475                 If ((Arg0 == 0xD2))
12476                 {
12477                     Return (SAC1) /* \_SB_.AMW0.SAC1 */
12478                 }
12479 
12480                 Return (0xFFFFFFFF)
12481             }
12482 
12483             Method (OEMG, 1, NotSerialized)
12484             {
12485                 If ((SAC1 == Zero))
12486                 {
12487                     WKBC (SA00, SA01, SA02, SA03)
12488                 }
12489 
12490                 If ((SAC1 == One))
12491                 {
12492                     WKBC (SA00, SA01, SA02, SA03)
12493                 }
12494 
12495                 If ((SAC1 == 0x0100))
12496                 {
12497                     RKBC (SA00, SA01)
12498                 }
12499 
12500                 If ((SAC1 == 0x0200))
12501                 {
12502                     SCMD (SA00)
12503                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12504                 }
12505 
12506                 If ((SAC1 == 0x0300))
12507                 {
12508                     IO80 = 0x73
12509                     SAC0 = "LS"
12510                 }
12511 
12512                 If ((SAC1 == 0x0400))
12513                 {
12514                     IO80 = 0x74
12515                     SAC0 = One
12516                 }
12517 
12518                 If ((SAC1 == 0x0500))
12519                 {
12520                     SAC0 = CPSZ /* \CPSZ */
12521                 }
12522 
12523                 If ((SAC1 == 0x0600)){}
12524                 If ((SAC1 == 0x0700)){}
12525                 If ((SAC1 == 0x0701)){}
12526                 If ((SAC1 == 0x0800)){}
12527                 If ((SAC1 == 0x0900)){}
12528                 If ((SAC1 == 0x0901))
12529                 {
12530                     If ((SAC0 == Zero)){}
12531                     If ((SAC0 == One)){}
12532                 }
12533 
12534                 If ((SAC1 == 0x1000))
12535                 {
12536                     SAC0 = Zero
12537                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12538                 }
12539 
12540                 If ((SAC1 == 0x1100))
12541                 {
12542                     If ((SAC0 == Zero))
12543                     {
12544                         While ((^^PCI0.SBRG.EC0.INPS == One))
12545                         {
12546                             Stall (0x05)
12547                         }
12548 
12549                         ^^PCI0.SBRG.EC0.CMD4 = 0x9D
12550                     }
12551 
12552                     If ((SAC0 == One))
12553                     {
12554                         While ((^^PCI0.SBRG.EC0.INPS == One))
12555                         {
12556                             Stall (0x05)
12557                         }
12558 
12559                         ^^PCI0.SBRG.EC0.CMD4 = 0x9C
12560                     }
12561                 }
12562 
12563                 If ((SAC1 == 0x1200))
12564                 {
12565                     If ((SAC0 == Zero))
12566                     {
12567                         SAC0 = "A"
12568                     }
12569 
12570                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12571                 }
12572             }
12573 
12574             Method (RKBC, 2, Serialized)
12575             {
12576                 IO80 = 0xDA
12577                 If (!^^PCI0.SBRG.EC0.BFLG)
12578                 {
12579                     ^^PCI0.SBRG.EC0.BFLG = One
12580                     If (ECOK)
12581                     {
12582                         ECOK = Zero
12583                         If (ECON)
12584                         {
12585                             Acquire (ECMX, 0xFFFF)
12586                             ^^PCI0.SBRG.EC0.DRDY = Zero
12587                             ^^PCI0.SBRG.EC0.LDAT = Arg0
12588                             ^^PCI0.SBRG.EC0.HDAT = Arg1
12589                             ^^PCI0.SBRG.EC0.RFLG = One
12590                             FFNT = 0x14
12591                             DTRD = Zero
12592                             While (!DTRD)
12593                             {
12594                                 FFNT -= One
12595                                 If ((FFNT == Zero))
12596                                 {
12597                                     AC00 = 0xFEFEFEFEFEFEFEFE
12598                                     Break
12599                                 }
12600 
12601                                 Sleep (0x32)
12602                                 DTRD = ^^PCI0.SBRG.EC0.DRDY /* \_SB_.PCI0.SBRG.EC0_.DRDY */
12603                             }
12604 
12605                             If (~(FFNT == Zero))
12606                             {
12607                                 SA00 = ^^PCI0.SBRG.EC0.CMDL /* \_SB_.PCI0.SBRG.EC0_.CMDL */
12608                                 SA01 = ^^PCI0.SBRG.EC0.CMDH /* \_SB_.PCI0.SBRG.EC0_.CMDH */
12609                             }
12610 
12611                             ^^PCI0.SBRG.EC0.DRDY = Zero
12612                             Release (ECMX)
12613                         }
12614                         Else
12615                         {
12616                             AC00 = 0xFEFEFEFEFEFEFEFE
12617                         }
12618 
12619                         ECOK = One
12620                     }
12621                     Else
12622                     {
12623                         AC00 = 0xFEFEFEFEFEFEFEFE
12624                     }
12625                 }
12626                 Else
12627                 {
12628                     AC00 = 0xFEFEFEFEFEFEFEFE
12629                 }
12630 
12631                 If (ECOK)
12632                 {
12633                     ^^PCI0.SBRG.EC0.BFLG = Zero
12634                 }
12635 
12636                 Return (AC00) /* \_SB_.AMW0.AC00 */
12637             }
12638 
12639             Method (WKBC, 4, Serialized)
12640             {
12641                 If (!^^PCI0.SBRG.EC0.BFLG)
12642                 {
12643                     ^^PCI0.SBRG.EC0.BFLG = One
12644                     If (ECOK)
12645                     {
12646                         ECOK = Zero
12647                         If (ECON)
12648                         {
12649                             Acquire (ECMX, 0xFFFF)
12650                             ^^PCI0.SBRG.EC0.DRDY = Zero
12651                             ^^PCI0.SBRG.EC0.LDAT = Arg0
12652                             ^^PCI0.SBRG.EC0.HDAT = Arg1
12653                             ^^PCI0.SBRG.EC0.CMDL = Arg2
12654                             ^^PCI0.SBRG.EC0.CMDH = Arg3
12655                             ^^PCI0.SBRG.EC0.WFLG = One
12656                             Sleep (0x0A)
12657                             FFNT = 0x14
12658                             DTRD = Zero
12659                             While (!DTRD)
12660                             {
12661                                 Sleep (0x32)
12662                                 FFNT--
12663                                 If ((FFNT == Zero))
12664                                 {
12665                                     AC00 = 0xFEFEFEFEFEFEFEFE
12666                                     Break
12667                                 }
12668 
12669                                 DTRD = ^^PCI0.SBRG.EC0.DRDY /* \_SB_.PCI0.SBRG.EC0_.DRDY */
12670                             }
12671 
12672                             ^^PCI0.SBRG.EC0.DRDY = Zero
12673                         }
12674                         Else
12675                         {
12676                             AC00 = 0xFEFEFEFEFEFEFEFE
12677                         }
12678 
12679                         Release (ECMX)
12680                     }
12681                     Else
12682                     {
12683                         AC00 = 0xFEFEFEFEFEFEFEFE
12684                     }
12685 
12686                     ECOK = One
12687                 }
12688                 Else
12689                 {
12690                     AC00 = 0xFEFEFEFEFEFEFEFE
12691                 }
12692 
12693                 If (ECOK)
12694                 {
12695                     ^^PCI0.SBRG.EC0.BFLG = Zero
12696                 }
12697 
12698                 Return (AC00) /* \_SB_.AMW0.AC00 */
12699             }
12700 
12701             Method (SCMD, 1, Serialized)
12702             {
12703                 If (!^^PCI0.SBRG.EC0.BFLG)
12704                 {
12705                     ^^PCI0.SBRG.EC0.BFLG = One
12706                     If (ECOK)
12707                     {
12708                         ECOK = Zero
12709                         If (ECON)
12710                         {
12711                             Acquire (ECMX, 0xFFFF)
12712                             ^^PCI0.SBRG.EC0.DRDY = Zero
12713                             ^^PCI0.SBRG.EC0.BFLG = One
12714                             ^^PCI0.SBRG.EC0.CMDL = Arg0
12715                             ^^PCI0.SBRG.EC0.CFLG = One
12716                             FFNT = 0x14
12717                             DTRD = Zero
12718                             While (!DTRD)
12719                             {
12720                                 Sleep (0x0A)
12721                                 FFNT--
12722                                 If ((FFNT == Zero))
12723                                 {
12724                                     AC00 = 0xFEFEFEFEFEFEFEFE
12725                                     IO80 = 0xCC
12726                                     Break
12727                                 }
12728 
12729                                 DTRD = ^^PCI0.SBRG.EC0.DRDY /* \_SB_.PCI0.SBRG.EC0_.DRDY */
12730                             }
12731 
12732                             ^^PCI0.SBRG.EC0.DRDY = Zero
12733                             Sleep (0x32)
12734                         }
12735                         Else
12736                         {
12737                             AC00 = 0xFEFEFEFEFEFEFEFE
12738                         }
12739 
12740                         Release (ECMX)
12741                     }
12742                     Else
12743                     {
12744                         AC00 = 0xFEFEFEFEFEFEFEFE
12745                     }
12746 
12747                     ECOK = One
12748                 }
12749                 Else
12750                 {
12751                     AC00 = 0xFEFEFEFEFEFEFEFE
12752                 }
12753 
12754                 If (ECOK)
12755                 {
12756                     ^^PCI0.SBRG.EC0.BFLG = Zero
12757                 }
12758             }
12759 
12760             Method (OEMF, 1, NotSerialized)
12761             {
12762                 If ((SAC1 == Zero))
12763                 {
12764                     WKBC (SA00, SA01, SA02, SA03)
12765                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12766                 }
12767 
12768                 If ((SAC1 == One))
12769                 {
12770                     WKBC (SA00, SA01, SA02, SA03)
12771                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12772                 }
12773 
12774                 If ((SAC1 == 0x0100))
12775                 {
12776                     RKBC (SA00, SA01)
12777                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12778                 }
12779 
12780                 If ((SAC1 == 0x0200))
12781                 {
12782                     SCMD (SA00)
12783                     VCMD = SAC0 /* \_SB_.AMW0.SAC0 */
12784                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12785                 }
12786 
12787                 If ((SAC1 == 0x0300))
12788                 {
12789                     IO80 = 0x73
12790                     SAC0 = "LS"
12791                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12792                 }
12793 
12794                 If ((SAC1 == 0x0400))
12795                 {
12796                     IO80 = 0x74
12797                     SAC0 = One
12798                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12799                 }
12800 
12801                 If ((SAC1 == 0x0500))
12802                 {
12803                     SAC0 = CPSZ /* \CPSZ */
12804                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12805                 }
12806 
12807                 If ((SAC1 == 0x0600))
12808                 {
12809                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12810                 }
12811 
12812                 If ((SAC1 == 0x0700))
12813                 {
12814                     SCMD (0x04)
12815                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12816                 }
12817 
12818                 If ((SAC1 == 0x0701))
12819                 {
12820                     SCMD (0x07)
12821                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12822                 }
12823 
12824                 If ((SAC1 == 0x0800)){}
12825                 If ((SAC1 == 0x0900))
12826                 {
12827                     If ((SAC0 == Zero))
12828                     {
12829                         SCMD (0x0B)
12830                     }
12831 
12832                     If ((SAC0 == One))
12833                     {
12834                         SCMD (0x0C)
12835                     }
12836 
12837                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12838                 }
12839 
12840                 If ((SAC1 == 0x0901))
12841                 {
12842                     If ((SAC0 == Zero))
12843                     {
12844                         WKBC (0x5A, 0x07, 0x10, Zero)
12845                     }
12846 
12847                     If ((SAC0 == One))
12848                     {
12849                         WKBC (0x5A, 0x07, 0x20, Zero)
12850                     }
12851 
12852                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12853                 }
12854 
12855                 If ((SAC1 == 0x1000))
12856                 {
12857                     SAC0 = Zero
12858                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12859                 }
12860 
12861                 If ((SAC1 == 0x1100))
12862                 {
12863                     If ((SAC0 == Zero))
12864                     {
12865                         While ((^^PCI0.SBRG.EC0.INPS == One))
12866                         {
12867                             Stall (0x05)
12868                         }
12869 
12870                         ^^PCI0.SBRG.EC0.CMD4 = 0x9D
12871                     }
12872 
12873                     If ((SAC0 == One))
12874                     {
12875                         While ((^^PCI0.SBRG.EC0.INPS == One))
12876                         {
12877                             Stall (0x05)
12878                         }
12879 
12880                         ^^PCI0.SBRG.EC0.CMD4 = 0x9C
12881                     }
12882 
12883                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12884                 }
12885 
12886                 If ((SAC1 == 0x1200))
12887                 {
12888                     If ((SAC0 == Zero))
12889                     {
12890                         SAC0 = "A"
12891                     }
12892 
12893                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12894                 }
12895 
12896                 If ((SAC1 == 0x2200))
12897                 {
12898                     If ((FHAP == One))
12899                     {
12900                         SAC0 = One
12901                         FHAP = Zero
12902                     }
12903                     ElseIf ((FHAP == Zero))
12904                     {
12905                         SAC0 = Zero
12906                     }
12907                     Else
12908                     {
12909                         SAC0 = 0xFFFFFFFF
12910                     }
12911 
12912                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12913                 }
12914 
12915                 If ((SAC1 == 0x2300))
12916                 {
12917                     SAC0 = Zero
12918                     Return (SAC0) /* \_SB_.AMW0.SAC0 */
12919                 }
12920 
12921                 SAC0 = 0xFFFFFFFF
12922                 Return (SAC0) /* \_SB_.AMW0.SAC0 */
12923             }
12924 
12925             Name (WQBA, Buffer (0x0A93)
12926             {
12927                 /* 0000 */  0x46, 0x4F, 0x4D, 0x42, 0x01, 0x00, 0x00, 0x00,  // FOMB....
12928                 /* 0008 */  0x83, 0x0A, 0x00, 0x00, 0xF0, 0x49, 0x00, 0x00,  // .....I..
12929                 /* 0010 */  0x44, 0x53, 0x00, 0x01, 0x1A, 0x7D, 0xDA, 0x54,  // DS...}.T
12930                 /* 0018 */  0x28, 0x51, 0xA4, 0x00, 0x01, 0x06, 0x18, 0x42,  // (Q.....B
12931                 /* 0020 */  0x10, 0x17, 0x10, 0x22, 0x21, 0x04, 0x12, 0x01,  // ..."!...
12932                 /* 0028 */  0xA1, 0xC8, 0x2C, 0x0C, 0x86, 0x10, 0x38, 0x2E,  // ..,...8.
12933                 /* 0030 */  0x84, 0x1C, 0x40, 0x48, 0x1C, 0x14, 0x4A, 0x08,  // ..@H..J.
12934                 /* 0038 */  0x84, 0xFA, 0x13, 0xC8, 0xAF, 0x00, 0x84, 0x0E,  // ........
12935                 /* 0040 */  0x05, 0xC8, 0x14, 0x60, 0x50, 0x80, 0x53, 0x04,  // ...`P.S.
12936                 /* 0048 */  0x11, 0xF4, 0x2A, 0xC0, 0xA6, 0x00, 0x93, 0x02,  // ..*.....
12937                 /* 0050 */  0x2C, 0x0A, 0xD0, 0x2E, 0xC0, 0xB2, 0x00, 0xDD,  // ,.......
12938                 /* 0058 */  0x02, 0xA4, 0xC3, 0x92, 0xAD, 0x08, 0x1C, 0x21,  // .......!
12939                 /* 0060 */  0x06, 0x1C, 0xA5, 0x13, 0x5B, 0xB8, 0x61, 0x83,  // ....[.a.
12940                 /* 0068 */  0x17, 0x8A, 0xA2, 0x19, 0x44, 0x49, 0x50, 0xB9,  // ....DIP.
12941                 /* 0070 */  0x00, 0xDF, 0x08, 0x02, 0x2F, 0x57, 0x80, 0xE4,  // ..../W..
12942                 /* 0078 */  0x09, 0x48, 0xB3, 0x00, 0xC3, 0x02, 0xAC, 0x0B,  // .H......
12943                 /* 0080 */  0x90, 0x3D, 0x04, 0x2A, 0x75, 0x08, 0x28, 0x39,  // .=.*u.(9
12944                 /* 0088 */  0x43, 0x40, 0x0D, 0xA0, 0xD5, 0x09, 0x08, 0xBF,  // C@......
12945                 /* 0090 */  0xD2, 0x29, 0x21, 0x09, 0xC2, 0x19, 0xAB, 0x78,  // .)!....x
12946                 /* 0098 */  0x7C, 0xCD, 0xA2, 0xE9, 0x39, 0xC9, 0x39, 0x86,  // |...9.9.
12947                 /* 00A0 */  0x1C, 0x8F, 0x0B, 0x3D, 0x08, 0x2E, 0x70, 0xA1,  // ...=..p.
12948                 /* 00A8 */  0x26, 0x90, 0xFC, 0x21, 0x4B, 0x12, 0x0C, 0x4A,  // &..!K..J
12949                 /* 00B0 */  0xC2, 0x58, 0xE8, 0xC8, 0x09, 0x30, 0x1D, 0x29,  // .X...0.)
12950                 /* 00B8 */  0x1B, 0x90, 0x21, 0x4A, 0x1B, 0x35, 0x7A, 0x40,  // ..!J.5z@
12951                 /* 00C0 */  0xE7, 0x77, 0x24, 0x67, 0x77, 0x74, 0x47, 0x92,  // .w$gwtG.
12952                 /* 00C8 */  0xC0, 0xA8, 0xC7, 0x74, 0x8C, 0x85, 0xCD, 0x48,  // ...t...H
12953                 /* 00D0 */  0xA8, 0x31, 0x9A, 0x83, 0x22, 0xE1, 0x06, 0x8D,  // .1.."...
12954                 /* 00D8 */  0x96, 0x08, 0xAB, 0x71, 0xC5, 0x3E, 0x33, 0x0B,  // ...q.>3.
12955                 /* 00E0 */  0x1F, 0x96, 0x30, 0x8E, 0xE0, 0xC0, 0x0E, 0xD6,  // ..0.....
12956                 /* 00E8 */  0xA2, 0x61, 0x84, 0x56, 0x10, 0x9C, 0x06, 0x71,  // .a.V...q
12957                 /* 00F0 */  0x14, 0x51, 0xC2, 0x30, 0x3C, 0x63, 0x06, 0x3A,  // .Q.0<c.:
12958                 /* 00F8 */  0x4A, 0x86, 0x14, 0x26, 0xE8, 0x09, 0x04, 0x39,  // J..&...9
12959                 /* 0100 */  0x79, 0x86, 0x65, 0x88, 0x33, 0xE0, 0x58, 0x31,  // y.e.3.X1
12960                 /* 0108 */  0x42, 0x85, 0xC4, 0x0C, 0x24, 0xF8, 0xFF, 0xFF,  // B...$...
12961                 /* 0110 */  0x04, 0xBA, 0xC6, 0x90, 0x67, 0x20, 0x72, 0x0F,  // ....g r.
12962                 /* 0118 */  0x38, 0x81, 0x20, 0xD1, 0xA3, 0x04, 0x37, 0xAE,  // 8. ...7.
12963                 /* 0120 */  0x51, 0xD9, 0x98, 0xCE, 0x06, 0x37, 0x30, 0x13,  // Q....70.
12964                 /* 0128 */  0xC4, 0x39, 0x3C, 0x8C, 0x0C, 0x08, 0x4D, 0x20,  // .9<...M 
12965                 /* 0130 */  0x7E, 0xEC, 0xF0, 0x09, 0xEC, 0xFE, 0x38, 0x20,  // ~.....8 
12966                 /* 0138 */  0x85, 0x08, 0xBA, 0x10, 0x9C, 0x69, 0x8D, 0x02,  // .....i..
12967                 /* 0140 */  0xB4, 0x61, 0xC8, 0xD6, 0xE1, 0x41, 0x67, 0x81,  // .a...Ag.
12968                 /* 0148 */  0x58, 0x8D, 0xA1, 0x08, 0x22, 0x42, 0xD0, 0x28,  // X..."B.(
12969                 /* 0150 */  0x06, 0x8B, 0x10, 0x2A, 0x9E, 0x51, 0xCF, 0x39,  // ...*.Q.9
12970                 /* 0158 */  0x48, 0xD4, 0xCA, 0x40, 0x84, 0x16, 0xCC, 0x08,  // H..@....
12971                 /* 0160 */  0xCC, 0xFE, 0x20, 0x48, 0xA8, 0xF3, 0x80, 0x7E,  // .. H...~
12972                 /* 0168 */  0x04, 0x96, 0x04, 0x22, 0x23, 0x5B, 0x4A, 0x40,  // ..."#[J@
12973                 /* 0170 */  0x0E, 0x0B, 0x1E, 0x8E, 0x67, 0xD2, 0xFC, 0xCC,  // ....g...
12974                 /* 0178 */  0x34, 0x2A, 0x26, 0x01, 0x50, 0x1A, 0x40, 0x24,  // 4*&.P.@$
12975                 /* 0180 */  0xEA, 0x64, 0x41, 0x09, 0x2C, 0xE5, 0x64, 0x40,  // .dA.,.d@
12976                 /* 0188 */  0x6C, 0x8F, 0x4B, 0xD7, 0x80, 0x03, 0x3C, 0x75,  // l.K...<u
12977                 /* 0190 */  0xDF, 0x0D, 0xCE, 0xCC, 0x1F, 0x0D, 0x6F, 0xC1,  // ......o.
12978                 /* 0198 */  0x67, 0x04, 0x3E, 0x06, 0x0F, 0xF5, 0x10, 0x02,  // g.>.....
12979                 /* 01A0 */  0x1E, 0x21, 0x3B, 0x24, 0x18, 0x10, 0xEF, 0xFD,  // .!;$....
12980                 /* 01A8 */  0x56, 0x40, 0xE6, 0x62, 0x40, 0x76, 0x50, 0x78,  // V@.b@vPx
12981                 /* 01B0 */  0x3E, 0x00, 0xCB, 0x24, 0x4F, 0xF3, 0x18, 0x2A,  // >..$O..*
12982                 /* 01B8 */  0x9E, 0x1A, 0xE2, 0x48, 0xC0, 0xA7, 0x72, 0x52,  // ...H..rR
12983                 /* 01C0 */  0xEC, 0x84, 0xC1, 0x47, 0xC7, 0x47, 0xE1, 0xB3,  // ...G.G..
12984                 /* 01C8 */  0xC3, 0x69, 0x17, 0x7B, 0x84, 0xA0, 0xB2, 0x8E,  // .i.{....
12985                 /* 01D0 */  0x11, 0xE8, 0xB9, 0x1F, 0x61, 0xC0, 0x97, 0x86,  // ....a...
12986                 /* 01D8 */  0x66, 0xAF, 0x1A, 0x84, 0xE0, 0x75, 0xC0, 0x37,  // f....u.7
12987                 /* 01E0 */  0x06, 0x9F, 0x4A, 0x7C, 0xA2, 0xC0, 0x1F, 0x4B,  // ..J|...K
12988                 /* 01E8 */  0xE0, 0x60, 0x3F, 0x2E, 0x60, 0xFE, 0xFF, 0x63,  // .`?.`..c
12989                 /* 01F0 */  0xF4, 0xA9, 0x04, 0x78, 0x8C, 0x80, 0x0B, 0x7F,  // ...x....
12990                 /* 01F8 */  0x7A, 0x98, 0x40, 0x21, 0x5E, 0x02, 0x92, 0x0A,  // z.@!^...
12991                 /* 0200 */  0x83, 0x3A, 0x17, 0xF8, 0x00, 0x02, 0x57, 0x12,  // .:....W.
12992                 /* 0208 */  0x1C, 0x6A, 0x7C, 0x3E, 0x04, 0x9C, 0xFC, 0x61,  // .j|>...a
12993                 /* 0210 */  0x9E, 0xC8, 0xFB, 0x81, 0x07, 0xF7, 0x24, 0x02,  // ......$.
12994                 /* 0218 */  0xE3, 0x9C, 0xE0, 0x69, 0x9D, 0x94, 0x6F, 0x28,  // ...i..o(
12995                 /* 0220 */  0xCF, 0x13, 0xBE, 0x5A, 0x98, 0xC0, 0x87, 0x05,  // ...Z....
12996                 /* 0228 */  0x86, 0xC6, 0x8F, 0x25, 0x60, 0x3D, 0x68, 0xE0,  // ...%`=h.
12997                 /* 0230 */  0xCE, 0x09, 0x70, 0x67, 0xFD, 0x4E, 0x82, 0xC1,  // ..pg.N..
12998                 /* 0238 */  0x0A, 0x15, 0xC3, 0xA8, 0xC6, 0x88, 0xD2, 0xE8,  // ........
12999                 /* 0240 */  0xB8, 0x35, 0x2A, 0xCF, 0xB0, 0xAF, 0x89, 0x08,  // .5*.....
13000                 /* 0248 */  0x25, 0x94, 0x61, 0x1F, 0x47, 0xF0, 0x67, 0x10,  // %.a.G.g.
13001                 /* 0250 */  0xB0, 0x41, 0x3F, 0x83, 0x80, 0x3D, 0xA6, 0x02,  // .A?..=..
13002                 /* 0258 */  0x88, 0x16, 0x40, 0x14, 0x69, 0x34, 0xF4, 0xFF,  // ..@.i4..
13003                 /* 0260 */  0x7F, 0x06, 0xE1, 0xC7, 0x02, 0x1F, 0x09, 0x9E,  // ........
13004                 /* 0268 */  0x60, 0x7C, 0xA9, 0x30, 0xC8, 0x81, 0x9D, 0xD6,  // `|.0....
13005                 /* 0270 */  0x03, 0xC3, 0xF3, 0x80, 0x47, 0xCE, 0x2E, 0x0A,  // ....G...
13006                 /* 0278 */  0x3E, 0x58, 0xF8, 0x80, 0x80, 0x9F, 0x61, 0xC0,  // >X....a.
13007                 /* 0280 */  0x03, 0x7D, 0xF8, 0x80, 0x75, 0x08, 0xC1, 0x8F,  // .}..u...
13008                 /* 0288 */  0xE8, 0x11, 0x03, 0xF6, 0x78, 0x7C, 0x2F, 0x62,  // ....x|/b
13009                 /* 0290 */  0x13, 0x7E, 0x1A, 0x22, 0x83, 0x40, 0x8D, 0xCC,  // .~.".@..
13010                 /* 0298 */  0xD0, 0x1E, 0xE9, 0x69, 0xBD, 0x0F, 0xF8, 0x78,  // ...i...x
13011                 /* 02A0 */  0x64, 0x02, 0x9F, 0x3C, 0xBC, 0x49, 0x8D, 0x07,  // d..<.I..
13012                 /* 02A8 */  0x08, 0xDC, 0x4B, 0x1E, 0x33, 0x7C, 0x69, 0xF0,  // ..K.3|i.
13013                 /* 02B0 */  0x7C, 0x0D, 0xA9, 0xC3, 0x85, 0x6C, 0x8C, 0x07,  // |....l..
13014                 /* 02B8 */  0x35, 0x0A, 0x5F, 0x60, 0x38, 0x81, 0x83, 0x43,  // 5._`8..C
13015                 /* 02C0 */  0xE8, 0x08, 0xE0, 0xB3, 0x0C, 0xF0, 0x14, 0x78,  // .......x
13016                 /* 02C8 */  0xA8, 0x00, 0xCD, 0x8D, 0xC3, 0x60, 0x70, 0x06,  // .....`p.
13017                 /* 02D0 */  0x80, 0x1B, 0x30, 0xEE, 0xFF, 0x3F, 0x60, 0x8E,  // ..0..?`.
13018                 /* 02D8 */  0x79, 0xC2, 0x55, 0xC3, 0xEB, 0x1E, 0x60, 0x75,  // y.U...`u
13019                 /* 02E0 */  0x17, 0x17, 0x08, 0x67, 0x1D, 0xEC, 0x31, 0x06,  // ...g..1.
13020                 /* 02E8 */  0xDE, 0xB9, 0xC0, 0xA3, 0x39, 0x99, 0xB3, 0x78,  // ....9..x
13021                 /* 02F0 */  0xE1, 0x60, 0x78, 0x2F, 0x1C, 0xCF, 0x2F, 0x1E,  // .`x/../.
13022                 /* 02F8 */  0x03, 0xFE, 0x30, 0x03, 0x7C, 0xE4, 0x9E, 0x64,  // ..0.|..d
13023                 /* 0300 */  0x50, 0x02, 0x0F, 0x33, 0x00, 0x25, 0x8E, 0x21,  // P..3.%.!
13024                 /* 0308 */  0xF8, 0xB1, 0xE0, 0xFE, 0xFF, 0x87, 0x19, 0xF8,  // ........
13025                 /* 0310 */  0xB7, 0x86, 0x87, 0x19, 0xB0, 0x87, 0x3B, 0xCC,  // ......;.
13026                 /* 0318 */  0x00, 0x34, 0x79, 0xB9, 0x78, 0xE0, 0xB8, 0x51,  // .4y.x..Q
13027                 /* 0320 */  0xF8, 0x08, 0xE2, 0xCB, 0xA5, 0x09, 0x1C, 0xF8,  // ........
13028                 /* 0328 */  0x30, 0x03, 0xB4, 0xFE, 0xFF, 0x87, 0x19, 0xE0,  // 0.......
13029                 /* 0330 */  0x75, 0x1E, 0x00, 0xDF, 0xA9, 0x05, 0x77, 0x90,  // u.....w.
13030                 /* 0338 */  0x01, 0x1B, 0xC2, 0x29, 0xE0, 0xCE, 0x31, 0xC0,  // ...)..1.
13031                 /* 0340 */  0xE7, 0x80, 0xC7, 0x23, 0xBC, 0x02, 0x24, 0x0E,  // ...#..$.
13032                 /* 0348 */  0x06, 0x75, 0x8E, 0x01, 0x5C, 0x9D, 0x50, 0x9F,  // .u..\.P.
13033                 /* 0350 */  0x11, 0x60, 0xFE, 0xFF, 0xCF, 0x31, 0xE0, 0xBF,  // .`...1..
13034                 /* 0358 */  0x0B, 0x9F, 0x50, 0x9F, 0xF7, 0x00, 0x79, 0x3C,  // ..P...y<
13035                 /* 0360 */  0xC6, 0x80, 0x0E, 0xE4, 0x31, 0x06, 0xEC, 0xD1,  // ....1...
13036                 /* 0368 */  0x8E, 0x31, 0x00, 0x55, 0x9C, 0x1C, 0x63, 0xD0,  // .1.U..c.
13037                 /* 0370 */  0xA7, 0x03, 0x5F, 0x16, 0x3C, 0x2F, 0xFF, 0xFF,  // .._.</..
13038                 /* 0378 */  0x8F, 0x31, 0x80, 0xCF, 0x33, 0x2F, 0x77, 0x76,  // .1..3/wv
13039                 /* 0380 */  0x7C, 0x10, 0x81, 0x07, 0xF2, 0x18, 0x03, 0xD6,  // |.......
13040                 /* 0388 */  0x91, 0xE3, 0x4E, 0x31, 0xC0, 0x47, 0xD8, 0xC2,  // ..N1.G..
13041                 /* 0390 */  0x69, 0x9C, 0x83, 0xAF, 0x5F, 0x03, 0x14, 0xC6,  // i..._...
13042                 /* 0398 */  0xA7, 0x18, 0xE0, 0xFC, 0xFF, 0x3F, 0xC5, 0x80,  // .....?..
13043                 /* 03A0 */  0x37, 0xC0, 0x29, 0x06, 0x94, 0x07, 0x79, 0xCC,  // 7.)...y.
13044                 /* 03A8 */  0x3D, 0x86, 0x41, 0x44, 0x3D, 0x2A, 0x9F, 0x24,  // =.AD=*.$
13045                 /* 03B0 */  0x7C, 0xA0, 0xF7, 0xC9, 0xC4, 0x97, 0x79, 0x83,  // |.....y.
13046                 /* 03B8 */  0x85, 0x7C, 0xF3, 0x66, 0x37, 0x7A, 0x5F, 0x7E,  // .|.f7z_~
13047                 /* 03C0 */  0xE1, 0x9C, 0x65, 0xC0, 0x36, 0xAE, 0x27, 0x3C,  // ..e.6.'<
13048                 /* 03C8 */  0xD0, 0x9F, 0x0B, 0xF4, 0x5D, 0xF2, 0x59, 0x06,  // ....].Y.
13049                 /* 03D0 */  0x70, 0xFA, 0xFF, 0x3F, 0xCB, 0x00, 0x97, 0x13,  // p..?....
13050                 /* 03D8 */  0x1A, 0x58, 0x27, 0xF1, 0x50, 0x0F, 0xBC, 0x42,  // .X'.P..B
13051                 /* 03E0 */  0x7A, 0x38, 0x10, 0xB0, 0x20, 0x6B, 0x95, 0x8D,  // z8.. k..
13052                 /* 03E8 */  0xB5, 0x7A, 0x10, 0x54, 0xF8, 0x21, 0x41, 0x87,  // .z.T.!A.
13053                 /* 03F0 */  0xAB, 0x67, 0x09, 0x9F, 0x6B, 0x61, 0x88, 0x85,  // .g..ka..
13054                 /* 03F8 */  0xD3, 0x51, 0xC7, 0x10, 0x96, 0x49, 0x21, 0x91,  // .Q...I!.
13055                 /* 0400 */  0x10, 0x1A, 0x90, 0xE1, 0x2C, 0x0B, 0x8E, 0x82,  // ....,...
13056                 /* 0408 */  0xF8, 0x00, 0xE0, 0xC8, 0x10, 0x3A, 0x39, 0xC3,  // .....:9.
13057                 /* 0410 */  0x8D, 0x08, 0xA1, 0xE3, 0x83, 0x0F, 0x0C, 0xF8,  // ........
13058                 /* 0418 */  0xC1, 0x1D, 0xD9, 0x89, 0x79, 0x16, 0x3E, 0xD8,  // ....y.>.
13059                 /* 0420 */  0xE0, 0x8E, 0x20, 0x70, 0xA7, 0x86, 0x5D, 0xE3,  // .. p..].
13060                 /* 0428 */  0xA1, 0xE0, 0x06, 0xE2, 0xF3, 0x11, 0x1F, 0x83,  // ........
13061                 /* 0430 */  0x6F, 0x06, 0x67, 0x61, 0x02, 0x76, 0x5C, 0x86,  // o.ga.v\.
13062                 /* 0438 */  0xFF, 0xFF, 0x3F, 0x2E, 0xC3, 0x1F, 0x00, 0xFE,  // ..?.....
13063                 /* 0440 */  0x94, 0x00, 0x07, 0xC8, 0x97, 0x02, 0x2B, 0x3D,  // ......+=
13064                 /* 0448 */  0x18, 0xD0, 0x79, 0x84, 0x08, 0x13, 0xCD, 0x27,  // ..y....'
13065                 /* 0450 */  0x13, 0xD4, 0xE8, 0x75, 0x94, 0xB2, 0xAC, 0xB1,  // ...u....
13066                 /* 0458 */  0xA1, 0x06, 0xEB, 0x33, 0x0D, 0xC3, 0x7E, 0x5D,  // ...3..~]
13067                 /* 0460 */  0xC1, 0x9C, 0xA5, 0x30, 0xB0, 0x1E, 0x3E, 0x87,  // ...0..>.
13068                 /* 0468 */  0x35, 0x5A, 0xD8, 0xA3, 0x7E, 0x98, 0xF0, 0x45,  // 5Z..~..E
13069                 /* 0470 */  0xC4, 0x37, 0x25, 0xDF, 0x61, 0x7C, 0x04, 0x01,  // .7%.a|..
13070                 /* 0478 */  0xCB, 0xB1, 0x0A, 0xFE, 0x81, 0x18, 0x3C, 0xC3,  // ......<.
13071                 /* 0480 */  0x3C, 0x35, 0x1F, 0x10, 0x82, 0x3D, 0xD7, 0x78,  // <5...=.x
13072                 /* 0488 */  0x74, 0xBE, 0x13, 0x18, 0x34, 0x9E, 0xE7, 0x60,  // t...4..`
13073                 /* 0490 */  0x0C, 0x9F, 0x6F, 0xD8, 0x99, 0xE2, 0xF9, 0x06,  // ..o.....
13074                 /* 0498 */  0x5E, 0x88, 0x43, 0x05, 0x94, 0x53, 0x20, 0x3B,  // ^.C..S ;
13075                 /* 04A0 */  0x54, 0x00, 0xE3, 0xFF, 0xFF, 0x68, 0x7D, 0x7F,  // T....h}.
13076                 /* 04A8 */  0xF1, 0xD0, 0xF9, 0xA1, 0x02, 0xF0, 0x2C, 0xE1,  // ......,.
13077                 /* 04B0 */  0x50, 0x01, 0xBA, 0x83, 0x80, 0x0F, 0x15, 0xC0,  // P.......
13078                 /* 04B8 */  0x15, 0xD5, 0x47, 0x02, 0x70, 0x9C, 0x49, 0xF9,  // ..G.p.I.
13079                 /* 04C0 */  0x95, 0x02, 0x9C, 0xA1, 0x56, 0xA9, 0xFF, 0xFF,  // ....V...
13080                 /* 04C8 */  0x91, 0x02, 0x27, 0x7E, 0xD4, 0x3A, 0x7C, 0x9D,  // ..'~.:|.
13081                 /* 04D0 */  0xC6, 0xB1, 0xF9, 0x3A, 0x80, 0x17, 0x7C, 0xA4,  // ...:..|.
13082                 /* 04D8 */  0x40, 0x49, 0xA5, 0x90, 0xD0, 0x23, 0x05, 0x4A,  // @I...#.J
13083                 /* 04E0 */  0x1A, 0x1C, 0x05, 0xF1, 0xD0, 0x1D, 0x1B, 0x42,  // .......B
13084                 /* 04E8 */  0xA7, 0x49, 0xFC, 0x29, 0xE9, 0x20, 0x18, 0x81,  // .I.). ..
13085                 /* 04F0 */  0x63, 0x1E, 0x29, 0x40, 0x71, 0x48, 0x3A, 0x60,  // c.)@qH:`
13086                 /* 04F8 */  0xB0, 0x1C, 0xFC, 0xD8, 0x0A, 0x8F, 0xCE, 0xC6,  // ........
13087                 /* 0500 */  0x4F, 0x6C, 0x04, 0xC5, 0xC3, 0xF5, 0x64, 0xF9,  // Ol....d.
13088                 /* 0508 */  0x41, 0xCE, 0xD7, 0x38, 0x76, 0xE0, 0xE3, 0x07,  // A..8v...
13089                 /* 0510 */  0x0B, 0xB8, 0x07, 0x49, 0xF0, 0x1D, 0x2A, 0x80,  // ...I..*.
13090                 /* 0518 */  0x87, 0x9C, 0x43, 0x05, 0xE8, 0x20, 0x7D, 0xA8,  // ..C.. }.
13091                 /* 0520 */  0x00, 0x0E, 0xFF, 0xFF, 0x43, 0x05, 0x78, 0x8E,  // ....C.x.
13092                 /* 0528 */  0x71, 0x3E, 0x14, 0x80, 0xE3, 0x18, 0x66, 0x90,  // q>....f.
13093                 /* 0530 */  0xB7, 0x44, 0xDC, 0xB9, 0xCD, 0x18, 0x51, 0xDE,  // .D....Q.
13094                 /* 0538 */  0xE7, 0x3C, 0x2A, 0x9F, 0x2C, 0x30, 0x68, 0xCF,  // .<*.,0h.
13095                 /* 0540 */  0x00, 0x3E, 0xDF, 0xB1, 0x7B, 0x05, 0x1E, 0xE8,  // .>..{...
13096                 /* 0548 */  0xB8, 0x5E, 0x62, 0x78, 0x78, 0x15, 0xC3, 0x61,  // .^bxx..a
13097                 /* 0550 */  0x61, 0x8E, 0x13, 0x5E, 0x37, 0x85, 0xF1, 0xE1,  // a..^7...
13098                 /* 0558 */  0x13, 0x70, 0x75, 0x00, 0x00, 0xCF, 0xE1, 0x13,  // .pu.....
13099                 /* 0560 */  0x58, 0xDC, 0x1A, 0xB1, 0x67, 0x4F, 0xB8, 0xFF,  // X...gO..
13100                 /* 0568 */  0xFF, 0xB3, 0x27, 0xFE, 0x5A, 0xF1, 0xEC, 0x09,  // ..'.Z...
13101                 /* 0570 */  0xB0, 0x13, 0xEC, 0x08, 0xB1, 0x67, 0x4F, 0xF0,  // .....gO.
13102                 /* 0578 */  0xFF, 0xFF, 0xCF, 0x9E, 0x3C, 0xCA, 0xD9, 0x93,  // ....<...
13103                 /* 0580 */  0x4A, 0x3F, 0x35, 0xA1, 0x0E, 0x1D, 0x3E, 0xD0,  // J?5...>.
13104                 /* 0588 */  0xF9, 0xEC, 0xC9, 0xA6, 0x83, 0x95, 0x78, 0x68,  // ......xh
13105                 /* 0590 */  0x42, 0x89, 0xA3, 0xD0, 0x79, 0xC9, 0x87, 0x26,  // B...y..&
13106                 /* 0598 */  0x2E, 0x06, 0x8E, 0x82, 0x78, 0xFC, 0x0E, 0x7A,  // ....x..z
13107                 /* 05A0 */  0x66, 0x40, 0x1F, 0xEB, 0xF0, 0xC1, 0x8E, 0x9E,  // f@......
13108                 /* 05A8 */  0xA0, 0x38, 0xBE, 0x83, 0x67, 0x66, 0xB8, 0x5B,  // .8..gf.[
13109                 /* 05B0 */  0x1D, 0xEE, 0xB4, 0x04, 0xEE, 0xE3, 0x03, 0xFE,  // ........
13110                 /* 05B8 */  0xB4, 0x04, 0x3C, 0x44, 0x9C, 0x3A, 0x01, 0x05,  // ..<D.:..
13111                 /* 05C0 */  0xFF, 0xFF, 0xD3, 0x12, 0xDC, 0xF1, 0x3C, 0x75,  // ......<u
13112                 /* 05C8 */  0x02, 0xAF, 0x4B, 0x00, 0x56, 0xF8, 0x69, 0x02,  // ..K.V.i.
13113                 /* 05D0 */  0xCA, 0x31, 0x8F, 0x9D, 0x26, 0x80, 0xF1, 0x89,  // .1..&...
13114                 /* 05D8 */  0x0E, 0x77, 0x9A, 0x00, 0x9C, 0x1E, 0x37, 0xF1,  // .w....7.
13115                 /* 05E0 */  0xFF, 0xFF, 0xE3, 0x26, 0xE0, 0xF8, 0x0C, 0x80,  // ...&....
13116                 /* 05E8 */  0x3F, 0x6E, 0xC2, 0x3D, 0x08, 0xE1, 0x8F, 0x9B,  // ?n.=....
13117                 /* 05F0 */  0x80, 0xDF, 0xFF, 0xFF, 0x71, 0x13, 0x60, 0xE0,  // ....q.`.
13118                 /* 05F8 */  0xBD, 0x02, 0x77, 0xDB, 0xC4, 0x9D, 0x19, 0xA4,  // ..w.....
13119                 /* 0600 */  0xE4, 0xAC, 0x89, 0x91, 0x79, 0xDC, 0x04, 0x5A,  // ....y..Z
13120                 /* 0608 */  0xFF, 0xFF, 0xE3, 0x26, 0x60, 0xD3, 0xEA, 0xA8,  // ...&`...
13121                 /* 0610 */  0xC8, 0xF9, 0x84, 0x1F, 0x37, 0xC1, 0x05, 0xF1,  // ....7...
13122                 /* 0618 */  0xB8, 0x09, 0xF6, 0x68, 0xC7, 0x4D, 0x40, 0xDB,  // ...h.M@.
13123                 /* 0620 */  0xFF, 0xFF, 0xB8, 0x09, 0x7C, 0x2F, 0x33, 0x3E,  // ....|/3>
13124                 /* 0628 */  0x6E, 0x82, 0xF3, 0x9A, 0x80, 0x3B, 0x6D, 0x02,  // n....;m.
13125                 /* 0630 */  0x8F, 0xF8, 0x3A, 0xCE, 0x33, 0xEC, 0xB4, 0x09,  // ..:.3...
13126                 /* 0638 */  0xF3, 0x10, 0x81, 0x3D, 0xD0, 0x81, 0xEF, 0xCC,  // ...=....
13127                 /* 0640 */  0x84, 0x3F, 0x6D, 0x02, 0xAF, 0x99, 0x9D, 0xE4,  // .?m.....
13128                 /* 0648 */  0x99, 0xB1, 0xFB, 0x1C, 0xEE, 0xB0, 0x04, 0x96,  // ........
13129                 /* 0650 */  0xFF, 0xFF, 0x61, 0x09, 0xF8, 0x9E, 0x36, 0x01,  // ..a...6.
13130                 /* 0658 */  0xF3, 0xE7, 0x1A, 0xF4, 0x69, 0x13, 0xE2, 0x69,  // ....i..i
13131                 /* 0660 */  0x02, 0xD8, 0xFE, 0xFF, 0x4F, 0x9B, 0xE0, 0x3D,  // ....O..=
13132                 /* 0668 */  0x4D, 0x00, 0xAE, 0x56, 0xEE, 0xD3, 0x26, 0xE0,  // M..V..&.
13133                 /* 0670 */  0x46, 0xF0, 0x69, 0x13, 0x28, 0xDD, 0x20, 0x70,  // F.i.(. p
13134                 /* 0678 */  0x81, 0xCE, 0x12, 0x68, 0xE9, 0x87, 0x4D, 0xD4,  // ...h..M.
13135                 /* 0680 */  0xFF, 0x1F, 0x14, 0x77, 0xD6, 0x04, 0xF8, 0x75,  // ...w...u
13136                 /* 0688 */  0x34, 0xF1, 0x59, 0x13, 0xF0, 0xF1, 0xFF, 0x3F,  // 4.Y....?
13137                 /* 0690 */  0x52, 0xE0, 0x8E, 0x87, 0xCF, 0x9A, 0xC0, 0xEF,  // R.......
13138                 /* 0698 */  0x2E, 0x81, 0xB9, 0x6A, 0xE2, 0x52, 0x2D, 0x55,  // ...j.R-U
13139                 /* 06A0 */  0x87, 0x62, 0x5C, 0x86, 0x87, 0x84, 0x0E, 0x64,  // .b\....d
13140                 /* 06A8 */  0xEC, 0xD2, 0x03, 0x43, 0x37, 0x9C, 0x8E, 0x14,  // ...C7...
13141                 /* 06B0 */  0x3E, 0x51, 0x58, 0x31, 0x85, 0x34, 0x9D, 0x2C,  // >QX1.4.,
13142                 /* 06B8 */  0x50, 0x2A, 0x4E, 0x16, 0x14, 0xC4, 0x80, 0x8E,  // P*N.....
13143                 /* 06C0 */  0x08, 0x21, 0x2B, 0x27, 0x0B, 0x94, 0x8A, 0x43,  // .!+'...C
13144                 /* 06C8 */  0x0F, 0x32, 0xD3, 0xC5, 0x82, 0x4E, 0xC6, 0xB3,  // .2...N..
13145                 /* 06D0 */  0xE6, 0xD7, 0x50, 0x5F, 0x2C, 0x18, 0x6E, 0x7D,  // ..P_,.n}
13146                 /* 06D8 */  0x57, 0x1E, 0x90, 0xAB, 0x39, 0x29, 0xA0, 0x66,  // W...9).f
13147                 /* 06E0 */  0xE1, 0x03, 0x05, 0x46, 0xD7, 0x7D, 0x02, 0x34,  // ...F.}.4
13148                 /* 06E8 */  0x57, 0xC9, 0x87, 0x51, 0xCF, 0x08, 0x77, 0x9E,  // W..Q..w.
13149                 /* 06F0 */  0x00, 0x23, 0x3A, 0xBF, 0x3E, 0x79, 0xE6, 0xFC,  // .#:.>y..
13150                 /* 06F8 */  0x32, 0xEC, 0x99, 0x1B, 0xC4, 0x33, 0xFF, 0xFF,  // 2....3..
13151                 /* 0700 */  0x27, 0x18, 0xF5, 0x8A, 0x82, 0x9E, 0x89, 0xEF,  // '.......
13152                 /* 0708 */  0x59, 0xB8, 0xBB, 0x1D, 0xF0, 0x1F, 0x9B, 0x2F,  // Y....../
13153                 /* 0710 */  0x27, 0xC0, 0x5B, 0xC8, 0xE5, 0x04, 0x74, 0x23,  // '.[...t#
13154                 /* 0718 */  0xF7, 0xE5, 0x04, 0xB8, 0x0E, 0xE3, 0xE5, 0x04,  // ........
13155                 /* 0720 */  0x4C, 0xB7, 0x12, 0x1F, 0x4D, 0x7C, 0x0C, 0xF6,  // L...M|..
13156                 /* 0728 */  0x15, 0x0A, 0xF3, 0xFF, 0xBF, 0x42, 0x81, 0x2D,  // .....B.-
13157                 /* 0730 */  0xE5, 0xD5, 0x04, 0x75, 0x85, 0x72, 0x82, 0xAB,  // ...u.r..
13158                 /* 0738 */  0x09, 0xE2, 0x0A, 0xFC, 0xCA, 0xE0, 0xC3, 0xB1,  // ........
13159                 /* 0740 */  0x07, 0xE3, 0x9B, 0x09, 0xC0, 0xD4, 0xFF, 0xFF,  // ........
13160                 /* 0748 */  0xCD, 0x04, 0x70, 0x78, 0xAA, 0xF3, 0xCD, 0x04,  // ..px....
13161                 /* 0750 */  0x5C, 0xB0, 0xFC, 0x66, 0x02, 0x3C, 0xA3, 0xDC,  // \..f.<..
13162                 /* 0758 */  0x4C, 0x80, 0x2C, 0x4C, 0xA8, 0x28, 0xC7, 0xF1,  // L.,L.(..
13163                 /* 0760 */  0x78, 0xE0, 0xEB, 0xB8, 0x11, 0x9E, 0xC8, 0x5F,  // x......_
13164                 /* 0768 */  0xE1, 0xE3, 0xC4, 0x78, 0x31, 0xC1, 0x45, 0x7D,  // ...x1.E}
13165                 /* 0770 */  0x3A, 0x98, 0x40, 0xFF, 0xFF, 0x40, 0xE3, 0x57,  // :.@..@.W
13166                 /* 0778 */  0x38, 0x18, 0xD4, 0x8D, 0xC3, 0x07, 0x08, 0xFC,  // 8.......
13167                 /* 0780 */  0x81, 0x90, 0x8D, 0x91, 0x49, 0x82, 0x43, 0x9D,  // ....I.C.
13168                 /* 0788 */  0x0E, 0x3C, 0x92, 0xE3, 0x38, 0x88, 0xF7, 0x41,  // .<..8..A
13169                 /* 0790 */  0xCF, 0xF0, 0xC0, 0x42, 0xB2, 0x4B, 0x87, 0x07,  // ...B.K..
13170                 /* 0798 */  0xCB, 0x6F, 0x2E, 0x3E, 0x20, 0xBC, 0x91, 0xFB,  // .o.> ...
13171                 /* 07A0 */  0xDC, 0x16, 0xF1, 0x89, 0xDC, 0x07, 0x43, 0x76,  // ......Cv
13172                 /* 07A8 */  0x2E, 0x60, 0x68, 0x1C, 0x1A, 0x3B, 0x0C, 0xCF,  // .`h..;..
13173                 /* 07B0 */  0xD1, 0x83, 0x38, 0x8C, 0x97, 0x02, 0x13, 0x78,  // ..8....x
13174                 /* 07B8 */  0x42, 0xE7, 0xFC, 0xF0, 0xF8, 0x22, 0xF1, 0x64,  // B....".d
13175                 /* 07C0 */  0x17, 0x35, 0x46, 0x73, 0x50, 0x24, 0xC2, 0x31,  // .5FsP$.1
13176                 /* 07C8 */  0x00, 0x34, 0x87, 0x88, 0x33, 0x38, 0x85, 0x68,  // .4..38.h
13177                 /* 07D0 */  0x27, 0xEF, 0x63, 0x1D, 0xAC, 0xEB, 0x1D, 0x0E,  // '.c.....
13178                 /* 07D8 */  0xE8, 0x3D, 0x0F, 0x7B, 0x25, 0xF0, 0x49, 0xD2,  // .=.{%.I.
13179                 /* 07E0 */  0xD7, 0x4C, 0x63, 0xC4, 0xF3, 0xF9, 0x0E, 0x37,  // .Lc....7
13180                 /* 07E8 */  0x8D, 0x23, 0xC2, 0x9C, 0x17, 0x0C, 0xF8, 0xA6,  // .#......
13181                 /* 07F0 */  0xE1, 0x73, 0x03, 0x73, 0x7F, 0xBA, 0xD0, 0xB1,  // .s.s....
13182                 /* 07F8 */  0x27, 0xC2, 0x01, 0x9D, 0xDC, 0xC3, 0x68, 0x6F,  // '.....ho
13183                 /* 0800 */  0x18, 0xB2, 0x75, 0x52, 0x79, 0xC0, 0x10, 0x56,  // ..uRy..V
13184                 /* 0808 */  0x63, 0x28, 0x82, 0x88, 0x10, 0x34, 0x8A, 0xC1,  // c(...4..
13185                 /* 0810 */  0x22, 0x84, 0x8A, 0x67, 0xD4, 0xD3, 0x0C, 0xF2,  // "..g....
13186                 /* 0818 */  0x14, 0xF3, 0xE0, 0x11, 0x24, 0x5A, 0x30, 0x23,  // ....$Z0#
13187                 /* 0820 */  0x30, 0xFB, 0x23, 0x65, 0xEF, 0x0C, 0x1D, 0x0C,  // 0.#e....
13188                 /* 0828 */  0x1C, 0x69, 0x34, 0xA8, 0xD3, 0x87, 0x0F, 0x07,  // .i4.....
13189                 /* 0830 */  0x3E, 0x18, 0x1C, 0xDD, 0xB3, 0xBF, 0xCF, 0x0F,  // >.......
13190                 /* 0838 */  0x9E, 0xDA, 0x91, 0x3D, 0xF3, 0xBF, 0x74, 0x32,  // ...=..t2
13191                 /* 0840 */  0x02, 0x9F, 0x57, 0x7C, 0xEC, 0xF0, 0x31, 0x01,  // ..W|..1.
13192                 /* 0848 */  0x3F, 0xC8, 0x80, 0xFF, 0xFF, 0xF7, 0x83, 0x27,  // ?......'
13193                 /* 0850 */  0x0D, 0xB0, 0x9C, 0x53, 0xE0, 0x8F, 0xC7, 0xC7,  // ...S....
13194                 /* 0858 */  0x01, 0x1F, 0xAF, 0xB9, 0xFC, 0x41, 0xA0, 0x0E,  // .....A..
13195                 /* 0860 */  0x37, 0x7C, 0xA4, 0xA7, 0xF5, 0x56, 0xE0, 0xB3,  // 7|...V..
13196                 /* 0868 */  0x80, 0x09, 0x2C, 0xF6, 0xE2, 0x44, 0xC7, 0x03,  // ..,..D..
13197                 /* 0870 */  0xFE, 0x6B, 0xC6, 0x53, 0xC2, 0xAB, 0x86, 0xB1,  // .k.S....
13198                 /* 0878 */  0x7D, 0x58, 0xB0, 0x94, 0x23, 0x86, 0x6C, 0x1C,  // }X..#.l.
13199                 /* 0880 */  0xB9, 0xA1, 0x46, 0x3F, 0xB1, 0x50, 0x51, 0x87,  // ..F?.PQ.
13200                 /* 0888 */  0x17, 0xD4, 0xD1, 0xC2, 0xA7, 0x0A, 0x86, 0xCA,  // ........
13201                 /* 0890 */  0x0F, 0xF4, 0x98, 0x03, 0x0B, 0xF8, 0x2F, 0x3E,  // ....../>
13202                 /* 0898 */  0x3E, 0x5A, 0x80, 0x63, 0x8E, 0x6F, 0x12, 0xD8,  // >Z.c.o..
13203                 /* 08A0 */  0xD1, 0xE1, 0xCE, 0x3E, 0xF8, 0x11, 0xE3, 0x27,  // ...>...'
13204                 /* 08A8 */  0x70, 0xC6, 0x55, 0x63, 0xEB, 0x22, 0x60, 0x75,  // p.Uc."`u
13205                 /* 08B0 */  0x53, 0x40, 0x13, 0x18, 0xE9, 0x59, 0x08, 0xD6,  // S@...Y..
13206                 /* 08B8 */  0xFF, 0xFF, 0x2C, 0x84, 0x3B, 0x18, 0x78, 0x50,  // ..,.;.xP
13207                 /* 08C0 */  0xE7, 0x74, 0x16, 0x07, 0xE6, 0x21, 0xC4, 0x3B,  // .t...!.;
13208                 /* 08C8 */  0x8D, 0xC7, 0x0E, 0x3E, 0x09, 0xFC, 0x59, 0xF9,  // ...>..Y.
13209                 /* 08D0 */  0x28, 0xB1, 0x83, 0xE0, 0xC7, 0x89, 0x47, 0x23,  // (.....G#
13210                 /* 08D8 */  0x36, 0x88, 0xB7, 0x23, 0xCF, 0xE3, 0xB8, 0x7C,  // 6..#...|
13211                 /* 08E0 */  0x52, 0x31, 0xC2, 0x11, 0x3C, 0xA0, 0x3C, 0xB0,  // R1..<.<.
13212                 /* 08E8 */  0xF8, 0x5E, 0x73, 0x04, 0x4F, 0x1E, 0xEF, 0x06,  // .^s.O...
13213                 /* 08F0 */  0x6F, 0x15, 0x1E, 0x37, 0xF6, 0x60, 0xE1, 0x21,  // o..7.`.!
13214                 /* 08F8 */  0xF0, 0x01, 0xBC, 0xE4, 0x9C, 0xA6, 0xCF, 0x4A,  // .......J
13215                 /* 0900 */  0x27, 0x86, 0x3B, 0x19, 0xF0, 0x61, 0x61, 0x8E,  // '.;..aa.
13216                 /* 0908 */  0x4C, 0xB8, 0x80, 0x47, 0x1C, 0x54, 0xA4, 0x53,  // L..G.T.S
13217                 /* 0910 */  0x0E, 0x40, 0x90, 0xCB, 0x09, 0xFB, 0xFF, 0xE3,  // .@......
13218                 /* 0918 */  0xF2, 0x4B, 0x0E, 0xE6, 0x94, 0x03, 0xB6, 0x03,  // .K......
13219                 /* 0920 */  0x8E, 0x4F, 0x39, 0xE0, 0x96, 0x70, 0xCA, 0x01,  // .O9..p..
13220                 /* 0928 */  0x68, 0xF2, 0xA4, 0xF1, 0xC0, 0x71, 0xA3, 0xF0,  // h....q..
13221                 /* 0930 */  0xD1, 0xC4, 0xE7, 0x87, 0x27, 0x0E, 0x16, 0xF8,  // ....'...
13222                 /* 0938 */  0x94, 0x03, 0xDA, 0xFF, 0xFF, 0x29, 0x07, 0xBC,  // .....)..
13223                 /* 0940 */  0x47, 0x48, 0xF0, 0x5C, 0x34, 0xDE, 0x24, 0x70,  // GH.\4.$p
13224                 /* 0948 */  0x97, 0x1C, 0xCC, 0x79, 0x00, 0x7C, 0x07, 0x1C,  // ...y.|..
13225                 /* 0950 */  0xF0, 0x0F, 0x09, 0x47, 0xE0, 0x03, 0x0E, 0xE0,  // ...G....
13226                 /* 0958 */  0xE4, 0x48, 0xC8, 0xE3, 0x3C, 0x0C, 0x14, 0x07,  // .H..<...
13227                 /* 0960 */  0x06, 0x75, 0xC0, 0x01, 0x6E, 0xFF, 0xFF, 0x03,  // .u..n...
13228                 /* 0968 */  0x0E, 0xDC, 0x00, 0x67, 0x1A, 0x20, 0x7A, 0xBF,  // ...g. z.
13229                 /* 0970 */  0xC4, 0x5D, 0x69, 0x30, 0x07, 0x20, 0x70, 0x9E,  // .]i0. p.
13230                 /* 0978 */  0x6F, 0xC0, 0x75, 0xA9, 0x79, 0xBE, 0x01, 0xFB,  // o.u.y...
13231                 /* 0980 */  0x53, 0xC4, 0xE7, 0x1B, 0xC0, 0xDF, 0xFF, 0xFF,  // S.......
13232                 /* 0988 */  0x7C, 0x03, 0x3C, 0xCF, 0xD7, 0xB8, 0x51, 0xF8,  // |.<...Q.
13233                 /* 0990 */  0x16, 0x8F, 0x3B, 0xDF, 0x00, 0x5E, 0x6E, 0x15,  // ..;..^n.
13234                 /* 0998 */  0xB8, 0x33, 0x21, 0xEE, 0xA8, 0x0D, 0xBE, 0x19,  // .3!.....
13235                 /* 09A0 */  0x3C, 0xDF, 0x80, 0x7D, 0xEC, 0xB8, 0xE3, 0x0D,  // <..}....
13236                 /* 09A8 */  0xF0, 0xF9, 0xFF, 0x1F, 0x6F, 0x80, 0x83, 0x42,  // ....o..B
13237                 /* 09B0 */  0x9B, 0x3E, 0x35, 0x1A, 0xB5, 0x6A, 0x50, 0xA6,  // .>5..jP.
13238                 /* 09B8 */  0x46, 0x99, 0x06, 0xB5, 0xFA, 0x54, 0x6A, 0xCC,  // F....Tj.
13239                 /* 09C0 */  0xD8, 0x70, 0x9F, 0x3A, 0xF4, 0x44, 0xD0, 0x19,  // .p.:.D..
13240                 /* 09C8 */  0xC1, 0xB2, 0x1F, 0x1E, 0x02, 0x71, 0x68, 0x10,  // .....qh.
13241                 /* 09D0 */  0xEE, 0x01, 0x84, 0xC5, 0x55, 0x01, 0xC2, 0xC4,  // ....U...
13242                 /* 09D8 */  0x3E, 0x0D, 0x04, 0x42, 0x9E, 0x06, 0x02, 0xB1,  // >..B....
13243                 /* 09E0 */  0x34, 0x1F, 0x20, 0x2C, 0x18, 0x08, 0x5F, 0xBC,  // 4. ,.._.
13244                 /* 09E8 */  0x40, 0x1C, 0xE8, 0x01, 0xA1, 0xD3, 0x07, 0x79,  // @......y
13245                 /* 09F0 */  0x36, 0x08, 0xC4, 0x11, 0xAD, 0x40, 0x34, 0x72,  // 6....@4r
13246                 /* 09F8 */  0x7E, 0x30, 0x88, 0x80, 0x2C, 0x75, 0xCD, 0x02,  // ~0..,u..
13247                 /* 0A00 */  0xB2, 0x70, 0x10, 0x01, 0x39, 0xBA, 0x1A, 0x20,  // .p..9.. 
13248                 /* 0A08 */  0x26, 0xC4, 0x0D, 0x10, 0x8B, 0xA9, 0x07, 0x84,  // &.......
13249                 /* 0A10 */  0x89, 0xF4, 0x33, 0x24, 0xFA, 0x72, 0x10, 0xA0,  // ..3$.r..
13250                 /* 0A18 */  0x25, 0x18, 0x02, 0x62, 0x72, 0x1D, 0x01, 0x31,  // %..br..1
13251                 /* 0A20 */  0xF1, 0x20, 0x02, 0x72, 0x6C, 0x4B, 0x40, 0x4C,  // . .rlK@L
13252                 /* 0A28 */  0x84, 0xA6, 0xC1, 0x50, 0x53, 0x20, 0x4C, 0xA0,  // ...PS L.
13253                 /* 0A30 */  0xAA, 0x01, 0x52, 0x57, 0x80, 0x2C, 0x3C, 0x88,  // ..RW.,<.
13254                 /* 0A38 */  0x80, 0x2C, 0x54, 0x17, 0x10, 0x93, 0x0D, 0x22,  // .,T...."
13255                 /* 0A40 */  0x20, 0x87, 0x7D, 0x39, 0x08, 0xC8, 0xD1, 0x41,  //  .}9...A
13256                 /* 0A48 */  0x34, 0x50, 0xB2, 0x6A, 0x01, 0x59, 0x39, 0x88,  // 4P.j.Y9.
13257                 /* 0A50 */  0x80, 0x9C, 0xE2, 0x9D, 0x23, 0x20, 0x67, 0x02,  // ....# g.
13258                 /* 0A58 */  0x11, 0x90, 0xF3, 0xBF, 0x64, 0x02, 0x11, 0x31,  // ....d..1
13259                 /* 0A60 */  0xBF, 0x9A, 0x40, 0x44, 0xD8, 0xB3, 0x26, 0x10,  // ..@D..&.
13260                 /* 0A68 */  0x91, 0x09, 0x22, 0x20, 0x8B, 0x92, 0x07, 0xC2,  // .." ....
13261                 /* 0A70 */  0x22, 0x81, 0xD0, 0x50, 0xF6, 0x40, 0x58, 0xFC,  // "..P.@X.
13262                 /* 0A78 */  0x37, 0x86, 0x40, 0x2C, 0xFE, 0x6B, 0x10, 0x84,  // 7.@,.k..
13263                 /* 0A80 */  0xFD, 0x73, 0x82, 0x90, 0x70, 0x0F, 0x06, 0x1D,  // .s..p...
13264                 /* 0A88 */  0x02, 0xC8, 0x53, 0x27, 0x08, 0x7B, 0xC7, 0x07,  // ..S'.{..
13265                 /* 0A90 */  0x21, 0xFF, 0x7F                                 // !..
13266             })
13267         }
13268     }
13269 
13270     Scope (_SB.PCI0.GP17.XHC1.RHUB.PRT1)
13271     {
13272         Device (CAM1)
13273         {
13274             Name (_ADR, One)  // _ADR: Address
13275             Method (_STA, 0, NotSerialized)  // _STA: Status
13276             {
13277                 If (RV2I)
13278                 {
13279                     Return (Zero)
13280                 }
13281                 Else
13282                 {
13283                     Return (0x0F)
13284                 }
13285             }
13286 
13287             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
13288             {
13289                 Name (PLDP, Package (0x01)
13290                 {
13291                     Buffer (0x14)
13292                     {
13293                         /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13294                         /* 0008 */  0x24, 0x1D, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // $.......
13295                         /* 0010 */  0xE1, 0x00, 0xAF, 0x00                           // ....
13296                     }
13297                 })
13298                 Return (PLDP) /* \_SB_.PCI0.GP17.XHC1.RHUB.PRT1.CAM1._PLD.PLDP */
13299             }
13300         }
13301 
13302         Device (CAM2)
13303         {
13304             Name (_ADR, 0x03)  // _ADR: Address
13305             Method (_STA, 0, NotSerialized)  // _STA: Status
13306             {
13307                 If (RV2I)
13308                 {
13309                     Return (Zero)
13310                 }
13311                 Else
13312                 {
13313                     Return (0x0F)
13314                 }
13315             }
13316 
13317             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
13318             {
13319                 Name (PLDP, Package (0x01)
13320                 {
13321                     Buffer (0x14)
13322                     {
13323                         /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13324                         /* 0008 */  0x24, 0x1D, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // $.......
13325                         /* 0010 */  0xE1, 0x00, 0xAF, 0x00                           // ....
13326                     }
13327                 })
13328                 Return (PLDP) /* \_SB_.PCI0.GP17.XHC1.RHUB.PRT1.CAM2._PLD.PLDP */
13329             }
13330         }
13331     }
13332 
13333     Scope (_SB.PCI0.GP17.XHC1.RHUB.PRT2)
13334     {
13335         Device (CDRD)
13336         {
13337             Name (_ADR, 0x02)  // _ADR: Address
13338             Method (_STA, 0, NotSerialized)  // _STA: Status
13339             {
13340                 If (RV2I)
13341                 {
13342                     Return (Zero)
13343                 }
13344                 Else
13345                 {
13346                     Return (0x0F)
13347                 }
13348             }
13349 
13350             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
13351             {
13352                 Name (PLDP, Package (0x01)
13353                 {
13354                     Buffer (0x14)
13355                     {
13356                         /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13357                         /* 0008 */  0x24, 0x1D, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // $.......
13358                         /* 0010 */  0xE1, 0x00, 0xAF, 0x00                           // ....
13359                     }
13360                 })
13361                 Return (PLDP) /* \_SB_.PCI0.GP17.XHC1.RHUB.PRT2.CDRD._PLD.PLDP */
13362             }
13363         }
13364 
13365         Device (BLTH)
13366         {
13367             Name (_ADR, 0x04)  // _ADR: Address
13368             Method (_STA, 0, NotSerialized)  // _STA: Status
13369             {
13370                 If (RV2I)
13371                 {
13372                     Return (Zero)
13373                 }
13374                 Else
13375                 {
13376                     Return (0x0F)
13377                 }
13378             }
13379 
13380             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
13381             {
13382                 Name (PLDP, Package (0x01)
13383                 {
13384                     Buffer (0x14)
13385                     {
13386                         /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13387                         /* 0008 */  0x24, 0x1D, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // $.......
13388                         /* 0010 */  0xE1, 0x00, 0xAF, 0x00                           // ....
13389                     }
13390                 })
13391                 Return (PLDP) /* \_SB_.PCI0.GP17.XHC1.RHUB.PRT2.BLTH._PLD.PLDP */
13392             }
13393         }
13394     }
13395 
13396     Scope (_SB.PCI0.GP17.XHC0.RHUB.PRT5)
13397     {
13398         Device (CAM1)
13399         {
13400             Name (_ADR, 0x05)  // _ADR: Address
13401             Method (_STA, 0, NotSerialized)  // _STA: Status
13402             {
13403                 If (RV2I)
13404                 {
13405                     Return (0x0F)
13406                 }
13407                 Else
13408                 {
13409                     Return (Zero)
13410                 }
13411             }
13412 
13413             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
13414             {
13415                 Name (PLDP, Package (0x01)
13416                 {
13417                     Buffer (0x14)
13418                     {
13419                         /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13420                         /* 0008 */  0x24, 0x1D, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // $.......
13421                         /* 0010 */  0xE1, 0x00, 0xAF, 0x00                           // ....
13422                     }
13423                 })
13424                 Return (PLDP) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT5.CAM1._PLD.PLDP */
13425             }
13426         }
13427 
13428         Device (CAM2)
13429         {
13430             Name (_ADR, 0x07)  // _ADR: Address
13431             Method (_STA, 0, NotSerialized)  // _STA: Status
13432             {
13433                 If (RV2I)
13434                 {
13435                     Return (0x0F)
13436                 }
13437                 Else
13438                 {
13439                     Return (Zero)
13440                 }
13441             }
13442 
13443             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
13444             {
13445                 Name (PLDP, Package (0x01)
13446                 {
13447                     Buffer (0x14)
13448                     {
13449                         /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13450                         /* 0008 */  0x24, 0x1D, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // $.......
13451                         /* 0010 */  0xE1, 0x00, 0xAF, 0x00                           // ....
13452                     }
13453                 })
13454                 Return (PLDP) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT5.CAM2._PLD.PLDP */
13455             }
13456         }
13457     }
13458 
13459     Scope (_SB.PCI0.GP17.XHC0.RHUB.PRT6)
13460     {
13461         Device (CDRD)
13462         {
13463             Name (_ADR, 0x02)  // _ADR: Address
13464             Method (_STA, 0, NotSerialized)  // _STA: Status
13465             {
13466                 If (RV2I)
13467                 {
13468                     Return (0x0F)
13469                 }
13470                 Else
13471                 {
13472                     Return (Zero)
13473                 }
13474             }
13475 
13476             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
13477             {
13478                 Name (PLDP, Package (0x01)
13479                 {
13480                     Buffer (0x14)
13481                     {
13482                         /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13483                         /* 0008 */  0x24, 0x1D, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // $.......
13484                         /* 0010 */  0xE1, 0x00, 0xAF, 0x00                           // ....
13485                     }
13486                 })
13487                 Return (PLDP) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT6.CDRD._PLD.PLDP */
13488             }
13489         }
13490 
13491         Device (BLTH)
13492         {
13493             Name (_ADR, 0x04)  // _ADR: Address
13494             Method (_STA, 0, NotSerialized)  // _STA: Status
13495             {
13496                 If (RV2I)
13497                 {
13498                     Return (0x0F)
13499                 }
13500                 Else
13501                 {
13502                     Return (Zero)
13503                 }
13504             }
13505 
13506             Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
13507             {
13508                 Name (PLDP, Package (0x01)
13509                 {
13510                     Buffer (0x14)
13511                     {
13512                         /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13513                         /* 0008 */  0x24, 0x1D, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,  // $.......
13514                         /* 0010 */  0xE1, 0x00, 0xAF, 0x00                           // ....
13515                     }
13516                 })
13517                 Return (PLDP) /* \_SB_.PCI0.GP17.XHC0.RHUB.PRT6.BLTH._PLD.PLDP */
13518             }
13519         }
13520     }
13521 
13522     Scope (\_SB)
13523     {
13524         Name (AGRB, 0xF8000000)
13525         Name (ADBG, Buffer (0x0100){})
13526         Name (ADAT, Buffer (0x0520)
13527         {
13528             /* 0000 */  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13529             /* 0008 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13530             /* 0010 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13531             /* 0018 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13532             /* 0020 */  0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x00,  // ........
13533             /* 0028 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13534             /* 0030 */  0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,  // ........
13535             /* 0038 */  0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13536             /* 0040 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13537             /* 0048 */  0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x04,  // ........
13538             /* 0050 */  0x04, 0xFF, 0xFF, 0x02, 0x00, 0x01, 0x05, 0x00,  // ........
13539             /* 0058 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,  // ........
13540             /* 0060 */  0x00, 0x00, 0x00, 0x05, 0x05, 0xFF, 0xFF, 0x03,  // ........
13541             /* 0068 */  0x00, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13542             /* 0070 */  0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x00,  // ........
13543             /* 0078 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13544             /* 0080 */  0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,  // ........
13545             /* 0088 */  0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13546             /* 0090 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13547             /* 0098 */  0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x00,  // ........
13548             /* 00A0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13549             /* 00A8 */  0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,  // ........
13550             /* 00B0 */  0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13551             /* 00B8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13552             /* 00C0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13553             /* 00C8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13554             /* 00D0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13555             /* 00D8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13556             /* 00E0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13557             /* 00E8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13558             /* 00F0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13559             /* 00F8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13560             /* 0100 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13561             /* 0108 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13562             /* 0110 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13563             /* 0118 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13564             /* 0120 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13565             /* 0128 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13566             /* 0130 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13567             /* 0138 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13568             /* 0140 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13569             /* 0148 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13570             /* 0150 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13571             /* 0158 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13572             /* 0160 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13573             /* 0168 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13574             /* 0170 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13575             /* 0178 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13576             /* 0180 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13577             /* 0188 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13578             /* 0190 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13579             /* 0198 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13580             /* 01A0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13581             /* 01A8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13582             /* 01B0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13583             /* 01B8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13584             /* 01C0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13585             /* 01C8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13586             /* 01D0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13587             /* 01D8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13588             /* 01E0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13589             /* 01E8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13590             /* 01F0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13591             /* 01F8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13592             /* 0200 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13593             /* 0208 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13594             /* 0210 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13595             /* 0218 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13596             /* 0220 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13597             /* 0228 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13598             /* 0230 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13599             /* 0238 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13600             /* 0240 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13601             /* 0248 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13602             /* 0250 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13603             /* 0258 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13604             /* 0260 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13605             /* 0268 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13606             /* 0270 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13607             /* 0278 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13608             /* 0280 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13609             /* 0288 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13610             /* 0290 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13611             /* 0298 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13612             /* 02A0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13613             /* 02A8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13614             /* 02B0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13615             /* 02B8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13616             /* 02C0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13617             /* 02C8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13618             /* 02D0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13619             /* 02D8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13620             /* 02E0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13621             /* 02E8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13622             /* 02F0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13623             /* 02F8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13624             /* 0300 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13625             /* 0308 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13626             /* 0310 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13627             /* 0318 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13628             /* 0320 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13629             /* 0328 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13630             /* 0330 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13631             /* 0338 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13632             /* 0340 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13633             /* 0348 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13634             /* 0350 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13635             /* 0358 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13636             /* 0360 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13637             /* 0368 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13638             /* 0370 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13639             /* 0378 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13640             /* 0380 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13641             /* 0388 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13642             /* 0390 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13643             /* 0398 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13644             /* 03A0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13645             /* 03A8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13646             /* 03B0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13647             /* 03B8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13648             /* 03C0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13649             /* 03C8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13650             /* 03D0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13651             /* 03D8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13652             /* 03E0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13653             /* 03E8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13654             /* 03F0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13655             /* 03F8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13656             /* 0400 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13657             /* 0408 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13658             /* 0410 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13659             /* 0418 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13660             /* 0420 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13661             /* 0428 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13662             /* 0430 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13663             /* 0438 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13664             /* 0440 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13665             /* 0448 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13666             /* 0450 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13667             /* 0458 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13668             /* 0460 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13669             /* 0468 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13670             /* 0470 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13671             /* 0478 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13672             /* 0480 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13673             /* 0488 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13674             /* 0490 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13675             /* 0498 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13676             /* 04A0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13677             /* 04A8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13678             /* 04B0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13679             /* 04B8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13680             /* 04C0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13681             /* 04C8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13682             /* 04D0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13683             /* 04D8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13684             /* 04E0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13685             /* 04E8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13686             /* 04F0 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13687             /* 04F8 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13688             /* 0500 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13689             /* 0508 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13690             /* 0510 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  // ........
13691             /* 0518 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
13692         })
13693         Method (ALIB, 2, NotSerialized)
13694         {
13695             If ((Arg0 == 0x00))
13696             {
13697                 CreateWordField (Arg1, 0x00, A014)
13698                 CreateWordField (Arg1, 0x02, A015)
13699                 CreateDWordField (Arg1, 0x04, A016)
13700                 Local0 = Buffer (0x0100){}
13701                 CreateWordField (Local0, 0x00, A017)
13702                 A017 = A014 /* \_SB_.ALIB.A014 */
13703                 CreateWordField (Local0, 0x02, A018)
13704                 A018 = A015 /* \_SB_.ALIB.A015 */
13705                 CreateDWordField (Local0, 0x04, A019)
13706                 A019 = A016 /* \_SB_.ALIB.A016 */
13707                 A019 &= ~0x0F
13708                 If ((DerefOf (\_SB.ADAT [0x00]) > 0x00))
13709                 {
13710                     Local1 = 0x0F
13711                 }
13712                 Else
13713                 {
13714                     Local1 = 0x01
13715                 }
13716 
13717                 A019 |= Local1
13718                 Return (Local0)
13719             }
13720 
13721             If ((Arg0 == 0x01))
13722             {
13723                 Local0 = DerefOf (Arg1 [0x02])
13724                 Return (A020 (Local0))
13725             }
13726 
13727             If ((Arg0 == 0x02))
13728             {
13729                 Local0 = Buffer (0x0100)
13730                     {
13731                          0x03, 0x00, 0x00                                 // ...
13732                     }
13733                 Return (Local0)
13734             }
13735 
13736             If ((Arg0 == 0x03))
13737             {
13738                 Local0 = Buffer (0x0100)
13739                     {
13740                          0x03, 0x00, 0x00                                 // ...
13741                     }
13742                 Return (Local0)
13743             }
13744 
13745             If ((Arg0 == 0x06))
13746             {
13747                 Local0 = DerefOf (Arg1 [0x04])
13748                 Local1 = DerefOf (Arg1 [0x02])
13749                 Return (A023 (Local0, Local1))
13750             }
13751 
13752             If ((Arg0 == 0x0A))
13753             {
13754                 Local0 = DerefOf (Arg1 [0x02])
13755                 Return (A024 (Local0))
13756             }
13757 
13758             If ((Arg0 == 0x0B))
13759             {
13760                 Local0 = DerefOf (Arg1 [0x02])
13761                 Local1 = DerefOf (Arg1 [0x03])
13762                 Local2 = DerefOf (Arg1 [0x04])
13763                 Local2 |= (DerefOf (Arg1 [0x05]) << 0x08)
13764                 Local2 |= (DerefOf (Arg1 [0x06]) << 0x10)
13765                 Local2 |= (DerefOf (Arg1 [0x07]) << 0x18)
13766                 Local3 = DerefOf (Arg1 [0x08])
13767                 Local3 |= (DerefOf (Arg1 [0x09]) << 0x08)
13768                 Local3 |= (DerefOf (Arg1 [0x0A]) << 0x10)
13769                 Local3 |= (DerefOf (Arg1 [0x0B]) << 0x18)
13770                 Local4 = DerefOf (Arg1 [0x0C])
13771                 Local4 |= (DerefOf (Arg1 [0x0D]) << 0x08)
13772                 Local4 |= (DerefOf (Arg1 [0x0E]) << 0x10)
13773                 Local4 |= (DerefOf (Arg1 [0x0F]) << 0x18)
13774                 Return (A025 (Local0, Local1, Local2, Local3, Local4))
13775             }
13776 
13777             If ((Arg0 == 0x0C))
13778             {
13779                 A026 (Arg1)
13780             }
13781 
13782             If ((Arg0 == 0x10))
13783             {
13784                 Local7 = Buffer (0x18){}
13785                 CreateDWordField (Local7, 0x00, A027)
13786                 CreateDWordField (Local7, 0x04, A028)
13787                 CreateDWordField (Local7, 0x08, A029)
13788                 CreateDWordField (Local7, 0x0C, A030)
13789                 CreateDWordField (Local7, 0x10, A031)
13790                 CreateDWordField (Local7, 0x14, A032)
13791                 A027 = 0x00
13792                 A028 = 0x00
13793                 A029 = 0x00
13794                 A030 = 0x00
13795                 A031 = 0x00
13796                 A032 = 0x00
13797                 A012 (0x51, Local7)
13798             }
13799 
13800             If ((Arg0 == 0x11))
13801             {
13802                 Local6 = Buffer (0x18){}
13803                 CreateDWordField (Local6, 0x00, A006)
13804                 CreateDWordField (Local6, 0x04, A007)
13805                 CreateDWordField (Local6, 0x08, A008)
13806                 CreateDWordField (Local6, 0x0C, A009)
13807                 CreateDWordField (Local6, 0x10, A010)
13808                 CreateDWordField (Local6, 0x14, A011)
13809                 A006 = 0x00
13810                 A007 = 0x00
13811                 A008 = 0x00
13812                 A009 = 0x00
13813                 A010 = 0x00
13814                 A011 = 0x00
13815                 A012 (0x52, Local6)
13816             }
13817 
13818             Return (0x00)
13819         }
13820 
13821         Method (A023, 2, NotSerialized)
13822         {
13823             Local0 = 0x00
13824             While ((Local0 < 0x07))
13825             {
13826                 Local1 = A084 (Local0, Arg1)
13827                 If ((Local1 == 0x01))
13828                 {
13829                     Local2 = A085 (Local0, Arg0)
13830                     Break
13831                 }
13832 
13833                 Local0++
13834             }
13835 
13836             Local7 = Buffer (0x0A){}
13837             CreateWordField (Local7, 0x00, A017)
13838             CreateByteField (Local7, 0x02, A034)
13839             CreateByteField (Local7, 0x03, A086)
13840             A017 = 0x04
13841             A034 = 0x00
13842             If ((Local2 == 0x00))
13843             {
13844                 A086 = 0x00
13845             }
13846             Else
13847             {
13848                 A086 = 0x01
13849             }
13850 
13851             Return (Local7)
13852         }
13853 
13854         Method (A084, 2, NotSerialized)
13855         {
13856             If ((Arg0 == 0x00))
13857             {
13858                 Return (\_SB.AWR0.ABR0.A079 (Arg1))
13859             }
13860 
13861             If ((Arg0 == 0x01))
13862             {
13863                 Return (\_SB.AWR0.ABR1.A079 (Arg1))
13864             }
13865 
13866             If ((Arg0 == 0x02))
13867             {
13868                 Return (\_SB.AWR0.ABR2.A079 (Arg1))
13869             }
13870 
13871             If ((Arg0 == 0x03))
13872             {
13873                 Return (\_SB.AWR0.ABR3.A079 (Arg1))
13874             }
13875 
13876             If ((Arg0 == 0x04))
13877             {
13878                 Return (\_SB.AWR0.ABR4.A079 (Arg1))
13879             }
13880 
13881             If ((Arg0 == 0x05))
13882             {
13883                 Return (\_SB.AWR0.ABR5.A079 (Arg1))
13884             }
13885 
13886             If ((Arg0 == 0x06))
13887             {
13888                 Return (\_SB.AWR0.ABR6.A079 (Arg1))
13889             }
13890         }
13891 
13892         Method (A085, 2, NotSerialized)
13893         {
13894             If ((Arg0 == 0x00))
13895             {
13896                 Return (\_SB.AWR0.ABR0.A080 (Arg1))
13897             }
13898 
13899             If ((Arg0 == 0x01))
13900             {
13901                 Return (\_SB.AWR0.ABR1.A080 (Arg1))
13902             }
13903 
13904             If ((Arg0 == 0x02))
13905             {
13906                 Return (\_SB.AWR0.ABR2.A080 (Arg1))
13907             }
13908 
13909             If ((Arg0 == 0x03))
13910             {
13911                 Return (\_SB.AWR0.ABR3.A080 (Arg1))
13912             }
13913 
13914             If ((Arg0 == 0x04))
13915             {
13916                 Return (\_SB.AWR0.ABR4.A080 (Arg1))
13917             }
13918 
13919             If ((Arg0 == 0x05))
13920             {
13921                 Return (\_SB.AWR0.ABR5.A080 (Arg1))
13922             }
13923 
13924             If ((Arg0 == 0x06))
13925             {
13926                 Return (\_SB.AWR0.ABR6.A080 (Arg1))
13927             }
13928         }
13929 
13930         Name (AD00, 0x00)
13931         Name (DK00, 0x00)
13932         Method (A020, 1, NotSerialized)
13933         {
13934             AD00 = Arg0
13935             A005 ()
13936         }
13937 
13938         Method (A024, 1, NotSerialized)
13939         {
13940             DK00 = Arg0
13941         }
13942 
13943         Method (A025, 5, NotSerialized)
13944         {
13945         }
13946 
13947         Name (AP01, 0x00)
13948         Name (AP02, 0x00)
13949         Name (AP03, 0x00)
13950         Name (AP05, 0x00)
13951         Name (AP0B, 0xFF)
13952         Name (AP10, 0x00)
13953         Method (A033, 1, NotSerialized)
13954         {
13955             Local7 = Buffer (0x0100){}
13956             CreateWordField (Local7, 0x00, A017)
13957             A017 = 0x03
13958             CreateByteField (Local7, 0x02, A034)
13959             A034 = 0x01
13960             If ((DerefOf (\_SB.ADAT [0x00]) == 0x01))
13961             {
13962                 A034 = 0x02
13963                 Return (Local7)
13964             }
13965 
13966             If ((DerefOf (\_SB.ADAT [0x00]) == 0x00))
13967             {
13968                 A034 = 0x01
13969                 Return (Local7)
13970             }
13971 
13972             A035 (Arg0)
13973             If ((AP05 != 0x01))
13974             {
13975                 Return (Local7)
13976             }
13977 
13978             A036 ()
13979             A034 = 0x02
13980             Return (Local7)
13981         }
13982 
13983         Method (A037, 0, NotSerialized)
13984         {
13985             If ((DerefOf (\_SB.ADAT [0x00]) <= 0x01))
13986             {
13987                 Return (0x00)
13988             }
13989 
13990             If ((AP05 != 0x01))
13991             {
13992                 Return (0x00)
13993             }
13994 
13995             A036 ()
13996         }
13997 
13998         Method (A038, 1, NotSerialized)
13999         {
14000             If ((Arg0 == 0x03))
14001             {
14002                 AP01 = 0x00
14003             }
14004         }
14005 
14006         Method (A039, 1, NotSerialized)
14007         {
14008             AP10 = 0x01
14009         }
14010 
14011         Method (A040, 1, NotSerialized)
14012         {
14013             AP05 = Arg0
14014             If ((DerefOf (\_SB.ADAT [0x00]) <= 0x01))
14015             {
14016                 Return (0x00)
14017             }
14018 
14019             Local1 = AP0B /* \_SB_.AP0B */
14020             If ((AP05 == 0x00))
14021             {
14022                 Local0 = 0x00
14023                 While ((Local0 < 0x07))
14024                 {
14025                     A041 (Local0)
14026                     Local0++
14027                 }
14028 
14029                 AP0B = 0x00
14030             }
14031 
14032             A036 ()
14033             AP0B = Local1
14034             Local7 = Buffer (0x0100){}
14035             Local7 [0x00] = 0x03
14036             Local7 [0x01] = 0x00
14037             Local7 [0x02] = 0x00
14038             Return (Local7)
14039         }
14040 
14041         Method (A042, 0, NotSerialized)
14042         {
14043             If ((AP0B != 0xFF))
14044             {
14045                 Return (AP0B) /* \_SB_.AP0B */
14046             }
14047 
14048             Return (AD00) /* \_SB_.AD00 */
14049         }
14050 
14051         Method (A035, 1, NotSerialized)
14052         {
14053             CreateWordField (Arg0, 0x02, AP06)
14054             CreateWordField (Arg0, 0x04, AP07)
14055             CreateWordField (Arg0, 0x06, AP08)
14056             CreateByteField (Arg0, 0x08, AP09)
14057             CreateByteField (Arg0, 0x09, AP0A)
14058             Local0 = 0x00
14059             While ((Local0 < 0x07))
14060             {
14061                 If ((A043 (Local0, AP06) == 0x01))
14062                 {
14063                     If (((AP07 & AP08) == 0x01))
14064                     {
14065                         Local1 = A044 (Local0)
14066                         A045 (Local0, Local1)
14067                     }
14068                     Else
14069                     {
14070                         A045 (Local0, AP0A)
14071                     }
14072 
14073                     Break
14074                 }
14075 
14076                 Local0++
14077             }
14078         }
14079 
14080         Method (A046, 0, NotSerialized)
14081         {
14082             AP02 = 0x01
14083             Local0 = 0x00
14084             While ((Local0 < 0x07))
14085             {
14086                 Local1 = A047 (Local0)
14087                 If ((Local1 > AP02))
14088                 {
14089                     AP02 = Local1
14090                 }
14091 
14092                 Local0++
14093             }
14094         }
14095 
14096         Method (A048, 0, NotSerialized)
14097         {
14098             AP03 = 0x00
14099             Local0 = 0x00
14100             While ((Local0 < 0x07))
14101             {
14102                 Local1 = A049 (Local0)
14103                 If ((Local1 > AP03))
14104                 {
14105                     AP03 = Local1
14106                 }
14107 
14108                 Local0++
14109             }
14110         }
14111 
14112         Method (A036, 0, NotSerialized)
14113         {
14114             A048 ()
14115             A046 ()
14116             If ((AP02 != AP01))
14117             {
14118                 A013 (AP02, AP01)
14119             }
14120 
14121             If ((AP02 > AP01))
14122             {
14123                 AP01 = AP02 /* \_SB_.AP02 */
14124             }
14125 
14126             Local0 = 0x00
14127             While ((Local0 < 0x07))
14128             {
14129                 Local1 = A047 (Local0)
14130                 Local2 = A050 (Local0)
14131                 If ((Local1 != Local2))
14132                 {
14133                     A051 (Local0, Local1)
14134                 }
14135                 ElseIf ((AP10 == 0x01))
14136                 {
14137                     A051 (Local0, Local1)
14138                 }
14139 
14140                 Local0++
14141             }
14142 
14143             If ((AP02 < AP01))
14144             {
14145                 AP01 = AP02 /* \_SB_.AP02 */
14146             }
14147             ElseIf ((AP10 == 0x01))
14148             {
14149                 AP01 = AP02 /* \_SB_.AP02 */
14150             }
14151 
14152             AP10 = 0x00
14153         }
14154 
14155         Method (A051, 2, NotSerialized)
14156         {
14157             If ((Arg0 == 0x00))
14158             {
14159                 Return (\_SB.AWR0.ABR0.A052 (Arg1))
14160             }
14161 
14162             If ((Arg0 == 0x01))
14163             {
14164                 Return (\_SB.AWR0.ABR1.A052 (Arg1))
14165             }
14166 
14167             If ((Arg0 == 0x02))
14168             {
14169                 Return (\_SB.AWR0.ABR2.A052 (Arg1))
14170             }
14171 
14172             If ((Arg0 == 0x03))
14173             {
14174                 Return (\_SB.AWR0.ABR3.A052 (Arg1))
14175             }
14176 
14177             If ((Arg0 == 0x04))
14178             {
14179                 Return (\_SB.AWR0.ABR4.A052 (Arg1))
14180             }
14181 
14182             If ((Arg0 == 0x05))
14183             {
14184                 Return (\_SB.AWR0.ABR5.A052 (Arg1))
14185             }
14186 
14187             If ((Arg0 == 0x06))
14188             {
14189                 Return (\_SB.AWR0.ABR6.A052 (Arg1))
14190             }
14191         }
14192 
14193         Method (A050, 1, NotSerialized)
14194         {
14195             If ((Arg0 == 0x00))
14196             {
14197                 Return (\_SB.AWR0.ABR0.A053 ())
14198             }
14199 
14200             If ((Arg0 == 0x01))
14201             {
14202                 Return (\_SB.AWR0.ABR1.A053 ())
14203             }
14204 
14205             If ((Arg0 == 0x02))
14206             {
14207                 Return (\_SB.AWR0.ABR2.A053 ())
14208             }
14209 
14210             If ((Arg0 == 0x03))
14211             {
14212                 Return (\_SB.AWR0.ABR3.A053 ())
14213             }
14214 
14215             If ((Arg0 == 0x04))
14216             {
14217                 Return (\_SB.AWR0.ABR4.A053 ())
14218             }
14219 
14220             If ((Arg0 == 0x05))
14221             {
14222                 Return (\_SB.AWR0.ABR5.A053 ())
14223             }
14224 
14225             If ((Arg0 == 0x06))
14226             {
14227                 Return (\_SB.AWR0.ABR6.A053 ())
14228             }
14229         }
14230 
14231         Method (A047, 1, NotSerialized)
14232         {
14233             If ((Arg0 == 0x00))
14234             {
14235                 Return (\_SB.AWR0.ABR0.A054 ())
14236             }
14237 
14238             If ((Arg0 == 0x01))
14239             {
14240                 Return (\_SB.AWR0.ABR1.A054 ())
14241             }
14242 
14243             If ((Arg0 == 0x02))
14244             {
14245                 Return (\_SB.AWR0.ABR2.A054 ())
14246             }
14247 
14248             If ((Arg0 == 0x03))
14249             {
14250                 Return (\_SB.AWR0.ABR3.A054 ())
14251             }
14252 
14253             If ((Arg0 == 0x04))
14254             {
14255                 Return (\_SB.AWR0.ABR4.A054 ())
14256             }
14257 
14258             If ((Arg0 == 0x05))
14259             {
14260                 Return (\_SB.AWR0.ABR5.A054 ())
14261             }
14262 
14263             If ((Arg0 == 0x06))
14264             {
14265                 Return (\_SB.AWR0.ABR6.A054 ())
14266             }
14267         }
14268 
14269         Method (A049, 1, NotSerialized)
14270         {
14271             If ((Arg0 == 0x00))
14272             {
14273                 Return (\_SB.AWR0.ABR0.A055 ())
14274             }
14275 
14276             If ((Arg0 == 0x01))
14277             {
14278                 Return (\_SB.AWR0.ABR1.A055 ())
14279             }
14280 
14281             If ((Arg0 == 0x02))
14282             {
14283                 Return (\_SB.AWR0.ABR2.A055 ())
14284             }
14285 
14286             If ((Arg0 == 0x03))
14287             {
14288                 Return (\_SB.AWR0.ABR3.A055 ())
14289             }
14290 
14291             If ((Arg0 == 0x04))
14292             {
14293                 Return (\_SB.AWR0.ABR4.A055 ())
14294             }
14295 
14296             If ((Arg0 == 0x05))
14297             {
14298                 Return (\_SB.AWR0.ABR5.A055 ())
14299             }
14300 
14301             If ((Arg0 == 0x06))
14302             {
14303                 Return (\_SB.AWR0.ABR6.A055 ())
14304             }
14305         }
14306 
14307         Method (A044, 1, NotSerialized)
14308         {
14309             If ((Arg0 == 0x00))
14310             {
14311                 Return (\_SB.AWR0.ABR0.A056 ())
14312             }
14313 
14314             If ((Arg0 == 0x01))
14315             {
14316                 Return (\_SB.AWR0.ABR1.A056 ())
14317             }
14318 
14319             If ((Arg0 == 0x02))
14320             {
14321                 Return (\_SB.AWR0.ABR2.A056 ())
14322             }
14323 
14324             If ((Arg0 == 0x03))
14325             {
14326                 Return (\_SB.AWR0.ABR3.A056 ())
14327             }
14328 
14329             If ((Arg0 == 0x04))
14330             {
14331                 Return (\_SB.AWR0.ABR4.A056 ())
14332             }
14333 
14334             If ((Arg0 == 0x05))
14335             {
14336                 Return (\_SB.AWR0.ABR5.A056 ())
14337             }
14338 
14339             If ((Arg0 == 0x06))
14340             {
14341                 Return (\_SB.AWR0.ABR6.A056 ())
14342             }
14343         }
14344 
14345         Method (A045, 2, NotSerialized)
14346         {
14347             If ((Arg0 == 0x00))
14348             {
14349                 Return (\_SB.AWR0.ABR0.A057 (Arg1))
14350             }
14351 
14352             If ((Arg0 == 0x01))
14353             {
14354                 Return (\_SB.AWR0.ABR1.A057 (Arg1))
14355             }
14356 
14357             If ((Arg0 == 0x02))
14358             {
14359                 Return (\_SB.AWR0.ABR2.A057 (Arg1))
14360             }
14361 
14362             If ((Arg0 == 0x03))
14363             {
14364                 Return (\_SB.AWR0.ABR3.A057 (Arg1))
14365             }
14366 
14367             If ((Arg0 == 0x04))
14368             {
14369                 Return (\_SB.AWR0.ABR4.A057 (Arg1))
14370             }
14371 
14372             If ((Arg0 == 0x05))
14373             {
14374                 Return (\_SB.AWR0.ABR5.A057 (Arg1))
14375             }
14376 
14377             If ((Arg0 == 0x06))
14378             {
14379                 Return (\_SB.AWR0.ABR6.A057 (Arg1))
14380             }
14381         }
14382 
14383         Method (A043, 2, NotSerialized)
14384         {
14385             If ((Arg0 == 0x00))
14386             {
14387                 Return (\_SB.AWR0.ABR0.A058 (Arg1))
14388             }
14389 
14390             If ((Arg0 == 0x01))
14391             {
14392                 Return (\_SB.AWR0.ABR1.A058 (Arg1))
14393             }
14394 
14395             If ((Arg0 == 0x02))
14396             {
14397                 Return (\_SB.AWR0.ABR2.A058 (Arg1))
14398             }
14399 
14400             If ((Arg0 == 0x03))
14401             {
14402                 Return (\_SB.AWR0.ABR3.A058 (Arg1))
14403             }
14404 
14405             If ((Arg0 == 0x04))
14406             {
14407                 Return (\_SB.AWR0.ABR4.A058 (Arg1))
14408             }
14409 
14410             If ((Arg0 == 0x05))
14411             {
14412                 Return (\_SB.AWR0.ABR5.A058 (Arg1))
14413             }
14414 
14415             If ((Arg0 == 0x06))
14416             {
14417                 Return (\_SB.AWR0.ABR6.A058 (Arg1))
14418             }
14419         }
14420 
14421         Method (A041, 1, NotSerialized)
14422         {
14423             If ((Arg0 == 0x00))
14424             {
14425                 Return (\_SB.AWR0.ABR0.A059 ())
14426             }
14427 
14428             If ((Arg0 == 0x01))
14429             {
14430                 Return (\_SB.AWR0.ABR1.A059 ())
14431             }
14432 
14433             If ((Arg0 == 0x02))
14434             {
14435                 Return (\_SB.AWR0.ABR2.A059 ())
14436             }
14437 
14438             If ((Arg0 == 0x03))
14439             {
14440                 Return (\_SB.AWR0.ABR3.A059 ())
14441             }
14442 
14443             If ((Arg0 == 0x04))
14444             {
14445                 Return (\_SB.AWR0.ABR4.A059 ())
14446             }
14447 
14448             If ((Arg0 == 0x05))
14449             {
14450                 Return (\_SB.AWR0.ABR5.A059 ())
14451             }
14452 
14453             If ((Arg0 == 0x06))
14454             {
14455                 Return (\_SB.AWR0.ABR6.A059 ())
14456             }
14457         }
14458 
14459         OperationRegion (A111, SystemMemory, AGRB, 0x1000)
14460         Field (A111, DWordAcc, Lock, Preserve)
14461         {
14462             Offset (0xB8), 
14463             A112,   32
14464         }
14465 
14466         BankField (A111, A112, 0x03B10528, DWordAcc, Lock, Preserve)
14467         {
14468             Offset (0xBC), 
14469             A109,   32
14470         }
14471 
14472         BankField (A111, A112, 0x03B10564, DWordAcc, Lock, Preserve)
14473         {
14474             Offset (0xBC), 
14475             A103,   32
14476         }
14477 
14478         BankField (A111, A112, 0x03B10998, DWordAcc, Lock, Preserve)
14479         {
14480             Offset (0xBC), 
14481             A071,   32
14482         }
14483 
14484         BankField (A111, A112, 0x03B1099C, DWordAcc, Lock, Preserve)
14485         {
14486             Offset (0xBC), 
14487             A104,   32
14488         }
14489 
14490         BankField (A111, A112, 0x03B109A0, DWordAcc, Lock, Preserve)
14491         {
14492             Offset (0xBC), 
14493             A105,   32
14494         }
14495 
14496         BankField (A111, A112, 0x03B109A4, DWordAcc, Lock, Preserve)
14497         {
14498             Offset (0xBC), 
14499             A106,   32
14500         }
14501 
14502         BankField (A111, A112, 0x03B109A8, DWordAcc, Lock, Preserve)
14503         {
14504             Offset (0xBC), 
14505             A107,   32
14506         }
14507 
14508         BankField (A111, A112, 0x03B109AC, DWordAcc, Lock, Preserve)
14509         {
14510             Offset (0xBC), 
14511             A108,   32
14512         }
14513 
14514         BankField (A111, A112, 0x13B00084, DWordAcc, Lock, Preserve)
14515         {
14516             Offset (0xBC), 
14517             A089,   32
14518         }
14519 
14520         BankField (A111, A112, 0x11140280, DWordAcc, Lock, Preserve)
14521         {
14522             Offset (0xBC), 
14523             A090,   32
14524         }
14525 
14526         BankField (A111, A112, 0x11141280, DWordAcc, Lock, Preserve)
14527         {
14528             Offset (0xBC), 
14529             A091,   32
14530         }
14531 
14532         BankField (A111, A112, 0x11142280, DWordAcc, Lock, Preserve)
14533         {
14534             Offset (0xBC), 
14535             A092,   32
14536         }
14537 
14538         BankField (A111, A112, 0x11143280, DWordAcc, Lock, Preserve)
14539         {
14540             Offset (0xBC), 
14541             A093,   32
14542         }
14543 
14544         BankField (A111, A112, 0x11144280, DWordAcc, Lock, Preserve)
14545         {
14546             Offset (0xBC), 
14547             A094,   32
14548         }
14549 
14550         BankField (A111, A112, 0x11145280, DWordAcc, Lock, Preserve)
14551         {
14552             Offset (0xBC), 
14553             A095,   32
14554         }
14555 
14556         BankField (A111, A112, 0x11146280, DWordAcc, Lock, Preserve)
14557         {
14558             Offset (0xBC), 
14559             A096,   32
14560         }
14561 
14562         Method (A087, 2, NotSerialized)
14563         {
14564             If ((Arg0 == 0x00))
14565             {
14566                 Return (\_SB.AWR0.ABR0.A067 (Arg1))
14567             }
14568 
14569             If ((Arg0 == 0x01))
14570             {
14571                 Return (\_SB.AWR0.ABR1.A067 (Arg1))
14572             }
14573 
14574             If ((Arg0 == 0x02))
14575             {
14576                 Return (\_SB.AWR0.ABR2.A067 (Arg1))
14577             }
14578 
14579             If ((Arg0 == 0x03))
14580             {
14581                 Return (\_SB.AWR0.ABR3.A067 (Arg1))
14582             }
14583 
14584             If ((Arg0 == 0x04))
14585             {
14586                 Return (\_SB.AWR0.ABR4.A067 (Arg1))
14587             }
14588 
14589             If ((Arg0 == 0x05))
14590             {
14591                 Return (\_SB.AWR0.ABR5.A067 (Arg1))
14592             }
14593 
14594             If ((Arg0 == 0x06))
14595             {
14596                 Return (\_SB.AWR0.ABR6.A067 (Arg1))
14597             }
14598         }
14599 
14600         Method (A088, 2, NotSerialized)
14601         {
14602             If ((Arg1 == 0x01))
14603             {
14604                 If ((Arg0 == 0x00))
14605                 {
14606                     Local0 = 0x00090300
14607                 }
14608 
14609                 If ((Arg0 == 0x01))
14610                 {
14611                     Local0 = 0x000A0300
14612                 }
14613 
14614                 If ((Arg0 == 0x02))
14615                 {
14616                     Local0 = 0x000B0300
14617                 }
14618 
14619                 If ((Arg0 == 0x03))
14620                 {
14621                     Local0 = 0x000C0300
14622                 }
14623 
14624                 If ((Arg0 == 0x04))
14625                 {
14626                     Local0 = 0x000D0300
14627                 }
14628 
14629                 If ((Arg0 == 0x05))
14630                 {
14631                     Local0 = 0x000E0300
14632                 }
14633 
14634                 If ((Arg0 == 0x06))
14635                 {
14636                     Local0 = 0x000F0300
14637                 }
14638 
14639                 Local1 = A089 /* \_SB_.A089 */
14640                 Local1 &= 0xFF00FCFF
14641                 A089 = (Local0 | Local1)
14642                 Local1 = A089 /* \_SB_.A089 */
14643                 A089 = (0xFFFFFDFF & Local1)
14644             }
14645             ElseIf ((Arg1 == 0x00))
14646             {
14647                 If ((Arg0 == 0x00))
14648                 {
14649                     Local1 = A090 /* \_SB_.A090 */
14650                     A090 = (0x00400000 | Local1)
14651                     Local1 = A090 /* \_SB_.A090 */
14652                     A090 = (0xFFBFFFFF & Local1)
14653                 }
14654 
14655                 If ((Arg0 == 0x01))
14656                 {
14657                     Local1 = A091 /* \_SB_.A091 */
14658                     A091 = (0x00400000 | Local1)
14659                     Local1 = A091 /* \_SB_.A091 */
14660                     A091 = (0xFFBFFFFF & Local1)
14661                 }
14662 
14663                 If ((Arg0 == 0x02))
14664                 {
14665                     Local1 = A092 /* \_SB_.A092 */
14666                     A092 = (0x00400000 | Local1)
14667                     Local1 = A092 /* \_SB_.A092 */
14668                     A092 = (0xFFBFFFFF & Local1)
14669                 }
14670 
14671                 If ((Arg0 == 0x03))
14672                 {
14673                     Local1 = A093 /* \_SB_.A093 */
14674                     A093 = (0x00400000 | Local1)
14675                     Local1 = A093 /* \_SB_.A093 */
14676                     A093 = (0xFFBFFFFF & Local1)
14677                 }
14678 
14679                 If ((Arg0 == 0x04))
14680                 {
14681                     Local1 = A094 /* \_SB_.A094 */
14682                     A094 = (0x00400000 | Local1)
14683                     Local1 = A094 /* \_SB_.A094 */
14684                     A094 = (0xFFBFFFFF & Local1)
14685                 }
14686 
14687                 If ((Arg0 == 0x05))
14688                 {
14689                     Local1 = A095 /* \_SB_.A095 */
14690                     A095 = (0x00400000 | Local1)
14691                     Local1 = A095 /* \_SB_.A095 */
14692                     A095 = (0xFFBFFFFF & Local1)
14693                 }
14694 
14695                 If ((Arg0 == 0x06))
14696                 {
14697                     Local1 = A096 /* \_SB_.A096 */
14698                     A096 = (0x00400000 | Local1)
14699                     Local1 = A096 /* \_SB_.A096 */
14700                     A096 = (0xFFBFFFFF & Local1)
14701                 }
14702             }
14703         }
14704 
14705         Method (A004, 2, NotSerialized)
14706         {
14707             Local0 = 0x00
14708             While ((Local0 < 0x07))
14709             {
14710                 Local1 = A087 (Local0, Arg1)
14711                 If ((Local1 == 0x01))
14712                 {
14713                     A088 (Local0, Arg1)
14714                     Break
14715                 }
14716 
14717                 Local0++
14718             }
14719         }
14720 
14721         Method (A012, 2, Serialized)
14722         {
14723             CreateDWordField (Arg1, 0x00, A097)
14724             CreateDWordField (Arg1, 0x04, A098)
14725             CreateDWordField (Arg1, 0x08, A099)
14726             CreateDWordField (Arg1, 0x0C, A100)
14727             CreateDWordField (Arg1, 0x10, A101)
14728             CreateDWordField (Arg1, 0x14, A102)
14729             A103 = 0x00
14730             While ((A103 != 0x00)){}
14731             A071 = A097 /* \_SB_.A012.A097 */
14732             A104 = A098 /* \_SB_.A012.A098 */
14733             A105 = A099 /* \_SB_.A012.A099 */
14734             A106 = A100 /* \_SB_.A012.A100 */
14735             A107 = A101 /* \_SB_.A012.A101 */
14736             A108 = A102 /* \_SB_.A012.A102 */
14737             A109 = Arg0
14738             While ((A103 == 0x00)){}
14739         }
14740 
14741         Method (A082, 5, NotSerialized)
14742         {
14743             Local7 = Buffer (0x18){}
14744             CreateDWordField (Local7, 0x00, A006)
14745             CreateDWordField (Local7, 0x04, A007)
14746             CreateDWordField (Local7, 0x08, A008)
14747             CreateDWordField (Local7, 0x0C, A009)
14748             CreateDWordField (Local7, 0x10, A010)
14749             CreateDWordField (Local7, 0x14, A011)
14750             A006 = Arg0
14751             A007 = Arg1
14752             A008 = Arg2
14753             A009 = Arg3
14754             A012 (0x0A, Local7)
14755         }
14756 
14757         Method (A026, 1, Serialized)
14758         {
14759             CreateWordField (Arg0, 0x00, A110)
14760             Local7 = Buffer (0x18){}
14761             CreateDWordField (Local7, 0x00, A006)
14762             CreateDWordField (Local7, 0x04, A007)
14763             CreateDWordField (Local7, 0x08, A008)
14764             CreateDWordField (Local7, 0x0C, A009)
14765             CreateDWordField (Local7, 0x10, A010)
14766             CreateDWordField (Local7, 0x14, A011)
14767             Local0 = 0x02
14768             While ((Local0 < A110))
14769             {
14770                 Local1 = DerefOf (Arg0 [Local0])
14771                 Local0++
14772                 Local2 = DerefOf (Arg0 [Local0])
14773                 Local0++
14774                 Local2 |= (DerefOf (Arg0 [Local0]) << 0x08)
14775                 Local0++
14776                 Local2 |= (DerefOf (Arg0 [Local0]) << 0x10)
14777                 Local0++
14778                 Local2 |= (DerefOf (Arg0 [Local0]) << 0x18)
14779                 Local0++
14780                 A006 = 0x00
14781                 A007 = 0x00
14782                 A008 = 0x00
14783                 A009 = 0x00
14784                 A010 = 0x00
14785                 A011 = 0x00
14786                 If ((Local1 == 0x01))
14787                 {
14788                     A006 = Local2
14789                     A012 (0x1E, Local7)
14790                 }
14791 
14792                 If ((Local1 == 0x03))
14793                 {
14794                     A006 = Local2
14795                     A012 (0x1F, Local7)
14796                 }
14797 
14798                 If ((Local1 == 0x05))
14799                 {
14800                     A006 = Local2
14801                     A012 (0x1A, Local7)
14802                 }
14803 
14804                 If ((Local1 == 0x06))
14805                 {
14806                     A006 = Local2
14807                     A012 (0x1B, Local7)
14808                 }
14809 
14810                 If ((Local1 == 0x07))
14811                 {
14812                     A006 = Local2
14813                     A012 (0x1C, Local7)
14814                 }
14815 
14816                 If ((Local1 == 0x08))
14817                 {
14818                     A006 = Local2
14819                     A012 (0x1D, Local7)
14820                 }
14821 
14822                 If ((Local1 == 0x09))
14823                 {
14824                     A006 = Local2
14825                     A012 (0x26, Local7)
14826                 }
14827 
14828                 If ((Local1 == 0x0A))
14829                 {
14830                     A006 = Local2
14831                     A012 (0x27, Local7)
14832                 }
14833 
14834                 If ((Local1 == 0x0B))
14835                 {
14836                     A006 = Local2
14837                     A012 (0x20, Local7)
14838                 }
14839 
14840                 If ((Local1 == 0x0C))
14841                 {
14842                     A006 = Local2
14843                     A012 (0x22, Local7)
14844                 }
14845 
14846                 If ((Local1 == 0x0D))
14847                 {
14848                     A006 = Local2
14849                     A012 (0x24, Local7)
14850                 }
14851 
14852                 If ((Local1 == 0x0F))
14853                 {
14854                     A006 = Local2
14855                     A012 (0x25, Local7)
14856                 }
14857 
14858                 If ((DerefOf (\_SB.ADAT [0x08]) == 0x01))
14859                 {
14860                     If ((Local1 == 0x10))
14861                     {
14862                         If ((Local2 == 0x00))
14863                         {
14864                             A012 (0x2B, Local7)
14865                         }
14866                         Else
14867                         {
14868                             A012 (0x2A, Local7)
14869                         }
14870                     }
14871                 }
14872             }
14873         }
14874 
14875         Device (AWR0)
14876         {
14877             Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
14878             Name (_UID, 0x90)  // _UID: Unique ID
14879             Device (ABR0)
14880             {
14881                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
14882                 Name (_UID, 0x80)  // _UID: Unique ID
14883                 Name (AB12, 0x20)
14884                 Name (AB00, 0x00)
14885                 Name (AB01, 0x00)
14886                 Name (AB0E, 0x00)
14887                 Name (AB02, 0x00)
14888                 Name (AB03, 0x00)
14889                 Name (AB04, 0x00)
14890                 Name (AB05, 0x00)
14891                 Name (AB06, 0x00)
14892                 Name (AB07, 0x00)
14893                 Name (AB08, 0x00)
14894                 Name (AB09, 0x00)
14895                 Name (AB0A, 0x00)
14896                 Name (AB0B, 0x00)
14897                 Name (AB0C, 0x00)
14898                 Name (AB0D, 0x00)
14899                 OperationRegion (A072, SystemMemory, (AGRB + ((DerefOf (\_SB.ADAT [(AB12 + 0x0D)]
14900                     ) << 0x0F) | (DerefOf (\_SB.ADAT [(AB12 + 0x0E)]) << 0x0C
14901                     ))), 0x1000)
14902                 Field (A072, ByteAcc, NoLock, Preserve)
14903                 {
14904                     Offset (0x18), 
14905                     Offset (0x19), 
14906                     A065,   8, 
14907                     A066,   8, 
14908                     Offset (0x68), 
14909                     A073,   2, 
14910                         ,   2, 
14911                     A074,   1, 
14912                     A075,   1, 
14913                     Offset (0x6A), 
14914                         ,   11, 
14915                     A076,   1, 
14916                     Offset (0x88), 
14917                     A077,   4, 
14918                         ,   1, 
14919                     A078,   1
14920                 }
14921 
14922                 Name (AB10, 0x00)
14923                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
14924                 {
14925                     AB00 = DerefOf (\_SB.ADAT [(AB12 + 0x00)])
14926                     AB0E = DerefOf (\_SB.ADAT [(AB12 + 0x01)])
14927                     AB01 = DerefOf (\_SB.ADAT [(AB12 + 0x02)])
14928                     AB02 = DerefOf (\_SB.ADAT [(AB12 + 0x03)])
14929                     AB03 = DerefOf (\_SB.ADAT [(AB12 + 0x04)])
14930                     AB04 = DerefOf (\_SB.ADAT [(AB12 + 0x05)])
14931                     AB05 = DerefOf (\_SB.ADAT [(AB12 + 0x06)])
14932                     AB06 = DerefOf (\_SB.ADAT [(AB12 + 0x07)])
14933                     AB07 = DerefOf (\_SB.ADAT [(AB12 + 0x08)])
14934                     AB08 = DerefOf (\_SB.ADAT [(AB12 + 0x09)])
14935                     AB09 = DerefOf (\_SB.ADAT [(AB12 + 0x0A)])
14936                     AB0A = DerefOf (\_SB.ADAT [(AB12 + 0x0B)])
14937                     AB0B = DerefOf (\_SB.ADAT [(AB12 + 0x0C)])
14938                     AB0C = DerefOf (\_SB.ADAT [(AB12 + 0x0D)])
14939                     AB0D = DerefOf (\_SB.ADAT [(AB12 + 0x0E)])
14940                 }
14941 
14942                 Method (A060, 0, NotSerialized)
14943                 {
14944                     Local0 = A042 ()
14945                     If ((Local0 == 0x01))
14946                     {
14947                         Return (AB01) /* \_SB_.AWR0.ABR0.AB01 */
14948                     }
14949 
14950                     If ((Local0 == 0x00))
14951                     {
14952                         Return (AB0E) /* \_SB_.AWR0.ABR0.AB0E */
14953                     }
14954                 }
14955 
14956                 Method (A055, 0, NotSerialized)
14957                 {
14958                     If ((AB10 != 0x00))
14959                     {
14960                         If ((AB10 == 0x01))
14961                         {
14962                             Return (0x01)
14963                         }
14964                     }
14965 
14966                     Return (0x00)
14967                 }
14968 
14969                 Method (A061, 0, NotSerialized)
14970                 {
14971                     If ((AB05 != 0x00))
14972                     {
14973                         Return (AB05) /* \_SB_.AWR0.ABR0.AB05 */
14974                     }
14975 
14976                     If ((AB10 > 0x01))
14977                     {
14978                         Return ((AB10 - 0x01))
14979                     }
14980 
14981                     Return (0x00)
14982                 }
14983 
14984                 Method (A054, 0, NotSerialized)
14985                 {
14986                     If ((\_SB.AP05 == 0x00))
14987                     {
14988                         If ((AB05 != 0x00))
14989                         {
14990                             Return (AB05) /* \_SB_.AWR0.ABR0.AB05 */
14991                         }
14992 
14993                         Return (AB0E) /* \_SB_.AWR0.ABR0.AB0E */
14994                     }
14995 
14996                     Local0 = A061 ()
14997                     If ((Local0 != 0x00))
14998                     {
14999                         If ((Local0 > AB00))
15000                         {
15001                             Return (AB00) /* \_SB_.AWR0.ABR0.AB00 */
15002                         }
15003                         Else
15004                         {
15005                             Return (Local0)
15006                         }
15007                     }
15008 
15009                     Local0 = A060 ()
15010                     If ((\_SB.AP03 != 0x00))
15011                     {
15012                         If ((\_SB.AP03 < Local0))
15013                         {
15014                             Return (\_SB.AP03)
15015                         }
15016                     }
15017 
15018                     Return (Local0)
15019                 }
15020 
15021                 Method (A053, 0, NotSerialized)
15022                 {
15023                     Return (AB02) /* \_SB_.AWR0.ABR0.AB02 */
15024                 }
15025 
15026                 Method (A056, 0, NotSerialized)
15027                 {
15028                     Return (AB00) /* \_SB_.AWR0.ABR0.AB00 */
15029                 }
15030 
15031                 Method (A052, 1, NotSerialized)
15032                 {
15033                     AB02 = Arg0
15034                     A062 (Arg0)
15035                     If ((AB10 != 0x00)){}
15036                     Else
15037                     {
15038                     }
15039 
15040                     A063 (0x00)
15041                     Name (A064, 0x00)
15042                     A063 (0x01)
15043                 }
15044 
15045                 Method (A057, 1, NotSerialized)
15046                 {
15047                     AB10 = Arg0
15048                 }
15049 
15050                 Method (A058, 1, NotSerialized)
15051                 {
15052                     Local0 = (Arg0 >> 0x08)
15053                     If (((Local0 >= A065) && (Local0 <= A066)))
15054                     {
15055                         Return (0x01)
15056                     }
15057 
15058                     Return (0x00)
15059                 }
15060 
15061                 Method (A067, 1, NotSerialized)
15062                 {
15063                     Local0 = (AB0D | (AB0C << 0x03))
15064                     If ((Arg0 == Local0))
15065                     {
15066                         Return (0x01)
15067                     }
15068 
15069                     Return (0x00)
15070                 }
15071 
15072                 Method (A059, 0, NotSerialized)
15073                 {
15074                     AB10 = 0x00
15075                 }
15076 
15077                 Method (A062, 1, NotSerialized)
15078                 {
15079                     If ((Arg0 >= 0x02)){}
15080                     If ((Arg0 >= 0x03)){}
15081                     If ((Arg0 == 0x01))
15082                     {
15083                         If ((AB04 == 0x01)){}
15084                     }
15085                     Else
15086                     {
15087                     }
15088                 }
15089 
15090                 Method (A068, 0, NotSerialized)
15091                 {
15092                     Local0 = 0x00
15093                     Local1 = A069 (Local0, 0x00)
15094                     Local2 = A069 (Local0, 0x08)
15095                     If ((Local1 != 0xFFFFFFFF))
15096                     {
15097                         Local3 = ((Local1 >> 0x10) & 0xFFFF)
15098                         Local1 &= 0xFFFF
15099                         Local2 = ((Local2 >> 0x18) & 0xFF)
15100                         If ((Local2 == 0x03))
15101                         {
15102                             If (((Local1 == 0x1002) || (Local1 == 0x1022)))
15103                             {
15104                                 Local0 = 0x10
15105                                 While ((Local0 < 0x30))
15106                                 {
15107                                     Local4 = A069 (0x00, Local0)
15108                                     Local5 = 0x00
15109                                     If (((Local4 && 0x09) == 0x00))
15110                                     {
15111                                         If (((Local4 && 0x06) == 0x04))
15112                                         {
15113                                             Local0 += 0x04
15114                                             Local5 = A069 (0x00, Local0)
15115                                         }
15116 
15117                                         A070 (0x34, Local3, 0x00)
15118                                         Local6 = A071 /* \_SB_.A071 */
15119                                         If ((Local6 == 0x01))
15120                                         {
15121                                             A070 (0x28, (Local4 & 0xFFFFFFF0), 0x00)
15122                                             A070 (0x29, Local5, 0x00)
15123                                             A070 (0x05, 0x00, (0x01 << 0x0A))
15124                                             A070 (0x2A, 0x00, 0x00)
15125                                             Break
15126                                         }
15127                                     }
15128                                     ElseIf (((Local4 && 0x06) == 0x04))
15129                                     {
15130                                         Local0 += 0x04
15131                                     }
15132 
15133                                     Local0 += 0x04
15134                                 }
15135                             }
15136                         }
15137                     }
15138                 }
15139 
15140                 Method (A083, 2, NotSerialized)
15141                 {
15142                     If ((A069 (Arg0, 0x00) == 0xFFFFFFFF))
15143                     {
15144                         Return (0x00)
15145                     }
15146 
15147                     Local0 = A069 (Arg0, 0x34)
15148                     While (0x01)
15149                     {
15150                         Local1 = A069 (Arg0, (Local0 & 0xFF))
15151                         If (((Local1 & 0xFF) == Arg1))
15152                         {
15153                             Return ((Local0 & 0xFF))
15154                         }
15155 
15156                         Local0 = ((Local1 >> 0x08) & 0xFF)
15157                         If ((Local0 == 0x00))
15158                         {
15159                             Return (Local0)
15160                         }
15161                     }
15162                 }
15163 
15164                 Name (AESP, Package (0x08)
15165                 {
15166                     0x00, 
15167                     0x00, 
15168                     0x00, 
15169                     0x00, 
15170                     0x00, 
15171                     0x00, 
15172                     0x00, 
15173                     0x00
15174                 })
15175                 Method (A063, 1, NotSerialized)
15176                 {
15177                     Local0 = 0x00
15178                     If ((A069 (Local0, 0x00) != 0xFFFFFFFF))
15179                     {
15180                         Local1 = (A069 (Local0, 0x08) & 0x80)
15181                         If ((Local1 == 0x80))
15182                         {
15183                             Local7 = 0x07
15184                         }
15185                         Else
15186                         {
15187                             Local7 = 0x00
15188                         }
15189 
15190                         While ((Local0 <= Local7))
15191                         {
15192                             Local1 = A083 (Local0, 0x10)
15193                             If ((Local1 == 0x00))
15194                             {
15195                                 Local0++
15196                                 Continue
15197                             }
15198 
15199                             If ((Arg0 == 0x00))
15200                             {
15201                                 Local2 = A069 (Local0, (Local1 + 0x10))
15202                                 A081 (Local0, (Local1 + 0x10), (Local2 & ~0x03))
15203                                 AESP [Local0] = Local2
15204                             }
15205                             Else
15206                             {
15207                                 Local2 = DerefOf (AESP [Local0])
15208                                 A081 (Local0, (Local1 + 0x10), Local2)
15209                             }
15210 
15211                             Local0++
15212                         }
15213                     }
15214                     Else
15215                     {
15216                     }
15217                 }
15218 
15219                 Method (A081, 3, Serialized)
15220                 {
15221                     Local0 = (AGRB + (A065 << 0x14))
15222                     Local0 += (Arg0 << 0x0C)
15223                     Local0 += Arg1
15224                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
15225                     Field (ADRB, DWordAcc, NoLock, Preserve)
15226                     {
15227                         ADRR,   32
15228                     }
15229 
15230                     ADRR = Arg2
15231                 }
15232 
15233                 Method (A069, 2, Serialized)
15234                 {
15235                     Local0 = (AGRB + (A065 << 0x14))
15236                     Local0 += (Arg0 << 0x0C)
15237                     Local0 += Arg1
15238                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
15239                     Field (ADRB, DWordAcc, NoLock, Preserve)
15240                     {
15241                         ADRR,   32
15242                     }
15243 
15244                     Return (ADRR) /* \_SB_.AWR0.ABR0.A069.ADRR */
15245                 }
15246 
15247                 Method (A079, 1, NotSerialized)
15248                 {
15249                     If ((AB0B != 0x01))
15250                     {
15251                         Return (0x00)
15252                     }
15253 
15254                     Return (A067 (Arg0))
15255                 }
15256 
15257                 Method (A080, 1, NotSerialized)
15258                 {
15259                     Name (A064, 0x00)
15260                     Local2 = 0x00
15261                     A064 = A073 /* \_SB_.AWR0.ABR0.A073 */
15262                     Local1 = (AB0D | (AB0C << 0x03))
15263                     If ((Arg0 == 0x01))
15264                     {
15265                         A074 = 0x00
15266                         Local0 = 0x01
15267                     }
15268                     Else
15269                     {
15270                         A063 (0x00)
15271                         Local0 = A069 (0x00, 0x04)
15272                         If ((Local0 != 0xFFFFFFFF))
15273                         {
15274                             A081 (0x00, 0x04, (Local0 & ~0x04))
15275                             Local0 = A069 (0x01, 0x04)
15276                             If ((Local0 != 0xFFFFFFFF))
15277                             {
15278                                 A081 (0x01, 0x04, (Local0 & ~0x04))
15279                             }
15280                         }
15281 
15282                         Local2 = 0x00
15283                         A074 = 0x01
15284                         Local0 = 0x05
15285                     }
15286 
15287                     A073 = 0x00
15288                     While ((Local0 != 0x08))
15289                     {
15290                         If ((Local0 == 0x01))
15291                         {
15292                             A082 (0x29, Local1, 0x00, 0x00, 0x00)
15293                             Local2 = 0x01
15294                             Local0 = 0x08
15295                         }
15296 
15297                         If ((Local0 == 0x05))
15298                         {
15299                             A069 (0x00, 0x00)
15300                             A082 (0x2A, Local1, 0x00, 0x00, 0x00)
15301                             AB05 = 0x00
15302                             AB04 = 0x00
15303                             AB10 = 0x00
15304                             Local2 = 0x00
15305                             Local0 = 0x08
15306                         }
15307                     }
15308 
15309                     A073 = A064 /* \_SB_.AWR0.ABR0.A080.A064 */
15310                     If ((A064 != 0x00))
15311                     {
15312                         A063 (0x01)
15313                     }
15314 
15315                     Return (Local2)
15316                 }
15317             }
15318 
15319             Device (ABR1)
15320             {
15321                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
15322                 Name (_UID, 0x81)  // _UID: Unique ID
15323                 Name (AB12, 0x34)
15324                 Name (AB00, 0x00)
15325                 Name (AB01, 0x00)
15326                 Name (AB0E, 0x00)
15327                 Name (AB02, 0x00)
15328                 Name (AB03, 0x00)
15329                 Name (AB04, 0x00)
15330                 Name (AB05, 0x00)
15331                 Name (AB06, 0x00)
15332                 Name (AB07, 0x00)
15333                 Name (AB08, 0x00)
15334                 Name (AB09, 0x00)
15335                 Name (AB0A, 0x00)
15336                 Name (AB0B, 0x00)
15337                 Name (AB0C, 0x00)
15338                 Name (AB0D, 0x00)
15339                 OperationRegion (A072, SystemMemory, (AGRB + ((DerefOf (\_SB.ADAT [(AB12 + 0x0D)]
15340                     ) << 0x0F) | (DerefOf (\_SB.ADAT [(AB12 + 0x0E)]) << 0x0C
15341                     ))), 0x1000)
15342                 Field (A072, ByteAcc, NoLock, Preserve)
15343                 {
15344                     Offset (0x18), 
15345                     Offset (0x19), 
15346                     A065,   8, 
15347                     A066,   8, 
15348                     Offset (0x68), 
15349                     A073,   2, 
15350                         ,   2, 
15351                     A074,   1, 
15352                     A075,   1, 
15353                     Offset (0x6A), 
15354                         ,   11, 
15355                     A076,   1, 
15356                     Offset (0x88), 
15357                     A077,   4, 
15358                         ,   1, 
15359                     A078,   1
15360                 }
15361 
15362                 Name (AB10, 0x00)
15363                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
15364                 {
15365                     AB00 = DerefOf (\_SB.ADAT [(AB12 + 0x00)])
15366                     AB0E = DerefOf (\_SB.ADAT [(AB12 + 0x01)])
15367                     AB01 = DerefOf (\_SB.ADAT [(AB12 + 0x02)])
15368                     AB02 = DerefOf (\_SB.ADAT [(AB12 + 0x03)])
15369                     AB03 = DerefOf (\_SB.ADAT [(AB12 + 0x04)])
15370                     AB04 = DerefOf (\_SB.ADAT [(AB12 + 0x05)])
15371                     AB05 = DerefOf (\_SB.ADAT [(AB12 + 0x06)])
15372                     AB06 = DerefOf (\_SB.ADAT [(AB12 + 0x07)])
15373                     AB07 = DerefOf (\_SB.ADAT [(AB12 + 0x08)])
15374                     AB08 = DerefOf (\_SB.ADAT [(AB12 + 0x09)])
15375                     AB09 = DerefOf (\_SB.ADAT [(AB12 + 0x0A)])
15376                     AB0A = DerefOf (\_SB.ADAT [(AB12 + 0x0B)])
15377                     AB0B = DerefOf (\_SB.ADAT [(AB12 + 0x0C)])
15378                     AB0C = DerefOf (\_SB.ADAT [(AB12 + 0x0D)])
15379                     AB0D = DerefOf (\_SB.ADAT [(AB12 + 0x0E)])
15380                 }
15381 
15382                 Method (A060, 0, NotSerialized)
15383                 {
15384                     Local0 = A042 ()
15385                     If ((Local0 == 0x01))
15386                     {
15387                         Return (AB01) /* \_SB_.AWR0.ABR1.AB01 */
15388                     }
15389 
15390                     If ((Local0 == 0x00))
15391                     {
15392                         Return (AB0E) /* \_SB_.AWR0.ABR1.AB0E */
15393                     }
15394                 }
15395 
15396                 Method (A055, 0, NotSerialized)
15397                 {
15398                     If ((AB10 != 0x00))
15399                     {
15400                         If ((AB10 == 0x01))
15401                         {
15402                             Return (0x01)
15403                         }
15404                     }
15405 
15406                     Return (0x00)
15407                 }
15408 
15409                 Method (A061, 0, NotSerialized)
15410                 {
15411                     If ((AB05 != 0x00))
15412                     {
15413                         Return (AB05) /* \_SB_.AWR0.ABR1.AB05 */
15414                     }
15415 
15416                     If ((AB10 > 0x01))
15417                     {
15418                         Return ((AB10 - 0x01))
15419                     }
15420 
15421                     Return (0x00)
15422                 }
15423 
15424                 Method (A054, 0, NotSerialized)
15425                 {
15426                     If ((\_SB.AP05 == 0x00))
15427                     {
15428                         If ((AB05 != 0x00))
15429                         {
15430                             Return (AB05) /* \_SB_.AWR0.ABR1.AB05 */
15431                         }
15432 
15433                         Return (AB0E) /* \_SB_.AWR0.ABR1.AB0E */
15434                     }
15435 
15436                     Local0 = A061 ()
15437                     If ((Local0 != 0x00))
15438                     {
15439                         If ((Local0 > AB00))
15440                         {
15441                             Return (AB00) /* \_SB_.AWR0.ABR1.AB00 */
15442                         }
15443                         Else
15444                         {
15445                             Return (Local0)
15446                         }
15447                     }
15448 
15449                     Local0 = A060 ()
15450                     If ((\_SB.AP03 != 0x00))
15451                     {
15452                         If ((\_SB.AP03 < Local0))
15453                         {
15454                             Return (\_SB.AP03)
15455                         }
15456                     }
15457 
15458                     Return (Local0)
15459                 }
15460 
15461                 Method (A053, 0, NotSerialized)
15462                 {
15463                     Return (AB02) /* \_SB_.AWR0.ABR1.AB02 */
15464                 }
15465 
15466                 Method (A056, 0, NotSerialized)
15467                 {
15468                     Return (AB00) /* \_SB_.AWR0.ABR1.AB00 */
15469                 }
15470 
15471                 Method (A052, 1, NotSerialized)
15472                 {
15473                     AB02 = Arg0
15474                     A062 (Arg0)
15475                     If ((AB10 != 0x00)){}
15476                     Else
15477                     {
15478                     }
15479 
15480                     A063 (0x00)
15481                     Name (A064, 0x00)
15482                     A063 (0x01)
15483                 }
15484 
15485                 Method (A057, 1, NotSerialized)
15486                 {
15487                     AB10 = Arg0
15488                 }
15489 
15490                 Method (A058, 1, NotSerialized)
15491                 {
15492                     Local0 = (Arg0 >> 0x08)
15493                     If (((Local0 >= A065) && (Local0 <= A066)))
15494                     {
15495                         Return (0x01)
15496                     }
15497 
15498                     Return (0x00)
15499                 }
15500 
15501                 Method (A067, 1, NotSerialized)
15502                 {
15503                     Local0 = (AB0D | (AB0C << 0x03))
15504                     If ((Arg0 == Local0))
15505                     {
15506                         Return (0x01)
15507                     }
15508 
15509                     Return (0x00)
15510                 }
15511 
15512                 Method (A059, 0, NotSerialized)
15513                 {
15514                     AB10 = 0x00
15515                 }
15516 
15517                 Method (A062, 1, NotSerialized)
15518                 {
15519                     If ((Arg0 >= 0x02)){}
15520                     If ((Arg0 >= 0x03)){}
15521                     If ((Arg0 == 0x01))
15522                     {
15523                         If ((AB04 == 0x01)){}
15524                     }
15525                     Else
15526                     {
15527                     }
15528                 }
15529 
15530                 Method (A068, 0, NotSerialized)
15531                 {
15532                     Local0 = 0x00
15533                     Local1 = A069 (Local0, 0x00)
15534                     Local2 = A069 (Local0, 0x08)
15535                     If ((Local1 != 0xFFFFFFFF))
15536                     {
15537                         Local3 = ((Local1 >> 0x10) & 0xFFFF)
15538                         Local1 &= 0xFFFF
15539                         Local2 = ((Local2 >> 0x18) & 0xFF)
15540                         If ((Local2 == 0x03))
15541                         {
15542                             If (((Local1 == 0x1002) || (Local1 == 0x1022)))
15543                             {
15544                                 Local0 = 0x10
15545                                 While ((Local0 < 0x30))
15546                                 {
15547                                     Local4 = A069 (0x00, Local0)
15548                                     Local5 = 0x00
15549                                     If (((Local4 && 0x09) == 0x00))
15550                                     {
15551                                         If (((Local4 && 0x06) == 0x04))
15552                                         {
15553                                             Local0 += 0x04
15554                                             Local5 = A069 (0x00, Local0)
15555                                         }
15556 
15557                                         A070 (0x34, Local3, 0x00)
15558                                         Local6 = A071 /* \_SB_.A071 */
15559                                         If ((Local6 == 0x01))
15560                                         {
15561                                             A070 (0x28, (Local4 & 0xFFFFFFF0), 0x00)
15562                                             A070 (0x29, Local5, 0x00)
15563                                             A070 (0x05, 0x00, (0x01 << 0x0A))
15564                                             A070 (0x2A, 0x00, 0x00)
15565                                             Break
15566                                         }
15567                                     }
15568                                     ElseIf (((Local4 && 0x06) == 0x04))
15569                                     {
15570                                         Local0 += 0x04
15571                                     }
15572 
15573                                     Local0 += 0x04
15574                                 }
15575                             }
15576                         }
15577                     }
15578                 }
15579 
15580                 Method (A083, 2, NotSerialized)
15581                 {
15582                     If ((A069 (Arg0, 0x00) == 0xFFFFFFFF))
15583                     {
15584                         Return (0x00)
15585                     }
15586 
15587                     Local0 = A069 (Arg0, 0x34)
15588                     While (0x01)
15589                     {
15590                         Local1 = A069 (Arg0, (Local0 & 0xFF))
15591                         If (((Local1 & 0xFF) == Arg1))
15592                         {
15593                             Return ((Local0 & 0xFF))
15594                         }
15595 
15596                         Local0 = ((Local1 >> 0x08) & 0xFF)
15597                         If ((Local0 == 0x00))
15598                         {
15599                             Return (Local0)
15600                         }
15601                     }
15602                 }
15603 
15604                 Name (AESP, Package (0x08)
15605                 {
15606                     0x00, 
15607                     0x00, 
15608                     0x00, 
15609                     0x00, 
15610                     0x00, 
15611                     0x00, 
15612                     0x00, 
15613                     0x00
15614                 })
15615                 Method (A063, 1, NotSerialized)
15616                 {
15617                     Local0 = 0x00
15618                     If ((A069 (Local0, 0x00) != 0xFFFFFFFF))
15619                     {
15620                         Local1 = (A069 (Local0, 0x08) & 0x80)
15621                         If ((Local1 == 0x80))
15622                         {
15623                             Local7 = 0x07
15624                         }
15625                         Else
15626                         {
15627                             Local7 = 0x00
15628                         }
15629 
15630                         While ((Local0 <= Local7))
15631                         {
15632                             Local1 = A083 (Local0, 0x10)
15633                             If ((Local1 == 0x00))
15634                             {
15635                                 Local0++
15636                                 Continue
15637                             }
15638 
15639                             If ((Arg0 == 0x00))
15640                             {
15641                                 Local2 = A069 (Local0, (Local1 + 0x10))
15642                                 A081 (Local0, (Local1 + 0x10), (Local2 & ~0x03))
15643                                 AESP [Local0] = Local2
15644                             }
15645                             Else
15646                             {
15647                                 Local2 = DerefOf (AESP [Local0])
15648                                 A081 (Local0, (Local1 + 0x10), Local2)
15649                             }
15650 
15651                             Local0++
15652                         }
15653                     }
15654                     Else
15655                     {
15656                     }
15657                 }
15658 
15659                 Method (A081, 3, Serialized)
15660                 {
15661                     Local0 = (AGRB + (A065 << 0x14))
15662                     Local0 += (Arg0 << 0x0C)
15663                     Local0 += Arg1
15664                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
15665                     Field (ADRB, DWordAcc, NoLock, Preserve)
15666                     {
15667                         ADRR,   32
15668                     }
15669 
15670                     ADRR = Arg2
15671                 }
15672 
15673                 Method (A069, 2, Serialized)
15674                 {
15675                     Local0 = (AGRB + (A065 << 0x14))
15676                     Local0 += (Arg0 << 0x0C)
15677                     Local0 += Arg1
15678                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
15679                     Field (ADRB, DWordAcc, NoLock, Preserve)
15680                     {
15681                         ADRR,   32
15682                     }
15683 
15684                     Return (ADRR) /* \_SB_.AWR0.ABR1.A069.ADRR */
15685                 }
15686 
15687                 Method (A079, 1, NotSerialized)
15688                 {
15689                     If ((AB0B != 0x01))
15690                     {
15691                         Return (0x00)
15692                     }
15693 
15694                     Return (A067 (Arg0))
15695                 }
15696 
15697                 Method (A080, 1, NotSerialized)
15698                 {
15699                     Name (A064, 0x00)
15700                     Local2 = 0x00
15701                     A064 = A073 /* \_SB_.AWR0.ABR1.A073 */
15702                     Local1 = (AB0D | (AB0C << 0x03))
15703                     If ((Arg0 == 0x01))
15704                     {
15705                         A074 = 0x00
15706                         Local0 = 0x01
15707                     }
15708                     Else
15709                     {
15710                         A063 (0x00)
15711                         Local0 = A069 (0x00, 0x04)
15712                         If ((Local0 != 0xFFFFFFFF))
15713                         {
15714                             A081 (0x00, 0x04, (Local0 & ~0x04))
15715                             Local0 = A069 (0x01, 0x04)
15716                             If ((Local0 != 0xFFFFFFFF))
15717                             {
15718                                 A081 (0x01, 0x04, (Local0 & ~0x04))
15719                             }
15720                         }
15721 
15722                         Local2 = 0x00
15723                         A074 = 0x01
15724                         Local0 = 0x05
15725                     }
15726 
15727                     A073 = 0x00
15728                     While ((Local0 != 0x08))
15729                     {
15730                         If ((Local0 == 0x01))
15731                         {
15732                             A082 (0x29, Local1, 0x00, 0x00, 0x00)
15733                             Local2 = 0x01
15734                             Local0 = 0x08
15735                         }
15736 
15737                         If ((Local0 == 0x05))
15738                         {
15739                             A069 (0x00, 0x00)
15740                             A082 (0x2A, Local1, 0x00, 0x00, 0x00)
15741                             AB05 = 0x00
15742                             AB04 = 0x00
15743                             AB10 = 0x00
15744                             Local2 = 0x00
15745                             Local0 = 0x08
15746                         }
15747                     }
15748 
15749                     A073 = A064 /* \_SB_.AWR0.ABR1.A080.A064 */
15750                     If ((A064 != 0x00))
15751                     {
15752                         A063 (0x01)
15753                     }
15754 
15755                     Return (Local2)
15756                 }
15757             }
15758 
15759             Device (ABR2)
15760             {
15761                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
15762                 Name (_UID, 0x82)  // _UID: Unique ID
15763                 Name (AB12, 0x48)
15764                 Name (AB00, 0x00)
15765                 Name (AB01, 0x00)
15766                 Name (AB0E, 0x00)
15767                 Name (AB02, 0x00)
15768                 Name (AB03, 0x00)
15769                 Name (AB04, 0x00)
15770                 Name (AB05, 0x00)
15771                 Name (AB06, 0x00)
15772                 Name (AB07, 0x00)
15773                 Name (AB08, 0x00)
15774                 Name (AB09, 0x00)
15775                 Name (AB0A, 0x00)
15776                 Name (AB0B, 0x00)
15777                 Name (AB0C, 0x00)
15778                 Name (AB0D, 0x00)
15779                 OperationRegion (A072, SystemMemory, (AGRB + ((DerefOf (\_SB.ADAT [(AB12 + 0x0D)]
15780                     ) << 0x0F) | (DerefOf (\_SB.ADAT [(AB12 + 0x0E)]) << 0x0C
15781                     ))), 0x1000)
15782                 Field (A072, ByteAcc, NoLock, Preserve)
15783                 {
15784                     Offset (0x18), 
15785                     Offset (0x19), 
15786                     A065,   8, 
15787                     A066,   8, 
15788                     Offset (0x68), 
15789                     A073,   2, 
15790                         ,   2, 
15791                     A074,   1, 
15792                     A075,   1, 
15793                     Offset (0x6A), 
15794                         ,   11, 
15795                     A076,   1, 
15796                     Offset (0x88), 
15797                     A077,   4, 
15798                         ,   1, 
15799                     A078,   1
15800                 }
15801 
15802                 Name (AB10, 0x00)
15803                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
15804                 {
15805                     AB00 = DerefOf (\_SB.ADAT [(AB12 + 0x00)])
15806                     AB0E = DerefOf (\_SB.ADAT [(AB12 + 0x01)])
15807                     AB01 = DerefOf (\_SB.ADAT [(AB12 + 0x02)])
15808                     AB02 = DerefOf (\_SB.ADAT [(AB12 + 0x03)])
15809                     AB03 = DerefOf (\_SB.ADAT [(AB12 + 0x04)])
15810                     AB04 = DerefOf (\_SB.ADAT [(AB12 + 0x05)])
15811                     AB05 = DerefOf (\_SB.ADAT [(AB12 + 0x06)])
15812                     AB06 = DerefOf (\_SB.ADAT [(AB12 + 0x07)])
15813                     AB07 = DerefOf (\_SB.ADAT [(AB12 + 0x08)])
15814                     AB08 = DerefOf (\_SB.ADAT [(AB12 + 0x09)])
15815                     AB09 = DerefOf (\_SB.ADAT [(AB12 + 0x0A)])
15816                     AB0A = DerefOf (\_SB.ADAT [(AB12 + 0x0B)])
15817                     AB0B = DerefOf (\_SB.ADAT [(AB12 + 0x0C)])
15818                     AB0C = DerefOf (\_SB.ADAT [(AB12 + 0x0D)])
15819                     AB0D = DerefOf (\_SB.ADAT [(AB12 + 0x0E)])
15820                 }
15821 
15822                 Method (A060, 0, NotSerialized)
15823                 {
15824                     Local0 = A042 ()
15825                     If ((Local0 == 0x01))
15826                     {
15827                         Return (AB01) /* \_SB_.AWR0.ABR2.AB01 */
15828                     }
15829 
15830                     If ((Local0 == 0x00))
15831                     {
15832                         Return (AB0E) /* \_SB_.AWR0.ABR2.AB0E */
15833                     }
15834                 }
15835 
15836                 Method (A055, 0, NotSerialized)
15837                 {
15838                     If ((AB10 != 0x00))
15839                     {
15840                         If ((AB10 == 0x01))
15841                         {
15842                             Return (0x01)
15843                         }
15844                     }
15845 
15846                     Return (0x00)
15847                 }
15848 
15849                 Method (A061, 0, NotSerialized)
15850                 {
15851                     If ((AB05 != 0x00))
15852                     {
15853                         Return (AB05) /* \_SB_.AWR0.ABR2.AB05 */
15854                     }
15855 
15856                     If ((AB10 > 0x01))
15857                     {
15858                         Return ((AB10 - 0x01))
15859                     }
15860 
15861                     Return (0x00)
15862                 }
15863 
15864                 Method (A054, 0, NotSerialized)
15865                 {
15866                     If ((\_SB.AP05 == 0x00))
15867                     {
15868                         If ((AB05 != 0x00))
15869                         {
15870                             Return (AB05) /* \_SB_.AWR0.ABR2.AB05 */
15871                         }
15872 
15873                         Return (AB0E) /* \_SB_.AWR0.ABR2.AB0E */
15874                     }
15875 
15876                     Local0 = A061 ()
15877                     If ((Local0 != 0x00))
15878                     {
15879                         If ((Local0 > AB00))
15880                         {
15881                             Return (AB00) /* \_SB_.AWR0.ABR2.AB00 */
15882                         }
15883                         Else
15884                         {
15885                             Return (Local0)
15886                         }
15887                     }
15888 
15889                     Local0 = A060 ()
15890                     If ((\_SB.AP03 != 0x00))
15891                     {
15892                         If ((\_SB.AP03 < Local0))
15893                         {
15894                             Return (\_SB.AP03)
15895                         }
15896                     }
15897 
15898                     Return (Local0)
15899                 }
15900 
15901                 Method (A053, 0, NotSerialized)
15902                 {
15903                     Return (AB02) /* \_SB_.AWR0.ABR2.AB02 */
15904                 }
15905 
15906                 Method (A056, 0, NotSerialized)
15907                 {
15908                     Return (AB00) /* \_SB_.AWR0.ABR2.AB00 */
15909                 }
15910 
15911                 Method (A052, 1, NotSerialized)
15912                 {
15913                     AB02 = Arg0
15914                     A062 (Arg0)
15915                     If ((AB10 != 0x00)){}
15916                     Else
15917                     {
15918                     }
15919 
15920                     A063 (0x00)
15921                     Name (A064, 0x00)
15922                     A063 (0x01)
15923                 }
15924 
15925                 Method (A057, 1, NotSerialized)
15926                 {
15927                     AB10 = Arg0
15928                 }
15929 
15930                 Method (A058, 1, NotSerialized)
15931                 {
15932                     Local0 = (Arg0 >> 0x08)
15933                     If (((Local0 >= A065) && (Local0 <= A066)))
15934                     {
15935                         Return (0x01)
15936                     }
15937 
15938                     Return (0x00)
15939                 }
15940 
15941                 Method (A067, 1, NotSerialized)
15942                 {
15943                     Local0 = (AB0D | (AB0C << 0x03))
15944                     If ((Arg0 == Local0))
15945                     {
15946                         Return (0x01)
15947                     }
15948 
15949                     Return (0x00)
15950                 }
15951 
15952                 Method (A059, 0, NotSerialized)
15953                 {
15954                     AB10 = 0x00
15955                 }
15956 
15957                 Method (A062, 1, NotSerialized)
15958                 {
15959                     If ((Arg0 >= 0x02)){}
15960                     If ((Arg0 >= 0x03)){}
15961                     If ((Arg0 == 0x01))
15962                     {
15963                         If ((AB04 == 0x01)){}
15964                     }
15965                     Else
15966                     {
15967                     }
15968                 }
15969 
15970                 Method (A068, 0, NotSerialized)
15971                 {
15972                     Local0 = 0x00
15973                     Local1 = A069 (Local0, 0x00)
15974                     Local2 = A069 (Local0, 0x08)
15975                     If ((Local1 != 0xFFFFFFFF))
15976                     {
15977                         Local3 = ((Local1 >> 0x10) & 0xFFFF)
15978                         Local1 &= 0xFFFF
15979                         Local2 = ((Local2 >> 0x18) & 0xFF)
15980                         If ((Local2 == 0x03))
15981                         {
15982                             If (((Local1 == 0x1002) || (Local1 == 0x1022)))
15983                             {
15984                                 Local0 = 0x10
15985                                 While ((Local0 < 0x30))
15986                                 {
15987                                     Local4 = A069 (0x00, Local0)
15988                                     Local5 = 0x00
15989                                     If (((Local4 && 0x09) == 0x00))
15990                                     {
15991                                         If (((Local4 && 0x06) == 0x04))
15992                                         {
15993                                             Local0 += 0x04
15994                                             Local5 = A069 (0x00, Local0)
15995                                         }
15996 
15997                                         A070 (0x34, Local3, 0x00)
15998                                         Local6 = A071 /* \_SB_.A071 */
15999                                         If ((Local6 == 0x01))
16000                                         {
16001                                             A070 (0x28, (Local4 & 0xFFFFFFF0), 0x00)
16002                                             A070 (0x29, Local5, 0x00)
16003                                             A070 (0x05, 0x00, (0x01 << 0x0A))
16004                                             A070 (0x2A, 0x00, 0x00)
16005                                             Break
16006                                         }
16007                                     }
16008                                     ElseIf (((Local4 && 0x06) == 0x04))
16009                                     {
16010                                         Local0 += 0x04
16011                                     }
16012 
16013                                     Local0 += 0x04
16014                                 }
16015                             }
16016                         }
16017                     }
16018                 }
16019 
16020                 Method (A083, 2, NotSerialized)
16021                 {
16022                     If ((A069 (Arg0, 0x00) == 0xFFFFFFFF))
16023                     {
16024                         Return (0x00)
16025                     }
16026 
16027                     Local0 = A069 (Arg0, 0x34)
16028                     While (0x01)
16029                     {
16030                         Local1 = A069 (Arg0, (Local0 & 0xFF))
16031                         If (((Local1 & 0xFF) == Arg1))
16032                         {
16033                             Return ((Local0 & 0xFF))
16034                         }
16035 
16036                         Local0 = ((Local1 >> 0x08) & 0xFF)
16037                         If ((Local0 == 0x00))
16038                         {
16039                             Return (Local0)
16040                         }
16041                     }
16042                 }
16043 
16044                 Name (AESP, Package (0x08)
16045                 {
16046                     0x00, 
16047                     0x00, 
16048                     0x00, 
16049                     0x00, 
16050                     0x00, 
16051                     0x00, 
16052                     0x00, 
16053                     0x00
16054                 })
16055                 Method (A063, 1, NotSerialized)
16056                 {
16057                     Local0 = 0x00
16058                     If ((A069 (Local0, 0x00) != 0xFFFFFFFF))
16059                     {
16060                         Local1 = (A069 (Local0, 0x08) & 0x80)
16061                         If ((Local1 == 0x80))
16062                         {
16063                             Local7 = 0x07
16064                         }
16065                         Else
16066                         {
16067                             Local7 = 0x00
16068                         }
16069 
16070                         While ((Local0 <= Local7))
16071                         {
16072                             Local1 = A083 (Local0, 0x10)
16073                             If ((Local1 == 0x00))
16074                             {
16075                                 Local0++
16076                                 Continue
16077                             }
16078 
16079                             If ((Arg0 == 0x00))
16080                             {
16081                                 Local2 = A069 (Local0, (Local1 + 0x10))
16082                                 A081 (Local0, (Local1 + 0x10), (Local2 & ~0x03))
16083                                 AESP [Local0] = Local2
16084                             }
16085                             Else
16086                             {
16087                                 Local2 = DerefOf (AESP [Local0])
16088                                 A081 (Local0, (Local1 + 0x10), Local2)
16089                             }
16090 
16091                             Local0++
16092                         }
16093                     }
16094                     Else
16095                     {
16096                     }
16097                 }
16098 
16099                 Method (A081, 3, Serialized)
16100                 {
16101                     Local0 = (AGRB + (A065 << 0x14))
16102                     Local0 += (Arg0 << 0x0C)
16103                     Local0 += Arg1
16104                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
16105                     Field (ADRB, DWordAcc, NoLock, Preserve)
16106                     {
16107                         ADRR,   32
16108                     }
16109 
16110                     ADRR = Arg2
16111                 }
16112 
16113                 Method (A069, 2, Serialized)
16114                 {
16115                     Local0 = (AGRB + (A065 << 0x14))
16116                     Local0 += (Arg0 << 0x0C)
16117                     Local0 += Arg1
16118                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
16119                     Field (ADRB, DWordAcc, NoLock, Preserve)
16120                     {
16121                         ADRR,   32
16122                     }
16123 
16124                     Return (ADRR) /* \_SB_.AWR0.ABR2.A069.ADRR */
16125                 }
16126 
16127                 Method (A079, 1, NotSerialized)
16128                 {
16129                     If ((AB0B != 0x01))
16130                     {
16131                         Return (0x00)
16132                     }
16133 
16134                     Return (A067 (Arg0))
16135                 }
16136 
16137                 Method (A080, 1, NotSerialized)
16138                 {
16139                     Name (A064, 0x00)
16140                     Local2 = 0x00
16141                     A064 = A073 /* \_SB_.AWR0.ABR2.A073 */
16142                     Local1 = (AB0D | (AB0C << 0x03))
16143                     If ((Arg0 == 0x01))
16144                     {
16145                         A074 = 0x00
16146                         Local0 = 0x01
16147                     }
16148                     Else
16149                     {
16150                         A063 (0x00)
16151                         Local0 = A069 (0x00, 0x04)
16152                         If ((Local0 != 0xFFFFFFFF))
16153                         {
16154                             A081 (0x00, 0x04, (Local0 & ~0x04))
16155                             Local0 = A069 (0x01, 0x04)
16156                             If ((Local0 != 0xFFFFFFFF))
16157                             {
16158                                 A081 (0x01, 0x04, (Local0 & ~0x04))
16159                             }
16160                         }
16161 
16162                         Local2 = 0x00
16163                         A074 = 0x01
16164                         Local0 = 0x05
16165                     }
16166 
16167                     A073 = 0x00
16168                     While ((Local0 != 0x08))
16169                     {
16170                         If ((Local0 == 0x01))
16171                         {
16172                             A082 (0x29, Local1, 0x00, 0x00, 0x00)
16173                             Local2 = 0x01
16174                             Local0 = 0x08
16175                         }
16176 
16177                         If ((Local0 == 0x05))
16178                         {
16179                             A069 (0x00, 0x00)
16180                             A082 (0x2A, Local1, 0x00, 0x00, 0x00)
16181                             AB05 = 0x00
16182                             AB04 = 0x00
16183                             AB10 = 0x00
16184                             Local2 = 0x00
16185                             Local0 = 0x08
16186                         }
16187                     }
16188 
16189                     A073 = A064 /* \_SB_.AWR0.ABR2.A080.A064 */
16190                     If ((A064 != 0x00))
16191                     {
16192                         A063 (0x01)
16193                     }
16194 
16195                     Return (Local2)
16196                 }
16197             }
16198 
16199             Device (ABR3)
16200             {
16201                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
16202                 Name (_UID, 0x83)  // _UID: Unique ID
16203                 Name (AB12, 0x5C)
16204                 Name (AB00, 0x00)
16205                 Name (AB01, 0x00)
16206                 Name (AB0E, 0x00)
16207                 Name (AB02, 0x00)
16208                 Name (AB03, 0x00)
16209                 Name (AB04, 0x00)
16210                 Name (AB05, 0x00)
16211                 Name (AB06, 0x00)
16212                 Name (AB07, 0x00)
16213                 Name (AB08, 0x00)
16214                 Name (AB09, 0x00)
16215                 Name (AB0A, 0x00)
16216                 Name (AB0B, 0x00)
16217                 Name (AB0C, 0x00)
16218                 Name (AB0D, 0x00)
16219                 OperationRegion (A072, SystemMemory, (AGRB + ((DerefOf (\_SB.ADAT [(AB12 + 0x0D)]
16220                     ) << 0x0F) | (DerefOf (\_SB.ADAT [(AB12 + 0x0E)]) << 0x0C
16221                     ))), 0x1000)
16222                 Field (A072, ByteAcc, NoLock, Preserve)
16223                 {
16224                     Offset (0x18), 
16225                     Offset (0x19), 
16226                     A065,   8, 
16227                     A066,   8, 
16228                     Offset (0x68), 
16229                     A073,   2, 
16230                         ,   2, 
16231                     A074,   1, 
16232                     A075,   1, 
16233                     Offset (0x6A), 
16234                         ,   11, 
16235                     A076,   1, 
16236                     Offset (0x88), 
16237                     A077,   4, 
16238                         ,   1, 
16239                     A078,   1
16240                 }
16241 
16242                 Name (AB10, 0x00)
16243                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
16244                 {
16245                     AB00 = DerefOf (\_SB.ADAT [(AB12 + 0x00)])
16246                     AB0E = DerefOf (\_SB.ADAT [(AB12 + 0x01)])
16247                     AB01 = DerefOf (\_SB.ADAT [(AB12 + 0x02)])
16248                     AB02 = DerefOf (\_SB.ADAT [(AB12 + 0x03)])
16249                     AB03 = DerefOf (\_SB.ADAT [(AB12 + 0x04)])
16250                     AB04 = DerefOf (\_SB.ADAT [(AB12 + 0x05)])
16251                     AB05 = DerefOf (\_SB.ADAT [(AB12 + 0x06)])
16252                     AB06 = DerefOf (\_SB.ADAT [(AB12 + 0x07)])
16253                     AB07 = DerefOf (\_SB.ADAT [(AB12 + 0x08)])
16254                     AB08 = DerefOf (\_SB.ADAT [(AB12 + 0x09)])
16255                     AB09 = DerefOf (\_SB.ADAT [(AB12 + 0x0A)])
16256                     AB0A = DerefOf (\_SB.ADAT [(AB12 + 0x0B)])
16257                     AB0B = DerefOf (\_SB.ADAT [(AB12 + 0x0C)])
16258                     AB0C = DerefOf (\_SB.ADAT [(AB12 + 0x0D)])
16259                     AB0D = DerefOf (\_SB.ADAT [(AB12 + 0x0E)])
16260                 }
16261 
16262                 Method (A060, 0, NotSerialized)
16263                 {
16264                     Local0 = A042 ()
16265                     If ((Local0 == 0x01))
16266                     {
16267                         Return (AB01) /* \_SB_.AWR0.ABR3.AB01 */
16268                     }
16269 
16270                     If ((Local0 == 0x00))
16271                     {
16272                         Return (AB0E) /* \_SB_.AWR0.ABR3.AB0E */
16273                     }
16274                 }
16275 
16276                 Method (A055, 0, NotSerialized)
16277                 {
16278                     If ((AB10 != 0x00))
16279                     {
16280                         If ((AB10 == 0x01))
16281                         {
16282                             Return (0x01)
16283                         }
16284                     }
16285 
16286                     Return (0x00)
16287                 }
16288 
16289                 Method (A061, 0, NotSerialized)
16290                 {
16291                     If ((AB05 != 0x00))
16292                     {
16293                         Return (AB05) /* \_SB_.AWR0.ABR3.AB05 */
16294                     }
16295 
16296                     If ((AB10 > 0x01))
16297                     {
16298                         Return ((AB10 - 0x01))
16299                     }
16300 
16301                     Return (0x00)
16302                 }
16303 
16304                 Method (A054, 0, NotSerialized)
16305                 {
16306                     If ((\_SB.AP05 == 0x00))
16307                     {
16308                         If ((AB05 != 0x00))
16309                         {
16310                             Return (AB05) /* \_SB_.AWR0.ABR3.AB05 */
16311                         }
16312 
16313                         Return (AB0E) /* \_SB_.AWR0.ABR3.AB0E */
16314                     }
16315 
16316                     Local0 = A061 ()
16317                     If ((Local0 != 0x00))
16318                     {
16319                         If ((Local0 > AB00))
16320                         {
16321                             Return (AB00) /* \_SB_.AWR0.ABR3.AB00 */
16322                         }
16323                         Else
16324                         {
16325                             Return (Local0)
16326                         }
16327                     }
16328 
16329                     Local0 = A060 ()
16330                     If ((\_SB.AP03 != 0x00))
16331                     {
16332                         If ((\_SB.AP03 < Local0))
16333                         {
16334                             Return (\_SB.AP03)
16335                         }
16336                     }
16337 
16338                     Return (Local0)
16339                 }
16340 
16341                 Method (A053, 0, NotSerialized)
16342                 {
16343                     Return (AB02) /* \_SB_.AWR0.ABR3.AB02 */
16344                 }
16345 
16346                 Method (A056, 0, NotSerialized)
16347                 {
16348                     Return (AB00) /* \_SB_.AWR0.ABR3.AB00 */
16349                 }
16350 
16351                 Method (A052, 1, NotSerialized)
16352                 {
16353                     AB02 = Arg0
16354                     A062 (Arg0)
16355                     If ((AB10 != 0x00)){}
16356                     Else
16357                     {
16358                     }
16359 
16360                     A063 (0x00)
16361                     Name (A064, 0x00)
16362                     A063 (0x01)
16363                 }
16364 
16365                 Method (A057, 1, NotSerialized)
16366                 {
16367                     AB10 = Arg0
16368                 }
16369 
16370                 Method (A058, 1, NotSerialized)
16371                 {
16372                     Local0 = (Arg0 >> 0x08)
16373                     If (((Local0 >= A065) && (Local0 <= A066)))
16374                     {
16375                         Return (0x01)
16376                     }
16377 
16378                     Return (0x00)
16379                 }
16380 
16381                 Method (A067, 1, NotSerialized)
16382                 {
16383                     Local0 = (AB0D | (AB0C << 0x03))
16384                     If ((Arg0 == Local0))
16385                     {
16386                         Return (0x01)
16387                     }
16388 
16389                     Return (0x00)
16390                 }
16391 
16392                 Method (A059, 0, NotSerialized)
16393                 {
16394                     AB10 = 0x00
16395                 }
16396 
16397                 Method (A062, 1, NotSerialized)
16398                 {
16399                     If ((Arg0 >= 0x02)){}
16400                     If ((Arg0 >= 0x03)){}
16401                     If ((Arg0 == 0x01))
16402                     {
16403                         If ((AB04 == 0x01)){}
16404                     }
16405                     Else
16406                     {
16407                     }
16408                 }
16409 
16410                 Method (A068, 0, NotSerialized)
16411                 {
16412                     Local0 = 0x00
16413                     Local1 = A069 (Local0, 0x00)
16414                     Local2 = A069 (Local0, 0x08)
16415                     If ((Local1 != 0xFFFFFFFF))
16416                     {
16417                         Local3 = ((Local1 >> 0x10) & 0xFFFF)
16418                         Local1 &= 0xFFFF
16419                         Local2 = ((Local2 >> 0x18) & 0xFF)
16420                         If ((Local2 == 0x03))
16421                         {
16422                             If (((Local1 == 0x1002) || (Local1 == 0x1022)))
16423                             {
16424                                 Local0 = 0x10
16425                                 While ((Local0 < 0x30))
16426                                 {
16427                                     Local4 = A069 (0x00, Local0)
16428                                     Local5 = 0x00
16429                                     If (((Local4 && 0x09) == 0x00))
16430                                     {
16431                                         If (((Local4 && 0x06) == 0x04))
16432                                         {
16433                                             Local0 += 0x04
16434                                             Local5 = A069 (0x00, Local0)
16435                                         }
16436 
16437                                         A070 (0x34, Local3, 0x00)
16438                                         Local6 = A071 /* \_SB_.A071 */
16439                                         If ((Local6 == 0x01))
16440                                         {
16441                                             A070 (0x28, (Local4 & 0xFFFFFFF0), 0x00)
16442                                             A070 (0x29, Local5, 0x00)
16443                                             A070 (0x05, 0x00, (0x01 << 0x0A))
16444                                             A070 (0x2A, 0x00, 0x00)
16445                                             Break
16446                                         }
16447                                     }
16448                                     ElseIf (((Local4 && 0x06) == 0x04))
16449                                     {
16450                                         Local0 += 0x04
16451                                     }
16452 
16453                                     Local0 += 0x04
16454                                 }
16455                             }
16456                         }
16457                     }
16458                 }
16459 
16460                 Method (A083, 2, NotSerialized)
16461                 {
16462                     If ((A069 (Arg0, 0x00) == 0xFFFFFFFF))
16463                     {
16464                         Return (0x00)
16465                     }
16466 
16467                     Local0 = A069 (Arg0, 0x34)
16468                     While (0x01)
16469                     {
16470                         Local1 = A069 (Arg0, (Local0 & 0xFF))
16471                         If (((Local1 & 0xFF) == Arg1))
16472                         {
16473                             Return ((Local0 & 0xFF))
16474                         }
16475 
16476                         Local0 = ((Local1 >> 0x08) & 0xFF)
16477                         If ((Local0 == 0x00))
16478                         {
16479                             Return (Local0)
16480                         }
16481                     }
16482                 }
16483 
16484                 Name (AESP, Package (0x08)
16485                 {
16486                     0x00, 
16487                     0x00, 
16488                     0x00, 
16489                     0x00, 
16490                     0x00, 
16491                     0x00, 
16492                     0x00, 
16493                     0x00
16494                 })
16495                 Method (A063, 1, NotSerialized)
16496                 {
16497                     Local0 = 0x00
16498                     If ((A069 (Local0, 0x00) != 0xFFFFFFFF))
16499                     {
16500                         Local1 = (A069 (Local0, 0x08) & 0x80)
16501                         If ((Local1 == 0x80))
16502                         {
16503                             Local7 = 0x07
16504                         }
16505                         Else
16506                         {
16507                             Local7 = 0x00
16508                         }
16509 
16510                         While ((Local0 <= Local7))
16511                         {
16512                             Local1 = A083 (Local0, 0x10)
16513                             If ((Local1 == 0x00))
16514                             {
16515                                 Local0++
16516                                 Continue
16517                             }
16518 
16519                             If ((Arg0 == 0x00))
16520                             {
16521                                 Local2 = A069 (Local0, (Local1 + 0x10))
16522                                 A081 (Local0, (Local1 + 0x10), (Local2 & ~0x03))
16523                                 AESP [Local0] = Local2
16524                             }
16525                             Else
16526                             {
16527                                 Local2 = DerefOf (AESP [Local0])
16528                                 A081 (Local0, (Local1 + 0x10), Local2)
16529                             }
16530 
16531                             Local0++
16532                         }
16533                     }
16534                     Else
16535                     {
16536                     }
16537                 }
16538 
16539                 Method (A081, 3, Serialized)
16540                 {
16541                     Local0 = (AGRB + (A065 << 0x14))
16542                     Local0 += (Arg0 << 0x0C)
16543                     Local0 += Arg1
16544                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
16545                     Field (ADRB, DWordAcc, NoLock, Preserve)
16546                     {
16547                         ADRR,   32
16548                     }
16549 
16550                     ADRR = Arg2
16551                 }
16552 
16553                 Method (A069, 2, Serialized)
16554                 {
16555                     Local0 = (AGRB + (A065 << 0x14))
16556                     Local0 += (Arg0 << 0x0C)
16557                     Local0 += Arg1
16558                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
16559                     Field (ADRB, DWordAcc, NoLock, Preserve)
16560                     {
16561                         ADRR,   32
16562                     }
16563 
16564                     Return (ADRR) /* \_SB_.AWR0.ABR3.A069.ADRR */
16565                 }
16566 
16567                 Method (A079, 1, NotSerialized)
16568                 {
16569                     If ((AB0B != 0x01))
16570                     {
16571                         Return (0x00)
16572                     }
16573 
16574                     Return (A067 (Arg0))
16575                 }
16576 
16577                 Method (A080, 1, NotSerialized)
16578                 {
16579                     Name (A064, 0x00)
16580                     Local2 = 0x00
16581                     A064 = A073 /* \_SB_.AWR0.ABR3.A073 */
16582                     Local1 = (AB0D | (AB0C << 0x03))
16583                     If ((Arg0 == 0x01))
16584                     {
16585                         A074 = 0x00
16586                         Local0 = 0x01
16587                     }
16588                     Else
16589                     {
16590                         A063 (0x00)
16591                         Local0 = A069 (0x00, 0x04)
16592                         If ((Local0 != 0xFFFFFFFF))
16593                         {
16594                             A081 (0x00, 0x04, (Local0 & ~0x04))
16595                             Local0 = A069 (0x01, 0x04)
16596                             If ((Local0 != 0xFFFFFFFF))
16597                             {
16598                                 A081 (0x01, 0x04, (Local0 & ~0x04))
16599                             }
16600                         }
16601 
16602                         Local2 = 0x00
16603                         A074 = 0x01
16604                         Local0 = 0x05
16605                     }
16606 
16607                     A073 = 0x00
16608                     While ((Local0 != 0x08))
16609                     {
16610                         If ((Local0 == 0x01))
16611                         {
16612                             A082 (0x29, Local1, 0x00, 0x00, 0x00)
16613                             Local2 = 0x01
16614                             Local0 = 0x08
16615                         }
16616 
16617                         If ((Local0 == 0x05))
16618                         {
16619                             A069 (0x00, 0x00)
16620                             A082 (0x2A, Local1, 0x00, 0x00, 0x00)
16621                             AB05 = 0x00
16622                             AB04 = 0x00
16623                             AB10 = 0x00
16624                             Local2 = 0x00
16625                             Local0 = 0x08
16626                         }
16627                     }
16628 
16629                     A073 = A064 /* \_SB_.AWR0.ABR3.A080.A064 */
16630                     If ((A064 != 0x00))
16631                     {
16632                         A063 (0x01)
16633                     }
16634 
16635                     Return (Local2)
16636                 }
16637             }
16638 
16639             Device (ABR4)
16640             {
16641                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
16642                 Name (_UID, 0x84)  // _UID: Unique ID
16643                 Name (AB12, 0x70)
16644                 Name (AB00, 0x00)
16645                 Name (AB01, 0x00)
16646                 Name (AB0E, 0x00)
16647                 Name (AB02, 0x00)
16648                 Name (AB03, 0x00)
16649                 Name (AB04, 0x00)
16650                 Name (AB05, 0x00)
16651                 Name (AB06, 0x00)
16652                 Name (AB07, 0x00)
16653                 Name (AB08, 0x00)
16654                 Name (AB09, 0x00)
16655                 Name (AB0A, 0x00)
16656                 Name (AB0B, 0x00)
16657                 Name (AB0C, 0x00)
16658                 Name (AB0D, 0x00)
16659                 OperationRegion (A072, SystemMemory, (AGRB + ((DerefOf (\_SB.ADAT [(AB12 + 0x0D)]
16660                     ) << 0x0F) | (DerefOf (\_SB.ADAT [(AB12 + 0x0E)]) << 0x0C
16661                     ))), 0x1000)
16662                 Field (A072, ByteAcc, NoLock, Preserve)
16663                 {
16664                     Offset (0x18), 
16665                     Offset (0x19), 
16666                     A065,   8, 
16667                     A066,   8, 
16668                     Offset (0x68), 
16669                     A073,   2, 
16670                         ,   2, 
16671                     A074,   1, 
16672                     A075,   1, 
16673                     Offset (0x6A), 
16674                         ,   11, 
16675                     A076,   1, 
16676                     Offset (0x88), 
16677                     A077,   4, 
16678                         ,   1, 
16679                     A078,   1
16680                 }
16681 
16682                 Name (AB10, 0x00)
16683                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
16684                 {
16685                     AB00 = DerefOf (\_SB.ADAT [(AB12 + 0x00)])
16686                     AB0E = DerefOf (\_SB.ADAT [(AB12 + 0x01)])
16687                     AB01 = DerefOf (\_SB.ADAT [(AB12 + 0x02)])
16688                     AB02 = DerefOf (\_SB.ADAT [(AB12 + 0x03)])
16689                     AB03 = DerefOf (\_SB.ADAT [(AB12 + 0x04)])
16690                     AB04 = DerefOf (\_SB.ADAT [(AB12 + 0x05)])
16691                     AB05 = DerefOf (\_SB.ADAT [(AB12 + 0x06)])
16692                     AB06 = DerefOf (\_SB.ADAT [(AB12 + 0x07)])
16693                     AB07 = DerefOf (\_SB.ADAT [(AB12 + 0x08)])
16694                     AB08 = DerefOf (\_SB.ADAT [(AB12 + 0x09)])
16695                     AB09 = DerefOf (\_SB.ADAT [(AB12 + 0x0A)])
16696                     AB0A = DerefOf (\_SB.ADAT [(AB12 + 0x0B)])
16697                     AB0B = DerefOf (\_SB.ADAT [(AB12 + 0x0C)])
16698                     AB0C = DerefOf (\_SB.ADAT [(AB12 + 0x0D)])
16699                     AB0D = DerefOf (\_SB.ADAT [(AB12 + 0x0E)])
16700                 }
16701 
16702                 Method (A060, 0, NotSerialized)
16703                 {
16704                     Local0 = A042 ()
16705                     If ((Local0 == 0x01))
16706                     {
16707                         Return (AB01) /* \_SB_.AWR0.ABR4.AB01 */
16708                     }
16709 
16710                     If ((Local0 == 0x00))
16711                     {
16712                         Return (AB0E) /* \_SB_.AWR0.ABR4.AB0E */
16713                     }
16714                 }
16715 
16716                 Method (A055, 0, NotSerialized)
16717                 {
16718                     If ((AB10 != 0x00))
16719                     {
16720                         If ((AB10 == 0x01))
16721                         {
16722                             Return (0x01)
16723                         }
16724                     }
16725 
16726                     Return (0x00)
16727                 }
16728 
16729                 Method (A061, 0, NotSerialized)
16730                 {
16731                     If ((AB05 != 0x00))
16732                     {
16733                         Return (AB05) /* \_SB_.AWR0.ABR4.AB05 */
16734                     }
16735 
16736                     If ((AB10 > 0x01))
16737                     {
16738                         Return ((AB10 - 0x01))
16739                     }
16740 
16741                     Return (0x00)
16742                 }
16743 
16744                 Method (A054, 0, NotSerialized)
16745                 {
16746                     If ((\_SB.AP05 == 0x00))
16747                     {
16748                         If ((AB05 != 0x00))
16749                         {
16750                             Return (AB05) /* \_SB_.AWR0.ABR4.AB05 */
16751                         }
16752 
16753                         Return (AB0E) /* \_SB_.AWR0.ABR4.AB0E */
16754                     }
16755 
16756                     Local0 = A061 ()
16757                     If ((Local0 != 0x00))
16758                     {
16759                         If ((Local0 > AB00))
16760                         {
16761                             Return (AB00) /* \_SB_.AWR0.ABR4.AB00 */
16762                         }
16763                         Else
16764                         {
16765                             Return (Local0)
16766                         }
16767                     }
16768 
16769                     Local0 = A060 ()
16770                     If ((\_SB.AP03 != 0x00))
16771                     {
16772                         If ((\_SB.AP03 < Local0))
16773                         {
16774                             Return (\_SB.AP03)
16775                         }
16776                     }
16777 
16778                     Return (Local0)
16779                 }
16780 
16781                 Method (A053, 0, NotSerialized)
16782                 {
16783                     Return (AB02) /* \_SB_.AWR0.ABR4.AB02 */
16784                 }
16785 
16786                 Method (A056, 0, NotSerialized)
16787                 {
16788                     Return (AB00) /* \_SB_.AWR0.ABR4.AB00 */
16789                 }
16790 
16791                 Method (A052, 1, NotSerialized)
16792                 {
16793                     AB02 = Arg0
16794                     A062 (Arg0)
16795                     If ((AB10 != 0x00)){}
16796                     Else
16797                     {
16798                     }
16799 
16800                     A063 (0x00)
16801                     Name (A064, 0x00)
16802                     A063 (0x01)
16803                 }
16804 
16805                 Method (A057, 1, NotSerialized)
16806                 {
16807                     AB10 = Arg0
16808                 }
16809 
16810                 Method (A058, 1, NotSerialized)
16811                 {
16812                     Local0 = (Arg0 >> 0x08)
16813                     If (((Local0 >= A065) && (Local0 <= A066)))
16814                     {
16815                         Return (0x01)
16816                     }
16817 
16818                     Return (0x00)
16819                 }
16820 
16821                 Method (A067, 1, NotSerialized)
16822                 {
16823                     Local0 = (AB0D | (AB0C << 0x03))
16824                     If ((Arg0 == Local0))
16825                     {
16826                         Return (0x01)
16827                     }
16828 
16829                     Return (0x00)
16830                 }
16831 
16832                 Method (A059, 0, NotSerialized)
16833                 {
16834                     AB10 = 0x00
16835                 }
16836 
16837                 Method (A062, 1, NotSerialized)
16838                 {
16839                     If ((Arg0 >= 0x02)){}
16840                     If ((Arg0 >= 0x03)){}
16841                     If ((Arg0 == 0x01))
16842                     {
16843                         If ((AB04 == 0x01)){}
16844                     }
16845                     Else
16846                     {
16847                     }
16848                 }
16849 
16850                 Method (A068, 0, NotSerialized)
16851                 {
16852                     Local0 = 0x00
16853                     Local1 = A069 (Local0, 0x00)
16854                     Local2 = A069 (Local0, 0x08)
16855                     If ((Local1 != 0xFFFFFFFF))
16856                     {
16857                         Local3 = ((Local1 >> 0x10) & 0xFFFF)
16858                         Local1 &= 0xFFFF
16859                         Local2 = ((Local2 >> 0x18) & 0xFF)
16860                         If ((Local2 == 0x03))
16861                         {
16862                             If (((Local1 == 0x1002) || (Local1 == 0x1022)))
16863                             {
16864                                 Local0 = 0x10
16865                                 While ((Local0 < 0x30))
16866                                 {
16867                                     Local4 = A069 (0x00, Local0)
16868                                     Local5 = 0x00
16869                                     If (((Local4 && 0x09) == 0x00))
16870                                     {
16871                                         If (((Local4 && 0x06) == 0x04))
16872                                         {
16873                                             Local0 += 0x04
16874                                             Local5 = A069 (0x00, Local0)
16875                                         }
16876 
16877                                         A070 (0x34, Local3, 0x00)
16878                                         Local6 = A071 /* \_SB_.A071 */
16879                                         If ((Local6 == 0x01))
16880                                         {
16881                                             A070 (0x28, (Local4 & 0xFFFFFFF0), 0x00)
16882                                             A070 (0x29, Local5, 0x00)
16883                                             A070 (0x05, 0x00, (0x01 << 0x0A))
16884                                             A070 (0x2A, 0x00, 0x00)
16885                                             Break
16886                                         }
16887                                     }
16888                                     ElseIf (((Local4 && 0x06) == 0x04))
16889                                     {
16890                                         Local0 += 0x04
16891                                     }
16892 
16893                                     Local0 += 0x04
16894                                 }
16895                             }
16896                         }
16897                     }
16898                 }
16899 
16900                 Method (A083, 2, NotSerialized)
16901                 {
16902                     If ((A069 (Arg0, 0x00) == 0xFFFFFFFF))
16903                     {
16904                         Return (0x00)
16905                     }
16906 
16907                     Local0 = A069 (Arg0, 0x34)
16908                     While (0x01)
16909                     {
16910                         Local1 = A069 (Arg0, (Local0 & 0xFF))
16911                         If (((Local1 & 0xFF) == Arg1))
16912                         {
16913                             Return ((Local0 & 0xFF))
16914                         }
16915 
16916                         Local0 = ((Local1 >> 0x08) & 0xFF)
16917                         If ((Local0 == 0x00))
16918                         {
16919                             Return (Local0)
16920                         }
16921                     }
16922                 }
16923 
16924                 Name (AESP, Package (0x08)
16925                 {
16926                     0x00, 
16927                     0x00, 
16928                     0x00, 
16929                     0x00, 
16930                     0x00, 
16931                     0x00, 
16932                     0x00, 
16933                     0x00
16934                 })
16935                 Method (A063, 1, NotSerialized)
16936                 {
16937                     Local0 = 0x00
16938                     If ((A069 (Local0, 0x00) != 0xFFFFFFFF))
16939                     {
16940                         Local1 = (A069 (Local0, 0x08) & 0x80)
16941                         If ((Local1 == 0x80))
16942                         {
16943                             Local7 = 0x07
16944                         }
16945                         Else
16946                         {
16947                             Local7 = 0x00
16948                         }
16949 
16950                         While ((Local0 <= Local7))
16951                         {
16952                             Local1 = A083 (Local0, 0x10)
16953                             If ((Local1 == 0x00))
16954                             {
16955                                 Local0++
16956                                 Continue
16957                             }
16958 
16959                             If ((Arg0 == 0x00))
16960                             {
16961                                 Local2 = A069 (Local0, (Local1 + 0x10))
16962                                 A081 (Local0, (Local1 + 0x10), (Local2 & ~0x03))
16963                                 AESP [Local0] = Local2
16964                             }
16965                             Else
16966                             {
16967                                 Local2 = DerefOf (AESP [Local0])
16968                                 A081 (Local0, (Local1 + 0x10), Local2)
16969                             }
16970 
16971                             Local0++
16972                         }
16973                     }
16974                     Else
16975                     {
16976                     }
16977                 }
16978 
16979                 Method (A081, 3, Serialized)
16980                 {
16981                     Local0 = (AGRB + (A065 << 0x14))
16982                     Local0 += (Arg0 << 0x0C)
16983                     Local0 += Arg1
16984                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
16985                     Field (ADRB, DWordAcc, NoLock, Preserve)
16986                     {
16987                         ADRR,   32
16988                     }
16989 
16990                     ADRR = Arg2
16991                 }
16992 
16993                 Method (A069, 2, Serialized)
16994                 {
16995                     Local0 = (AGRB + (A065 << 0x14))
16996                     Local0 += (Arg0 << 0x0C)
16997                     Local0 += Arg1
16998                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
16999                     Field (ADRB, DWordAcc, NoLock, Preserve)
17000                     {
17001                         ADRR,   32
17002                     }
17003 
17004                     Return (ADRR) /* \_SB_.AWR0.ABR4.A069.ADRR */
17005                 }
17006 
17007                 Method (A079, 1, NotSerialized)
17008                 {
17009                     If ((AB0B != 0x01))
17010                     {
17011                         Return (0x00)
17012                     }
17013 
17014                     Return (A067 (Arg0))
17015                 }
17016 
17017                 Method (A080, 1, NotSerialized)
17018                 {
17019                     Name (A064, 0x00)
17020                     Local2 = 0x00
17021                     A064 = A073 /* \_SB_.AWR0.ABR4.A073 */
17022                     Local1 = (AB0D | (AB0C << 0x03))
17023                     If ((Arg0 == 0x01))
17024                     {
17025                         A074 = 0x00
17026                         Local0 = 0x01
17027                     }
17028                     Else
17029                     {
17030                         A063 (0x00)
17031                         Local0 = A069 (0x00, 0x04)
17032                         If ((Local0 != 0xFFFFFFFF))
17033                         {
17034                             A081 (0x00, 0x04, (Local0 & ~0x04))
17035                             Local0 = A069 (0x01, 0x04)
17036                             If ((Local0 != 0xFFFFFFFF))
17037                             {
17038                                 A081 (0x01, 0x04, (Local0 & ~0x04))
17039                             }
17040                         }
17041 
17042                         Local2 = 0x00
17043                         A074 = 0x01
17044                         Local0 = 0x05
17045                     }
17046 
17047                     A073 = 0x00
17048                     While ((Local0 != 0x08))
17049                     {
17050                         If ((Local0 == 0x01))
17051                         {
17052                             A082 (0x29, Local1, 0x00, 0x00, 0x00)
17053                             Local2 = 0x01
17054                             Local0 = 0x08
17055                         }
17056 
17057                         If ((Local0 == 0x05))
17058                         {
17059                             A069 (0x00, 0x00)
17060                             A082 (0x2A, Local1, 0x00, 0x00, 0x00)
17061                             AB05 = 0x00
17062                             AB04 = 0x00
17063                             AB10 = 0x00
17064                             Local2 = 0x00
17065                             Local0 = 0x08
17066                         }
17067                     }
17068 
17069                     A073 = A064 /* \_SB_.AWR0.ABR4.A080.A064 */
17070                     If ((A064 != 0x00))
17071                     {
17072                         A063 (0x01)
17073                     }
17074 
17075                     Return (Local2)
17076                 }
17077             }
17078 
17079             Device (ABR5)
17080             {
17081                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
17082                 Name (_UID, 0x85)  // _UID: Unique ID
17083                 Name (AB12, 0x84)
17084                 Name (AB00, 0x00)
17085                 Name (AB01, 0x00)
17086                 Name (AB0E, 0x00)
17087                 Name (AB02, 0x00)
17088                 Name (AB03, 0x00)
17089                 Name (AB04, 0x00)
17090                 Name (AB05, 0x00)
17091                 Name (AB06, 0x00)
17092                 Name (AB07, 0x00)
17093                 Name (AB08, 0x00)
17094                 Name (AB09, 0x00)
17095                 Name (AB0A, 0x00)
17096                 Name (AB0B, 0x00)
17097                 Name (AB0C, 0x00)
17098                 Name (AB0D, 0x00)
17099                 OperationRegion (A072, SystemMemory, (AGRB + ((DerefOf (\_SB.ADAT [(AB12 + 0x0D)]
17100                     ) << 0x0F) | (DerefOf (\_SB.ADAT [(AB12 + 0x0E)]) << 0x0C
17101                     ))), 0x1000)
17102                 Field (A072, ByteAcc, NoLock, Preserve)
17103                 {
17104                     Offset (0x18), 
17105                     Offset (0x19), 
17106                     A065,   8, 
17107                     A066,   8, 
17108                     Offset (0x68), 
17109                     A073,   2, 
17110                         ,   2, 
17111                     A074,   1, 
17112                     A075,   1, 
17113                     Offset (0x6A), 
17114                         ,   11, 
17115                     A076,   1, 
17116                     Offset (0x88), 
17117                     A077,   4, 
17118                         ,   1, 
17119                     A078,   1
17120                 }
17121 
17122                 Name (AB10, 0x00)
17123                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
17124                 {
17125                     AB00 = DerefOf (\_SB.ADAT [(AB12 + 0x00)])
17126                     AB0E = DerefOf (\_SB.ADAT [(AB12 + 0x01)])
17127                     AB01 = DerefOf (\_SB.ADAT [(AB12 + 0x02)])
17128                     AB02 = DerefOf (\_SB.ADAT [(AB12 + 0x03)])
17129                     AB03 = DerefOf (\_SB.ADAT [(AB12 + 0x04)])
17130                     AB04 = DerefOf (\_SB.ADAT [(AB12 + 0x05)])
17131                     AB05 = DerefOf (\_SB.ADAT [(AB12 + 0x06)])
17132                     AB06 = DerefOf (\_SB.ADAT [(AB12 + 0x07)])
17133                     AB07 = DerefOf (\_SB.ADAT [(AB12 + 0x08)])
17134                     AB08 = DerefOf (\_SB.ADAT [(AB12 + 0x09)])
17135                     AB09 = DerefOf (\_SB.ADAT [(AB12 + 0x0A)])
17136                     AB0A = DerefOf (\_SB.ADAT [(AB12 + 0x0B)])
17137                     AB0B = DerefOf (\_SB.ADAT [(AB12 + 0x0C)])
17138                     AB0C = DerefOf (\_SB.ADAT [(AB12 + 0x0D)])
17139                     AB0D = DerefOf (\_SB.ADAT [(AB12 + 0x0E)])
17140                 }
17141 
17142                 Method (A060, 0, NotSerialized)
17143                 {
17144                     Local0 = A042 ()
17145                     If ((Local0 == 0x01))
17146                     {
17147                         Return (AB01) /* \_SB_.AWR0.ABR5.AB01 */
17148                     }
17149 
17150                     If ((Local0 == 0x00))
17151                     {
17152                         Return (AB0E) /* \_SB_.AWR0.ABR5.AB0E */
17153                     }
17154                 }
17155 
17156                 Method (A055, 0, NotSerialized)
17157                 {
17158                     If ((AB10 != 0x00))
17159                     {
17160                         If ((AB10 == 0x01))
17161                         {
17162                             Return (0x01)
17163                         }
17164                     }
17165 
17166                     Return (0x00)
17167                 }
17168 
17169                 Method (A061, 0, NotSerialized)
17170                 {
17171                     If ((AB05 != 0x00))
17172                     {
17173                         Return (AB05) /* \_SB_.AWR0.ABR5.AB05 */
17174                     }
17175 
17176                     If ((AB10 > 0x01))
17177                     {
17178                         Return ((AB10 - 0x01))
17179                     }
17180 
17181                     Return (0x00)
17182                 }
17183 
17184                 Method (A054, 0, NotSerialized)
17185                 {
17186                     If ((\_SB.AP05 == 0x00))
17187                     {
17188                         If ((AB05 != 0x00))
17189                         {
17190                             Return (AB05) /* \_SB_.AWR0.ABR5.AB05 */
17191                         }
17192 
17193                         Return (AB0E) /* \_SB_.AWR0.ABR5.AB0E */
17194                     }
17195 
17196                     Local0 = A061 ()
17197                     If ((Local0 != 0x00))
17198                     {
17199                         If ((Local0 > AB00))
17200                         {
17201                             Return (AB00) /* \_SB_.AWR0.ABR5.AB00 */
17202                         }
17203                         Else
17204                         {
17205                             Return (Local0)
17206                         }
17207                     }
17208 
17209                     Local0 = A060 ()
17210                     If ((\_SB.AP03 != 0x00))
17211                     {
17212                         If ((\_SB.AP03 < Local0))
17213                         {
17214                             Return (\_SB.AP03)
17215                         }
17216                     }
17217 
17218                     Return (Local0)
17219                 }
17220 
17221                 Method (A053, 0, NotSerialized)
17222                 {
17223                     Return (AB02) /* \_SB_.AWR0.ABR5.AB02 */
17224                 }
17225 
17226                 Method (A056, 0, NotSerialized)
17227                 {
17228                     Return (AB00) /* \_SB_.AWR0.ABR5.AB00 */
17229                 }
17230 
17231                 Method (A052, 1, NotSerialized)
17232                 {
17233                     AB02 = Arg0
17234                     A062 (Arg0)
17235                     If ((AB10 != 0x00)){}
17236                     Else
17237                     {
17238                     }
17239 
17240                     A063 (0x00)
17241                     Name (A064, 0x00)
17242                     A063 (0x01)
17243                 }
17244 
17245                 Method (A057, 1, NotSerialized)
17246                 {
17247                     AB10 = Arg0
17248                 }
17249 
17250                 Method (A058, 1, NotSerialized)
17251                 {
17252                     Local0 = (Arg0 >> 0x08)
17253                     If (((Local0 >= A065) && (Local0 <= A066)))
17254                     {
17255                         Return (0x01)
17256                     }
17257 
17258                     Return (0x00)
17259                 }
17260 
17261                 Method (A067, 1, NotSerialized)
17262                 {
17263                     Local0 = (AB0D | (AB0C << 0x03))
17264                     If ((Arg0 == Local0))
17265                     {
17266                         Return (0x01)
17267                     }
17268 
17269                     Return (0x00)
17270                 }
17271 
17272                 Method (A059, 0, NotSerialized)
17273                 {
17274                     AB10 = 0x00
17275                 }
17276 
17277                 Method (A062, 1, NotSerialized)
17278                 {
17279                     If ((Arg0 >= 0x02)){}
17280                     If ((Arg0 >= 0x03)){}
17281                     If ((Arg0 == 0x01))
17282                     {
17283                         If ((AB04 == 0x01)){}
17284                     }
17285                     Else
17286                     {
17287                     }
17288                 }
17289 
17290                 Method (A068, 0, NotSerialized)
17291                 {
17292                     Local0 = 0x00
17293                     Local1 = A069 (Local0, 0x00)
17294                     Local2 = A069 (Local0, 0x08)
17295                     If ((Local1 != 0xFFFFFFFF))
17296                     {
17297                         Local3 = ((Local1 >> 0x10) & 0xFFFF)
17298                         Local1 &= 0xFFFF
17299                         Local2 = ((Local2 >> 0x18) & 0xFF)
17300                         If ((Local2 == 0x03))
17301                         {
17302                             If (((Local1 == 0x1002) || (Local1 == 0x1022)))
17303                             {
17304                                 Local0 = 0x10
17305                                 While ((Local0 < 0x30))
17306                                 {
17307                                     Local4 = A069 (0x00, Local0)
17308                                     Local5 = 0x00
17309                                     If (((Local4 && 0x09) == 0x00))
17310                                     {
17311                                         If (((Local4 && 0x06) == 0x04))
17312                                         {
17313                                             Local0 += 0x04
17314                                             Local5 = A069 (0x00, Local0)
17315                                         }
17316 
17317                                         A070 (0x34, Local3, 0x00)
17318                                         Local6 = A071 /* \_SB_.A071 */
17319                                         If ((Local6 == 0x01))
17320                                         {
17321                                             A070 (0x28, (Local4 & 0xFFFFFFF0), 0x00)
17322                                             A070 (0x29, Local5, 0x00)
17323                                             A070 (0x05, 0x00, (0x01 << 0x0A))
17324                                             A070 (0x2A, 0x00, 0x00)
17325                                             Break
17326                                         }
17327                                     }
17328                                     ElseIf (((Local4 && 0x06) == 0x04))
17329                                     {
17330                                         Local0 += 0x04
17331                                     }
17332 
17333                                     Local0 += 0x04
17334                                 }
17335                             }
17336                         }
17337                     }
17338                 }
17339 
17340                 Method (A083, 2, NotSerialized)
17341                 {
17342                     If ((A069 (Arg0, 0x00) == 0xFFFFFFFF))
17343                     {
17344                         Return (0x00)
17345                     }
17346 
17347                     Local0 = A069 (Arg0, 0x34)
17348                     While (0x01)
17349                     {
17350                         Local1 = A069 (Arg0, (Local0 & 0xFF))
17351                         If (((Local1 & 0xFF) == Arg1))
17352                         {
17353                             Return ((Local0 & 0xFF))
17354                         }
17355 
17356                         Local0 = ((Local1 >> 0x08) & 0xFF)
17357                         If ((Local0 == 0x00))
17358                         {
17359                             Return (Local0)
17360                         }
17361                     }
17362                 }
17363 
17364                 Name (AESP, Package (0x08)
17365                 {
17366                     0x00, 
17367                     0x00, 
17368                     0x00, 
17369                     0x00, 
17370                     0x00, 
17371                     0x00, 
17372                     0x00, 
17373                     0x00
17374                 })
17375                 Method (A063, 1, NotSerialized)
17376                 {
17377                     Local0 = 0x00
17378                     If ((A069 (Local0, 0x00) != 0xFFFFFFFF))
17379                     {
17380                         Local1 = (A069 (Local0, 0x08) & 0x80)
17381                         If ((Local1 == 0x80))
17382                         {
17383                             Local7 = 0x07
17384                         }
17385                         Else
17386                         {
17387                             Local7 = 0x00
17388                         }
17389 
17390                         While ((Local0 <= Local7))
17391                         {
17392                             Local1 = A083 (Local0, 0x10)
17393                             If ((Local1 == 0x00))
17394                             {
17395                                 Local0++
17396                                 Continue
17397                             }
17398 
17399                             If ((Arg0 == 0x00))
17400                             {
17401                                 Local2 = A069 (Local0, (Local1 + 0x10))
17402                                 A081 (Local0, (Local1 + 0x10), (Local2 & ~0x03))
17403                                 AESP [Local0] = Local2
17404                             }
17405                             Else
17406                             {
17407                                 Local2 = DerefOf (AESP [Local0])
17408                                 A081 (Local0, (Local1 + 0x10), Local2)
17409                             }
17410 
17411                             Local0++
17412                         }
17413                     }
17414                     Else
17415                     {
17416                     }
17417                 }
17418 
17419                 Method (A081, 3, Serialized)
17420                 {
17421                     Local0 = (AGRB + (A065 << 0x14))
17422                     Local0 += (Arg0 << 0x0C)
17423                     Local0 += Arg1
17424                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
17425                     Field (ADRB, DWordAcc, NoLock, Preserve)
17426                     {
17427                         ADRR,   32
17428                     }
17429 
17430                     ADRR = Arg2
17431                 }
17432 
17433                 Method (A069, 2, Serialized)
17434                 {
17435                     Local0 = (AGRB + (A065 << 0x14))
17436                     Local0 += (Arg0 << 0x0C)
17437                     Local0 += Arg1
17438                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
17439                     Field (ADRB, DWordAcc, NoLock, Preserve)
17440                     {
17441                         ADRR,   32
17442                     }
17443 
17444                     Return (ADRR) /* \_SB_.AWR0.ABR5.A069.ADRR */
17445                 }
17446 
17447                 Method (A079, 1, NotSerialized)
17448                 {
17449                     If ((AB0B != 0x01))
17450                     {
17451                         Return (0x00)
17452                     }
17453 
17454                     Return (A067 (Arg0))
17455                 }
17456 
17457                 Method (A080, 1, NotSerialized)
17458                 {
17459                     Name (A064, 0x00)
17460                     Local2 = 0x00
17461                     A064 = A073 /* \_SB_.AWR0.ABR5.A073 */
17462                     Local1 = (AB0D | (AB0C << 0x03))
17463                     If ((Arg0 == 0x01))
17464                     {
17465                         A074 = 0x00
17466                         Local0 = 0x01
17467                     }
17468                     Else
17469                     {
17470                         A063 (0x00)
17471                         Local0 = A069 (0x00, 0x04)
17472                         If ((Local0 != 0xFFFFFFFF))
17473                         {
17474                             A081 (0x00, 0x04, (Local0 & ~0x04))
17475                             Local0 = A069 (0x01, 0x04)
17476                             If ((Local0 != 0xFFFFFFFF))
17477                             {
17478                                 A081 (0x01, 0x04, (Local0 & ~0x04))
17479                             }
17480                         }
17481 
17482                         Local2 = 0x00
17483                         A074 = 0x01
17484                         Local0 = 0x05
17485                     }
17486 
17487                     A073 = 0x00
17488                     While ((Local0 != 0x08))
17489                     {
17490                         If ((Local0 == 0x01))
17491                         {
17492                             A082 (0x29, Local1, 0x00, 0x00, 0x00)
17493                             Local2 = 0x01
17494                             Local0 = 0x08
17495                         }
17496 
17497                         If ((Local0 == 0x05))
17498                         {
17499                             A069 (0x00, 0x00)
17500                             A082 (0x2A, Local1, 0x00, 0x00, 0x00)
17501                             AB05 = 0x00
17502                             AB04 = 0x00
17503                             AB10 = 0x00
17504                             Local2 = 0x00
17505                             Local0 = 0x08
17506                         }
17507                     }
17508 
17509                     A073 = A064 /* \_SB_.AWR0.ABR5.A080.A064 */
17510                     If ((A064 != 0x00))
17511                     {
17512                         A063 (0x01)
17513                     }
17514 
17515                     Return (Local2)
17516                 }
17517             }
17518 
17519             Device (ABR6)
17520             {
17521                 Name (_HID, EisaId ("PNP0C02") /* PNP Motherboard Resources */)  // _HID: Hardware ID
17522                 Name (_UID, 0x86)  // _UID: Unique ID
17523                 Name (AB12, 0x98)
17524                 Name (AB00, 0x00)
17525                 Name (AB01, 0x00)
17526                 Name (AB0E, 0x00)
17527                 Name (AB02, 0x00)
17528                 Name (AB03, 0x00)
17529                 Name (AB04, 0x00)
17530                 Name (AB05, 0x00)
17531                 Name (AB06, 0x00)
17532                 Name (AB07, 0x00)
17533                 Name (AB08, 0x00)
17534                 Name (AB09, 0x00)
17535                 Name (AB0A, 0x00)
17536                 Name (AB0B, 0x00)
17537                 Name (AB0C, 0x00)
17538                 Name (AB0D, 0x00)
17539                 OperationRegion (A072, SystemMemory, (AGRB + ((DerefOf (\_SB.ADAT [(AB12 + 0x0D)]
17540                     ) << 0x0F) | (DerefOf (\_SB.ADAT [(AB12 + 0x0E)]) << 0x0C
17541                     ))), 0x1000)
17542                 Field (A072, ByteAcc, NoLock, Preserve)
17543                 {
17544                     Offset (0x18), 
17545                     Offset (0x19), 
17546                     A065,   8, 
17547                     A066,   8, 
17548                     Offset (0x68), 
17549                     A073,   2, 
17550                         ,   2, 
17551                     A074,   1, 
17552                     A075,   1, 
17553                     Offset (0x6A), 
17554                         ,   11, 
17555                     A076,   1, 
17556                     Offset (0x88), 
17557                     A077,   4, 
17558                         ,   1, 
17559                     A078,   1
17560                 }
17561 
17562                 Name (AB10, 0x00)
17563                 Method (_INI, 0, NotSerialized)  // _INI: Initialize
17564                 {
17565                     AB00 = DerefOf (\_SB.ADAT [(AB12 + 0x00)])
17566                     AB0E = DerefOf (\_SB.ADAT [(AB12 + 0x01)])
17567                     AB01 = DerefOf (\_SB.ADAT [(AB12 + 0x02)])
17568                     AB02 = DerefOf (\_SB.ADAT [(AB12 + 0x03)])
17569                     AB03 = DerefOf (\_SB.ADAT [(AB12 + 0x04)])
17570                     AB04 = DerefOf (\_SB.ADAT [(AB12 + 0x05)])
17571                     AB05 = DerefOf (\_SB.ADAT [(AB12 + 0x06)])
17572                     AB06 = DerefOf (\_SB.ADAT [(AB12 + 0x07)])
17573                     AB07 = DerefOf (\_SB.ADAT [(AB12 + 0x08)])
17574                     AB08 = DerefOf (\_SB.ADAT [(AB12 + 0x09)])
17575                     AB09 = DerefOf (\_SB.ADAT [(AB12 + 0x0A)])
17576                     AB0A = DerefOf (\_SB.ADAT [(AB12 + 0x0B)])
17577                     AB0B = DerefOf (\_SB.ADAT [(AB12 + 0x0C)])
17578                     AB0C = DerefOf (\_SB.ADAT [(AB12 + 0x0D)])
17579                     AB0D = DerefOf (\_SB.ADAT [(AB12 + 0x0E)])
17580                 }
17581 
17582                 Method (A060, 0, NotSerialized)
17583                 {
17584                     Local0 = A042 ()
17585                     If ((Local0 == 0x01))
17586                     {
17587                         Return (AB01) /* \_SB_.AWR0.ABR6.AB01 */
17588                     }
17589 
17590                     If ((Local0 == 0x00))
17591                     {
17592                         Return (AB0E) /* \_SB_.AWR0.ABR6.AB0E */
17593                     }
17594                 }
17595 
17596                 Method (A055, 0, NotSerialized)
17597                 {
17598                     If ((AB10 != 0x00))
17599                     {
17600                         If ((AB10 == 0x01))
17601                         {
17602                             Return (0x01)
17603                         }
17604                     }
17605 
17606                     Return (0x00)
17607                 }
17608 
17609                 Method (A061, 0, NotSerialized)
17610                 {
17611                     If ((AB05 != 0x00))
17612                     {
17613                         Return (AB05) /* \_SB_.AWR0.ABR6.AB05 */
17614                     }
17615 
17616                     If ((AB10 > 0x01))
17617                     {
17618                         Return ((AB10 - 0x01))
17619                     }
17620 
17621                     Return (0x00)
17622                 }
17623 
17624                 Method (A054, 0, NotSerialized)
17625                 {
17626                     If ((\_SB.AP05 == 0x00))
17627                     {
17628                         If ((AB05 != 0x00))
17629                         {
17630                             Return (AB05) /* \_SB_.AWR0.ABR6.AB05 */
17631                         }
17632 
17633                         Return (AB0E) /* \_SB_.AWR0.ABR6.AB0E */
17634                     }
17635 
17636                     Local0 = A061 ()
17637                     If ((Local0 != 0x00))
17638                     {
17639                         If ((Local0 > AB00))
17640                         {
17641                             Return (AB00) /* \_SB_.AWR0.ABR6.AB00 */
17642                         }
17643                         Else
17644                         {
17645                             Return (Local0)
17646                         }
17647                     }
17648 
17649                     Local0 = A060 ()
17650                     If ((\_SB.AP03 != 0x00))
17651                     {
17652                         If ((\_SB.AP03 < Local0))
17653                         {
17654                             Return (\_SB.AP03)
17655                         }
17656                     }
17657 
17658                     Return (Local0)
17659                 }
17660 
17661                 Method (A053, 0, NotSerialized)
17662                 {
17663                     Return (AB02) /* \_SB_.AWR0.ABR6.AB02 */
17664                 }
17665 
17666                 Method (A056, 0, NotSerialized)
17667                 {
17668                     Return (AB00) /* \_SB_.AWR0.ABR6.AB00 */
17669                 }
17670 
17671                 Method (A052, 1, NotSerialized)
17672                 {
17673                     AB02 = Arg0
17674                     A062 (Arg0)
17675                     If ((AB10 != 0x00)){}
17676                     Else
17677                     {
17678                     }
17679 
17680                     A063 (0x00)
17681                     Name (A064, 0x00)
17682                     A063 (0x01)
17683                 }
17684 
17685                 Method (A057, 1, NotSerialized)
17686                 {
17687                     AB10 = Arg0
17688                 }
17689 
17690                 Method (A058, 1, NotSerialized)
17691                 {
17692                     Local0 = (Arg0 >> 0x08)
17693                     If (((Local0 >= A065) && (Local0 <= A066)))
17694                     {
17695                         Return (0x01)
17696                     }
17697 
17698                     Return (0x00)
17699                 }
17700 
17701                 Method (A067, 1, NotSerialized)
17702                 {
17703                     Local0 = (AB0D | (AB0C << 0x03))
17704                     If ((Arg0 == Local0))
17705                     {
17706                         Return (0x01)
17707                     }
17708 
17709                     Return (0x00)
17710                 }
17711 
17712                 Method (A059, 0, NotSerialized)
17713                 {
17714                     AB10 = 0x00
17715                 }
17716 
17717                 Method (A062, 1, NotSerialized)
17718                 {
17719                     If ((Arg0 >= 0x02)){}
17720                     If ((Arg0 >= 0x03)){}
17721                     If ((Arg0 == 0x01))
17722                     {
17723                         If ((AB04 == 0x01)){}
17724                     }
17725                     Else
17726                     {
17727                     }
17728                 }
17729 
17730                 Method (A068, 0, NotSerialized)
17731                 {
17732                     Local0 = 0x00
17733                     Local1 = A069 (Local0, 0x00)
17734                     Local2 = A069 (Local0, 0x08)
17735                     If ((Local1 != 0xFFFFFFFF))
17736                     {
17737                         Local3 = ((Local1 >> 0x10) & 0xFFFF)
17738                         Local1 &= 0xFFFF
17739                         Local2 = ((Local2 >> 0x18) & 0xFF)
17740                         If ((Local2 == 0x03))
17741                         {
17742                             If (((Local1 == 0x1002) || (Local1 == 0x1022)))
17743                             {
17744                                 Local0 = 0x10
17745                                 While ((Local0 < 0x30))
17746                                 {
17747                                     Local4 = A069 (0x00, Local0)
17748                                     Local5 = 0x00
17749                                     If (((Local4 && 0x09) == 0x00))
17750                                     {
17751                                         If (((Local4 && 0x06) == 0x04))
17752                                         {
17753                                             Local0 += 0x04
17754                                             Local5 = A069 (0x00, Local0)
17755                                         }
17756 
17757                                         A070 (0x34, Local3, 0x00)
17758                                         Local6 = A071 /* \_SB_.A071 */
17759                                         If ((Local6 == 0x01))
17760                                         {
17761                                             A070 (0x28, (Local4 & 0xFFFFFFF0), 0x00)
17762                                             A070 (0x29, Local5, 0x00)
17763                                             A070 (0x05, 0x00, (0x01 << 0x0A))
17764                                             A070 (0x2A, 0x00, 0x00)
17765                                             Break
17766                                         }
17767                                     }
17768                                     ElseIf (((Local4 && 0x06) == 0x04))
17769                                     {
17770                                         Local0 += 0x04
17771                                     }
17772 
17773                                     Local0 += 0x04
17774                                 }
17775                             }
17776                         }
17777                     }
17778                 }
17779 
17780                 Method (A083, 2, NotSerialized)
17781                 {
17782                     If ((A069 (Arg0, 0x00) == 0xFFFFFFFF))
17783                     {
17784                         Return (0x00)
17785                     }
17786 
17787                     Local0 = A069 (Arg0, 0x34)
17788                     While (0x01)
17789                     {
17790                         Local1 = A069 (Arg0, (Local0 & 0xFF))
17791                         If (((Local1 & 0xFF) == Arg1))
17792                         {
17793                             Return ((Local0 & 0xFF))
17794                         }
17795 
17796                         Local0 = ((Local1 >> 0x08) & 0xFF)
17797                         If ((Local0 == 0x00))
17798                         {
17799                             Return (Local0)
17800                         }
17801                     }
17802                 }
17803 
17804                 Name (AESP, Package (0x08)
17805                 {
17806                     0x00, 
17807                     0x00, 
17808                     0x00, 
17809                     0x00, 
17810                     0x00, 
17811                     0x00, 
17812                     0x00, 
17813                     0x00
17814                 })
17815                 Method (A063, 1, NotSerialized)
17816                 {
17817                     Local0 = 0x00
17818                     If ((A069 (Local0, 0x00) != 0xFFFFFFFF))
17819                     {
17820                         Local1 = (A069 (Local0, 0x08) & 0x80)
17821                         If ((Local1 == 0x80))
17822                         {
17823                             Local7 = 0x07
17824                         }
17825                         Else
17826                         {
17827                             Local7 = 0x00
17828                         }
17829 
17830                         While ((Local0 <= Local7))
17831                         {
17832                             Local1 = A083 (Local0, 0x10)
17833                             If ((Local1 == 0x00))
17834                             {
17835                                 Local0++
17836                                 Continue
17837                             }
17838 
17839                             If ((Arg0 == 0x00))
17840                             {
17841                                 Local2 = A069 (Local0, (Local1 + 0x10))
17842                                 A081 (Local0, (Local1 + 0x10), (Local2 & ~0x03))
17843                                 AESP [Local0] = Local2
17844                             }
17845                             Else
17846                             {
17847                                 Local2 = DerefOf (AESP [Local0])
17848                                 A081 (Local0, (Local1 + 0x10), Local2)
17849                             }
17850 
17851                             Local0++
17852                         }
17853                     }
17854                     Else
17855                     {
17856                     }
17857                 }
17858 
17859                 Method (A081, 3, Serialized)
17860                 {
17861                     Local0 = (AGRB + (A065 << 0x14))
17862                     Local0 += (Arg0 << 0x0C)
17863                     Local0 += Arg1
17864                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
17865                     Field (ADRB, DWordAcc, NoLock, Preserve)
17866                     {
17867                         ADRR,   32
17868                     }
17869 
17870                     ADRR = Arg2
17871                 }
17872 
17873                 Method (A069, 2, Serialized)
17874                 {
17875                     Local0 = (AGRB + (A065 << 0x14))
17876                     Local0 += (Arg0 << 0x0C)
17877                     Local0 += Arg1
17878                     OperationRegion (ADRB, SystemMemory, Local0, 0x04)
17879                     Field (ADRB, DWordAcc, NoLock, Preserve)
17880                     {
17881                         ADRR,   32
17882                     }
17883 
17884                     Return (ADRR) /* \_SB_.AWR0.ABR6.A069.ADRR */
17885                 }
17886 
17887                 Method (A079, 1, NotSerialized)
17888                 {
17889                     If ((AB0B != 0x01))
17890                     {
17891                         Return (0x00)
17892                     }
17893 
17894                     Return (A067 (Arg0))
17895                 }
17896 
17897                 Method (A080, 1, NotSerialized)
17898                 {
17899                     Name (A064, 0x00)
17900                     Local2 = 0x00
17901                     A064 = A073 /* \_SB_.AWR0.ABR6.A073 */
17902                     Local1 = (AB0D | (AB0C << 0x03))
17903                     If ((Arg0 == 0x01))
17904                     {
17905                         A074 = 0x00
17906                         Local0 = 0x01
17907                     }
17908                     Else
17909                     {
17910                         A063 (0x00)
17911                         Local0 = A069 (0x00, 0x04)
17912                         If ((Local0 != 0xFFFFFFFF))
17913                         {
17914                             A081 (0x00, 0x04, (Local0 & ~0x04))
17915                             Local0 = A069 (0x01, 0x04)
17916                             If ((Local0 != 0xFFFFFFFF))
17917                             {
17918                                 A081 (0x01, 0x04, (Local0 & ~0x04))
17919                             }
17920                         }
17921 
17922                         Local2 = 0x00
17923                         A074 = 0x01
17924                         Local0 = 0x05
17925                     }
17926 
17927                     A073 = 0x00
17928                     While ((Local0 != 0x08))
17929                     {
17930                         If ((Local0 == 0x01))
17931                         {
17932                             A082 (0x29, Local1, 0x00, 0x00, 0x00)
17933                             Local2 = 0x01
17934                             Local0 = 0x08
17935                         }
17936 
17937                         If ((Local0 == 0x05))
17938                         {
17939                             A069 (0x00, 0x00)
17940                             A082 (0x2A, Local1, 0x00, 0x00, 0x00)
17941                             AB05 = 0x00
17942                             AB04 = 0x00
17943                             AB10 = 0x00
17944                             Local2 = 0x00
17945                             Local0 = 0x08
17946                         }
17947                     }
17948 
17949                     A073 = A064 /* \_SB_.AWR0.ABR6.A080.A064 */
17950                     If ((A064 != 0x00))
17951                     {
17952                         A063 (0x01)
17953                     }
17954 
17955                     Return (Local2)
17956                 }
17957             }
17958         }
17959 
17960         Method (A003, 0, Serialized)
17961         {
17962             If ((DerefOf (\_SB.ADAT [0x08]) == 0x01))
17963             {
17964                 Local0 = 0x00
17965                 While ((Local0 < 0x07))
17966                 {
17967                     A113 (Local0)
17968                     Local0++
17969                 }
17970             }
17971         }
17972 
17973         Method (A070, 3, NotSerialized)
17974         {
17975             Local7 = Buffer (0x18){}
17976             CreateDWordField (Local7, 0x00, A006)
17977             CreateDWordField (Local7, 0x04, A007)
17978             CreateDWordField (Local7, 0x08, A008)
17979             CreateDWordField (Local7, 0x0C, A009)
17980             CreateDWordField (Local7, 0x10, A010)
17981             CreateDWordField (Local7, 0x14, A011)
17982             A006 = Arg1
17983             A007 = Arg2
17984             A012 (Arg0, Local7)
17985         }
17986 
17987         Method (A113, 1, NotSerialized)
17988         {
17989             If ((Arg0 == 0x00))
17990             {
17991                 Return (\_SB.AWR0.ABR0.A068 ())
17992             }
17993 
17994             If ((Arg0 == 0x01))
17995             {
17996                 Return (\_SB.AWR0.ABR1.A068 ())
17997             }
17998 
17999             If ((Arg0 == 0x02))
18000             {
18001                 Return (\_SB.AWR0.ABR2.A068 ())
18002             }
18003 
18004             If ((Arg0 == 0x03))
18005             {
18006                 Return (\_SB.AWR0.ABR3.A068 ())
18007             }
18008 
18009             If ((Arg0 == 0x04))
18010             {
18011                 Return (\_SB.AWR0.ABR4.A068 ())
18012             }
18013 
18014             If ((Arg0 == 0x05))
18015             {
18016                 Return (\_SB.AWR0.ABR5.A068 ())
18017             }
18018 
18019             If ((Arg0 == 0x06))
18020             {
18021                 Return (\_SB.AWR0.ABR6.A068 ())
18022             }
18023         }
18024 
18025         Name (A001, 0x01)
18026         Name (A002, 0x00)
18027         Method (APTS, 1, NotSerialized)
18028         {
18029             If ((Arg0 == 0x03)){}
18030         }
18031 
18032         Method (AWAK, 1, NotSerialized)
18033         {
18034             A003 ()
18035             If ((Arg0 == 0x03)){}
18036         }
18037 
18038         Method (APPM, 1, NotSerialized)
18039         {
18040             Local0 = DerefOf (Arg0 [0x04])
18041             Local1 = DerefOf (Arg0 [0x02])
18042             A004 (Local0, Local1)
18043         }
18044 
18045         Method (A005, 0, NotSerialized)
18046         {
18047             Local7 = Buffer (0x18){}
18048             CreateDWordField (Local7, 0x00, A006)
18049             CreateDWordField (Local7, 0x04, A007)
18050             CreateDWordField (Local7, 0x08, A008)
18051             CreateDWordField (Local7, 0x0C, A009)
18052             CreateDWordField (Local7, 0x10, A010)
18053             CreateDWordField (Local7, 0x14, A011)
18054             A006 = 0x00
18055             A007 = 0x00
18056             A008 = 0x00
18057             A009 = 0x00
18058             A010 = 0x00
18059             A011 = 0x00
18060             If ((AD00 == 0x00))
18061             {
18062                 A012 (0x18, Local7)
18063             }
18064             Else
18065             {
18066                 A012 (0x19, Local7)
18067             }
18068         }
18069 
18070         Method (A013, 2, NotSerialized)
18071         {
18072         }
18073     }
18074 
18075     Scope (\_PR.P000)
18076     {
18077         Name (_PCT, Package (0x02)  // _PCT: Performance Control
18078         {
18079             ResourceTemplate ()
18080             {
18081                 Register (FFixedHW, 
18082                     0x40,               // Bit Width
18083                     0x00,               // Bit Offset
18084                     0x00000000C0010062, // Address
18085                     ,)
18086             }, 
18087 
18088             ResourceTemplate ()
18089             {
18090                 Register (FFixedHW, 
18091                     0x40,               // Bit Width
18092                     0x00,               // Bit Offset
18093                     0x0000000000000000, // Address
18094                     ,)
18095             }
18096         })
18097         Name (_PSS, Package (0x03)  // _PSS: Performance Supported States
18098         {
18099             Package (0x06)
18100             {
18101                 0x00000A28, 
18102                 0x00000C60, 
18103                 0x00000000, 
18104                 0x00000000, 
18105                 0x00000000, 
18106                 0x00000000
18107             }, 
18108 
18109             Package (0x06)
18110             {
18111                 0x000006A4, 
18112                 0x0000064F, 
18113                 0x00000000, 
18114                 0x00000000, 
18115                 0x00000001, 
18116                 0x00000001
18117             }, 
18118 
18119             Package (0x06)
18120             {
18121                 0x00000578, 
18122                 0x000004FD, 
18123                 0x00000000, 
18124                 0x00000000, 
18125                 0x00000002, 
18126                 0x00000002
18127             }
18128         })
18129         Name (XPSS, Package (0x03)
18130         {
18131             Package (0x08)
18132             {
18133                 0x00000A28, 
18134                 0x00000C60, 
18135                 0x00000000, 
18136                 0x00000000, 
18137                 Buffer (0x08)
18138                 {
18139                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18140                 }, 
18141 
18142                 Buffer (0x08)
18143                 {
18144                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18145                 }, 
18146 
18147                 Buffer (0x08)
18148                 {
18149                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18150                 }, 
18151 
18152                 Buffer (0x08)
18153                 {
18154                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18155                 }
18156             }, 
18157 
18158             Package (0x08)
18159             {
18160                 0x000006A4, 
18161                 0x0000064F, 
18162                 0x00000000, 
18163                 0x00000000, 
18164                 Buffer (0x08)
18165                 {
18166                      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18167                 }, 
18168 
18169                 Buffer (0x08)
18170                 {
18171                      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18172                 }, 
18173 
18174                 Buffer (0x08)
18175                 {
18176                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18177                 }, 
18178 
18179                 Buffer (0x08)
18180                 {
18181                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18182                 }
18183             }, 
18184 
18185             Package (0x08)
18186             {
18187                 0x00000578, 
18188                 0x000004FD, 
18189                 0x00000000, 
18190                 0x00000000, 
18191                 Buffer (0x08)
18192                 {
18193                      0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18194                 }, 
18195 
18196                 Buffer (0x08)
18197                 {
18198                      0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18199                 }, 
18200 
18201                 Buffer (0x08)
18202                 {
18203                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18204                 }, 
18205 
18206                 Buffer (0x08)
18207                 {
18208                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18209                 }
18210             }
18211         })
18212         Name (_PSD, Package (0x01)  // _PSD: Power State Dependencies
18213         {
18214             Package (0x05)
18215             {
18216                 0x05, 
18217                 0x00, 
18218                 0x00000000, 
18219                 0x000000FE, 
18220                 0x00000002
18221             }
18222         })
18223         Name (PPCV, 0x00)
18224         Method (_PPC, 0, NotSerialized)  // _PPC: Performance Present Capabilities
18225         {
18226             Return (PPCV) /* \_PR_.P000.PPCV */
18227         }
18228 
18229         Name (_CST, Package (0x03)  // _CST: C-States
18230         {
18231             0x02, 
18232             Package (0x04)
18233             {
18234                 ResourceTemplate ()
18235                 {
18236                     Register (FFixedHW, 
18237                         0x02,               // Bit Width
18238                         0x02,               // Bit Offset
18239                         0x0000000000000000, // Address
18240                         ,)
18241                 }, 
18242 
18243                 0x01, 
18244                 0x0001, 
18245                 0x00000000
18246             }, 
18247 
18248             Package (0x04)
18249             {
18250                 ResourceTemplate ()
18251                 {
18252                     Register (SystemIO, 
18253                         0x08,               // Bit Width
18254                         0x00,               // Bit Offset
18255                         0x0000000000000414, // Address
18256                         0x01,               // Access Size
18257                         )
18258                 }, 
18259 
18260                 0x02, 
18261                 0x0190, 
18262                 0x00000000
18263             }
18264         })
18265         Name (_CSD, Package (0x01)  // _CSD: C-State Dependencies
18266         {
18267             Package (0x06)
18268             {
18269                 0x06, 
18270                 0x00, 
18271                 0x00000000, 
18272                 0x000000FE, 
18273                 0x00000002, 
18274                 0x00000000
18275             }
18276         })
18277     }
18278 
18279     Scope (\_PR.P001)
18280     {
18281         Name (_PCT, Package (0x02)  // _PCT: Performance Control
18282         {
18283             ResourceTemplate ()
18284             {
18285                 Register (FFixedHW, 
18286                     0x40,               // Bit Width
18287                     0x00,               // Bit Offset
18288                     0x00000000C0010062, // Address
18289                     ,)
18290             }, 
18291 
18292             ResourceTemplate ()
18293             {
18294                 Register (FFixedHW, 
18295                     0x40,               // Bit Width
18296                     0x00,               // Bit Offset
18297                     0x0000000000000000, // Address
18298                     ,)
18299             }
18300         })
18301         Name (_PSS, Package (0x03)  // _PSS: Performance Supported States
18302         {
18303             Package (0x06)
18304             {
18305                 0x00000A28, 
18306                 0x00000C60, 
18307                 0x00000000, 
18308                 0x00000000, 
18309                 0x00000000, 
18310                 0x00000000
18311             }, 
18312 
18313             Package (0x06)
18314             {
18315                 0x000006A4, 
18316                 0x0000064F, 
18317                 0x00000000, 
18318                 0x00000000, 
18319                 0x00000001, 
18320                 0x00000001
18321             }, 
18322 
18323             Package (0x06)
18324             {
18325                 0x00000578, 
18326                 0x000004FD, 
18327                 0x00000000, 
18328                 0x00000000, 
18329                 0x00000002, 
18330                 0x00000002
18331             }
18332         })
18333         Name (XPSS, Package (0x03)
18334         {
18335             Package (0x08)
18336             {
18337                 0x00000A28, 
18338                 0x00000C60, 
18339                 0x00000000, 
18340                 0x00000000, 
18341                 Buffer (0x08)
18342                 {
18343                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18344                 }, 
18345 
18346                 Buffer (0x08)
18347                 {
18348                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18349                 }, 
18350 
18351                 Buffer (0x08)
18352                 {
18353                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18354                 }, 
18355 
18356                 Buffer (0x08)
18357                 {
18358                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18359                 }
18360             }, 
18361 
18362             Package (0x08)
18363             {
18364                 0x000006A4, 
18365                 0x0000064F, 
18366                 0x00000000, 
18367                 0x00000000, 
18368                 Buffer (0x08)
18369                 {
18370                      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18371                 }, 
18372 
18373                 Buffer (0x08)
18374                 {
18375                      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18376                 }, 
18377 
18378                 Buffer (0x08)
18379                 {
18380                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18381                 }, 
18382 
18383                 Buffer (0x08)
18384                 {
18385                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18386                 }
18387             }, 
18388 
18389             Package (0x08)
18390             {
18391                 0x00000578, 
18392                 0x000004FD, 
18393                 0x00000000, 
18394                 0x00000000, 
18395                 Buffer (0x08)
18396                 {
18397                      0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18398                 }, 
18399 
18400                 Buffer (0x08)
18401                 {
18402                      0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18403                 }, 
18404 
18405                 Buffer (0x08)
18406                 {
18407                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18408                 }, 
18409 
18410                 Buffer (0x08)
18411                 {
18412                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18413                 }
18414             }
18415         })
18416         Name (_PSD, Package (0x01)  // _PSD: Power State Dependencies
18417         {
18418             Package (0x05)
18419             {
18420                 0x05, 
18421                 0x00, 
18422                 0x00000000, 
18423                 0x000000FE, 
18424                 0x00000002
18425             }
18426         })
18427         Name (PPCV, 0x00)
18428         Method (_PPC, 0, NotSerialized)  // _PPC: Performance Present Capabilities
18429         {
18430             Return (PPCV) /* \_PR_.P001.PPCV */
18431         }
18432 
18433         Name (_CST, Package (0x03)  // _CST: C-States
18434         {
18435             0x02, 
18436             Package (0x04)
18437             {
18438                 ResourceTemplate ()
18439                 {
18440                     Register (FFixedHW, 
18441                         0x02,               // Bit Width
18442                         0x02,               // Bit Offset
18443                         0x0000000000000000, // Address
18444                         ,)
18445                 }, 
18446 
18447                 0x01, 
18448                 0x0001, 
18449                 0x00000000
18450             }, 
18451 
18452             Package (0x04)
18453             {
18454                 ResourceTemplate ()
18455                 {
18456                     Register (SystemIO, 
18457                         0x08,               // Bit Width
18458                         0x00,               // Bit Offset
18459                         0x0000000000000414, // Address
18460                         0x01,               // Access Size
18461                         )
18462                 }, 
18463 
18464                 0x02, 
18465                 0x0190, 
18466                 0x00000000
18467             }
18468         })
18469         Name (_CSD, Package (0x01)  // _CSD: C-State Dependencies
18470         {
18471             Package (0x06)
18472             {
18473                 0x06, 
18474                 0x00, 
18475                 0x00000000, 
18476                 0x000000FE, 
18477                 0x00000002, 
18478                 0x00000000
18479             }
18480         })
18481     }
18482 
18483     Scope (\_PR.P002)
18484     {
18485         Name (_PCT, Package (0x02)  // _PCT: Performance Control
18486         {
18487             ResourceTemplate ()
18488             {
18489                 Register (FFixedHW, 
18490                     0x40,               // Bit Width
18491                     0x00,               // Bit Offset
18492                     0x00000000C0010062, // Address
18493                     ,)
18494             }, 
18495 
18496             ResourceTemplate ()
18497             {
18498                 Register (FFixedHW, 
18499                     0x40,               // Bit Width
18500                     0x00,               // Bit Offset
18501                     0x0000000000000000, // Address
18502                     ,)
18503             }
18504         })
18505         Name (_PSS, Package (0x03)  // _PSS: Performance Supported States
18506         {
18507             Package (0x06)
18508             {
18509                 0x00000A28, 
18510                 0x00000C60, 
18511                 0x00000000, 
18512                 0x00000000, 
18513                 0x00000000, 
18514                 0x00000000
18515             }, 
18516 
18517             Package (0x06)
18518             {
18519                 0x000006A4, 
18520                 0x0000064F, 
18521                 0x00000000, 
18522                 0x00000000, 
18523                 0x00000001, 
18524                 0x00000001
18525             }, 
18526 
18527             Package (0x06)
18528             {
18529                 0x00000578, 
18530                 0x000004FD, 
18531                 0x00000000, 
18532                 0x00000000, 
18533                 0x00000002, 
18534                 0x00000002
18535             }
18536         })
18537         Name (XPSS, Package (0x03)
18538         {
18539             Package (0x08)
18540             {
18541                 0x00000A28, 
18542                 0x00000C60, 
18543                 0x00000000, 
18544                 0x00000000, 
18545                 Buffer (0x08)
18546                 {
18547                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18548                 }, 
18549 
18550                 Buffer (0x08)
18551                 {
18552                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18553                 }, 
18554 
18555                 Buffer (0x08)
18556                 {
18557                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18558                 }, 
18559 
18560                 Buffer (0x08)
18561                 {
18562                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18563                 }
18564             }, 
18565 
18566             Package (0x08)
18567             {
18568                 0x000006A4, 
18569                 0x0000064F, 
18570                 0x00000000, 
18571                 0x00000000, 
18572                 Buffer (0x08)
18573                 {
18574                      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18575                 }, 
18576 
18577                 Buffer (0x08)
18578                 {
18579                      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18580                 }, 
18581 
18582                 Buffer (0x08)
18583                 {
18584                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18585                 }, 
18586 
18587                 Buffer (0x08)
18588                 {
18589                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18590                 }
18591             }, 
18592 
18593             Package (0x08)
18594             {
18595                 0x00000578, 
18596                 0x000004FD, 
18597                 0x00000000, 
18598                 0x00000000, 
18599                 Buffer (0x08)
18600                 {
18601                      0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18602                 }, 
18603 
18604                 Buffer (0x08)
18605                 {
18606                      0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18607                 }, 
18608 
18609                 Buffer (0x08)
18610                 {
18611                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18612                 }, 
18613 
18614                 Buffer (0x08)
18615                 {
18616                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18617                 }
18618             }
18619         })
18620         Name (_PSD, Package (0x01)  // _PSD: Power State Dependencies
18621         {
18622             Package (0x05)
18623             {
18624                 0x05, 
18625                 0x00, 
18626                 0x00000001, 
18627                 0x000000FE, 
18628                 0x00000002
18629             }
18630         })
18631         Name (PPCV, 0x00)
18632         Method (_PPC, 0, NotSerialized)  // _PPC: Performance Present Capabilities
18633         {
18634             Return (PPCV) /* \_PR_.P002.PPCV */
18635         }
18636 
18637         Name (_CST, Package (0x03)  // _CST: C-States
18638         {
18639             0x02, 
18640             Package (0x04)
18641             {
18642                 ResourceTemplate ()
18643                 {
18644                     Register (FFixedHW, 
18645                         0x02,               // Bit Width
18646                         0x02,               // Bit Offset
18647                         0x0000000000000000, // Address
18648                         ,)
18649                 }, 
18650 
18651                 0x01, 
18652                 0x0001, 
18653                 0x00000000
18654             }, 
18655 
18656             Package (0x04)
18657             {
18658                 ResourceTemplate ()
18659                 {
18660                     Register (SystemIO, 
18661                         0x08,               // Bit Width
18662                         0x00,               // Bit Offset
18663                         0x0000000000000414, // Address
18664                         0x01,               // Access Size
18665                         )
18666                 }, 
18667 
18668                 0x02, 
18669                 0x0190, 
18670                 0x00000000
18671             }
18672         })
18673         Name (_CSD, Package (0x01)  // _CSD: C-State Dependencies
18674         {
18675             Package (0x06)
18676             {
18677                 0x06, 
18678                 0x00, 
18679                 0x00000001, 
18680                 0x000000FE, 
18681                 0x00000002, 
18682                 0x00000000
18683             }
18684         })
18685     }
18686 
18687     Scope (\_PR.P003)
18688     {
18689         Name (_PCT, Package (0x02)  // _PCT: Performance Control
18690         {
18691             ResourceTemplate ()
18692             {
18693                 Register (FFixedHW, 
18694                     0x40,               // Bit Width
18695                     0x00,               // Bit Offset
18696                     0x00000000C0010062, // Address
18697                     ,)
18698             }, 
18699 
18700             ResourceTemplate ()
18701             {
18702                 Register (FFixedHW, 
18703                     0x40,               // Bit Width
18704                     0x00,               // Bit Offset
18705                     0x0000000000000000, // Address
18706                     ,)
18707             }
18708         })
18709         Name (_PSS, Package (0x03)  // _PSS: Performance Supported States
18710         {
18711             Package (0x06)
18712             {
18713                 0x00000A28, 
18714                 0x00000C60, 
18715                 0x00000000, 
18716                 0x00000000, 
18717                 0x00000000, 
18718                 0x00000000
18719             }, 
18720 
18721             Package (0x06)
18722             {
18723                 0x000006A4, 
18724                 0x0000064F, 
18725                 0x00000000, 
18726                 0x00000000, 
18727                 0x00000001, 
18728                 0x00000001
18729             }, 
18730 
18731             Package (0x06)
18732             {
18733                 0x00000578, 
18734                 0x000004FD, 
18735                 0x00000000, 
18736                 0x00000000, 
18737                 0x00000002, 
18738                 0x00000002
18739             }
18740         })
18741         Name (XPSS, Package (0x03)
18742         {
18743             Package (0x08)
18744             {
18745                 0x00000A28, 
18746                 0x00000C60, 
18747                 0x00000000, 
18748                 0x00000000, 
18749                 Buffer (0x08)
18750                 {
18751                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18752                 }, 
18753 
18754                 Buffer (0x08)
18755                 {
18756                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18757                 }, 
18758 
18759                 Buffer (0x08)
18760                 {
18761                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18762                 }, 
18763 
18764                 Buffer (0x08)
18765                 {
18766                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18767                 }
18768             }, 
18769 
18770             Package (0x08)
18771             {
18772                 0x000006A4, 
18773                 0x0000064F, 
18774                 0x00000000, 
18775                 0x00000000, 
18776                 Buffer (0x08)
18777                 {
18778                      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18779                 }, 
18780 
18781                 Buffer (0x08)
18782                 {
18783                      0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18784                 }, 
18785 
18786                 Buffer (0x08)
18787                 {
18788                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18789                 }, 
18790 
18791                 Buffer (0x08)
18792                 {
18793                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18794                 }
18795             }, 
18796 
18797             Package (0x08)
18798             {
18799                 0x00000578, 
18800                 0x000004FD, 
18801                 0x00000000, 
18802                 0x00000000, 
18803                 Buffer (0x08)
18804                 {
18805                      0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18806                 }, 
18807 
18808                 Buffer (0x08)
18809                 {
18810                      0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18811                 }, 
18812 
18813                 Buffer (0x08)
18814                 {
18815                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18816                 }, 
18817 
18818                 Buffer (0x08)
18819                 {
18820                      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   // ........
18821                 }
18822             }
18823         })
18824         Name (_PSD, Package (0x01)  // _PSD: Power State Dependencies
18825         {
18826             Package (0x05)
18827             {
18828                 0x05, 
18829                 0x00, 
18830                 0x00000001, 
18831                 0x000000FE, 
18832                 0x00000002
18833             }
18834         })
18835         Name (PPCV, 0x00)
18836         Method (_PPC, 0, NotSerialized)  // _PPC: Performance Present Capabilities
18837         {
18838             Return (PPCV) /* \_PR_.P003.PPCV */
18839         }
18840 
18841         Name (_CST, Package (0x03)  // _CST: C-States
18842         {
18843             0x02, 
18844             Package (0x04)
18845             {
18846                 ResourceTemplate ()
18847                 {
18848                     Register (FFixedHW, 
18849                         0x02,               // Bit Width
18850                         0x02,               // Bit Offset
18851                         0x0000000000000000, // Address
18852                         ,)
18853                 }, 
18854 
18855                 0x01, 
18856                 0x0001, 
18857                 0x00000000
18858             }, 
18859 
18860             Package (0x04)
18861             {
18862                 ResourceTemplate ()
18863                 {
18864                     Register (SystemIO, 
18865                         0x08,               // Bit Width
18866                         0x00,               // Bit Offset
18867                         0x0000000000000414, // Address
18868                         0x01,               // Access Size
18869                         )
18870                 }, 
18871 
18872                 0x02, 
18873                 0x0190, 
18874                 0x00000000
18875             }
18876         })
18877         Name (_CSD, Package (0x01)  // _CSD: C-State Dependencies
18878         {
18879             Package (0x06)
18880             {
18881                 0x06, 
18882                 0x00, 
18883                 0x00000001, 
18884                 0x000000FE, 
18885                 0x00000002, 
18886                 0x00000000
18887             }
18888         })
18889     }
18890 
18891     Method (M040, 1, Serialized)
18892     {
18893         Return (\_SB.PCI0.SBRG.EC0.M040 (Arg0))
18894     }
18895 
18896     Method (M041, 2, Serialized)
18897     {
18898         \_SB.PCI0.SBRG.EC0.M041 (Arg0, Arg1)
18899     }
18900 
18901     Method (M319, 2, Serialized)
18902     {
18903         \_SB.PCI0.SBRG.EC0.M319 (Arg0, Arg1)
18904     }
18905 
18906     Method (M038, 1, Serialized)
18907     {
18908         Local1 = (Arg0 & 0x07)
18909         Local2 = (Arg0 >> 0x03)
18910         Local2 += M229 /* \M229 */
18911         Local0 = M040 (Local2)
18912         Local0 >>= Local1
18913         Local0 &= One
18914         Return (Local0)
18915     }
18916 
18917     Method (M039, 2, Serialized)
18918     {
18919         Local1 = (Arg0 & 0x07)
18920         Local2 = (Arg0 >> 0x03)
18921         Local2 += M229 /* \M229 */
18922         Local0 = M040 (Local2)
18923         Local3 = ((Arg1 & One) << Local1)
18924         Local4 = (0xFF ^ (One << Local1))
18925         Local0 &= Local4
18926         M041 (Local2, (Local0 | Local3))
18927         Local0 = M040 (0xCF)
18928         M041 (0xCF, (Local0 | One))
18929     }
18930 
18931     Scope (\_SB.PCI0.SBRG.EC0)
18932     {
18933         Method (M040, 1, Serialized)
18934         {
18935             Local1 = Zero
18936             If (CondRefOf (Z009))
18937             {
18938                 Acquire (Z009, 0xFFFF)
18939                 Local0 = Arg0
18940                 OperationRegion (VARM, EmbeddedControl, Local0, One)
18941                 Field (VARM, ByteAcc, NoLock, Preserve)
18942                 {
18943                     VARR,   8
18944                 }
18945 
18946                 Local1 = VARR /* \_SB_.PCI0.SBRG.EC0_.M040.VARR */
18947                 Release (Z009)
18948             }
18949 
18950             Return (Local1)
18951         }
18952 
18953         Method (M041, 2, Serialized)
18954         {
18955             If (CondRefOf (Z009))
18956             {
18957                 Acquire (Z009, 0xFFFF)
18958                 Local0 = Arg0
18959                 OperationRegion (VARM, EmbeddedControl, Local0, One)
18960                 Field (VARM, ByteAcc, NoLock, Preserve)
18961                 {
18962                     VARR,   8
18963                 }
18964 
18965                 Local1 = Arg1
18966                 VARR = Local1
18967                 Release (Z009)
18968             }
18969         }
18970 
18971         Method (M319, 2, Serialized)
18972         {
18973             If (CondRefOf (Z009))
18974             {
18975                 Acquire (Z009, 0xFFFF)
18976                 Local0 = Arg0
18977                 OperationRegion (VARI, SystemIO, Local0, One)
18978                 Field (VARI, ByteAcc, NoLock, Preserve)
18979                 {
18980                     VARO,   8
18981                 }
18982 
18983                 Local1 = Arg1
18984                 VARO = Local1
18985                 Release (Z009)
18986             }
18987         }
18988     }
18989 
18990     Scope (\_SB.PCI0.GP17.VGA)
18991     {
18992         Name (M207, Buffer (0xFF){})
18993         Name (M208, Buffer (0x03){})
18994         Name (M204, One)
18995         Method (ATCS, 2, Serialized)
18996         {
18997             If ((Arg0 == Zero))
18998             {
18999                 ATC0 ()
19000             }
19001 
19002             If ((Arg0 == One))
19003             {
19004                 ATC1 ()
19005             }
19006 
19007             If ((Arg0 == 0x02))
19008             {
19009                 ATC2 (Arg1)
19010             }
19011 
19012             If ((Arg0 == 0x03))
19013             {
19014                 ATC3 ()
19015             }
19016 
19017             If ((Arg0 == 0x04))
19018             {
19019                 ATC4 (Arg1)
19020             }
19021 
19022             If ((Arg0 == 0x06))
19023             {
19024                 ATC6 (Arg1)
19025             }
19026 
19027             If ((Arg0 == 0x07))
19028             {
19029                 ATC7 (Arg1)
19030             }
19031 
19032             Return (M207) /* \_SB_.PCI0.GP17.VGA_.M207 */
19033         }
19034 
19035         Method (ATC0, 0, NotSerialized)
19036         {
19037             CreateWordField (M207, Zero, M157)
19038             CreateWordField (M207, 0x02, M158)
19039             CreateDWordField (M207, 0x04, M160)
19040             M157 = 0x08
19041             M158 = One
19042             M160 = 0x6F
19043             M207 = \_SB.ALIB (Zero, M207)
19044         }
19045 
19046         Method (ATC1, 0, Serialized)
19047         {
19048             CreateWordField (M207, Zero, M157)
19049             CreateDWordField (M207, 0x02, M161)
19050             CreateDWordField (M207, 0x06, M162)
19051             CreateField (M207, 0x30, One, M203)
19052             M157 = 0x0A
19053             M161 = One
19054             M162 = M100 /* \M100 */
19055             Local0 = M049 (M133, 0x15)
19056             If ((Local0 & 0x80))
19057             {
19058                 M204 = (Local0 & One)
19059             }
19060             ElseIf ((Local0 & 0x7F))
19061             {
19062                 M204 = M113 (Local0)
19063             }
19064 
19065             M203 = M204 /* \_SB_.PCI0.GP17.VGA_.M204 */
19066         }
19067 
19068         Method (ATC2, 1, Serialized)
19069         {
19070             CreateWordField (M207, Zero, M157)
19071             CreateByteField (M207, 0x02, M205)
19072             M157 = 0x03
19073             M205 = One
19074             M207 = \_SB.ALIB (0x02, Arg0)
19075         }
19076 
19077         Method (ATC3, 0, Serialized)
19078         {
19079             CreateWordField (M207, Zero, M157)
19080             CreateByteField (M207, 0x02, M205)
19081             CreateWordField (M208, Zero, M197)
19082             CreateByteField (M208, 0x02, M206)
19083             M157 = 0x03
19084             M205 = One
19085             M197 = 0x03
19086             M206 = One
19087             M207 = \_SB.ALIB (0x03, M208)
19088         }
19089 
19090         Method (ATC4, 1, Serialized)
19091         {
19092             CreateWordField (M207, Zero, M157)
19093             CreateByteField (M207, 0x02, M209)
19094             M157 = 0x03
19095             M209 = One
19096             M207 = \_SB.ALIB (0x04, Arg0)
19097         }
19098 
19099         Method (ATC6, 1, Serialized)
19100         {
19101             CreateWordField (M207, Zero, M157)
19102             CreateDWordField (M207, 0x02, M234)
19103             M157 = 0x06
19104             M234 = M233 /* \M233 */
19105         }
19106 
19107         Method (ATC7, 1, Serialized)
19108         {
19109             M232 (M235, Zero, One)
19110         }
19111 
19112         Method (XTRM, 2, Serialized)
19113         {
19114             If ((M105 == Zero))
19115             {
19116                 Return (Buffer (One)
19117                 {
19118                      0x00                                             // .
19119                 })
19120             }
19121 
19122             Local4 = M105 /* \M105 */
19123             If ((Local4 > 0x00010000))
19124             {
19125                 Local4 = 0x00010000
19126             }
19127 
19128             Local5 = Arg0
19129             Local6 = Arg1
19130             If ((Local6 > 0x1000))
19131             {
19132                 Local6 = 0x1000
19133             }
19134 
19135             If ((Local5 > Local4))
19136             {
19137                 Return (Buffer (Local6)
19138                 {
19139                      0x00                                             // .
19140                 })
19141             }
19142 
19143             If ((((Local5 & 0x0FFF) + Local6) > 0x1000))
19144             {
19145                 Local6 = (0x1000 - (Local5 & 0x0FFF))
19146             }
19147 
19148             Name (M202, Buffer (0x1000)
19149             {
19150                  0x00                                             // .
19151             })
19152             If (((Local5 & 0xF000) == Zero))
19153             {
19154                 M202 = M106 /* \M106 */
19155             }
19156             ElseIf (((Local5 & 0xF000) == 0x1000))
19157             {
19158                 M202 = M378 /* \M378 */
19159             }
19160             ElseIf (((Local5 & 0xF000) == 0x2000))
19161             {
19162                 M202 = M379 /* \M379 */
19163             }
19164             ElseIf (((Local5 & 0xF000) == 0x3000))
19165             {
19166                 M202 = M380 /* \M380 */
19167             }
19168             ElseIf (((Local5 & 0xF000) == 0x4000))
19169             {
19170                 M202 = M381 /* \M381 */
19171             }
19172             ElseIf (((Local5 & 0xF000) == 0x5000))
19173             {
19174                 M202 = M382 /* \M382 */
19175             }
19176             ElseIf (((Local5 & 0xF000) == 0x6000))
19177             {
19178                 M202 = M383 /* \M383 */
19179             }
19180             ElseIf (((Local5 & 0xF000) == 0x7000))
19181             {
19182                 M202 = M384 /* \M384 */
19183             }
19184             ElseIf (((Local5 & 0xF000) == 0x8000))
19185             {
19186                 M202 = M385 /* \M385 */
19187             }
19188             ElseIf (((Local5 & 0xF000) == 0x9000))
19189             {
19190                 M202 = M386 /* \M386 */
19191             }
19192             ElseIf (((Local5 & 0xF000) == 0xA000))
19193             {
19194                 M202 = M387 /* \M387 */
19195             }
19196             ElseIf (((Local5 & 0xF000) == 0xB000))
19197             {
19198                 M202 = M388 /* \M388 */
19199             }
19200             ElseIf (((Local5 & 0xF000) == 0xC000))
19201             {
19202                 M202 = M389 /* \M389 */
19203             }
19204             ElseIf (((Local5 & 0xF000) == 0xD000))
19205             {
19206                 M202 = M390 /* \M390 */
19207             }
19208             ElseIf (((Local5 & 0xF000) == 0xE000))
19209             {
19210                 M202 = M391 /* \M391 */
19211             }
19212             ElseIf (((Local5 & 0xF000) == 0xF000))
19213             {
19214                 M202 = M392 /* \M392 */
19215             }
19216 
19217             If (((Local5 + Local6) <= Local4))
19218             {
19219                 If ((Local6 == 0x1000))
19220                 {
19221                     Return (M202) /* \_SB_.PCI0.GP17.VGA_.XTRM.M202 */
19222                 }
19223             }
19224             Else
19225             {
19226                 Local6 = (Local4 - Local5)
19227             }
19228 
19229             Name (M393, Buffer (Local6)
19230             {
19231                  0x00                                             // .
19232             })
19233             CreateField (M202, ((Local5 & 0x0FFF) * 0x08), (Local6 * 0x08
19234                 ), M394)
19235             M393 = M394 /* \_SB_.PCI0.GP17.VGA_.XTRM.M394 */
19236             Return (M393) /* \_SB_.PCI0.GP17.VGA_.XTRM.M393 */
19237         }
19238     }
19239 
19240     Method (AFN0, 0, Serialized)
19241     {
19242         If ((M087 == Zero))
19243         {
19244             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFN0))
19245             {
19246                 \_SB.PCI0.GP17.VGA.AFN0 ()
19247             }
19248         }
19249 
19250         If ((M087 == One))
19251         {
19252             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN0))
19253             {
19254                 \_SB.PCI0.GPP0.VGA.AFN0 ()
19255             }
19256 
19257             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN0))
19258             {
19259                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN0 ()
19260             }
19261         }
19262     }
19263 
19264     Method (AFN1, 1, Serialized)
19265     {
19266         If ((M087 == Zero))
19267         {
19268             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFN1))
19269             {
19270                 \_SB.PCI0.GP17.VGA.AFN1 (Arg0)
19271             }
19272         }
19273 
19274         If ((M087 == One))
19275         {
19276             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN1))
19277             {
19278                 \_SB.PCI0.GPP0.VGA.AFN1 (Arg0)
19279             }
19280 
19281             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN1))
19282             {
19283                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN1 (Arg0)
19284             }
19285         }
19286     }
19287 
19288     Method (AFN2, 2, Serialized)
19289     {
19290         If ((M087 == Zero))
19291         {
19292             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFN2))
19293             {
19294                 \_SB.PCI0.GP17.VGA.AFN2 (Arg0, Arg1)
19295             }
19296         }
19297 
19298         If ((M087 == One))
19299         {
19300             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN2))
19301             {
19302                 \_SB.PCI0.GPP0.VGA.AFN2 (Arg0, Arg1)
19303             }
19304 
19305             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN2))
19306             {
19307                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN2 (Arg0, Arg1)
19308             }
19309         }
19310     }
19311 
19312     Method (AFN3, 2, Serialized)
19313     {
19314         If ((M087 == Zero))
19315         {
19316             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFN3))
19317             {
19318                 \_SB.PCI0.GP17.VGA.AFN3 (Arg0, Arg1)
19319             }
19320         }
19321 
19322         If ((M087 == One))
19323         {
19324             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN3))
19325             {
19326                 \_SB.PCI0.GPP0.VGA.AFN3 (Arg0, Arg1)
19327             }
19328 
19329             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN3))
19330             {
19331                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN3 (Arg0, Arg1)
19332             }
19333         }
19334     }
19335 
19336     Method (AFN4, 1, Serialized)
19337     {
19338         If ((M087 == Zero))
19339         {
19340             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFN4))
19341             {
19342                 \_SB.PCI0.GP17.VGA.AFN4 (Arg0)
19343             }
19344         }
19345 
19346         If ((M087 == One))
19347         {
19348             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN4))
19349             {
19350                 \_SB.PCI0.GPP0.VGA.AFN4 (Arg0)
19351             }
19352 
19353             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN4))
19354             {
19355                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN4 (Arg0)
19356             }
19357         }
19358     }
19359 
19360     Method (AFN5, 0, Serialized)
19361     {
19362         If ((M087 == Zero))
19363         {
19364             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFN5))
19365             {
19366                 \_SB.PCI0.GP17.VGA.AFN5 ()
19367             }
19368         }
19369 
19370         If ((M087 == One))
19371         {
19372             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN5))
19373             {
19374                 \_SB.PCI0.GPP0.VGA.AFN5 ()
19375             }
19376 
19377             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN5))
19378             {
19379                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN5 ()
19380             }
19381         }
19382     }
19383 
19384     Method (AFN6, 0, Serialized)
19385     {
19386         If ((M087 == Zero))
19387         {
19388             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFN6))
19389             {
19390                 \_SB.PCI0.GP17.VGA.AFN6 ()
19391             }
19392         }
19393 
19394         If ((M087 == One))
19395         {
19396             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN6))
19397             {
19398                 \_SB.PCI0.GPP0.VGA.AFN6 ()
19399             }
19400 
19401             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN6))
19402             {
19403                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN6 ()
19404             }
19405         }
19406     }
19407 
19408     Method (AFN7, 1, Serialized)
19409     {
19410         If ((M087 == Zero))
19411         {
19412             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFN7))
19413             {
19414                 \_SB.PCI0.GP17.VGA.AFN7 (Arg0)
19415             }
19416         }
19417 
19418         If ((M087 == One))
19419         {
19420             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN7))
19421             {
19422                 \_SB.PCI0.GPP0.VGA.AFN7 (Arg0)
19423             }
19424 
19425             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN7))
19426             {
19427                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN7 (Arg0)
19428             }
19429         }
19430     }
19431 
19432     Method (AFN8, 0, Serialized)
19433     {
19434         If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFN8))
19435         {
19436             \_SB.PCI0.GPP0.VGA.AFN8 ()
19437         }
19438 
19439         If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN8))
19440         {
19441             \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFN8 ()
19442         }
19443     }
19444 
19445     Method (AFNC, 2, Serialized)
19446     {
19447         If ((M087 == Zero))
19448         {
19449             If (CondRefOf (\_SB.PCI0.GP17.VGA.AFNC))
19450             {
19451                 \_SB.PCI0.GP17.VGA.AFNC (Arg0, Arg1)
19452             }
19453         }
19454 
19455         If ((M087 == One))
19456         {
19457             If (CondRefOf (\_SB.PCI0.GPP0.VGA.AFNC))
19458             {
19459                 \_SB.PCI0.GPP0.VGA.AFNC (Arg0, Arg1)
19460             }
19461 
19462             If (CondRefOf (\_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFNC))
19463             {
19464                 \_SB.PCI0.GPP0.SWUS.SWDS.VGA.AFNC (Arg0, Arg1)
19465             }
19466         }
19467     }
19468 
19469     Scope (\_SB)
19470     {
19471         Name (MACO, Zero)
19472     }
19473 
19474     Scope (\_SB.PCI0.GP17.VGA)
19475     {
19476         Name (M189, Buffer (0x0100){})
19477         Name (M190, Ones)
19478         Name (M191, Ones)
19479         Method (ATPX, 2, Serialized)
19480         {
19481             If ((Arg0 == Zero))
19482             {
19483                 Return (PX00 ())
19484             }
19485 
19486             If ((Arg0 == One))
19487             {
19488                 Return (PX01 ())
19489             }
19490 
19491             If ((Arg0 == 0x02))
19492             {
19493                 PX02 (DerefOf (Arg1 [0x02]))
19494                 Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19495             }
19496 
19497             If ((Arg0 == 0x03))
19498             {
19499                 PX03 (DerefOf (Arg1 [0x02]))
19500                 Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19501             }
19502 
19503             If ((Arg0 == 0x04))
19504             {
19505                 PX04 (DerefOf (Arg1 [0x02]))
19506                 Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19507             }
19508 
19509             If ((Arg0 == 0x08))
19510             {
19511                 Return (PX08 ())
19512             }
19513 
19514             If ((Arg0 == 0x09))
19515             {
19516                 Return (PX09 ())
19517             }
19518 
19519             If ((Arg0 == 0x0A))
19520             {
19521                 PX10 (DerefOf (Arg1 [0x02]))
19522                 Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19523             }
19524 
19525             If ((Arg0 == 0x0B))
19526             {
19527                 PX11 (DerefOf (Arg1 [0x02]))
19528                 Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19529             }
19530 
19531             CreateWordField (M189, Zero, M157)
19532             CreateWordField (M189, 0x02, M158)
19533             CreateDWordField (M189, 0x04, M160)
19534             M157 = Zero
19535             M158 = Zero
19536             M160 = Zero
19537             Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19538         }
19539 
19540         Method (PX00, 0, NotSerialized)
19541         {
19542             CreateWordField (M189, Zero, M157)
19543             CreateWordField (M189, 0x02, M158)
19544             CreateDWordField (M189, 0x04, M160)
19545             M157 = 0x08
19546             M158 = One
19547             M160 = M098 /* \M098 */
19548             If (M098)
19549             {
19550                 Local5 = 0x7FFFFFFF
19551                 Local5 |= 0x80000000
19552                 Local0 = M019 (M095, M094, M093, 0x2C)
19553                 Local1 = M019 (M095, M094, (M093 + One), 0x2C)
19554                 If ((Local0 != Local5))
19555                 {
19556                     M190 = Local0
19557                 }
19558 
19559                 If ((Local1 != Local5))
19560                 {
19561                     M191 = Local1
19562                 }
19563             }
19564 
19565             Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19566         }
19567 
19568         Method (PX01, 0, NotSerialized)
19569         {
19570             CreateWordField (M189, Zero, M157)
19571             CreateDWordField (M189, 0x02, M161)
19572             CreateDWordField (M189, 0x06, M162)
19573             M157 = 0x0A
19574             M161 = 0x0003FC80
19575             M162 = M099 /* \M099 */
19576             Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19577         }
19578 
19579         Method (PX02, 1, NotSerialized)
19580         {
19581             CreateWordField (M189, Zero, M157)
19582             CreateByteField (M189, 0x02, M192)
19583             M157 = 0x03
19584             M192 = (Arg0 & One)
19585             Local7 = Buffer (0x05){}
19586             CreateWordField (Local7, Zero, M197)
19587             CreateField (Local7, 0x10, 0x03, M200)
19588             CreateField (Local7, 0x13, 0x05, M199)
19589             CreateByteField (Local7, 0x03, M198)
19590             CreateByteField (Local7, 0x04, M201)
19591             M197 = 0x05
19592             M198 = Zero
19593             M199 = M091 /* \M091 */
19594             M200 = M090 /* \M090 */
19595             Name (HPOK, Zero)
19596             Local0 = M049 (M133, 0x11)
19597             Local6 = M113 (Local0)
19598             M023 (Zero, M091, M090)
19599             If ((M192 && Local6))
19600             {
19601                 M000 (0x86)
19602                 M112 (Local0, Zero)
19603                 M111 (Local0, One)
19604                 Sleep (0x20)
19605                 M112 (Local0, 0x02)
19606                 M112 (Local0, One)
19607                 M000 (0x87)
19608                 HPOK = Zero
19609                 Sleep (0x14)
19610                 M201 = One
19611                 Local6 = \_SB.ALIB (0x06, Local7)
19612                 Local2 = Zero
19613                 While ((Local2 < 0x0F))
19614                 {
19615                     M023 (Zero, M091, M090)
19616                     Local4 = One
19617                     Local5 = 0xC8
19618                     While ((Local4 && Local5))
19619                     {
19620                         Local0 = M021 (Zero, M091, M090, 0xA5)
19621                         Local0 &= 0x7F
19622                         If (((Local0 >= 0x10) && (Local0 != 0x7F)))
19623                         {
19624                             Local4 = Zero
19625                         }
19626                         Else
19627                         {
19628                             Sleep (0x05)
19629                             Local5--
19630                         }
19631                     }
19632 
19633                     If (!Local4)
19634                     {
19635                         Local5 = M024 (Zero, M091, M090)
19636                         If (Local5)
19637                         {
19638                             M026 (Zero, M091, M090)
19639                             Sleep (0x05)
19640                             Local2++
19641                         }
19642                         Else
19643                         {
19644                             Local0 = Zero
19645                             If ((M025 (Zero, M091, M090) == Ones))
19646                             {
19647                                 Local0 = One
19648                             }
19649 
19650                             If (Local0)
19651                             {
19652                                 M111 (M049 (M133, 0x17), One)
19653                                 M111 (M049 (M133, 0x18), One)
19654                                 HPOK = One
19655                                 Local2 = 0x10
19656                             }
19657                             Else
19658                             {
19659                                 HPOK = Zero
19660                                 Local2 = 0x10
19661                             }
19662                         }
19663                     }
19664                     Else
19665                     {
19666                         Local2 = 0x10
19667                     }
19668                 }
19669 
19670                 If (!HPOK)
19671                 {
19672                     M000 (0x88)
19673                     Local1 = M019 (M095, M094, M093, Zero)
19674                     Sleep (0x0A)
19675                     Local4 = One
19676                     Local5 = 0x05
19677                     While ((Local4 && Local5))
19678                     {
19679                         Local0 = M021 (Zero, M091, M090, 0xA5)
19680                         Local0 &= 0x7F
19681                         If (((Local0 <= 0x04) || (Local0 == 0x1F)))
19682                         {
19683                             Local4 = Zero
19684                         }
19685                         Else
19686                         {
19687                             Local0 = M019 (M095, M094, M093, Zero)
19688                             Sleep (0x05)
19689                             Local5--
19690                         }
19691                     }
19692 
19693                     M201 = Zero
19694                     \_SB.ALIB (0x06, Local7)
19695                 }
19696 
19697                 If ((M097 != Zero))
19698                 {
19699                     Local0 = M019 (Zero, M091, M090, 0x54)
19700                     M020 (Zero, M091, M090, 0x54, (Local0 & 0xFFFF7FFC))
19701                     M232 (M097, Zero, 0x10)
19702                     M020 (Zero, M091, M090, 0x54, (Local0 & 0xFFFF7FFF))
19703                 }
19704 
19705                 M000 (0x89)
19706             }
19707             Else
19708             {
19709                 M000 (0x8A)
19710                 M201 = Zero
19711                 \_SB.ALIB (0x06, Local7)
19712                 M000 (0x8B)
19713                 M111 (M049 (M133, 0x17), Zero)
19714                 M111 (M049 (M133, 0x18), Zero)
19715                 M112 (Local0, Zero)
19716                 Sleep (0x0A)
19717                 M111 (Local0, Zero)
19718                 M023 (Zero, M091, M090)
19719                 Local1 = M019 (M095, M094, M093, Zero)
19720                 Sleep (0x0A)
19721                 Local4 = One
19722                 Local5 = 0x05
19723                 While ((Local4 && Local5))
19724                 {
19725                     Local0 = M021 (Zero, M091, M090, 0xA5)
19726                     Local0 &= 0x7F
19727                     If (((Local0 <= 0x04) || (Local0 == 0x1F)))
19728                     {
19729                         Local4 = Zero
19730                     }
19731                     Else
19732                     {
19733                         Local1 = M019 (M095, M094, M093, Zero)
19734                         Sleep (0x05)
19735                         Local5--
19736                     }
19737                 }
19738 
19739                 HPOK = 0x02
19740                 M000 (0x8C)
19741             }
19742 
19743             If (HPOK)
19744             {
19745                 Local5 = 0x7FFFFFFF
19746                 Local5 |= 0x80000000
19747                 Local1 = M019 (Zero, M091, M090, 0x54)
19748                 M020 (Zero, M091, M090, 0x54, (Local1 & 0xFFFF7FFC))
19749                 Local0 = M019 (M095, M094, M093, Zero)
19750                 If (((HPOK == One) && (Local0 != Local5)))
19751                 {
19752                     M020 (M095, M094, M093, 0x4C, M190)
19753                     Sleep (0x0A)
19754                     If ((M191 != Local5))
19755                     {
19756                         M020 (M095, M094, (M093 + One), 0x4C, M191)
19757                     }
19758 
19759                     Sleep (0x0A)
19760                 }
19761 
19762                 M020 (Zero, M091, M090, 0x54, (Local1 & 0xFFFF7FFF))
19763             }
19764         }
19765 
19766         Method (PX03, 1, NotSerialized)
19767         {
19768             CreateWordField (M189, Zero, M157)
19769             CreateWordField (M189, 0x02, M195)
19770             M157 = 0x04
19771             M195 = (Arg0 & One)
19772             If (M195)
19773             {
19774                 M111 (M049 (M133, 0x17), One)
19775             }
19776             Else
19777             {
19778                 M111 (M049 (M133, 0x17), Zero)
19779             }
19780         }
19781 
19782         Method (PX04, 1, NotSerialized)
19783         {
19784             CreateWordField (M189, Zero, M157)
19785             CreateWordField (M189, 0x02, M196)
19786             M157 = 0x04
19787             M196 = (Arg0 & One)
19788             If (M196)
19789             {
19790                 M111 (M049 (M133, 0x18), One)
19791             }
19792             Else
19793             {
19794                 M111 (M049 (M133, 0x18), Zero)
19795             }
19796         }
19797 
19798         Method (PX08, 0, NotSerialized)
19799         {
19800             CreateWordField (M189, Zero, M193)
19801             CreateWordField (M189, 0x02, M157)
19802             Local0 = M049 (M133, 0x19)
19803             M193 = Local0
19804             M157 = 0x05
19805             Local0 *= M157 /* \_SB_.PCI0.GP17.VGA_.PX08.M157 */
19806             Local1 = Zero
19807             While ((Local1 < Local0))
19808             {
19809                 Local2 = M049 (M133, (0x1A + Local1))
19810                 M189 [(0x04 + Local1)] = Local2
19811                 Local1++
19812             }
19813 
19814             Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19815         }
19816 
19817         Method (PX09, 0, NotSerialized)
19818         {
19819             CreateWordField (M189, Zero, M193)
19820             CreateWordField (M189, 0x02, M157)
19821             Local0 = M049 (M133, 0x7E)
19822             M193 = Local0
19823             M157 = 0x03
19824             Local0 *= M157 /* \_SB_.PCI0.GP17.VGA_.PX09.M157 */
19825             Local1 = Zero
19826             While ((Local1 < Local0))
19827             {
19828                 Local2 = M049 (M133, (0x7F + Local1))
19829                 M189 [(0x04 + Local1)] = Local2
19830                 Local1++
19831             }
19832 
19833             Return (M189) /* \_SB_.PCI0.GP17.VGA_.M189 */
19834         }
19835 
19836         Method (PX10, 1, NotSerialized)
19837         {
19838             CreateWordField (M189, Zero, M157)
19839             CreateByteField (M189, 0x02, M192)
19840             M157 = 0x03
19841             M192 = (Arg0 & One)
19842             \_SB.MACO = (Arg0 & One)
19843         }
19844 
19845         Method (PX11, 1, NotSerialized)
19846         {
19847             CreateWordField (M189, Zero, M157)
19848             CreateByteField (M189, 0x02, M162)
19849             M157 = 0x03
19850             M162 = (Arg0 & One)
19851             Local2 = M162 /* \_SB_.PCI0.GP17.VGA_.PX11.M162 */
19852             Local0 = M131 /* \M131 */
19853             If (Local0)
19854             {
19855                 Local0 = M049 (M131, 0x10)
19856                 Local1 = M049 (M131, 0x11)
19857                 Local1 = (M084 + ((Local0 * 0x0100) + Local1))
19858                 M012 (Local1, 0x0E, Zero, 0x08, Local2)
19859             }
19860         }
19861 
19862         Name (ATIB, Buffer (0x0100){})
19863         Method (ATIF, 2, Serialized)
19864         {
19865             If ((Arg0 == Zero))
19866             {
19867                 Return (AF00 ())
19868             }
19869 
19870             If ((Arg0 == One))
19871             {
19872                 Return (AF01 ())
19873             }
19874 
19875             If ((Arg0 == 0x02))
19876             {
19877                 Return (AF02 ())
19878             }
19879 
19880             If ((Arg0 == 0x03))
19881             {
19882                 Return (AF03 (DerefOf (Arg1 [0x02]), DerefOf (Arg1 [0x04])))
19883             }
19884 
19885             If ((Arg0 == 0x04))
19886             {
19887                 Return (AF04 ())
19888             }
19889 
19890             If ((Arg0 == 0x0F))
19891             {
19892                 Return (AF15 ())
19893             }
19894 
19895             If ((Arg0 == 0x10))
19896             {
19897                 Return (AF16 (DerefOf (Arg1 [0x02])))
19898             }
19899             Else
19900             {
19901                 CreateWordField (ATIB, Zero, M157)
19902                 CreateWordField (ATIB, 0x02, M158)
19903                 CreateDWordField (ATIB, 0x04, M159)
19904                 CreateDWordField (ATIB, 0x08, M160)
19905                 M157 = Zero
19906                 M158 = Zero
19907                 M159 = Zero
19908                 M160 = Zero
19909                 Return (ATIB) /* \_SB_.PCI0.GP17.VGA_.ATIB */
19910             }
19911         }
19912 
19913         Method (AF00, 0, NotSerialized)
19914         {
19915             CreateWordField (ATIB, Zero, M157)
19916             CreateWordField (ATIB, 0x02, M158)
19917             CreateDWordField (ATIB, 0x04, M159)
19918             CreateDWordField (ATIB, 0x08, M160)
19919             M157 = 0x0C
19920             M158 = One
19921             M159 = M101 /* \M101 */
19922             If (!CondRefOf (\_SB.LID._LID))
19923             {
19924                 M102 &= 0xFFFFFFF7
19925             }
19926 
19927             M160 = M102 /* \M102 */
19928             Return (ATIB) /* \_SB_.PCI0.GP17.VGA_.ATIB */
19929         }
19930 
19931         Method (AF01, 0, NotSerialized)
19932         {
19933             CreateWordField (ATIB, Zero, M157)
19934             CreateDWordField (ATIB, 0x02, M161)
19935             CreateDWordField (ATIB, 0x06, M162)
19936             CreateByteField (ATIB, 0x0A, M163)
19937             Local0 = (M103 & 0xFF000000)
19938             Local1 = (M103 & 0x03)
19939             If ((Local1 == 0x02))
19940             {
19941                 M157 = 0x0B
19942                 M161 = 0x03
19943                 M162 = Local1
19944                 M163 = Local0
19945             }
19946             Else
19947             {
19948                 M157 = 0x0A
19949                 M161 = 0x03
19950                 M162 = M103 /* \M103 */
19951             }
19952 
19953             Return (ATIB) /* \_SB_.PCI0.GP17.VGA_.ATIB */
19954         }
19955 
19956         Name (M164, Buffer (0x04)
19957         {
19958              0x00, 0x00, 0x00, 0x00                           // ....
19959         })
19960         Name (M210, Zero)
19961         Name (M211, Zero)
19962         Name (M212, Zero)
19963         Name (M213, Zero)
19964         Name (M214, Zero)
19965         Name (M215, Zero)
19966         Name (M303, Zero)
19967         Name (M304, Zero)
19968         Name (SSDM, 0x0A)
19969         Name (SCDY, Zero)
19970         Method (AF02, 0, NotSerialized)
19971         {
19972             CreateBitField (M164, Zero, M165)
19973             CreateBitField (M164, One, M166)
19974             CreateBitField (M164, 0x02, M167)
19975             CreateBitField (M164, 0x03, M168)
19976             CreateBitField (M164, 0x04, M169)
19977             CreateBitField (M164, 0x05, M170)
19978             CreateBitField (M164, 0x06, M171)
19979             CreateBitField (M164, 0x07, M172)
19980             CreateBitField (M164, 0x08, M173)
19981             CreateBitField (M164, 0x0C, M300)
19982             CreateWordField (ATIB, Zero, M157)
19983             CreateDWordField (ATIB, 0x02, M174)
19984             CreateByteField (ATIB, 0x06, M175)
19985             CreateByteField (ATIB, 0x07, M176)
19986             CreateByteField (ATIB, 0x08, M177)
19987             CreateByteField (ATIB, 0x09, M178)
19988             CreateByteField (ATIB, 0x0A, M179)
19989             CreateByteField (ATIB, 0x0B, M180)
19990             CreateByteField (ATIB, 0x0C, M181)
19991             CreateByteField (ATIB, 0x0D, M301)
19992             CreateDWordField (ATIB, 0x0E, M302)
19993             M157 = 0x0D
19994             M174 = M164 /* \_SB_.PCI0.GP17.VGA_.M164 */
19995             If (M165)
19996             {
19997                 M165 = Zero
19998             }
19999 
20000             If (M166)
20001             {
20002                 M175 = M210 /* \_SB_.PCI0.GP17.VGA_.M210 */
20003                 M210 = Zero
20004                 M166 = Zero
20005             }
20006 
20007             If (M167)
20008             {
20009                 M176 = M211 /* \_SB_.PCI0.GP17.VGA_.M211 */
20010                 M177 = M212 /* \_SB_.PCI0.GP17.VGA_.M212 */
20011                 M211 = Zero
20012                 M212 = Zero
20013                 M167 = Zero
20014             }
20015 
20016             If (M168)
20017             {
20018                 M178 = M213 /* \_SB_.PCI0.GP17.VGA_.M213 */
20019                 M179 = M214 /* \_SB_.PCI0.GP17.VGA_.M214 */
20020                 M213 = Zero
20021                 M214 = Zero
20022                 M168 = Zero
20023             }
20024 
20025             If (M169)
20026             {
20027                 M180 = M215 /* \_SB_.PCI0.GP17.VGA_.M215 */
20028                 M169 = Zero
20029             }
20030 
20031             If (M171)
20032             {
20033                 M171 = Zero
20034             }
20035 
20036             If (M172)
20037             {
20038                 M172 = Zero
20039             }
20040 
20041             If (M173)
20042             {
20043                 M173 = Zero
20044             }
20045 
20046             If (M300)
20047             {
20048                 M301 = M303 /* \_SB_.PCI0.GP17.VGA_.M303 */
20049                 M302 = M304 /* \_SB_.PCI0.GP17.VGA_.M304 */
20050                 M303 = Zero
20051                 M304 = Zero
20052                 M300 = Zero
20053             }
20054 
20055             Return (ATIB) /* \_SB_.PCI0.GP17.VGA_.ATIB */
20056         }
20057 
20058         Method (AF03, 2, NotSerialized)
20059         {
20060             CreateWordField (ATIB, Zero, M157)
20061             CreateWordField (ATIB, 0x02, M182)
20062             CreateWordField (ATIB, 0x04, M183)
20063             M182 = Arg0
20064             M183 = Arg1
20065             Name (M184, 0x06)
20066             Name (M185, 0x06)
20067             Name (M186, Buffer (0x14)
20068             {
20069                  0x00                                             // .
20070             })
20071             Name (M187, Zero)
20072             M187 = M049 (M133, 0xBF)
20073             Local1 = Zero
20074             While ((Local1 < M187))
20075             {
20076                 Local2 = M049 (M133, (0xC0 + Local1))
20077                 M186 [Local1] = Local2
20078                 Local1++
20079             }
20080 
20081             Local1 = M182 /* \_SB_.PCI0.GP17.VGA_.AF03.M182 */
20082             Local1 &= 0x8B
20083             Local2 = M183 /* \_SB_.PCI0.GP17.VGA_.AF03.M183 */
20084             If (CondRefOf (\_SB.LID._LID))
20085             {
20086                 Local0 = \_SB.LID._LID /* External reference */
20087                 Local2 &= 0xFFFFFFFE
20088                 Local2 |= Local0
20089             }
20090 
20091             Local0 = Zero
20092             While ((Local0 < M187))
20093             {
20094                 Local3 = DerefOf (M186 [Local0])
20095                 If ((Local3 == Local1))
20096                 {
20097                     M185 = Local0
20098                     Local0 = M187 /* \_SB_.PCI0.GP17.VGA_.AF03.M187 */
20099                 }
20100                 Else
20101                 {
20102                     Local0++
20103                 }
20104             }
20105 
20106             Local0 = M185 /* \_SB_.PCI0.GP17.VGA_.AF03.M185 */
20107             While ((Local0 < M187))
20108             {
20109                 Local0++
20110                 If ((Local0 == M187))
20111                 {
20112                     Local0 = Zero
20113                 }
20114 
20115                 Local3 = DerefOf (M186 [Local0])
20116                 If (((Local3 & Local2) == Local3))
20117                 {
20118                     M184 = Local0
20119                     Local0 = M187 /* \_SB_.PCI0.GP17.VGA_.AF03.M187 */
20120                 }
20121             }
20122 
20123             If ((M184 == M187))
20124             {
20125                 M182 = Zero
20126             }
20127             Else
20128             {
20129                 Local0 = M184 /* \_SB_.PCI0.GP17.VGA_.AF03.M184 */
20130                 Local3 = DerefOf (M186 [Local0])
20131                 M182 &= 0xFFFFFFF4
20132                 M182 |= Local3
20133             }
20134 
20135             M157 = 0x04
20136             Return (ATIB) /* \_SB_.PCI0.GP17.VGA_.ATIB */
20137         }
20138 
20139         Method (AF04, 0, NotSerialized)
20140         {
20141             CreateWordField (ATIB, Zero, M157)
20142             CreateByteField (ATIB, 0x02, M188)
20143             M157 = 0x03
20144             Local1 = Zero
20145             If (CondRefOf (\_SB.LID._LID))
20146             {
20147                 Local0 = \_SB.LID._LID /* External reference */
20148                 Local1 = (Local0 ^ One)
20149             }
20150 
20151             M188 = Local1
20152             Return (ATIB) /* \_SB_.PCI0.GP17.VGA_.ATIB */
20153         }
20154 
20155         Method (AF15, 0, NotSerialized)
20156         {
20157             ATIB = M104 /* \M104 */
20158             Return (ATIB) /* \_SB_.PCI0.GP17.VGA_.ATIB */
20159         }
20160 
20161         Method (AF16, 1, NotSerialized)
20162         {
20163             Local0 = M013 (M133, 0xD4, Zero, 0x10)
20164             If (Local0)
20165             {
20166                 Local1 = Zero
20167                 While ((Local1 < Local0))
20168                 {
20169                     Local2 = M049 (M133, (0xD4 + Local1))
20170                     ATIB [Local1] = Local2
20171                     Local1++
20172                 }
20173             }
20174             Else
20175             {
20176                 Local3 = M043 (Zero, Arg0, Zero)
20177                 If ((ObjectType (Local3) == 0x03))
20178                 {
20179                     ATIB = Local3
20180                 }
20181                 Else
20182                 {
20183                     ATIB [Zero] = 0x05
20184                     ATIB [One] = Zero
20185                     ATIB [0x02] = Zero
20186                     ATIB [0x03] = Zero
20187                     ATIB [0x04] = 0x02
20188                 }
20189             }
20190 
20191             Return (ATIB) /* \_SB_.PCI0.GP17.VGA_.ATIB */
20192         }
20193 
20194         Method (AFN0, 0, Serialized)
20195         {
20196             If ((M101 & One))
20197             {
20198                 CreateBitField (M164, Zero, M165)
20199                 M165 = One
20200                 Notify (VGA, 0x81) // Information Change
20201             }
20202         }
20203 
20204         Method (AFN1, 1, Serialized)
20205         {
20206             If ((M101 & 0x02))
20207             {
20208                 Local0 = Arg0
20209                 M210 = Local0
20210                 CreateBitField (M164, One, M166)
20211                 M166 = One
20212                 Notify (VGA, 0x81) // Information Change
20213             }
20214         }
20215 
20216         Method (AFN2, 2, Serialized)
20217         {
20218             If ((M101 & 0x04))
20219             {
20220                 Local0 = Arg0
20221                 M212 = Local0
20222                 Local0 = Arg1
20223                 M211 = Local0 &= 0x03
20224                 CreateBitField (M164, 0x02, M167)
20225                 M167 = One
20226                 Notify (VGA, 0x81) // Information Change
20227             }
20228         }
20229 
20230         Method (AFN3, 2, Serialized)
20231         {
20232             If ((M101 & 0x08))
20233             {
20234                 Local0 = Arg0
20235                 M214 = Local0
20236                 Local0 = Arg1
20237                 M213 = Local0 &= 0x03
20238                 CreateBitField (M164, 0x03, M168)
20239                 M168 = One
20240                 Notify (VGA, 0x81) // Information Change
20241             }
20242         }
20243 
20244         Method (AFN4, 1, Serialized)
20245         {
20246             If ((M101 & 0x10))
20247             {
20248                 Local0 = Arg0
20249                 Local1 = M215 /* \_SB_.PCI0.GP17.VGA_.M215 */
20250                 M215 = Local0
20251                 If ((Local0 == Local1)){}
20252                 Else
20253                 {
20254                     CreateBitField (M164, 0x04, M169)
20255                     M169 = One
20256                     Notify (VGA, 0x81) // Information Change
20257                 }
20258             }
20259         }
20260 
20261         Method (AFN5, 0, Serialized)
20262         {
20263             If ((M101 & 0x20))
20264             {
20265                 CreateBitField (M164, 0x05, M170)
20266                 M170 = One
20267                 Notify (VGA, 0x81) // Information Change
20268             }
20269         }
20270 
20271         Method (AFN6, 0, Serialized)
20272         {
20273             If ((M101 & 0x40))
20274             {
20275                 CreateBitField (M164, 0x06, M171)
20276                 M171 = One
20277                 Notify (VGA, 0x81) // Information Change
20278             }
20279         }
20280 
20281         Method (AFN7, 1, Serialized)
20282         {
20283             If ((M101 & 0x80))
20284             {
20285                 CreateBitField (M164, 0x07, M172)
20286                 M172 = One
20287                 CreateByteField (ATIB, 0x0C, M181)
20288                 M181 = Arg0
20289                 Notify (VGA, 0x81) // Information Change
20290             }
20291         }
20292 
20293         Method (AFN8, 0, Serialized)
20294         {
20295             If ((M101 & 0x0100))
20296             {
20297                 CreateBitField (M164, 0x08, M173)
20298                 M173 = One
20299                 Notify (VGA, 0x81) // Information Change
20300             }
20301         }
20302 
20303         Method (AFNC, 2, Serialized)
20304         {
20305             If ((M101 & 0x1000))
20306             {
20307                 Local0 = (Arg0 & 0x03)
20308                 M303 = Local0
20309                 Local0 = (Arg1 & Ones)
20310                 M304 = Local0
20311                 CreateBitField (M164, 0x0C, M300)
20312                 M300 = One
20313                 Notify (VGA, 0x81) // Information Change
20314             }
20315         }
20316     }
20317 
20318     OperationRegion (CPNV, SystemMemory, 0xBDFD6018, 0x000100C9)
20319     Field (CPNV, AnyAcc, Lock, Preserve)
20320     {
20321         M082,   32, 
20322         M083,   32, 
20323         M084,   32, 
20324         M085,   8, 
20325         M221,   8, 
20326         M086,   16, 
20327         M229,   8, 
20328         M231,   16, 
20329         M235,   8, 
20330         M233,   32, 
20331             ,   1, 
20332             ,   2, 
20333             ,   1, 
20334             ,   1, 
20335             ,   1, 
20336             ,   1, 
20337         Offset (0x19), 
20338         M087,   1, 
20339             ,   1, 
20340         Offset (0x1C), 
20341         M088,   16, 
20342         M089,   16, 
20343         M090,   3, 
20344         M091,   5, 
20345         M092,   8, 
20346         M093,   3, 
20347         M094,   5, 
20348         M095,   8, 
20349         M096,   8, 
20350         M097,   8, 
20351         M098,   32, 
20352         M099,   32, 
20353         M100,   32, 
20354         M101,   32, 
20355         M102,   32, 
20356         M103,   32, 
20357         M104,   224, 
20358         M105,   32, 
20359         M106,   32768, 
20360         M378,   32768, 
20361         M379,   32768, 
20362         M380,   32768, 
20363         M381,   32768, 
20364         M382,   32768, 
20365         M383,   32768, 
20366         M384,   32768, 
20367         M385,   32768, 
20368         M386,   32768, 
20369         M387,   32768, 
20370         M388,   32768, 
20371         M389,   32768, 
20372         M390,   32768, 
20373         M391,   32768, 
20374         M392,   32768, 
20375         M107,   64, 
20376         M320,   32, 
20377         M321,   32, 
20378         M322,   32, 
20379         M323,   32, 
20380         M324,   32, 
20381         M325,   32, 
20382         M326,   32, 
20383         M327,   16, 
20384         M328,   8, 
20385         M128,   32, 
20386         M108,   32, 
20387         M109,   32, 
20388         M110,   32, 
20389         M122,   32, 
20390         M131,   32, 
20391         M132,   32, 
20392         M133,   32, 
20393         M134,   32, 
20394         M135,   32, 
20395         M136,   32, 
20396         M220,   32, 
20397         M226,   32, 
20398         M251,   32, 
20399         M310,   32, 
20400         M280,   32, 
20401         M290,   32
20402     }
20403 
20404     Method (M000, 1, Serialized)
20405     {
20406         Name (M285, Buffer (0x04)
20407         {
20408              0x01, 0x03, 0x80, 0x00                           // ....
20409         })
20410         CreateByteField (M285, Zero, M286)
20411         CreateByteField (M285, One, M287)
20412         CreateWordField (M285, 0x02, M288)
20413         If ((ToInteger (M286) == One))
20414         {
20415             Local0 = (Arg0 + 0xB0000C00)
20416             Local1 = ToInteger (M288)
20417             If ((ToInteger (M287) == 0x03))
20418             {
20419                 OperationRegion (VARM, SystemIO, Local1, 0x04)
20420                 Field (VARM, DWordAcc, NoLock, Preserve)
20421                 {
20422                     VARR,   32
20423                 }
20424 
20425                 VARR = Local0
20426             }
20427             ElseIf ((ToInteger (M287) == 0x02))
20428             {
20429                 OperationRegion (VARN, SystemIO, Local1, 0x02)
20430                 Field (VARN, WordAcc, NoLock, Preserve)
20431                 {
20432                     VARS,   16
20433                 }
20434 
20435                 VARS = (Local0 & 0xFFFF)
20436             }
20437             ElseIf ((ToInteger (M287) == One))
20438             {
20439                 OperationRegion (VARO, SystemIO, Local1, One)
20440                 Field (VARO, ByteAcc, NoLock, Preserve)
20441                 {
20442                     VART,   8
20443                 }
20444 
20445                 VART = (Local0 & 0xFF)
20446             }
20447         }
20448     }
20449 
20450     Method (M019, 4, Serialized)
20451     {
20452         Return (M017 (Arg0, Arg1, Arg2, Arg3, Zero, 0x20))
20453     }
20454 
20455     Method (M020, 5, Serialized)
20456     {
20457         M018 (Arg0, Arg1, Arg2, Arg3, Zero, 0x20, Arg4)
20458     }
20459 
20460     Mutex (M253, 0x00)
20461     Method (M249, 3, Serialized)
20462     {
20463         If (((Arg0 == Zero) && (Arg1 == Zero)))
20464         {
20465             Local0 = Zero
20466         }
20467         Else
20468         {
20469             Local0 = M252 (Arg0, Arg1)
20470         }
20471 
20472         If ((Local0 == Ones))
20473         {
20474             Return (Ones)
20475         }
20476 
20477         Local0 = (M083 + (Local0 << 0x14))
20478         Local0 += 0xB8
20479         Acquire (M253, 0xFFFF)
20480         OperationRegion (VARM, SystemMemory, Local0, 0x08)
20481         Field (VARM, DWordAcc, NoLock, Preserve)
20482         {
20483             VAR1,   32
20484         }
20485 
20486         BankField (VARM, VAR1, Arg2, DWordAcc, NoLock, Preserve)
20487         {
20488             Offset (0x04), 
20489             VAR2,   32
20490         }
20491 
20492         Local1 = VAR1 /* \M249.VAR1 */
20493         Local2 = VAR2 /* \M249.VAR2 */
20494         VAR1 = Local1
20495         Release (M253)
20496         Return (Local2)
20497     }
20498 
20499     Method (M250, 4, Serialized)
20500     {
20501         If (((Arg0 == Zero) && (Arg1 == Zero)))
20502         {
20503             Local0 = Zero
20504         }
20505         Else
20506         {
20507             Local0 = M252 (Arg0, Arg1)
20508         }
20509 
20510         If ((Local0 != Ones))
20511         {
20512             Local0 = (M083 + (Local0 << 0x14))
20513             Local0 += 0xB8
20514             Acquire (M253, 0xFFFF)
20515             OperationRegion (VARM, SystemMemory, Local0, 0x08)
20516             Field (VARM, DWordAcc, NoLock, Preserve)
20517             {
20518                 VAR1,   32
20519             }
20520 
20521             BankField (VARM, VAR1, Arg2, DWordAcc, NoLock, Preserve)
20522             {
20523                 Offset (0x04), 
20524                 VAR2,   32
20525             }
20526 
20527             Local1 = VAR1 /* \M250.VAR1 */
20528             VAR2 = Arg3
20529             VAR1 = Local1
20530             Release (M253)
20531         }
20532     }
20533 
20534     Method (M021, 4, Serialized)
20535     {
20536         Local0 = (M083 + (Arg0 << 0x14))
20537         Local0 += (Arg1 << 0x0F)
20538         Local0 += (Arg2 << 0x0C)
20539         Local0 += 0xE0
20540         OperationRegion (VARM, SystemMemory, Local0, 0x08)
20541         Field (VARM, DWordAcc, NoLock, Preserve)
20542         {
20543             VAR1,   32
20544         }
20545 
20546         BankField (VARM, VAR1, Arg3, DWordAcc, NoLock, Preserve)
20547         {
20548             Offset (0x04), 
20549             VAR2,   32
20550         }
20551 
20552         Local0 = VAR2 /* \M021.VAR2 */
20553         Return (Local0)
20554     }
20555 
20556     Method (M022, 5, Serialized)
20557     {
20558         Local0 = (M083 + (Arg0 << 0x14))
20559         Local0 += (Arg1 << 0x0F)
20560         Local0 += (Arg2 << 0x0C)
20561         Local0 += 0xE0
20562         OperationRegion (VARM, SystemMemory, Local0, 0x08)
20563         Field (VARM, DWordAcc, NoLock, Preserve)
20564         {
20565             VAR1,   32
20566         }
20567 
20568         BankField (VARM, VAR1, Arg3, DWordAcc, NoLock, Preserve)
20569         {
20570             Offset (0x04), 
20571             VAR2,   32
20572         }
20573 
20574         VAR2 = Arg4
20575     }
20576 
20577     Method (M023, 3, Serialized)
20578     {
20579         M018 (Arg0, Arg1, Arg2, 0x70, 0x03, One, Zero)
20580         M018 (Arg0, Arg1, Arg2, 0x70, 0x13, One, One)
20581     }
20582 
20583     Method (M024, 3, Serialized)
20584     {
20585         Local0 = M019 (Arg0, Arg1, Arg2, 0x0128)
20586         If ((Local0 & 0x00020000))
20587         {
20588             Return (Ones)
20589         }
20590         Else
20591         {
20592             Return (Zero)
20593         }
20594     }
20595 
20596     Method (M026, 3, Serialized)
20597     {
20598         Local0 = M021 (Arg0, Arg1, Arg2, 0xA2)
20599         Local0 &= 0xFFFFFFF8
20600         Local1 = (Local0 >> 0x04)
20601         Local1 &= 0x07
20602         Local0 |= Local1
20603         Local0 |= 0x0100
20604         M022 (Arg0, Arg1, Arg2, 0xA2, Local0)
20605     }
20606 
20607     Method (M025, 3, Serialized)
20608     {
20609         Local0 = M019 (Arg0, Arg1, Arg2, 0x68)
20610         Local0 &= 0xFFFFFFDF
20611         M020 (Arg0, Arg1, Arg2, 0x68, Local0)
20612         Local0 |= 0x20
20613         M020 (Arg0, Arg1, Arg2, 0x68, Local0)
20614         Local1 = 0x64
20615         Local2 = One
20616         While ((Local1 && Local2))
20617         {
20618             Sleep (One)
20619             Local3 = M019 (Arg0, Arg1, Arg2, 0x68)
20620             If ((Local3 & 0x08000000))
20621             {
20622                 Local1--
20623             }
20624             Else
20625             {
20626                 Local2 = Zero
20627             }
20628         }
20629 
20630         Local0 &= 0xFFFFFFDF
20631         M020 (Arg0, Arg1, Arg2, 0x68, Local0)
20632         If (!Local2)
20633         {
20634             Return (Ones)
20635         }
20636         Else
20637         {
20638             Return (Zero)
20639         }
20640     }
20641 
20642     Method (M009, 1, Serialized)
20643     {
20644         Local0 = (Arg0 >> 0x08)
20645         Local1 = (Arg0 & 0xFF)
20646         Local2 = Zero
20647         If ((Local0 == Zero))
20648         {
20649             If ((M085 >= 0x02))
20650             {
20651                 Local2 = M011 ((M084 + 0x1502), (Local1 * 0x04), Zero, 
20652                     One)
20653             }
20654             Else
20655             {
20656                 Local2 = M011 ((M084 + 0x0100), Local1, 0x07, One)
20657             }
20658         }
20659         ElseIf ((Local0 == One))
20660         {
20661             Local2 = M038 (Local1)
20662         }
20663         ElseIf ((Local0 == 0x02))
20664         {
20665             Local2 = M038 ((Local1 + 0x08))
20666         }
20667 
20668         Return (Local2)
20669     }
20670 
20671     Method (M010, 2, Serialized)
20672     {
20673         Local0 = (Arg0 >> 0x08)
20674         Local1 = (Arg0 & 0xFF)
20675         If ((Local0 == Zero))
20676         {
20677             If ((M085 >= 0x02))
20678             {
20679                 M012 ((M084 + 0x1502), (Local1 * 0x04), 0x06, 0x02, (
20680                     0x02 | Arg1))
20681             }
20682             Else
20683             {
20684                 M012 ((M084 + 0x0100), Local1, 0x06, One, Arg1)
20685                 M012 ((M084 + 0x0100), Local1, 0x05, One, Zero)
20686             }
20687         }
20688         ElseIf ((Local0 == One))
20689         {
20690             M039 (Local1, Arg1)
20691         }
20692         ElseIf ((Local0 == 0x02))
20693         {
20694             M039 ((Local1 + 0x08), Arg1)
20695         }
20696     }
20697 
20698     Name (M037, Buffer (0x17)
20699     {
20700         /* 0000 */  0x7E, 0x81, 0x03, 0x16, 0x04, 0x15, 0x0E, 0x05,  // ~.......
20701         /* 0008 */  0x02, 0x20, 0x06, 0x07, 0x10, 0x11, 0x12, 0x18,  // . ......
20702         /* 0010 */  0x17, 0x19, 0x0B, 0x01, 0x0F, 0x0D, 0x09         // .......
20703     })
20704     Name (M227, Buffer (0x18)
20705     {
20706         /* 0000 */  0x41, 0x42, 0x03, 0x16, 0x04, 0x15, 0x0E, 0x05,  // AB......
20707         /* 0008 */  0x02, 0x44, 0x06, 0x07, 0x10, 0x11, 0x12, 0x18,  // .D......
20708         /* 0010 */  0x17, 0x45, 0x0B, 0x01, 0x0F, 0x0D, 0x09, 0x08   // .E......
20709     })
20710     Name (M329, Buffer (0x18)
20711     {
20712         /* 0000 */  0x59, 0x5A, 0x03, 0x16, 0x04, 0x15, 0x5B, 0x05,  // YZ....[.
20713         /* 0008 */  0x02, 0x56, 0x06, 0x4C, 0x10, 0x11, 0x12, 0x18,  // .V.L....
20714         /* 0010 */  0x17, 0x81, 0x54, 0x01, 0x28, 0x00, 0x09, 0x08   // ..T.(...
20715     })
20716     Name (M330, Buffer (0x18)
20717     {
20718         /* 0000 */  0x59, 0x5A, 0x03, 0x16, 0x04, 0x15, 0x5B, 0x05,  // YZ....[.
20719         /* 0008 */  0x02, 0x56, 0x06, 0x07, 0x10, 0x11, 0x12, 0x18,  // .V......
20720         /* 0010 */  0x17, 0x81, 0x54, 0x01, 0x28, 0x00, 0x09, 0x08   // ..T.(...
20721     })
20722     Method (M029, 1, Serialized)
20723     {
20724         If ((M085 == 0x02))
20725         {
20726             Return (M011 ((M084 + 0x1502), (DerefOf (M037 [Arg0]) * 
20727                 0x04), Zero, One))
20728         }
20729         ElseIf ((M085 >= 0x09))
20730         {
20731             If ((M085 >= 0x0B))
20732             {
20733                 Return (M011 ((M084 + 0x1502), (DerefOf (M329 [Arg0]) * 
20734                     0x04), Zero, One))
20735             }
20736             Else
20737             {
20738                 Return (M011 ((M084 + 0x1502), (DerefOf (M330 [Arg0]) * 
20739                     0x04), Zero, One))
20740             }
20741         }
20742         ElseIf ((M085 == 0x08))
20743         {
20744             Return (M011 ((M084 + 0x1502), (DerefOf (M329 [Arg0]) * 
20745                 0x04), Zero, One))
20746         }
20747         ElseIf ((M085 >= 0x03))
20748         {
20749             Return (M011 ((M084 + 0x1502), (DerefOf (M227 [Arg0]) * 
20750                 0x04), Zero, One))
20751         }
20752         Else
20753         {
20754             Return (M011 ((M084 + 0x0160), Arg0, 0x07, One))
20755         }
20756     }
20757 
20758     Method (M031, 1, Serialized)
20759     {
20760         Local0 = M011 ((M084 + 0x0240), Arg0, Zero, 0x05)
20761         Return (M011 ((M084 + 0x0208), (Local0 / 0x08), (Local0 & 
20762             0x07), One))
20763     }
20764 
20765     Method (M032, 2, Serialized)
20766     {
20767         Local0 = M011 ((M084 + 0x0240), Arg0, Zero, 0x05)
20768         M012 ((M084 + 0x0208), (Local0 / 0x08), (Local0 & 0x07
20769             ), One, Arg1)
20770     }
20771 
20772     Method (M013, 4, Serialized)
20773     {
20774         Local0 = (Arg0 + Arg1)
20775         OperationRegion (VARM, SystemMemory, Local0, 0x04)
20776         Field (VARM, DWordAcc, NoLock, Preserve)
20777         {
20778             VARR,   32
20779         }
20780 
20781         Local1 = VARR /* \M013.VARR */
20782         Local5 = 0x7FFFFFFF
20783         Local5 |= 0x80000000
20784         Local2 = ((Local1 >> Arg2) & (Local5 >> (0x20 - Arg3)
20785             ))
20786         Return (Local2)
20787     }
20788 
20789     Method (M014, 5, Serialized)
20790     {
20791         Local0 = (Arg0 + Arg1)
20792         OperationRegion (VARM, SystemMemory, Local0, 0x04)
20793         Field (VARM, DWordAcc, NoLock, Preserve)
20794         {
20795             VARR,   32
20796         }
20797 
20798         Local1 = VARR /* \M014.VARR */
20799         Local5 = 0x7FFFFFFF
20800         Local5 |= 0x80000000
20801         Local2 = (Arg2 + Arg3)
20802         Local2 = (0x20 - Local2)
20803         Local2 = (((Local5 << Local2) & Local5) >> Local2)
20804         Local2 = ((Local2 >> Arg2) << Arg2)
20805         Local3 = (Arg4 << Arg2)
20806         Local4 = ((Local1 & (Local5 ^ Local2)) | Local3)
20807         VARR = Local4
20808     }
20809 
20810     Method (M011, 4, Serialized)
20811     {
20812         Local0 = (Arg0 + Arg1)
20813         OperationRegion (VARM, SystemMemory, Local0, One)
20814         Field (VARM, ByteAcc, NoLock, Preserve)
20815         {
20816             VARR,   8
20817         }
20818 
20819         Local1 = VARR /* \M011.VARR */
20820         Local2 = ((Local1 >> Arg2) & (0xFF >> (0x08 - Arg3)
20821             ))
20822         Return (Local2)
20823     }
20824 
20825     Method (M012, 5, Serialized)
20826     {
20827         Local0 = (Arg0 + Arg1)
20828         OperationRegion (VARM, SystemMemory, Local0, One)
20829         Field (VARM, ByteAcc, NoLock, Preserve)
20830         {
20831             VARR,   8
20832         }
20833 
20834         Local1 = VARR /* \M012.VARR */
20835         Local2 = (Arg2 + Arg3)
20836         Local2 = (0x08 - Local2)
20837         Local2 = (((0xFF << Local2) & 0xFF) >> Local2)
20838         Local2 = ((Local2 >> Arg2) << Arg2)
20839         Local3 = (Arg4 << Arg2)
20840         Local4 = ((Local1 & (0xFF ^ Local2)) | Local3)
20841         VARR = Local4
20842     }
20843 
20844     Method (M017, 6, Serialized)
20845     {
20846         Local0 = M083 /* \M083 */
20847         Local1 = (M083 >> 0x14)
20848         Local2 = (Local1 & 0x0F00)
20849         Local2 += 0x0100
20850         If (((Local1 + Arg0) >= Local2))
20851         {
20852             Local3 = 0x7FFFFFFF
20853             Local3 |= 0x80000000
20854             Local4 = ((Local3 >> Arg4) & (Local3 >> (0x20 - Arg5)
20855                 ))
20856             Return (Local4)
20857         }
20858 
20859         Local0 += (Arg0 << 0x14)
20860         Local0 += (Arg1 << 0x0F)
20861         Local0 += (Arg2 << 0x0C)
20862         Return (M013 (Local0, Arg3, Arg4, Arg5))
20863     }
20864 
20865     Method (M018, 7, Serialized)
20866     {
20867         Local0 = M083 /* \M083 */
20868         Local1 = (M083 >> 0x14)
20869         Local2 = (Local1 & 0x0F00)
20870         Local2 += 0x0100
20871         If (((Local1 + Arg0) < Local2))
20872         {
20873             Local0 += (Arg0 << 0x14)
20874             Local0 += (Arg1 << 0x0F)
20875             Local0 += (Arg2 << 0x0C)
20876             If ((M013 (Local0, Zero, Zero, 0x20) != Ones))
20877             {
20878                 M014 (Local0, Arg3, Arg4, Arg5, Arg6)
20879             }
20880         }
20881     }
20882 
20883     Method (M265, 3, Serialized)
20884     {
20885         Local0 = Zero
20886         Local1 = M017 (Arg0, Arg1, Arg2, 0x34, Zero, 0x08)
20887         While ((Local1 != Zero))
20888         {
20889             Local2 = M017 (Arg0, Arg1, Arg2, Local1, Zero, 0x08)
20890             If (((Local2 == Zero) || (Local2 == 0xFF)))
20891             {
20892                 Break
20893             }
20894 
20895             If ((Local2 == 0x10))
20896             {
20897                 Local3 = M017 (Arg0, Arg1, Arg2, (Local1 + 0x0C), 0x12, One)
20898                 Local4 = M017 (Arg0, Arg1, Arg2, (Local1 + 0x10), 0x08, One)
20899                 If (((Local3 == One) && (Local4 == One)))
20900                 {
20901                     Local0 = One
20902                 }
20903 
20904                 Break
20905             }
20906 
20907             Local1 = M017 (Arg0, Arg1, Arg2, (Local1 + One), Zero, 0x08)
20908         }
20909 
20910         Return (Local0)
20911     }
20912 
20913     Method (M033, 3, Serialized)
20914     {
20915         Local0 = Zero
20916         Local1 = M017 (Arg0, Arg1, Arg2, 0x34, Zero, 0x08)
20917         While ((Local1 != Zero))
20918         {
20919             Local2 = M017 (Arg0, Arg1, Arg2, Local1, Zero, 0x08)
20920             If (((Local2 == Zero) || (Local2 == 0xFF)))
20921             {
20922                 Break
20923             }
20924 
20925             If ((Local2 == 0x10))
20926             {
20927                 Local0 = M017 (Arg0, Arg1, Arg2, (Local1 + 0x0C), 0x0A, 0x02)
20928                 Break
20929             }
20930 
20931             Local1 = M017 (Arg0, Arg1, Arg2, (Local1 + One), Zero, 0x08)
20932         }
20933 
20934         Return (Local0)
20935     }
20936 
20937     Method (M027, 3, Serialized)
20938     {
20939         Local0 = Zero
20940         Local1 = M017 (Arg0, Arg1, Arg2, 0x34, Zero, 0x08)
20941         While ((Local1 != Zero))
20942         {
20943             Local2 = M017 (Arg0, Arg1, Arg2, Local1, Zero, 0x08)
20944             If (((Local2 == Zero) || (Local2 == 0xFF)))
20945             {
20946                 Break
20947             }
20948 
20949             If ((Local2 == 0x10))
20950             {
20951                 Local0 = M017 (Arg0, Arg1, Arg2, (Local1 + 0x10), Zero, 0x02)
20952                 Break
20953             }
20954 
20955             Local1 = M017 (Arg0, Arg1, Arg2, (Local1 + One), Zero, 0x08)
20956         }
20957 
20958         Return (Local0)
20959     }
20960 
20961     Method (M028, 4, Serialized)
20962     {
20963         Local1 = M017 (Arg0, Arg1, Arg2, 0x34, Zero, 0x08)
20964         While (((Local1 != Zero) && (Local1 < 0xFF)))
20965         {
20966             Local2 = M017 (Arg0, Arg1, Arg2, Local1, Zero, 0x08)
20967             If (((Local2 == Zero) || (Local2 == 0xFF)))
20968             {
20969                 Break
20970             }
20971 
20972             If ((Local2 == 0x10))
20973             {
20974                 M018 (Arg0, Arg1, Arg2, (Local1 + 0x10), Zero, 0x02, Arg3)
20975                 Break
20976             }
20977 
20978             Local1 = M017 (Arg0, Arg1, Arg2, (Local1 + One), Zero, 0x08)
20979         }
20980     }
20981 
20982     Method (M034, 1, Serialized)
20983     {
20984         Return (M011 ((M084 + 0x0700), Arg0, Zero, 0x08))
20985     }
20986 
20987     Method (M015, 1, Serialized)
20988     {
20989         Return (M011 ((M084 + 0x0400), Arg0, Zero, 0x08))
20990     }
20991 
20992     Method (M016, 2, Serialized)
20993     {
20994         M012 ((M084 + 0x0400), Arg0, Zero, 0x08, Arg1)
20995     }
20996 
20997     Method (M035, 1, Serialized)
20998     {
20999         Return (M011 (M084, Arg0, Zero, 0x08))
21000     }
21001 
21002     Method (M036, 2, Serialized)
21003     {
21004         M012 (M084, Arg0, Zero, 0x08, Arg1)
21005     }
21006 
21007     Method (M001, 2, Serialized)
21008     {
21009         Local0 = Zero
21010         If ((Arg0 == 0x15))
21011         {
21012             Local0 = One
21013         }
21014 
21015         Return (Local0)
21016     }
21017 
21018     Method (M003, 3, Serialized)
21019     {
21020         Local0 = (Arg0 << 0x05)
21021         Local1 = (Local0 + Arg1)
21022         Local2 = (Local1 << 0x18)
21023         Local3 = (Local2 + Arg2)
21024         Return (Local3)
21025     }
21026 
21027     Method (M004, 1, Serialized)
21028     {
21029         OperationRegion (VARM, SystemIO, 0x0CD8, 0x08)
21030         Field (VARM, DWordAcc, NoLock, Preserve)
21031         {
21032             VAR1,   32
21033         }
21034 
21035         BankField (VARM, VAR1, Arg0, DWordAcc, NoLock, Preserve)
21036         {
21037             Offset (0x04), 
21038             VAR2,   32
21039         }
21040 
21041         Local0 = VAR2 /* \M004.VAR2 */
21042         Return (Local0)
21043     }
21044 
21045     Method (M005, 2, Serialized)
21046     {
21047         OperationRegion (VARM, SystemIO, 0x0CD8, 0x08)
21048         Field (VARM, DWordAcc, NoLock, Preserve)
21049         {
21050             VAR1,   32
21051         }
21052 
21053         BankField (VARM, VAR1, Arg0, DWordAcc, NoLock, Preserve)
21054         {
21055             Offset (0x04), 
21056             VAR2,   32
21057         }
21058 
21059         VAR2 = Arg1
21060     }
21061 
21062     Method (M006, 3, Serialized)
21063     {
21064         Local0 = (M004 (Arg0) & Arg1)
21065         Local1 = (Local0 | Arg2)
21066         M005 (Arg0, Local1)
21067     }
21068 
21069     Method (M002, 2, Serialized)
21070     {
21071         If ((Arg0 == Zero))
21072         {
21073             If ((Arg1 == Zero))
21074             {
21075                 M006 (M003 (0x06, Zero, 0xC0), 0xFFFFEFFF, Zero)
21076                 M006 (M003 (One, Zero, 0x65), 0xFFFFFEFE, Zero)
21077             }
21078 
21079             If ((Arg1 == One))
21080             {
21081                 M006 (M003 (0x06, Zero, 0xC0), 0xFFFFDFFF, Zero)
21082                 M006 (M003 (One, Zero, 0x65), 0xFFFFFDFD, Zero)
21083             }
21084 
21085             If ((Arg1 == 0x02))
21086             {
21087                 M006 (M003 (0x06, Zero, 0xC0), 0xFFFFBFFF, Zero)
21088                 M006 (M003 (One, Zero, 0x65), 0xFFFFFBFB, Zero)
21089             }
21090 
21091             If ((Arg1 == 0x03))
21092             {
21093                 M006 (M003 (0x06, Zero, 0xC0), 0xFFFF7FFF, Zero)
21094                 M006 (M003 (One, Zero, 0x65), 0xFFFFF7F7, Zero)
21095             }
21096 
21097             Sleep (One)
21098         }
21099 
21100         If ((Arg0 == One))
21101         {
21102             If ((Arg1 == Zero))
21103             {
21104                 M006 (M003 (0x06, Zero, 0xC0), 0xFFFFEFFF, 0x1000)
21105                 M006 (M003 (One, Zero, 0x65), 0xFFFFFEFE, 0x0101)
21106             }
21107 
21108             If ((Arg1 == One))
21109             {
21110                 M006 (M003 (0x06, Zero, 0xC0), 0xFFFFDFFF, 0x2000)
21111                 M006 (M003 (One, Zero, 0x65), 0xFFFFFDFD, 0x0202)
21112             }
21113 
21114             If ((Arg1 == 0x02))
21115             {
21116                 M006 (M003 (0x06, Zero, 0xC0), 0xFFFFBFFF, 0x4000)
21117                 M006 (M003 (One, Zero, 0x65), 0xFFFFFBFB, 0x0404)
21118             }
21119 
21120             If ((Arg1 == 0x03))
21121             {
21122                 M006 (M003 (0x06, Zero, 0xC0), 0xFFFF7FFF, 0x8000)
21123                 M006 (M003 (One, Zero, 0x65), 0xFFFFF7F7, 0x0808)
21124             }
21125 
21126             Sleep (One)
21127         }
21128 
21129         If ((Arg0 == Zero))
21130         {
21131             M008 (Arg1)
21132             Local0 = M004 (M003 (0x03, Arg1, 0xA5))
21133             Local0 &= 0xFF
21134             Local1 = 0x01F4
21135             While (((Local1 > Zero) && (Local0 != 0x10)))
21136             {
21137                 Local0 = M004 (M003 (0x03, Arg1, 0xA5))
21138                 Local0 &= 0xFF
21139                 Local1--
21140                 Sleep (One)
21141             }
21142 
21143             If ((Local0 != 0x10))
21144             {
21145                 M007 (Arg1)
21146             }
21147         }
21148     }
21149 
21150     Method (M008, 1, Serialized)
21151     {
21152         Local0 = M019 (Zero, 0x15, Arg0, 0x88)
21153         Local1 = ((Local0 & 0xFFFFFFF0) | 0x02)
21154         M020 (Zero, 0x15, Arg0, 0x88, Local1)
21155         M006 (M003 (0x03, Arg0, 0xA4), 0xFFFFFFFE, One)
21156         M006 (M003 (0x03, Arg0, 0xA2), 0xFFFFDFFF, 0x2000)
21157         M006 (M003 (0x03, Arg0, 0xC0), 0xFFFF7FFF, 0x8000)
21158         M006 (M003 (0x03, Arg0, 0xA4), 0xDFFFFFFF, 0x20000000)
21159         Sleep (One)
21160     }
21161 
21162     Method (M007, 1, Serialized)
21163     {
21164         Local0 = M019 (Zero, 0x15, Arg0, 0x88)
21165         Local1 = ((Local0 & 0xFFFFFFF0) | One)
21166         M020 (Zero, 0x15, Arg0, 0x88, Local1)
21167         M006 (M003 (0x03, Arg0, 0xA4), 0xFFFFFFFE, Zero)
21168         M006 (M003 (0x03, Arg0, 0xA2), 0xFFFFDFFF, 0x2000)
21169         Sleep (One)
21170     }
21171 
21172     Method (M111, 2, Serialized)
21173     {
21174         If ((Arg0 != Zero))
21175         {
21176             Local0 = M110 /* \M110 */
21177             If (Local0)
21178             {
21179                 Local0 += 0x10
21180                 Local1 = Zero
21181                 Local2 = M013 ((Local0 + Local1), Zero, Zero, 0x08)
21182                 While (((Local2 != 0xFF) && (Local2 != Zero)))
21183                 {
21184                     Local3 = M013 ((Local0 + Local1), One, Zero, 0x08)
21185                     If (((Local2 == Arg0) && (Local3 == Arg1)))
21186                     {
21187                         Local3 = M013 ((Local0 + Local1), 0x07, Zero, 0x08)
21188                         If ((Local3 != Zero))
21189                         {
21190                             Local4 = M013 ((Local0 + Local1), 0x02, Zero, 0x08)
21191                             If ((Local4 == Zero))
21192                             {
21193                                 Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x10)
21194                                 Local6 = M013 ((Local0 + Local1), 0x03, 0x10, 0x08)
21195                                 M010 (Local5, Local6)
21196                             }
21197 
21198                             If ((Local4 == One))
21199                             {
21200                                 Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x10)
21201                                 Local6 = M013 ((Local0 + Local1), 0x03, 0x10, 0x08)
21202                                 While ((M009 (Local5) != Local6)){}
21203                             }
21204 
21205                             If ((Local4 == 0x02))
21206                             {
21207                                 Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x20)
21208                                 Sleep (((Local5 + 0x03E7) / 0x03E8))
21209                             }
21210                         }
21211                     }
21212 
21213                     Local1 += 0x08
21214                     Local2 = M013 ((Local0 + Local1), Zero, Zero, 0x08)
21215                 }
21216             }
21217         }
21218     }
21219 
21220     Method (M228, 1, Serialized)
21221     {
21222         If ((Arg0 > 0x03))
21223         {
21224             Local0 = M110 /* \M110 */
21225             If (Local0)
21226             {
21227                 Local0 += 0x10
21228                 Local1 = Zero
21229                 Local2 = M013 ((Local0 + Local1), Zero, Zero, 0x08)
21230                 While (((Local2 != 0xFF) && (Local2 != Zero)))
21231                 {
21232                     Local3 = M013 ((Local0 + Local1), 0x07, Zero, 0x08)
21233                     If ((Local3 == Arg0))
21234                     {
21235                         Local4 = M013 ((Local0 + Local1), 0x02, Zero, 0x08)
21236                         If ((Local4 == Zero))
21237                         {
21238                             Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x10)
21239                             Local6 = M013 ((Local0 + Local1), 0x03, 0x10, 0x08)
21240                             M010 (Local5, Local6)
21241                         }
21242 
21243                         If ((Local4 == One))
21244                         {
21245                             Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x10)
21246                             Local6 = M013 ((Local0 + Local1), 0x03, 0x10, 0x08)
21247                             While ((M009 (Local5) != Local6)){}
21248                         }
21249 
21250                         If ((Local4 == 0x02))
21251                         {
21252                             Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x20)
21253                             Sleep (((Local5 + 0x03E7) / 0x03E8))
21254                         }
21255                     }
21256 
21257                     Local1 += 0x08
21258                     Local2 = M013 ((Local0 + Local1), Zero, Zero, 0x08)
21259                 }
21260             }
21261         }
21262     }
21263 
21264     Method (M219, 2, Serialized)
21265     {
21266         If ((Arg0 != Zero))
21267         {
21268             Local0 = M221 /* \M221 */
21269             If ((Local0 & 0x02))
21270             {
21271                 Local0 = M220 /* \M220 */
21272                 If (Local0)
21273                 {
21274                     Local0 += 0x10
21275                     Local1 = Zero
21276                     Local2 = One
21277                     While ((Local2 != 0xFF))
21278                     {
21279                         Local2 = M013 ((Local0 + Local1), Zero, Zero, 0x08)
21280                         Local3 = M013 ((Local0 + Local1), One, Zero, 0x08)
21281                         Local4 = M013 ((Local0 + Local1), 0x04, Zero, 0x08)
21282                         Local5 = M013 ((Local0 + Local1), 0x07, Zero, 0x08)
21283                         If ((Local4 == Arg0))
21284                         {
21285                             If (((Local2 < 0x0A) && (Local5 & 0x80)))
21286                             {
21287                                 If ((Arg1 == Zero))
21288                                 {
21289                                     If ((M085 >= 0x04))
21290                                     {
21291                                         M012 ((M084 + 0x0E00), Zero, (Local2 * 0x02), 0x02, Zero)
21292                                     }
21293                                     Else
21294                                     {
21295                                         M012 ((M084 + 0x0E00), (Local2 / 0x02), ((Local2 & 
21296                                             One) * 0x04), 0x04, Zero)
21297                                     }
21298                                 }
21299                                 ElseIf ((Local5 & 0x04))
21300                                 {
21301                                     If ((Arg1 == One))
21302                                     {
21303                                         If ((M085 >= 0x04))
21304                                         {
21305                                             M012 ((M084 + 0x0E00), Zero, (Local2 * 0x02), 0x02, 0x03)
21306                                         }
21307                                         Else
21308                                         {
21309                                             M012 ((M084 + 0x0E00), (Local2 / 0x02), ((Local2 & 
21310                                                 One) * 0x04), 0x04, 0x0F)
21311                                         }
21312                                     }
21313 
21314                                     If ((Arg1 == 0x02))
21315                                     {
21316                                         Local6 = M017 (Zero, M013 ((Local0 + Local1), 0x05, Zero, 0x08), 
21317                                             M013 ((Local0 + Local1), 0x06, Zero, 0x08), 0x19, Zero, 0x08)
21318                                         If ((M265 (Local6, Zero, Zero) == One))
21319                                         {
21320                                             If ((M085 >= 0x04))
21321                                             {
21322                                                 M012 ((M084 + 0x0E00), Zero, (Local2 * 0x02), 0x02, One)
21323                                             }
21324                                             Else
21325                                             {
21326                                                 M012 ((M084 + 0x0E00), (Local2 / 0x02), ((Local2 & 
21327                                                     One) * 0x04), 0x04, Local3)
21328                                             }
21329                                         }
21330                                     }
21331                                 }
21332                                 ElseIf ((M085 >= 0x04))
21333                                 {
21334                                     M012 ((M084 + 0x0E00), Zero, (Local2 * 0x02), 0x02, 0x03)
21335                                 }
21336                                 Else
21337                                 {
21338                                     M012 ((M084 + 0x0E00), (Local2 / 0x02), ((Local2 & 
21339                                         One) * 0x04), 0x04, Local3)
21340                                 }
21341 
21342                                 Local2 = 0xFF
21343                             }
21344                         }
21345 
21346                         Local1 += 0x0C
21347                     }
21348                 }
21349             }
21350         }
21351     }
21352 
21353     Method (M112, 2, Serialized)
21354     {
21355         If ((Arg0 != Zero))
21356         {
21357             Local0 = M109 /* \M109 */
21358             If (Local0)
21359             {
21360                 Local0 += 0x10
21361                 Local1 = Zero
21362                 Local2 = One
21363                 While (((Local2 != 0xFF) && (Local2 != Zero)))
21364                 {
21365                     Local2 = M013 ((Local0 + Local1), Zero, Zero, 0x08)
21366                     Local3 = M013 ((Local0 + Local1), One, Zero, 0x08)
21367                     If (((Local2 == Arg0) && (Local3 == Arg1)))
21368                     {
21369                         If ((Local3 < 0x02))
21370                         {
21371                             Local4 = M013 ((Local0 + Local1), 0x02, Zero, 0x08)
21372                             If ((Local4 == Zero))
21373                             {
21374                                 Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x10)
21375                                 Local6 = M013 ((Local0 + Local1), 0x03, 0x10, 0x08)
21376                                 M010 (Local5, Local6)
21377                             }
21378                         }
21379 
21380                         If ((Local3 == 0x02))
21381                         {
21382                             Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x20)
21383                             Sleep (((Local5 + 0x03E7) / 0x03E8))
21384                         }
21385                     }
21386 
21387                     Local1 += 0x08
21388                 }
21389             }
21390         }
21391     }
21392 
21393     Method (M275, 2, Serialized)
21394     {
21395         Local7 = Zero
21396         If ((Arg0 != Zero))
21397         {
21398             Local0 = M109 /* \M109 */
21399             If (Local0)
21400             {
21401                 Local0 += 0x10
21402                 Local1 = Zero
21403                 Local2 = One
21404                 While (((Local2 != 0xFF) && (Local2 != Zero)))
21405                 {
21406                     Local2 = M013 ((Local0 + Local1), Zero, Zero, 0x08)
21407                     Local3 = M013 ((Local0 + Local1), One, Zero, 0x08)
21408                     If (((Local2 == Arg0) && (Local3 == Arg1)))
21409                     {
21410                         If ((Local3 < 0x02))
21411                         {
21412                             Local4 = M013 ((Local0 + Local1), 0x02, Zero, 0x08)
21413                             If ((Local4 == Zero))
21414                             {
21415                                 Local5 = M013 ((Local0 + Local1), 0x03, Zero, 0x10)
21416                                 Local6 = M013 ((Local0 + Local1), 0x03, 0x10, 0x08)
21417                                 If ((M009 (Local5) == Local6))
21418                                 {
21419                                     Local7 = One
21420                                 }
21421                             }
21422                         }
21423                     }
21424 
21425                     Local1 += 0x08
21426                 }
21427             }
21428         }
21429 
21430         Return (Local7)
21431     }
21432 
21433     Method (M113, 1, Serialized)
21434     {
21435         If ((Arg0 != Zero))
21436         {
21437             Local0 = M108 /* \M108 */
21438             Local7 = One
21439             If (Local0)
21440             {
21441                 Local0 += 0x10
21442                 Local1 = Zero
21443                 Local2 = One
21444                 While (((Local2 != 0xFF) && (Local2 != Zero)))
21445                 {
21446                     Local2 = M013 ((Local0 + Local1), Zero, Zero, 0x08)
21447                     If ((Local2 == Arg0))
21448                     {
21449                         Local2 = 0xFF
21450                         Local3 = M013 ((Local0 + Local1), One, Zero, 0x08)
21451                         If ((Local3 == Zero))
21452                         {
21453                             Local5 = M013 ((Local0 + Local1), 0x02, Zero, 0x10)
21454                             Local6 = M013 ((Local0 + Local1), 0x04, Zero, 0x08)
21455                             Local7 = (M009 (Local5) == Local6)
21456                         }
21457 
21458                         If ((Local3 == One))
21459                         {
21460                             Local5 = M013 ((Local0 + Local1), 0x02, Zero, 0x10)
21461                             Local6 = M013 ((Local0 + Local1), 0x04, Zero, 0x08)
21462                             Local7 = (M009 (Local5) == Local6)
21463                             Local5 = M013 ((Local0 + Local1), 0x05, Zero, 0x10)
21464                             Local6 = M013 ((Local0 + Local1), 0x07, Zero, 0x08)
21465                             Local7 &= (M009 (Local5) == Local6)
21466                         }
21467 
21468                         If ((Local3 == 0x02))
21469                         {
21470                             Local5 = M013 ((Local0 + Local1), 0x02, Zero, 0x10)
21471                             Local6 = M013 ((Local0 + Local1), 0x04, Zero, 0x08)
21472                             Local7 = (M009 (Local5) == Local6)
21473                             Local5 = M013 ((Local0 + Local1), 0x05, Zero, 0x10)
21474                             Local6 = M013 ((Local0 + Local1), 0x07, Zero, 0x08)
21475                             Local7 &= (M009 (Local5) == Local6)
21476                             Local5 = M013 ((Local0 + Local1), 0x08, Zero, 0x10)
21477                             Local6 = M013 ((Local0 + Local1), 0x0A, Zero, 0x08)
21478                             Local7 &= (M009 (Local5) == Local6)
21479                         }
21480 
21481                         If ((Local3 == 0x03))
21482                         {
21483                             Local5 = M013 ((Local0 + Local1), 0x02, Zero, 0x10)
21484                             Local6 = M013 ((Local0 + Local1), 0x04, Zero, 0x08)
21485                             Local7 = (M009 (Local5) == Local6)
21486                             Local5 = M013 ((Local0 + Local1), 0x05, Zero, 0x10)
21487                             Local6 = M013 ((Local0 + Local1), 0x07, Zero, 0x08)
21488                             Local7 |= (M009 (Local5) == Local6)
21489                         }
21490 
21491                         If ((Local3 == 0x04))
21492                         {
21493                             Local5 = M013 ((Local0 + Local1), 0x02, Zero, 0x10)
21494                             Local6 = M013 ((Local0 + Local1), 0x04, Zero, 0x08)
21495                             Local7 = (M009 (Local5) == Local6)
21496                             Local5 = M013 ((Local0 + Local1), 0x05, Zero, 0x10)
21497                             Local6 = M013 ((Local0 + Local1), 0x07, Zero, 0x08)
21498                             Local7 |= (M009 (Local5) == Local6)
21499                             Local5 = M013 ((Local0 + Local1), 0x08, Zero, 0x10)
21500                             Local6 = M013 ((Local0 + Local1), 0x0A, Zero, 0x08)
21501                             Local7 |= (M009 (Local5) == Local6)
21502                         }
21503                     }
21504                     Else
21505                     {
21506                         Local1 += 0x0B
21507                     }
21508                 }
21509             }
21510         }
21511         Else
21512         {
21513             Local7 = Zero
21514         }
21515 
21516         If (Local7)
21517         {
21518             Local7 = One
21519         }
21520 
21521         Return (Local7)
21522     }
21523 
21524     Method (M114, 4, Serialized)
21525     {
21526         Local7 = Zero
21527         If (!M001 (Arg0, Arg1))
21528         {
21529             Name (M115, Buffer (0x05){})
21530             CreateWordField (M115, Zero, M116)
21531             CreateField (M115, 0x10, 0x03, M117)
21532             CreateField (M115, 0x13, 0x05, M118)
21533             CreateByteField (M115, 0x03, M119)
21534             CreateByteField (M115, 0x04, M120)
21535             M116 = 0x05
21536             M119 = Zero
21537             M118 = Arg0
21538             M117 = Arg1
21539             If ((Arg2 == Zero))
21540             {
21541                 If ((Arg3 != One))
21542                 {
21543                     M120 = Zero
21544                     \_SB.ALIB (0x06, M115)
21545                 }
21546             }
21547             Else
21548             {
21549                 If ((Arg3 != One))
21550                 {
21551                     M120 = One
21552                     \_SB.ALIB (0x06, M115)
21553                 }
21554 
21555                 Local0 = M017 (Zero, Arg0, Arg1, 0x19, Zero, 0x08)
21556                 If (((Local0 != Zero) && (Local0 != 0xFF)))
21557                 {
21558                     Local1 = M019 (Local0, Zero, Zero, Zero)
21559                     Local2 = 0x7FFFFFFF
21560                     Local2 |= 0x80000000
21561                     If (((Local1 != Zero) && (Local1 != Local2)))
21562                     {
21563                         Local7 = One
21564                     }
21565                 }
21566             }
21567         }
21568         ElseIf ((Arg2 == Zero))
21569         {
21570             M002 (One, Arg1)
21571         }
21572         Else
21573         {
21574             M002 (Zero, Arg1)
21575             Local0 = M017 (Zero, Arg0, Arg1, 0x19, Zero, 0x08)
21576             If (((Local0 != Zero) && (Local0 != 0xFF)))
21577             {
21578                 Local1 = M019 (Local0, Zero, Zero, Zero)
21579                 Local2 = 0x7FFFFFFF
21580                 Local2 |= 0x80000000
21581                 If (((Local1 != Zero) && (Local1 != Local2)))
21582                 {
21583                     Local7 = One
21584                 }
21585             }
21586         }
21587 
21588         Return (Local7)
21589     }
21590 
21591     Method (M252, 2, Serialized)
21592     {
21593         If ((M085 >= 0x08))
21594         {
21595             Local0 = M251 /* \M251 */
21596             If (Local0)
21597             {
21598                 Local0 += 0x10
21599                 Local1 = Zero
21600                 Local2 = Zero
21601                 While ((Local2 != 0xFF))
21602                 {
21603                     Local2 = M011 ((Local0 + Local1), Zero, Zero, 0x08)
21604                     Local3 = M011 ((Local0 + Local1), One, Zero, 0x08)
21605                     Local4 = M011 ((Local0 + Local1), 0x02, Zero, 0x08)
21606                     If (((Local2 == Arg0) && (Local3 == Arg1)))
21607                     {
21608                         Return (Local4)
21609                     }
21610 
21611                     Local1 += 0x03
21612                 }
21613             }
21614         }
21615 
21616         Return (Ones)
21617     }
21618 
21619     Name (M046, Zero)
21620     Name (M047, Ones)
21621     Method (M045, 0, Serialized)
21622     {
21623         Local0 = Zero
21624         If ((M047 == Ones))
21625         {
21626             M047 = Zero
21627             M046 = Zero
21628             If (CondRefOf (\_OSI))
21629             {
21630                 If (\_OSI ("Windows 2012"))
21631                 {
21632                     M046 = One
21633                 }
21634 
21635                 If (\_OSI ("Windows 2013"))
21636                 {
21637                     M046 = One
21638                 }
21639 
21640                 If (\_OSI ("Windows 2015"))
21641                 {
21642                     M046 = One
21643                 }
21644 
21645                 If (\_OSI ("Windows 2016"))
21646                 {
21647                     M046 = One
21648                 }
21649 
21650                 If (\_OSI ("Windows 2017"))
21651                 {
21652                     M046 = One
21653                 }
21654             }
21655         }
21656 
21657         If ((M046 == One))
21658         {
21659             Local0 = One
21660         }
21661 
21662         Return (Local0)
21663     }
21664 
21665     Method (M049, 2, Serialized)
21666     {
21667         Local0 = Zero
21668         If ((Arg0 != Zero))
21669         {
21670             Local0 = M011 (Arg0, Arg1, Zero, 0x08)
21671         }
21672 
21673         Return (Local0)
21674     }
21675 
21676     Mutex (M230, 0x00)
21677     Method (M232, 3, Serialized)
21678     {
21679         Local0 = Arg0
21680         Local1 = Arg1
21681         Local2 = Arg2
21682         Acquire (M230, 0xFFFF)
21683         Local0 = Arg0
21684         OperationRegion (VARM, SystemIO, M231, 0x02)
21685         Field (VARM, ByteAcc, NoLock, Preserve)
21686         {
21687             VAR1,   8, 
21688             VAR2,   8
21689         }
21690 
21691         VAR2 = Local1
21692         VAR1 = Local0
21693         Sleep (Local2)
21694         Release (M230)
21695     }
21696 
21697     Method (M043, 3, Serialized)
21698     {
21699         If (CondRefOf (MOEM))
21700         {
21701             Return (MOEM) /* External reference */
21702             Arg0
21703             Arg1
21704             Arg2
21705         }
21706         Else
21707         {
21708             Return (Zero)
21709         }
21710     }
21711 
21712     Method (MLIB, 2, Serialized)
21713     {
21714         Switch (ToInteger (Arg0))
21715         {
21716             Case (Zero)
21717             {
21718                 Local0 = DerefOf (Arg1 [0x02])
21719                 Switch (ToInteger (Local0))
21720                 {
21721                     Case (0x03)
21722                     {
21723                         M228 (0x04)
21724                         M228 (0x05)
21725                     }
21726                     Case (0x04)
21727                     {
21728                         M228 (0x04)
21729                         M228 (0x06)
21730                     }
21731                     Case (0x03)
21732                     {
21733                         M228 (0x04)
21734                         M228 (0x07)
21735                     }
21736 
21737                 }
21738             }
21739 
21740         }
21741     }
21742 
21743     Method (M248, 1, Serialized)
21744     {
21745         If ((M085 == 0x08))
21746         {
21747             If ((Arg0 == Zero))
21748             {
21749                 Return (M017 (Zero, 0x07, One, 0x19, Zero, 0x08))
21750             }
21751             Else
21752             {
21753                 Return (M017 (Zero, 0x08, One, 0x19, Zero, 0x08))
21754             }
21755         }
21756         ElseIf ((M085 >= 0x0B))
21757         {
21758             If ((Arg0 == Zero))
21759             {
21760                 Return (M017 (Zero, 0x07, One, 0x19, Zero, 0x08))
21761             }
21762             Else
21763             {
21764                 Return (M017 (Zero, 0x08, Arg0, 0x19, Zero, 0x08))
21765             }
21766         }
21767         ElseIf ((M085 >= 0x09))
21768         {
21769             If ((Arg0 == Zero))
21770             {
21771                 Return (M017 (Zero, 0x08, One, 0x19, Zero, 0x08))
21772             }
21773             Else
21774             {
21775                 Return (M017 (Zero, 0x08, 0x02, 0x19, Zero, 0x08))
21776             }
21777         }
21778         Else
21779         {
21780             Return (Zero)
21781         }
21782     }
21783 
21784     Method (MPTS, 1, NotSerialized)
21785     {
21786         Local0 = M049 (M128, 0x67)
21787         If (((Local0 & 0x03) == 0x03))
21788         {
21789             If ((M085 >= 0x08))
21790             {
21791                 \_SB.PCI0.GP18.SATA.TPTS (Arg0)
21792             }
21793             Else
21794             {
21795                 \_SB.PCI0.SATA.TPTS (Arg0)
21796             }
21797         }
21798 
21799         If ((M226 != Zero))
21800         {
21801             \_SB.M263 (Arg0)
21802         }
21803     }
21804 
21805     Method (MWAK, 1, NotSerialized)
21806     {
21807         Local0 = M049 (M128, 0x67)
21808         If (((Local0 & 0x03) == 0x03))
21809         {
21810             If ((M085 >= 0x08))
21811             {
21812                 \_SB.PCI0.GP18.SATA.TWAK (Arg0)
21813             }
21814             Else
21815             {
21816                 \_SB.PCI0.SATA.TWAK (Arg0)
21817             }
21818         }
21819 
21820         If ((M226 != Zero))
21821         {
21822             \_SB.M264 (Arg0)
21823         }
21824 
21825         If ((M280 != Zero))
21826         {
21827             \_SB.M284 (Arg0)
21828         }
21829     }
21830 
21831     Name (M278, One)
21832     Name (M279, One)
21833     Name (M27A, Zero)
21834     Method (M276, 0, NotSerialized)
21835     {
21836         If ((M27A == Zero))
21837         {
21838             M278 = Zero
21839         }
21840 
21841         If (((M278 == One) || (M279 == One)))
21842         {
21843             Local0 = M017 (Zero, 0x08, One, 0x19, Zero, 0x08)
21844             Local1 = M019 (Local0, Zero, 0x05, Zero)
21845             If ((M27A == Zero))
21846             {
21847                 Local1 = 0x15E21022
21848             }
21849 
21850             If (((Local0 != Zero) && (Local0 != 0xFF)))
21851             {
21852                 If ((Local1 != Ones))
21853                 {
21854                     M000 (0xB4)
21855                     M250 (Zero, Zero, 0x00058A74, Zero)
21856                     M250 (Zero, Zero, 0x00058A54, 0xC8)
21857                     M250 (Zero, Zero, 0x00058A14, 0x03)
21858                     Local4 = M249 (Zero, Zero, 0x00058A74)
21859                     While ((Local4 == Zero))
21860                     {
21861                         Local4 = M249 (Zero, Zero, 0x00058A74)
21862                         If ((Local4 != Zero))
21863                         {
21864                             Break
21865                         }
21866                     }
21867 
21868                     M250 (Zero, Zero, 0x00048720, 0x0103)
21869                     Local4 = One
21870                     Local5 = 0x64
21871                     While (((Local4 != Zero) && Local5))
21872                     {
21873                         Local4 = M249 (Zero, Zero, 0x00048720)
21874                         Local4 |= 0x06
21875                         Local4 &= 0xFFFFFF0F
21876                         M250 (Zero, Zero, 0x00048720, Local4)
21877                         Local4 = M249 (Zero, Zero, 0x00048728)
21878                         Local4 &= 0x03
21879                         Local5--
21880                         Stall (0x63)
21881                     }
21882 
21883                     M250 (Zero, Zero, 0x00048720, Zero)
21884                     M000 (0xB5)
21885                 }
21886             }
21887         }
21888     }
21889 
21890     Method (M277, 0, NotSerialized)
21891     {
21892         If ((M27A == Zero))
21893         {
21894             M278 = Zero
21895         }
21896 
21897         If (((M278 == Zero) && (M279 == Zero)))
21898         {
21899             Local0 = M017 (Zero, 0x08, One, 0x19, Zero, 0x08)
21900             Local1 = M019 (Local0, Zero, 0x05, Zero)
21901             If ((M27A == Zero))
21902             {
21903                 Local1 = 0x15E21022
21904             }
21905 
21906             If (((Local0 != Zero) && (Local0 != 0xFF)))
21907             {
21908                 If ((Local1 != Ones))
21909                 {
21910                     M000 (0xB6)
21911                     M250 (Zero, Zero, 0x00058A74, Zero)
21912                     M250 (Zero, Zero, 0x00058A54, Zero)
21913                     M250 (Zero, Zero, 0x00058A14, 0x03)
21914                     Local4 = M249 (Zero, Zero, 0x00058A74)
21915                     While ((Local4 == Zero))
21916                     {
21917                         Local4 = M249 (Zero, Zero, 0x00058A74)
21918                         If ((Local4 != Zero))
21919                         {
21920                             Break
21921                         }
21922                     }
21923 
21924                     M250 (Zero, Zero, 0x00048720, 0x0101)
21925                     Local4 = One
21926                     Local5 = 0x64
21927                     While (((Local4 != 0x02) && Local5))
21928                     {
21929                         Local4 = M249 (Zero, Zero, 0x00048720)
21930                         Local4 |= 0x06
21931                         Local4 &= 0xFFFFFF0F
21932                         M250 (Zero, Zero, 0x00048720, Local4)
21933                         Local4 = M249 (Zero, Zero, 0x00048728)
21934                         Local4 &= 0x03
21935                         Local5--
21936                         Stall (0x63)
21937                     }
21938 
21939                     M250 (Zero, Zero, 0x00048720, Zero)
21940                     M000 (0xB7)
21941                 }
21942             }
21943         }
21944     }
21945 
21946     Scope (\_SB.PCI0.GP17.ACP)
21947     {
21948         Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
21949         {
21950             M278 = One
21951             M276 ()
21952         }
21953 
21954         Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
21955         {
21956             M278 = Zero
21957             M277 ()
21958         }
21959     }
21960 
21961     Scope (\_SB.PCI0.GP17.AZAL)
21962     {
21963         Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
21964         {
21965             M279 = One
21966             M276 ()
21967         }
21968 
21969         Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
21970         {
21971             M279 = Zero
21972             M277 ()
21973         }
21974     }
21975 }

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] (2020-04-09T21:05:47+0000, 696.1 KB) [[attachment:acpidump.txt]]
  • [get | view] (2020-04-09T21:05:57+0000, 22.4 KB) [[attachment:devinfo-vr.txt]]
  • [get | view] (2020-04-09T21:05:15+0000, 8.6 KB) [[attachment:dmesg.txt]]
  • [get | view] (2020-04-09T21:06:17+0000, 13.0 KB) [[attachment:dmidecode.txt]]
  • [get | view] (2020-04-09T21:05:30+0000, 6.9 KB) [[attachment:pciconf-lv.txt]]
  • [get | view] (2020-04-09T21:06:28+0000, 1.4 KB) [[attachment:usbconfig.txt]]
 All files | Selected Files: delete move to page copy to page

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