Ledger Nano X - The secure hardware wallet
SHARE
TWEET

dsdt

potuzb Dec 31st, 2014 327 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2.  * Intel ACPI Component Architecture
  3.  * AML Disassembler version 20130117-64 [Dec 23 2014]
  4.  * Copyright (c) 2000 - 2013 Intel Corporation
  5.  *
  6.  * Disassembly of dsdt.txt, Wed Dec 24 12:05:50 2014
  7.  *
  8.  * Original Table Header:
  9.  *     Signature        "DSDT"
  10.  *     Length           0x0000968B (38539)
  11.  *     Revision         0x02
  12.  *     Checksum         0x23
  13.  *     OEM ID           "SECCSD"
  14.  *     OEM Table ID     "IVB-CPT"
  15.  *     OEM Revision     0x00000000 (0)
  16.  *     Compiler ID      "INTL"
  17.  *     Compiler Version 0x20061109 (537268489)
  18.  */
  19.  
  20. DefinitionBlock ("dsdt.aml", "DSDT", 2, "SECCSD", "IVB-CPT", 0x00000000)
  21. {
  22.     External (_PR_.AAC0)
  23.     External (_PR_.ACRT)
  24.     External (_PR_.APSV)
  25.     External (_PR_.CPPC, IntObj)
  26.     External (_PR_.CPU0._PPC)
  27.     External (_SB_.IFFS.FFST, IntObj)
  28.     External (_SB_.PCI0.IEIT.EITV, MethodObj)    // 0 Arguments
  29.     External (CFGD)
  30.     External (HDOS, MethodObj)    // 0 Arguments
  31.     External (HNOT, MethodObj)    // 1 Arguments
  32.     External (HWID, IntObj)
  33.     External (IDAB, MethodObj)    // 0 Arguments
  34.     External (PDC0)
  35.     External (PDC1)
  36.     External (PDC2)
  37.     External (PDC3)
  38.     External (PDC4)
  39.     External (PDC5)
  40.     External (PDC6)
  41.     External (PDC7)
  42.     External (SNXD)
  43.     External (TNOT, MethodObj)    // 0 Arguments
  44.  
  45.     Name (SS1, One)
  46.     Name (SS2, Zero)
  47.     Name (SS3, One)
  48.     Name (SS4, One)
  49.     Name (IOST, 0xFFFF)
  50.     Name (SP2O, 0x4E)
  51.     Name (SP1O, 0x164E)
  52.     Name (IO1B, 0x0600)
  53.     Name (IO1L, 0x70)
  54.     Name (IO2B, 0x0680)
  55.     Name (IO2L, 0x20)
  56.     Name (IO3B, 0x0290)
  57.     Name (IO3L, 0x10)
  58.     Name (SP3O, 0x2E)
  59.     Name (IO4B, 0x0A20)
  60.     Name (IO4L, 0x20)
  61.     Name (MCHB, 0xFED10000)
  62.     Name (MCHL, 0x8000)
  63.     Name (EGPB, 0xFED19000)
  64.     Name (EGPL, 0x1000)
  65.     Name (DMIB, 0xFED18000)
  66.     Name (DMIL, 0x1000)
  67.     Name (IFPB, 0xFED14000)
  68.     Name (IFPL, 0x1000)
  69.     Name (PEBS, 0xF8000000)
  70.     Name (PELN, 0x04000000)
  71.     Name (SMBS, 0x0580)
  72.     Name (SMBL, 0x20)
  73.     Name (PBLK, 0x0410)
  74.     Name (PMBS, 0x0400)
  75.     Name (PMLN, 0x80)
  76.     Name (LVL2, 0x0414)
  77.     Name (LVL3, 0x0415)
  78.     Name (LVL4, 0x0416)
  79.     Name (SMIP, 0xB2)
  80.     Name (GPBS, 0x0500)
  81.     Name (GPLN, 0x80)
  82.     Name (APCB, 0xFEC00000)
  83.     Name (APCL, 0x1000)
  84.     Name (PM30, 0x0430)
  85.     Name (SRCB, 0xFED1C000)
  86.     Name (SRCL, 0x4000)
  87.     Name (HPTB, 0xFED00000)
  88.     Name (HPTC, 0xFED1F404)
  89.     Name (ACPH, 0xDE)
  90.     Name (ASSB, Zero)
  91.     Name (AOTB, Zero)
  92.     Name (AAXB, Zero)
  93.     Name (PEHP, One)
  94.     Name (SHPC, One)
  95.     Name (PEPM, One)
  96.     Name (PEER, One)
  97.     Name (PECS, One)
  98.     Name (DSSP, Zero)
  99.     Name (FHPP, Zero)
  100.     Name (FMBL, One)
  101.     Name (FDTP, 0x02)
  102.     Name (FUPS, 0x03)
  103.     Name (BSH, Zero)
  104.     Name (BEL, One)
  105.     Name (BEH, 0x02)
  106.     Name (BRH, 0x03)
  107.     Name (BTF, 0x04)
  108.     Name (BHC, 0x05)
  109.     Name (BYB, 0x06)
  110.     Name (BWB, 0x06)
  111.     Name (BPH, 0x07)
  112.     Name (BSHS, 0x08)
  113.     Name (BELC, 0x09)
  114.     Name (BRHP, 0x0A)
  115.     Name (BTFC, 0x0B)
  116.     Name (BEHP, 0x0C)
  117.     Name (BELP, 0x0E)
  118.     Name (BTL, 0x10)
  119.     Name (BTFP, 0x11)
  120.     Name (BSR, 0x14)
  121.     Name (BCC, 0x1C)
  122.     Name (BOF, 0x20)
  123.     Name (BEF, 0x21)
  124.     Name (BLLE, 0x22)
  125.     Name (BLLC, 0x23)
  126.     Name (BLCA, 0x24)
  127.     Name (BLLS, 0x25)
  128.     Name (BLLP, 0x26)
  129.     Name (BLLD, 0x27)
  130.     Name (BKF, 0x28)
  131.     Name (BHBE, 0x30)
  132.     Name (BHBC, 0x31)
  133.     Name (BHBN, 0x32)
  134.     Name (BHBM, 0x33)
  135.     Name (TCGM, One)
  136.     Name (TRTP, One)
  137.     Name (WDTE, One)
  138.     Name (TRTD, 0x02)
  139.     Name (TRTI, 0x03)
  140.     Name (GCDD, One)
  141.     Name (DSTA, 0x0A)
  142.     Name (DSLO, 0x0C)
  143.     Name (DSLC, 0x0E)
  144.     Name (PITS, 0x10)
  145.     Name (SBCS, 0x12)
  146.     Name (SALS, 0x13)
  147.     Name (LSSS, 0x2A)
  148.     Name (SOOT, 0x35)
  149.     Name (PDBR, 0x4D)
  150.     Name (DPPB, 0xFED98000)
  151.     Name (DPPL, 0x8000)
  152.     OperationRegion (GNVS, SystemMemory, 0xDAF7CE18, 0x01C8)
  153.     Field (GNVS, AnyAcc, Lock, Preserve)
  154.     {
  155.         OSYS,   16,
  156.         SMIF,   8,
  157.         PRM0,   8,
  158.         PRM1,   8,
  159.         SCIF,   8,
  160.         PRM2,   8,
  161.         PRM3,   8,
  162.         LCKF,   8,
  163.         PRM4,   8,
  164.         PRM5,   8,
  165.         P80D,   32,
  166.         LIDS,   8,
  167.         PWRS,   8,
  168.         DBGS,   8,
  169.         THOF,   8,
  170.         ACT1,   8,
  171.         ACTT,   8,
  172.         PSVT,   8,
  173.         TC1V,   8,
  174.         TC2V,   8,
  175.         TSPV,   8,
  176.         CRTT,   8,
  177.         DTSE,   8,
  178.         DTS1,   8,
  179.         DTS2,   8,
  180.         DTSF,   8,
  181.         Offset (0x25),
  182.         REVN,   8,
  183.         IFFS,   8,
  184.         Offset (0x28),
  185.         APIC,   8,
  186.         TCNT,   8,
  187.         PCP0,   8,
  188.         PCP1,   8,
  189.         PPCM,   8,
  190.         PPMF,   32,
  191.         C67L,   8,
  192.         NATP,   8,
  193.         CMAP,   8,
  194.         CMBP,   8,
  195.         LPTP,   8,
  196.         FDCP,   8,
  197.         CMCP,   8,
  198.         CIRP,   8,
  199.         SMSC,   8,
  200.         W381,   8,
  201.         SMC1,   8,
  202.         IGDS,   8,
  203.         TLST,   8,
  204.         CADL,   8,
  205.         PADL,   8,
  206.         CSTE,   16,
  207.         NSTE,   16,
  208.         SSTE,   16,
  209.         NDID,   8,
  210.         DID1,   32,
  211.         DID2,   32,
  212.         DID3,   32,
  213.         DID4,   32,
  214.         DID5,   32,
  215.         KSV0,   32,
  216.         KSV1,   8,
  217.         Offset (0x67),
  218.         BLCS,   8,
  219.         BRTL,   8,
  220.         ALSE,   8,
  221.         ALAF,   8,
  222.         LLOW,   8,
  223.         LHIH,   8,
  224.         Offset (0x6E),
  225.         EMAE,   8,
  226.         EMAP,   16,
  227.         EMAL,   16,
  228.         Offset (0x74),
  229.         MEFE,   8,
  230.         DSTS,   8,
  231.         Offset (0x78),
  232.         TPMP,   8,
  233.         TPME,   8,
  234.         MORD,   8,
  235.         TCGP,   8,
  236.         PPRP,   32,
  237.         PPRQ,   8,
  238.         LPPR,   8,
  239.         GTF0,   56,
  240.         GTF2,   56,
  241.         IDEM,   8,
  242.         GTF1,   56,
  243.         BID,    8,
  244.         PLID,   8,
  245.         AOAC,   8,
  246.         SLDR,   32,
  247.         WAKR,   8,
  248.         Offset (0xAA),
  249.         ASLB,   32,
  250.         IBTT,   8,
  251.         IPAT,   8,
  252.         ITVF,   8,
  253.         ITVM,   8,
  254.         IPSC,   8,
  255.         IBLC,   8,
  256.         IBIA,   8,
  257.         ISSC,   8,
  258.         I409,   8,
  259.         I509,   8,
  260.         I609,   8,
  261.         I709,   8,
  262.         IPCF,   8,
  263.         IDMS,   8,
  264.         IF1E,   8,
  265.         HVCO,   8,
  266.         NXD1,   32,
  267.         NXD2,   32,
  268.         NXD3,   32,
  269.         NXD4,   32,
  270.         NXD5,   32,
  271.         NXD6,   32,
  272.         NXD7,   32,
  273.         NXD8,   32,
  274.         GSMI,   8,
  275.         PAVP,   8,
  276.         Offset (0xE1),
  277.         OSCC,   8,
  278.         NEXP,   8,
  279.         SBV1,   8,
  280.         SBV2,   8,
  281.         Offset (0xEB),
  282.         DSEN,   8,
  283.         ECON,   8,
  284.         GPIC,   8,
  285.         CTYP,   8,
  286.         L01C,   8,
  287.         VFN0,   8,
  288.         VFN1,   8,
  289.         VFN2,   8,
  290.         VFN3,   8,
  291.         VFN4,   8,
  292.         Offset (0x100),
  293.         NVGA,   32,
  294.         NVHA,   32,
  295.         AMDA,   32,
  296.         DID6,   32,
  297.         DID7,   32,
  298.         DID8,   32,
  299.         EBAS,   32,
  300.         CPSP,   32,
  301.         EECP,   32,
  302.         EVCP,   32,
  303.         XBAS,   32,
  304.         OBS1,   32,
  305.         OBS2,   32,
  306.         OBS3,   32,
  307.         OBS4,   32,
  308.         OBS5,   32,
  309.         OBS6,   32,
  310.         OBS7,   32,
  311.         OBS8,   32,
  312.         Offset (0x157),
  313.         ATMC,   8,
  314.         PTMC,   8,
  315.         ATRA,   8,
  316.         PTRA,   8,
  317.         PNHM,   32,
  318.         TBAB,   32,
  319.         TBAH,   32,
  320.         RTIP,   8,
  321.         TSOD,   8,
  322.         ATPC,   8,
  323.         PTPC,   8,
  324.         PFLV,   8,
  325.         BREV,   8,
  326.         SGMD,   8,
  327.         SGFL,   8,
  328.         PWOK,   8,
  329.         HLRS,   8,
  330.         DSEL,   8,
  331.         ESEL,   8,
  332.         PSEL,   8,
  333.         PWEN,   8,
  334.         PRST,   8,
  335.         MXD1,   32,
  336.         MXD2,   32,
  337.         MXD3,   32,
  338.         MXD4,   32,
  339.         MXD5,   32,
  340.         MXD6,   32,
  341.         MXD7,   32,
  342.         MXD8,   32,
  343.         GBAS,   16,
  344.         SGGP,   8,
  345.         Offset (0x19D),
  346.         ALFP,   8,
  347.         IMON,   8,
  348.         PDTS,   8,
  349.         PKGA,   8,
  350.         PAMT,   8,
  351.         AC0F,   8,
  352.         AC1F,   8,
  353.         DTS3,   8,
  354.         DTS4,   8,
  355.         Offset (0x1B2),
  356.         XHCI,   8,
  357.         XHPM,   8,
  358.         Offset (0x1B7),
  359.         XTUB,   32,
  360.         XTUS,   32,
  361.         XMPB,   32,
  362.         Offset (0x1C4),
  363.         LPMV,   8,
  364.         Offset (0x1C6),
  365.         DDRF,   8,
  366.         MM64,   8
  367.     }
  368.  
  369.     Scope (_SB)
  370.     {
  371.         Name (PR00, Package (0x1F)
  372.         {
  373.             Package (0x04)
  374.             {
  375.                 0x001FFFFF,
  376.                 Zero,
  377.                 LNKF,
  378.                 Zero
  379.             },
  380.  
  381.             Package (0x04)
  382.             {
  383.                 0x001FFFFF,
  384.                 One,
  385.                 LNKD,
  386.                 Zero
  387.             },
  388.  
  389.             Package (0x04)
  390.             {
  391.                 0x001FFFFF,
  392.                 0x02,
  393.                 LNKC,
  394.                 Zero
  395.             },
  396.  
  397.             Package (0x04)
  398.             {
  399.                 0x001FFFFF,
  400.                 0x03,
  401.                 LNKA,
  402.                 Zero
  403.             },
  404.  
  405.             Package (0x04)
  406.             {
  407.                 0x0014FFFF,
  408.                 Zero,
  409.                 LNKA,
  410.                 Zero
  411.             },
  412.  
  413.             Package (0x04)
  414.             {
  415.                 0x001DFFFF,
  416.                 Zero,
  417.                 LNKH,
  418.                 Zero
  419.             },
  420.  
  421.             Package (0x04)
  422.             {
  423.                 0x001AFFFF,
  424.                 Zero,
  425.                 LNKA,
  426.                 Zero
  427.             },
  428.  
  429.             Package (0x04)
  430.             {
  431.                 0x001BFFFF,
  432.                 Zero,
  433.                 LNKG,
  434.                 Zero
  435.             },
  436.  
  437.             Package (0x04)
  438.             {
  439.                 0x0018FFFF,
  440.                 Zero,
  441.                 LNKE,
  442.                 Zero
  443.             },
  444.  
  445.             Package (0x04)
  446.             {
  447.                 0x0019FFFF,
  448.                 Zero,
  449.                 LNKE,
  450.                 Zero
  451.             },
  452.  
  453.             Package (0x04)
  454.             {
  455.                 0x0016FFFF,
  456.                 Zero,
  457.                 LNKA,
  458.                 Zero
  459.             },
  460.  
  461.             Package (0x04)
  462.             {
  463.                 0x0016FFFF,
  464.                 One,
  465.                 LNKD,
  466.                 Zero
  467.             },
  468.  
  469.             Package (0x04)
  470.             {
  471.                 0x0016FFFF,
  472.                 0x02,
  473.                 LNKC,
  474.                 Zero
  475.             },
  476.  
  477.             Package (0x04)
  478.             {
  479.                 0x0016FFFF,
  480.                 0x03,
  481.                 LNKB,
  482.                 Zero
  483.             },
  484.  
  485.             Package (0x04)
  486.             {
  487.                 0x001CFFFF,
  488.                 Zero,
  489.                 LNKA,
  490.                 Zero
  491.             },
  492.  
  493.             Package (0x04)
  494.             {
  495.                 0x001CFFFF,
  496.                 One,
  497.                 LNKB,
  498.                 Zero
  499.             },
  500.  
  501.             Package (0x04)
  502.             {
  503.                 0x001CFFFF,
  504.                 0x02,
  505.                 LNKC,
  506.                 Zero
  507.             },
  508.  
  509.             Package (0x04)
  510.             {
  511.                 0x001CFFFF,
  512.                 0x03,
  513.                 LNKD,
  514.                 Zero
  515.             },
  516.  
  517.             Package (0x04)
  518.             {
  519.                 0x0001FFFF,
  520.                 Zero,
  521.                 LNKA,
  522.                 Zero
  523.             },
  524.  
  525.             Package (0x04)
  526.             {
  527.                 0x0001FFFF,
  528.                 One,
  529.                 LNKB,
  530.                 Zero
  531.             },
  532.  
  533.             Package (0x04)
  534.             {
  535.                 0x0001FFFF,
  536.                 0x02,
  537.                 LNKC,
  538.                 Zero
  539.             },
  540.  
  541.             Package (0x04)
  542.             {
  543.                 0x0001FFFF,
  544.                 0x03,
  545.                 LNKD,
  546.                 Zero
  547.             },
  548.  
  549.             Package (0x04)
  550.             {
  551.                 0x0006FFFF,
  552.                 Zero,
  553.                 LNKD,
  554.                 Zero
  555.             },
  556.  
  557.             Package (0x04)
  558.             {
  559.                 0x0006FFFF,
  560.                 One,
  561.                 LNKA,
  562.                 Zero
  563.             },
  564.  
  565.             Package (0x04)
  566.             {
  567.                 0x0006FFFF,
  568.                 0x02,
  569.                 LNKB,
  570.                 Zero
  571.             },
  572.  
  573.             Package (0x04)
  574.             {
  575.                 0x0006FFFF,
  576.                 0x03,
  577.                 LNKC,
  578.                 Zero
  579.             },
  580.  
  581.             Package (0x04)
  582.             {
  583.                 0x0002FFFF,
  584.                 Zero,
  585.                 LNKA,
  586.                 Zero
  587.             },
  588.  
  589.             Package (0x04)
  590.             {
  591.                 0x0004FFFF,
  592.                 Zero,
  593.                 LNKA,
  594.                 Zero
  595.             },
  596.  
  597.             Package (0x04)
  598.             {
  599.                 0x0004FFFF,
  600.                 One,
  601.                 LNKB,
  602.                 Zero
  603.             },
  604.  
  605.             Package (0x04)
  606.             {
  607.                 0x0004FFFF,
  608.                 0x02,
  609.                 LNKC,
  610.                 Zero
  611.             },
  612.  
  613.             Package (0x04)
  614.             {
  615.                 0x0004FFFF,
  616.                 0x03,
  617.                 LNKD,
  618.                 Zero
  619.             }
  620.         })
  621.         Name (AR00, Package (0x1F)
  622.         {
  623.             Package (0x04)
  624.             {
  625.                 0x001FFFFF,
  626.                 Zero,
  627.                 Zero,
  628.                 0x15
  629.             },
  630.  
  631.             Package (0x04)
  632.             {
  633.                 0x001FFFFF,
  634.                 One,
  635.                 Zero,
  636.                 0x13
  637.             },
  638.  
  639.             Package (0x04)
  640.             {
  641.                 0x001FFFFF,
  642.                 0x02,
  643.                 Zero,
  644.                 0x12
  645.             },
  646.  
  647.             Package (0x04)
  648.             {
  649.                 0x001FFFFF,
  650.                 0x03,
  651.                 Zero,
  652.                 0x10
  653.             },
  654.  
  655.             Package (0x04)
  656.             {
  657.                 0x0014FFFF,
  658.                 Zero,
  659.                 Zero,
  660.                 0x15
  661.             },
  662.  
  663.             Package (0x04)
  664.             {
  665.                 0x001DFFFF,
  666.                 Zero,
  667.                 Zero,
  668.                 0x17
  669.             },
  670.  
  671.             Package (0x04)
  672.             {
  673.                 0x001AFFFF,
  674.                 Zero,
  675.                 Zero,
  676.                 0x10
  677.             },
  678.  
  679.             Package (0x04)
  680.             {
  681.                 0x001BFFFF,
  682.                 Zero,
  683.                 Zero,
  684.                 0x16
  685.             },
  686.  
  687.             Package (0x04)
  688.             {
  689.                 0x0018FFFF,
  690.                 Zero,
  691.                 Zero,
  692.                 0x14
  693.             },
  694.  
  695.             Package (0x04)
  696.             {
  697.                 0x0019FFFF,
  698.                 Zero,
  699.                 Zero,
  700.                 0x14
  701.             },
  702.  
  703.             Package (0x04)
  704.             {
  705.                 0x0016FFFF,
  706.                 Zero,
  707.                 Zero,
  708.                 0x10
  709.             },
  710.  
  711.             Package (0x04)
  712.             {
  713.                 0x0016FFFF,
  714.                 One,
  715.                 Zero,
  716.                 0x13
  717.             },
  718.  
  719.             Package (0x04)
  720.             {
  721.                 0x0016FFFF,
  722.                 0x02,
  723.                 Zero,
  724.                 0x12
  725.             },
  726.  
  727.             Package (0x04)
  728.             {
  729.                 0x0016FFFF,
  730.                 0x03,
  731.                 Zero,
  732.                 0x11
  733.             },
  734.  
  735.             Package (0x04)
  736.             {
  737.                 0x001CFFFF,
  738.                 Zero,
  739.                 Zero,
  740.                 0x10
  741.             },
  742.  
  743.             Package (0x04)
  744.             {
  745.                 0x001CFFFF,
  746.                 One,
  747.                 Zero,
  748.                 0x11
  749.             },
  750.  
  751.             Package (0x04)
  752.             {
  753.                 0x001CFFFF,
  754.                 0x02,
  755.                 Zero,
  756.                 0x12
  757.             },
  758.  
  759.             Package (0x04)
  760.             {
  761.                 0x001CFFFF,
  762.                 0x03,
  763.                 Zero,
  764.                 0x13
  765.             },
  766.  
  767.             Package (0x04)
  768.             {
  769.                 0x0001FFFF,
  770.                 Zero,
  771.                 Zero,
  772.                 0x10
  773.             },
  774.  
  775.             Package (0x04)
  776.             {
  777.                 0x0001FFFF,
  778.                 One,
  779.                 Zero,
  780.                 0x11
  781.             },
  782.  
  783.             Package (0x04)
  784.             {
  785.                 0x0001FFFF,
  786.                 0x02,
  787.                 Zero,
  788.                 0x12
  789.             },
  790.  
  791.             Package (0x04)
  792.             {
  793.                 0x0001FFFF,
  794.                 0x03,
  795.                 Zero,
  796.                 0x13
  797.             },
  798.  
  799.             Package (0x04)
  800.             {
  801.                 0x0006FFFF,
  802.                 Zero,
  803.                 Zero,
  804.                 0x13
  805.             },
  806.  
  807.             Package (0x04)
  808.             {
  809.                 0x0006FFFF,
  810.                 One,
  811.                 Zero,
  812.                 0x10
  813.             },
  814.  
  815.             Package (0x04)
  816.             {
  817.                 0x0006FFFF,
  818.                 0x02,
  819.                 Zero,
  820.                 0x11
  821.             },
  822.  
  823.             Package (0x04)
  824.             {
  825.                 0x0006FFFF,
  826.                 0x03,
  827.                 Zero,
  828.                 0x12
  829.             },
  830.  
  831.             Package (0x04)
  832.             {
  833.                 0x0002FFFF,
  834.                 Zero,
  835.                 Zero,
  836.                 0x10
  837.             },
  838.  
  839.             Package (0x04)
  840.             {
  841.                 0x0004FFFF,
  842.                 Zero,
  843.                 Zero,
  844.                 0x10
  845.             },
  846.  
  847.             Package (0x04)
  848.             {
  849.                 0x0004FFFF,
  850.                 One,
  851.                 Zero,
  852.                 0x11
  853.             },
  854.  
  855.             Package (0x04)
  856.             {
  857.                 0x0004FFFF,
  858.                 0x02,
  859.                 Zero,
  860.                 0x12
  861.             },
  862.  
  863.             Package (0x04)
  864.             {
  865.                 0x0004FFFF,
  866.                 0x03,
  867.                 Zero,
  868.                 0x13
  869.             }
  870.         })
  871.         Name (PR04, Package (0x04)
  872.         {
  873.             Package (0x04)
  874.             {
  875.                 0xFFFF,
  876.                 Zero,
  877.                 LNKA,
  878.                 Zero
  879.             },
  880.  
  881.             Package (0x04)
  882.             {
  883.                 0xFFFF,
  884.                 One,
  885.                 LNKB,
  886.                 Zero
  887.             },
  888.  
  889.             Package (0x04)
  890.             {
  891.                 0xFFFF,
  892.                 0x02,
  893.                 LNKC,
  894.                 Zero
  895.             },
  896.  
  897.             Package (0x04)
  898.             {
  899.                 0xFFFF,
  900.                 0x03,
  901.                 LNKD,
  902.                 Zero
  903.             }
  904.         })
  905.         Name (AR04, Package (0x04)
  906.         {
  907.             Package (0x04)
  908.             {
  909.                 0xFFFF,
  910.                 Zero,
  911.                 Zero,
  912.                 0x10
  913.             },
  914.  
  915.             Package (0x04)
  916.             {
  917.                 0xFFFF,
  918.                 One,
  919.                 Zero,
  920.                 0x11
  921.             },
  922.  
  923.             Package (0x04)
  924.             {
  925.                 0xFFFF,
  926.                 0x02,
  927.                 Zero,
  928.                 0x12
  929.             },
  930.  
  931.             Package (0x04)
  932.             {
  933.                 0xFFFF,
  934.                 0x03,
  935.                 Zero,
  936.                 0x13
  937.             }
  938.         })
  939.         Name (PR05, Package (0x04)
  940.         {
  941.             Package (0x04)
  942.             {
  943.                 0xFFFF,
  944.                 Zero,
  945.                 LNKB,
  946.                 Zero
  947.             },
  948.  
  949.             Package (0x04)
  950.             {
  951.                 0xFFFF,
  952.                 One,
  953.                 LNKC,
  954.                 Zero
  955.             },
  956.  
  957.             Package (0x04)
  958.             {
  959.                 0xFFFF,
  960.                 0x02,
  961.                 LNKD,
  962.                 Zero
  963.             },
  964.  
  965.             Package (0x04)
  966.             {
  967.                 0xFFFF,
  968.                 0x03,
  969.                 LNKA,
  970.                 Zero
  971.             }
  972.         })
  973.         Name (AR05, Package (0x04)
  974.         {
  975.             Package (0x04)
  976.             {
  977.                 0xFFFF,
  978.                 Zero,
  979.                 Zero,
  980.                 0x11
  981.             },
  982.  
  983.             Package (0x04)
  984.             {
  985.                 0xFFFF,
  986.                 One,
  987.                 Zero,
  988.                 0x12
  989.             },
  990.  
  991.             Package (0x04)
  992.             {
  993.                 0xFFFF,
  994.                 0x02,
  995.                 Zero,
  996.                 0x13
  997.             },
  998.  
  999.             Package (0x04)
  1000.             {
  1001.                 0xFFFF,
  1002.                 0x03,
  1003.                 Zero,
  1004.                 0x10
  1005.             }
  1006.         })
  1007.         Name (PR06, Package (0x04)
  1008.         {
  1009.             Package (0x04)
  1010.             {
  1011.                 0xFFFF,
  1012.                 Zero,
  1013.                 LNKC,
  1014.                 Zero
  1015.             },
  1016.  
  1017.             Package (0x04)
  1018.             {
  1019.                 0xFFFF,
  1020.                 One,
  1021.                 LNKD,
  1022.                 Zero
  1023.             },
  1024.  
  1025.             Package (0x04)
  1026.             {
  1027.                 0xFFFF,
  1028.                 0x02,
  1029.                 LNKA,
  1030.                 Zero
  1031.             },
  1032.  
  1033.             Package (0x04)
  1034.             {
  1035.                 0xFFFF,
  1036.                 0x03,
  1037.                 LNKB,
  1038.                 Zero
  1039.             }
  1040.         })
  1041.         Name (AR06, Package (0x04)
  1042.         {
  1043.             Package (0x04)
  1044.             {
  1045.                 0xFFFF,
  1046.                 Zero,
  1047.                 Zero,
  1048.                 0x12
  1049.             },
  1050.  
  1051.             Package (0x04)
  1052.             {
  1053.                 0xFFFF,
  1054.                 One,
  1055.                 Zero,
  1056.                 0x13
  1057.             },
  1058.  
  1059.             Package (0x04)
  1060.             {
  1061.                 0xFFFF,
  1062.                 0x02,
  1063.                 Zero,
  1064.                 0x10
  1065.             },
  1066.  
  1067.             Package (0x04)
  1068.             {
  1069.                 0xFFFF,
  1070.                 0x03,
  1071.                 Zero,
  1072.                 0x11
  1073.             }
  1074.         })
  1075.         Name (PR07, Package (0x04)
  1076.         {
  1077.             Package (0x04)
  1078.             {
  1079.                 0xFFFF,
  1080.                 Zero,
  1081.                 LNKD,
  1082.                 Zero
  1083.             },
  1084.  
  1085.             Package (0x04)
  1086.             {
  1087.                 0xFFFF,
  1088.                 One,
  1089.                 LNKA,
  1090.                 Zero
  1091.             },
  1092.  
  1093.             Package (0x04)
  1094.             {
  1095.                 0xFFFF,
  1096.                 0x02,
  1097.                 LNKB,
  1098.                 Zero
  1099.             },
  1100.  
  1101.             Package (0x04)
  1102.             {
  1103.                 0xFFFF,
  1104.                 0x03,
  1105.                 LNKC,
  1106.                 Zero
  1107.             }
  1108.         })
  1109.         Name (AR07, Package (0x04)
  1110.         {
  1111.             Package (0x04)
  1112.             {
  1113.                 0xFFFF,
  1114.                 Zero,
  1115.                 Zero,
  1116.                 0x13
  1117.             },
  1118.  
  1119.             Package (0x04)
  1120.             {
  1121.                 0xFFFF,
  1122.                 One,
  1123.                 Zero,
  1124.                 0x10
  1125.             },
  1126.  
  1127.             Package (0x04)
  1128.             {
  1129.                 0xFFFF,
  1130.                 0x02,
  1131.                 Zero,
  1132.                 0x11
  1133.             },
  1134.  
  1135.             Package (0x04)
  1136.             {
  1137.                 0xFFFF,
  1138.                 0x03,
  1139.                 Zero,
  1140.                 0x12
  1141.             }
  1142.         })
  1143.         Name (PR08, Package (0x04)
  1144.         {
  1145.             Package (0x04)
  1146.             {
  1147.                 0xFFFF,
  1148.                 Zero,
  1149.                 LNKA,
  1150.                 Zero
  1151.             },
  1152.  
  1153.             Package (0x04)
  1154.             {
  1155.                 0xFFFF,
  1156.                 One,
  1157.                 LNKB,
  1158.                 Zero
  1159.             },
  1160.  
  1161.             Package (0x04)
  1162.             {
  1163.                 0xFFFF,
  1164.                 0x02,
  1165.                 LNKC,
  1166.                 Zero
  1167.             },
  1168.  
  1169.             Package (0x04)
  1170.             {
  1171.                 0xFFFF,
  1172.                 0x03,
  1173.                 LNKD,
  1174.                 Zero
  1175.             }
  1176.         })
  1177.         Name (AR08, Package (0x04)
  1178.         {
  1179.             Package (0x04)
  1180.             {
  1181.                 0xFFFF,
  1182.                 Zero,
  1183.                 Zero,
  1184.                 0x10
  1185.             },
  1186.  
  1187.             Package (0x04)
  1188.             {
  1189.                 0xFFFF,
  1190.                 One,
  1191.                 Zero,
  1192.                 0x11
  1193.             },
  1194.  
  1195.             Package (0x04)
  1196.             {
  1197.                 0xFFFF,
  1198.                 0x02,
  1199.                 Zero,
  1200.                 0x12
  1201.             },
  1202.  
  1203.             Package (0x04)
  1204.             {
  1205.                 0xFFFF,
  1206.                 0x03,
  1207.                 Zero,
  1208.                 0x13
  1209.             }
  1210.         })
  1211.         Name (PR09, Package (0x04)
  1212.         {
  1213.             Package (0x04)
  1214.             {
  1215.                 0xFFFF,
  1216.                 Zero,
  1217.                 LNKB,
  1218.                 Zero
  1219.             },
  1220.  
  1221.             Package (0x04)
  1222.             {
  1223.                 0xFFFF,
  1224.                 One,
  1225.                 LNKC,
  1226.                 Zero
  1227.             },
  1228.  
  1229.             Package (0x04)
  1230.             {
  1231.                 0xFFFF,
  1232.                 0x02,
  1233.                 LNKD,
  1234.                 Zero
  1235.             },
  1236.  
  1237.             Package (0x04)
  1238.             {
  1239.                 0xFFFF,
  1240.                 0x03,
  1241.                 LNKA,
  1242.                 Zero
  1243.             }
  1244.         })
  1245.         Name (AR09, Package (0x04)
  1246.         {
  1247.             Package (0x04)
  1248.             {
  1249.                 0xFFFF,
  1250.                 Zero,
  1251.                 Zero,
  1252.                 0x11
  1253.             },
  1254.  
  1255.             Package (0x04)
  1256.             {
  1257.                 0xFFFF,
  1258.                 One,
  1259.                 Zero,
  1260.                 0x12
  1261.             },
  1262.  
  1263.             Package (0x04)
  1264.             {
  1265.                 0xFFFF,
  1266.                 0x02,
  1267.                 Zero,
  1268.                 0x13
  1269.             },
  1270.  
  1271.             Package (0x04)
  1272.             {
  1273.                 0xFFFF,
  1274.                 0x03,
  1275.                 Zero,
  1276.                 0x10
  1277.             }
  1278.         })
  1279.         Name (PR0E, Package (0x04)
  1280.         {
  1281.             Package (0x04)
  1282.             {
  1283.                 0xFFFF,
  1284.                 Zero,
  1285.                 LNKC,
  1286.                 Zero
  1287.             },
  1288.  
  1289.             Package (0x04)
  1290.             {
  1291.                 0xFFFF,
  1292.                 One,
  1293.                 LNKD,
  1294.                 Zero
  1295.             },
  1296.  
  1297.             Package (0x04)
  1298.             {
  1299.                 0xFFFF,
  1300.                 0x02,
  1301.                 LNKA,
  1302.                 Zero
  1303.             },
  1304.  
  1305.             Package (0x04)
  1306.             {
  1307.                 0xFFFF,
  1308.                 0x03,
  1309.                 LNKB,
  1310.                 Zero
  1311.             }
  1312.         })
  1313.         Name (AR0E, Package (0x04)
  1314.         {
  1315.             Package (0x04)
  1316.             {
  1317.                 0xFFFF,
  1318.                 Zero,
  1319.                 Zero,
  1320.                 0x12
  1321.             },
  1322.  
  1323.             Package (0x04)
  1324.             {
  1325.                 0xFFFF,
  1326.                 One,
  1327.                 Zero,
  1328.                 0x13
  1329.             },
  1330.  
  1331.             Package (0x04)
  1332.             {
  1333.                 0xFFFF,
  1334.                 0x02,
  1335.                 Zero,
  1336.                 0x10
  1337.             },
  1338.  
  1339.             Package (0x04)
  1340.             {
  1341.                 0xFFFF,
  1342.                 0x03,
  1343.                 Zero,
  1344.                 0x11
  1345.             }
  1346.         })
  1347.         Name (PR0F, Package (0x04)
  1348.         {
  1349.             Package (0x04)
  1350.             {
  1351.                 0xFFFF,
  1352.                 Zero,
  1353.                 LNKD,
  1354.                 Zero
  1355.             },
  1356.  
  1357.             Package (0x04)
  1358.             {
  1359.                 0xFFFF,
  1360.                 One,
  1361.                 LNKA,
  1362.                 Zero
  1363.             },
  1364.  
  1365.             Package (0x04)
  1366.             {
  1367.                 0xFFFF,
  1368.                 0x02,
  1369.                 LNKB,
  1370.                 Zero
  1371.             },
  1372.  
  1373.             Package (0x04)
  1374.             {
  1375.                 0xFFFF,
  1376.                 0x03,
  1377.                 LNKC,
  1378.                 Zero
  1379.             }
  1380.         })
  1381.         Name (AR0F, Package (0x04)
  1382.         {
  1383.             Package (0x04)
  1384.             {
  1385.                 0xFFFF,
  1386.                 Zero,
  1387.                 Zero,
  1388.                 0x13
  1389.             },
  1390.  
  1391.             Package (0x04)
  1392.             {
  1393.                 0xFFFF,
  1394.                 One,
  1395.                 Zero,
  1396.                 0x10
  1397.             },
  1398.  
  1399.             Package (0x04)
  1400.             {
  1401.                 0xFFFF,
  1402.                 0x02,
  1403.                 Zero,
  1404.                 0x11
  1405.             },
  1406.  
  1407.             Package (0x04)
  1408.             {
  1409.                 0xFFFF,
  1410.                 0x03,
  1411.                 Zero,
  1412.                 0x12
  1413.             }
  1414.         })
  1415.         Name (PR02, Package (0x04)
  1416.         {
  1417.             Package (0x04)
  1418.             {
  1419.                 0xFFFF,
  1420.                 Zero,
  1421.                 LNKA,
  1422.                 Zero
  1423.             },
  1424.  
  1425.             Package (0x04)
  1426.             {
  1427.                 0xFFFF,
  1428.                 One,
  1429.                 LNKB,
  1430.                 Zero
  1431.             },
  1432.  
  1433.             Package (0x04)
  1434.             {
  1435.                 0xFFFF,
  1436.                 0x02,
  1437.                 LNKC,
  1438.                 Zero
  1439.             },
  1440.  
  1441.             Package (0x04)
  1442.             {
  1443.                 0xFFFF,
  1444.                 0x03,
  1445.                 LNKD,
  1446.                 Zero
  1447.             }
  1448.         })
  1449.         Name (AR02, Package (0x04)
  1450.         {
  1451.             Package (0x04)
  1452.             {
  1453.                 0xFFFF,
  1454.                 Zero,
  1455.                 Zero,
  1456.                 0x10
  1457.             },
  1458.  
  1459.             Package (0x04)
  1460.             {
  1461.                 0xFFFF,
  1462.                 One,
  1463.                 Zero,
  1464.                 0x11
  1465.             },
  1466.  
  1467.             Package (0x04)
  1468.             {
  1469.                 0xFFFF,
  1470.                 0x02,
  1471.                 Zero,
  1472.                 0x12
  1473.             },
  1474.  
  1475.             Package (0x04)
  1476.             {
  1477.                 0xFFFF,
  1478.                 0x03,
  1479.                 Zero,
  1480.                 0x13
  1481.             }
  1482.         })
  1483.         Name (PR0A, Package (0x04)
  1484.         {
  1485.             Package (0x04)
  1486.             {
  1487.                 0xFFFF,
  1488.                 Zero,
  1489.                 LNKB,
  1490.                 Zero
  1491.             },
  1492.  
  1493.             Package (0x04)
  1494.             {
  1495.                 0xFFFF,
  1496.                 One,
  1497.                 LNKC,
  1498.                 Zero
  1499.             },
  1500.  
  1501.             Package (0x04)
  1502.             {
  1503.                 0xFFFF,
  1504.                 0x02,
  1505.                 LNKD,
  1506.                 Zero
  1507.             },
  1508.  
  1509.             Package (0x04)
  1510.             {
  1511.                 0xFFFF,
  1512.                 0x03,
  1513.                 LNKA,
  1514.                 Zero
  1515.             }
  1516.         })
  1517.         Name (AR0A, Package (0x04)
  1518.         {
  1519.             Package (0x04)
  1520.             {
  1521.                 0xFFFF,
  1522.                 Zero,
  1523.                 Zero,
  1524.                 0x11
  1525.             },
  1526.  
  1527.             Package (0x04)
  1528.             {
  1529.                 0xFFFF,
  1530.                 One,
  1531.                 Zero,
  1532.                 0x12
  1533.             },
  1534.  
  1535.             Package (0x04)
  1536.             {
  1537.                 0xFFFF,
  1538.                 0x02,
  1539.                 Zero,
  1540.                 0x13
  1541.             },
  1542.  
  1543.             Package (0x04)
  1544.             {
  1545.                 0xFFFF,
  1546.                 0x03,
  1547.                 Zero,
  1548.                 0x10
  1549.             }
  1550.         })
  1551.         Name (PR0B, Package (0x04)
  1552.         {
  1553.             Package (0x04)
  1554.             {
  1555.                 0xFFFF,
  1556.                 Zero,
  1557.                 LNKC,
  1558.                 Zero
  1559.             },
  1560.  
  1561.             Package (0x04)
  1562.             {
  1563.                 0xFFFF,
  1564.                 One,
  1565.                 LNKD,
  1566.                 Zero
  1567.             },
  1568.  
  1569.             Package (0x04)
  1570.             {
  1571.                 0xFFFF,
  1572.                 0x02,
  1573.                 LNKA,
  1574.                 Zero
  1575.             },
  1576.  
  1577.             Package (0x04)
  1578.             {
  1579.                 0xFFFF,
  1580.                 0x03,
  1581.                 LNKB,
  1582.                 Zero
  1583.             }
  1584.         })
  1585.         Name (AR0B, Package (0x04)
  1586.         {
  1587.             Package (0x04)
  1588.             {
  1589.                 0xFFFF,
  1590.                 Zero,
  1591.                 Zero,
  1592.                 0x12
  1593.             },
  1594.  
  1595.             Package (0x04)
  1596.             {
  1597.                 0xFFFF,
  1598.                 One,
  1599.                 Zero,
  1600.                 0x13
  1601.             },
  1602.  
  1603.             Package (0x04)
  1604.             {
  1605.                 0xFFFF,
  1606.                 0x02,
  1607.                 Zero,
  1608.                 0x10
  1609.             },
  1610.  
  1611.             Package (0x04)
  1612.             {
  1613.                 0xFFFF,
  1614.                 0x03,
  1615.                 Zero,
  1616.                 0x11
  1617.             }
  1618.         })
  1619.         Name (PR0C, Package (0x04)
  1620.         {
  1621.             Package (0x04)
  1622.             {
  1623.                 0xFFFF,
  1624.                 Zero,
  1625.                 LNKD,
  1626.                 Zero
  1627.             },
  1628.  
  1629.             Package (0x04)
  1630.             {
  1631.                 0xFFFF,
  1632.                 One,
  1633.                 LNKA,
  1634.                 Zero
  1635.             },
  1636.  
  1637.             Package (0x04)
  1638.             {
  1639.                 0xFFFF,
  1640.                 0x02,
  1641.                 LNKB,
  1642.                 Zero
  1643.             },
  1644.  
  1645.             Package (0x04)
  1646.             {
  1647.                 0xFFFF,
  1648.                 0x03,
  1649.                 LNKC,
  1650.                 Zero
  1651.             }
  1652.         })
  1653.         Name (AR0C, Package (0x04)
  1654.         {
  1655.             Package (0x04)
  1656.             {
  1657.                 0xFFFF,
  1658.                 Zero,
  1659.                 Zero,
  1660.                 0x13
  1661.             },
  1662.  
  1663.             Package (0x04)
  1664.             {
  1665.                 0xFFFF,
  1666.                 One,
  1667.                 Zero,
  1668.                 0x10
  1669.             },
  1670.  
  1671.             Package (0x04)
  1672.             {
  1673.                 0xFFFF,
  1674.                 0x02,
  1675.                 Zero,
  1676.                 0x11
  1677.             },
  1678.  
  1679.             Package (0x04)
  1680.             {
  1681.                 0xFFFF,
  1682.                 0x03,
  1683.                 Zero,
  1684.                 0x12
  1685.             }
  1686.         })
  1687.         Name (PR01, Package (0x0C)
  1688.         {
  1689.             Package (0x04)
  1690.             {
  1691.                 0xFFFF,
  1692.                 Zero,
  1693.                 LNKF,
  1694.                 Zero
  1695.             },
  1696.  
  1697.             Package (0x04)
  1698.             {
  1699.                 0xFFFF,
  1700.                 One,
  1701.                 LNKG,
  1702.                 Zero
  1703.             },
  1704.  
  1705.             Package (0x04)
  1706.             {
  1707.                 0xFFFF,
  1708.                 0x02,
  1709.                 LNKH,
  1710.                 Zero
  1711.             },
  1712.  
  1713.             Package (0x04)
  1714.             {
  1715.                 0xFFFF,
  1716.                 0x03,
  1717.                 LNKE,
  1718.                 Zero
  1719.             },
  1720.  
  1721.             Package (0x04)
  1722.             {
  1723.                 0x0001FFFF,
  1724.                 Zero,
  1725.                 LNKG,
  1726.                 Zero
  1727.             },
  1728.  
  1729.             Package (0x04)
  1730.             {
  1731.                 0x0001FFFF,
  1732.                 One,
  1733.                 LNKF,
  1734.                 Zero
  1735.             },
  1736.  
  1737.             Package (0x04)
  1738.             {
  1739.                 0x0001FFFF,
  1740.                 0x02,
  1741.                 LNKE,
  1742.                 Zero
  1743.             },
  1744.  
  1745.             Package (0x04)
  1746.             {
  1747.                 0x0001FFFF,
  1748.                 0x03,
  1749.                 LNKH,
  1750.                 Zero
  1751.             },
  1752.  
  1753.             Package (0x04)
  1754.             {
  1755.                 0x0005FFFF,
  1756.                 Zero,
  1757.                 LNKC,
  1758.                 Zero
  1759.             },
  1760.  
  1761.             Package (0x04)
  1762.             {
  1763.                 0x0005FFFF,
  1764.                 One,
  1765.                 LNKE,
  1766.                 Zero
  1767.             },
  1768.  
  1769.             Package (0x04)
  1770.             {
  1771.                 0x0005FFFF,
  1772.                 0x02,
  1773.                 LNKG,
  1774.                 Zero
  1775.             },
  1776.  
  1777.             Package (0x04)
  1778.             {
  1779.                 0x0005FFFF,
  1780.                 0x03,
  1781.                 LNKF,
  1782.                 Zero
  1783.             }
  1784.         })
  1785.         Name (AR01, Package (0x0C)
  1786.         {
  1787.             Package (0x04)
  1788.             {
  1789.                 0xFFFF,
  1790.                 Zero,
  1791.                 Zero,
  1792.                 0x15
  1793.             },
  1794.  
  1795.             Package (0x04)
  1796.             {
  1797.                 0xFFFF,
  1798.                 One,
  1799.                 Zero,
  1800.                 0x16
  1801.             },
  1802.  
  1803.             Package (0x04)
  1804.             {
  1805.                 0xFFFF,
  1806.                 0x02,
  1807.                 Zero,
  1808.                 0x17
  1809.             },
  1810.  
  1811.             Package (0x04)
  1812.             {
  1813.                 0xFFFF,
  1814.                 0x03,
  1815.                 Zero,
  1816.                 0x14
  1817.             },
  1818.  
  1819.             Package (0x04)
  1820.             {
  1821.                 0x0001FFFF,
  1822.                 Zero,
  1823.                 Zero,
  1824.                 0x16
  1825.             },
  1826.  
  1827.             Package (0x04)
  1828.             {
  1829.                 0x0001FFFF,
  1830.                 One,
  1831.                 Zero,
  1832.                 0x15
  1833.             },
  1834.  
  1835.             Package (0x04)
  1836.             {
  1837.                 0x0001FFFF,
  1838.                 0x02,
  1839.                 Zero,
  1840.                 0x14
  1841.             },
  1842.  
  1843.             Package (0x04)
  1844.             {
  1845.                 0x0001FFFF,
  1846.                 0x03,
  1847.                 Zero,
  1848.                 0x17
  1849.             },
  1850.  
  1851.             Package (0x04)
  1852.             {
  1853.                 0x0005FFFF,
  1854.                 Zero,
  1855.                 Zero,
  1856.                 0x12
  1857.             },
  1858.  
  1859.             Package (0x04)
  1860.             {
  1861.                 0x0005FFFF,
  1862.                 One,
  1863.                 Zero,
  1864.                 0x14
  1865.             },
  1866.  
  1867.             Package (0x04)
  1868.             {
  1869.                 0x0005FFFF,
  1870.                 0x02,
  1871.                 Zero,
  1872.                 0x16
  1873.             },
  1874.  
  1875.             Package (0x04)
  1876.             {
  1877.                 0x0005FFFF,
  1878.                 0x03,
  1879.                 Zero,
  1880.                 0x15
  1881.             }
  1882.         })
  1883.         Name (PRSA, ResourceTemplate ()
  1884.         {
  1885.             IRQ (Level, ActiveLow, Shared, )
  1886.                 {1,3,4,5,6,10,11,12,14,15}
  1887.         })
  1888.         Alias (PRSA, PRSB)
  1889.         Alias (PRSA, PRSC)
  1890.         Alias (PRSA, PRSD)
  1891.         Alias (PRSA, PRSE)
  1892.         Alias (PRSA, PRSF)
  1893.         Alias (PRSA, PRSG)
  1894.         Alias (PRSA, PRSH)
  1895.         Device (PCI0)
  1896.         {
  1897.             Name (_HID, EisaId ("PNP0A08"))  // _HID: Hardware ID
  1898.             Name (_CID, EisaId ("PNP0A03"))  // _CID: Compatible ID
  1899.             Name (_ADR, Zero)  // _ADR: Address
  1900.             Method (^BN00, 0, NotSerialized)
  1901.             {
  1902.                 Return (Zero)
  1903.             }
  1904.  
  1905.             Method (_BBN, 0, NotSerialized)  // _BBN: BIOS Bus Number
  1906.             {
  1907.                 Return (BN00 ())
  1908.             }
  1909.  
  1910.             Name (_UID, Zero)  // _UID: Unique ID
  1911.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  1912.             {
  1913.                 If (PICM)
  1914.                 {
  1915.                     Return (AR00 ())
  1916.                 }
  1917.  
  1918.                 Return (PR00 ())
  1919.             }
  1920.  
  1921.             OperationRegion (HBUS, PCI_Config, Zero, 0x0100)
  1922.             Field (HBUS, DWordAcc, NoLock, Preserve)
  1923.             {
  1924.                 Offset (0x40),
  1925.                 EPEN,   1,
  1926.                     ,   11,
  1927.                 EPBR,   20,
  1928.                 Offset (0x48),
  1929.                 MHEN,   1,
  1930.                     ,   14,
  1931.                 MHBR,   17,
  1932.                 Offset (0x50),
  1933.                 GCLK,   1,
  1934.                 Offset (0x54),
  1935.                 D0EN,   1,
  1936.                 Offset (0x60),
  1937.                 PXEN,   1,
  1938.                 PXSZ,   2,
  1939.                     ,   23,
  1940.                 PXBR,   6,
  1941.                 Offset (0x68),
  1942.                 DIEN,   1,
  1943.                     ,   11,
  1944.                 DIBR,   20,
  1945.                 Offset (0x70),
  1946.                     ,   20,
  1947.                 MEBR,   12,
  1948.                 Offset (0x80),
  1949.                     ,   4,
  1950.                 PM0H,   2,
  1951.                 Offset (0x81),
  1952.                 PM1L,   2,
  1953.                     ,   2,
  1954.                 PM1H,   2,
  1955.                 Offset (0x82),
  1956.                 PM2L,   2,
  1957.                     ,   2,
  1958.                 PM2H,   2,
  1959.                 Offset (0x83),
  1960.                 PM3L,   2,
  1961.                     ,   2,
  1962.                 PM3H,   2,
  1963.                 Offset (0x84),
  1964.                 PM4L,   2,
  1965.                     ,   2,
  1966.                 PM4H,   2,
  1967.                 Offset (0x85),
  1968.                 PM5L,   2,
  1969.                     ,   2,
  1970.                 PM5H,   2,
  1971.                 Offset (0x86),
  1972.                 PM6L,   2,
  1973.                     ,   2,
  1974.                 PM6H,   2,
  1975.                 Offset (0x87),
  1976.                 Offset (0xA8),
  1977.                     ,   20,
  1978.                 TUUD,   19,
  1979.                 Offset (0xBC),
  1980.                     ,   20,
  1981.                 TLUD,   12,
  1982.                 Offset (0xC8),
  1983.                     ,   7,
  1984.                 HTSE,   1
  1985.             }
  1986.  
  1987.             OperationRegion (MCHT, SystemMemory, 0xFED10000, 0x1100)
  1988.             Field (MCHT, ByteAcc, NoLock, Preserve)
  1989.             {
  1990.             }
  1991.  
  1992.             Name (BUF0, ResourceTemplate ()
  1993.             {
  1994.                 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
  1995.                     0x0000,             // Granularity
  1996.                     0x0000,             // Range Minimum
  1997.                     0x00FF,             // Range Maximum
  1998.                     0x0000,             // Translation Offset
  1999.                     0x0100,             // Length
  2000.                     ,, _Y00)
  2001.                 DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  2002.                     0x00000000,         // Granularity
  2003.                     0x00000000,         // Range Minimum
  2004.                     0x00000CF7,         // Range Maximum
  2005.                     0x00000000,         // Translation Offset
  2006.                     0x00000CF8,         // Length
  2007.                     ,, , TypeStatic)
  2008.                 IO (Decode16,
  2009.                     0x0CF8,             // Range Minimum
  2010.                     0x0CF8,             // Range Maximum
  2011.                     0x01,               // Alignment
  2012.                     0x08,               // Length
  2013.                     )
  2014.                 DWordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  2015.                     0x00000000,         // Granularity
  2016.                     0x00000D00,         // Range Minimum
  2017.                     0x0000FFFF,         // Range Maximum
  2018.                     0x00000000,         // Translation Offset
  2019.                     0x0000F300,         // Length
  2020.                     ,, , TypeStatic)
  2021.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2022.                     0x00000000,         // Granularity
  2023.                     0x000A0000,         // Range Minimum
  2024.                     0x000BFFFF,         // Range Maximum
  2025.                     0x00000000,         // Translation Offset
  2026.                     0x00020000,         // Length
  2027.                     ,, , AddressRangeMemory, TypeStatic)
  2028.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2029.                     0x00000000,         // Granularity
  2030.                     0x000C0000,         // Range Minimum
  2031.                     0x000C3FFF,         // Range Maximum
  2032.                     0x00000000,         // Translation Offset
  2033.                     0x00004000,         // Length
  2034.                     ,, _Y01, AddressRangeMemory, TypeStatic)
  2035.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2036.                     0x00000000,         // Granularity
  2037.                     0x000C4000,         // Range Minimum
  2038.                     0x000C7FFF,         // Range Maximum
  2039.                     0x00000000,         // Translation Offset
  2040.                     0x00004000,         // Length
  2041.                     ,, _Y02, AddressRangeMemory, TypeStatic)
  2042.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2043.                     0x00000000,         // Granularity
  2044.                     0x000C8000,         // Range Minimum
  2045.                     0x000CBFFF,         // Range Maximum
  2046.                     0x00000000,         // Translation Offset
  2047.                     0x00004000,         // Length
  2048.                     ,, _Y03, AddressRangeMemory, TypeStatic)
  2049.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2050.                     0x00000000,         // Granularity
  2051.                     0x000CC000,         // Range Minimum
  2052.                     0x000CFFFF,         // Range Maximum
  2053.                     0x00000000,         // Translation Offset
  2054.                     0x00004000,         // Length
  2055.                     ,, _Y04, AddressRangeMemory, TypeStatic)
  2056.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2057.                     0x00000000,         // Granularity
  2058.                     0x000D0000,         // Range Minimum
  2059.                     0x000D3FFF,         // Range Maximum
  2060.                     0x00000000,         // Translation Offset
  2061.                     0x00004000,         // Length
  2062.                     ,, _Y05, AddressRangeMemory, TypeStatic)
  2063.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2064.                     0x00000000,         // Granularity
  2065.                     0x000D4000,         // Range Minimum
  2066.                     0x000D7FFF,         // Range Maximum
  2067.                     0x00000000,         // Translation Offset
  2068.                     0x00004000,         // Length
  2069.                     ,, _Y06, AddressRangeMemory, TypeStatic)
  2070.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2071.                     0x00000000,         // Granularity
  2072.                     0x000D8000,         // Range Minimum
  2073.                     0x000DBFFF,         // Range Maximum
  2074.                     0x00000000,         // Translation Offset
  2075.                     0x00004000,         // Length
  2076.                     ,, _Y07, AddressRangeMemory, TypeStatic)
  2077.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2078.                     0x00000000,         // Granularity
  2079.                     0x000DC000,         // Range Minimum
  2080.                     0x000DFFFF,         // Range Maximum
  2081.                     0x00000000,         // Translation Offset
  2082.                     0x00004000,         // Length
  2083.                     ,, _Y08, AddressRangeMemory, TypeStatic)
  2084.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2085.                     0x00000000,         // Granularity
  2086.                     0x000E0000,         // Range Minimum
  2087.                     0x000E3FFF,         // Range Maximum
  2088.                     0x00000000,         // Translation Offset
  2089.                     0x00004000,         // Length
  2090.                     ,, _Y09, AddressRangeMemory, TypeStatic)
  2091.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2092.                     0x00000000,         // Granularity
  2093.                     0x000E4000,         // Range Minimum
  2094.                     0x000E7FFF,         // Range Maximum
  2095.                     0x00000000,         // Translation Offset
  2096.                     0x00004000,         // Length
  2097.                     ,, _Y0A, AddressRangeMemory, TypeStatic)
  2098.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2099.                     0x00000000,         // Granularity
  2100.                     0x000E8000,         // Range Minimum
  2101.                     0x000EBFFF,         // Range Maximum
  2102.                     0x00000000,         // Translation Offset
  2103.                     0x00004000,         // Length
  2104.                     ,, _Y0B, AddressRangeMemory, TypeStatic)
  2105.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2106.                     0x00000000,         // Granularity
  2107.                     0x000EC000,         // Range Minimum
  2108.                     0x000EFFFF,         // Range Maximum
  2109.                     0x00000000,         // Translation Offset
  2110.                     0x00004000,         // Length
  2111.                     ,, _Y0C, AddressRangeMemory, TypeStatic)
  2112.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2113.                     0x00000000,         // Granularity
  2114.                     0x000F0000,         // Range Minimum
  2115.                     0x000FFFFF,         // Range Maximum
  2116.                     0x00000000,         // Translation Offset
  2117.                     0x00010000,         // Length
  2118.                     ,, _Y0D, AddressRangeMemory, TypeStatic)
  2119.                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2120.                     0x00000000,         // Granularity
  2121.                     0x00000000,         // Range Minimum
  2122.                     0xFEAFFFFF,         // Range Maximum
  2123.                     0x00000000,         // Translation Offset
  2124.                     0xFEB00000,         // Length
  2125.                     ,, _Y0E, AddressRangeMemory, TypeStatic)
  2126.                 QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  2127.                     0x0000000000000000, // Granularity
  2128.                     0x0000000000010000, // Range Minimum
  2129.                     0x000000000001FFFF, // Range Maximum
  2130.                     0x0000000000000000, // Translation Offset
  2131.                     0x0000000000010000, // Length
  2132.                     ,, _Y0F, AddressRangeMemory, TypeStatic)
  2133.             })
  2134.             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2135.             {
  2136.                 CreateWordField (BUF0, \_SB.PCI0._Y00._MAX, PBMX)  // _MAX: Maximum Base Address
  2137.                 Store (Subtract (ShiftRight (PELN, 0x14), 0x02), PBMX)
  2138.                 CreateWordField (BUF0, \_SB.PCI0._Y00._LEN, PBLN)  // _LEN: Length
  2139.                 Store (Subtract (ShiftRight (PELN, 0x14), One), PBLN)
  2140.                 If (PM1L)
  2141.                 {
  2142.                     CreateDWordField (BUF0, \_SB.PCI0._Y01._LEN, C0LN)  // _LEN: Length
  2143.                     Store (Zero, C0LN)
  2144.                 }
  2145.  
  2146.                 If (LEqual (PM1L, One))
  2147.                 {
  2148.                     CreateBitField (BUF0, \_SB.PCI0._Y01._RW, C0RW)  // _RW_: Read-Write Status
  2149.                     Store (Zero, C0RW)
  2150.                 }
  2151.  
  2152.                 If (PM1H)
  2153.                 {
  2154.                     CreateDWordField (BUF0, \_SB.PCI0._Y02._LEN, C4LN)  // _LEN: Length
  2155.                     Store (Zero, C4LN)
  2156.                 }
  2157.  
  2158.                 If (LEqual (PM1H, One))
  2159.                 {
  2160.                     CreateBitField (BUF0, \_SB.PCI0._Y02._RW, C4RW)  // _RW_: Read-Write Status
  2161.                     Store (Zero, C4RW)
  2162.                 }
  2163.  
  2164.                 If (PM2L)
  2165.                 {
  2166.                     CreateDWordField (BUF0, \_SB.PCI0._Y03._LEN, C8LN)  // _LEN: Length
  2167.                     Store (Zero, C8LN)
  2168.                 }
  2169.  
  2170.                 If (LEqual (PM2L, One))
  2171.                 {
  2172.                     CreateBitField (BUF0, \_SB.PCI0._Y03._RW, C8RW)  // _RW_: Read-Write Status
  2173.                     Store (Zero, C8RW)
  2174.                 }
  2175.  
  2176.                 If (PM2H)
  2177.                 {
  2178.                     CreateDWordField (BUF0, \_SB.PCI0._Y04._LEN, CCLN)  // _LEN: Length
  2179.                     Store (Zero, CCLN)
  2180.                 }
  2181.  
  2182.                 If (LEqual (PM2H, One))
  2183.                 {
  2184.                     CreateBitField (BUF0, \_SB.PCI0._Y04._RW, CCRW)  // _RW_: Read-Write Status
  2185.                     Store (Zero, CCRW)
  2186.                 }
  2187.  
  2188.                 If (PM3L)
  2189.                 {
  2190.                     CreateDWordField (BUF0, \_SB.PCI0._Y05._LEN, D0LN)  // _LEN: Length
  2191.                     Store (Zero, D0LN)
  2192.                 }
  2193.  
  2194.                 If (LEqual (PM3L, One))
  2195.                 {
  2196.                     CreateBitField (BUF0, \_SB.PCI0._Y05._RW, D0RW)  // _RW_: Read-Write Status
  2197.                     Store (Zero, D0RW)
  2198.                 }
  2199.  
  2200.                 If (PM3H)
  2201.                 {
  2202.                     CreateDWordField (BUF0, \_SB.PCI0._Y06._LEN, D4LN)  // _LEN: Length
  2203.                     Store (Zero, D4LN)
  2204.                 }
  2205.  
  2206.                 If (LEqual (PM3H, One))
  2207.                 {
  2208.                     CreateBitField (BUF0, \_SB.PCI0._Y06._RW, D4RW)  // _RW_: Read-Write Status
  2209.                     Store (Zero, D4RW)
  2210.                 }
  2211.  
  2212.                 If (PM4L)
  2213.                 {
  2214.                     CreateDWordField (BUF0, \_SB.PCI0._Y07._LEN, D8LN)  // _LEN: Length
  2215.                     Store (Zero, D8LN)
  2216.                 }
  2217.  
  2218.                 If (LEqual (PM4L, One))
  2219.                 {
  2220.                     CreateBitField (BUF0, \_SB.PCI0._Y07._RW, D8RW)  // _RW_: Read-Write Status
  2221.                     Store (Zero, D8RW)
  2222.                 }
  2223.  
  2224.                 If (PM4H)
  2225.                 {
  2226.                     CreateDWordField (BUF0, \_SB.PCI0._Y08._LEN, DCLN)  // _LEN: Length
  2227.                     Store (Zero, DCLN)
  2228.                 }
  2229.  
  2230.                 If (LEqual (PM4H, One))
  2231.                 {
  2232.                     CreateBitField (BUF0, \_SB.PCI0._Y08._RW, DCRW)  // _RW_: Read-Write Status
  2233.                     Store (Zero, DCRW)
  2234.                 }
  2235.  
  2236.                 If (PM5L)
  2237.                 {
  2238.                     CreateDWordField (BUF0, \_SB.PCI0._Y09._LEN, E0LN)  // _LEN: Length
  2239.                     Store (Zero, E0LN)
  2240.                 }
  2241.  
  2242.                 If (LEqual (PM5L, One))
  2243.                 {
  2244.                     CreateBitField (BUF0, \_SB.PCI0._Y09._RW, E0RW)  // _RW_: Read-Write Status
  2245.                     Store (Zero, E0RW)
  2246.                 }
  2247.  
  2248.                 If (PM5H)
  2249.                 {
  2250.                     CreateDWordField (BUF0, \_SB.PCI0._Y0A._LEN, E4LN)  // _LEN: Length
  2251.                     Store (Zero, E4LN)
  2252.                 }
  2253.  
  2254.                 If (LEqual (PM5H, One))
  2255.                 {
  2256.                     CreateBitField (BUF0, \_SB.PCI0._Y0A._RW, E4RW)  // _RW_: Read-Write Status
  2257.                     Store (Zero, E4RW)
  2258.                 }
  2259.  
  2260.                 If (PM6L)
  2261.                 {
  2262.                     CreateDWordField (BUF0, \_SB.PCI0._Y0B._LEN, E8LN)  // _LEN: Length
  2263.                     Store (Zero, E8LN)
  2264.                 }
  2265.  
  2266.                 If (LEqual (PM6L, One))
  2267.                 {
  2268.                     CreateBitField (BUF0, \_SB.PCI0._Y0B._RW, E8RW)  // _RW_: Read-Write Status
  2269.                     Store (Zero, E8RW)
  2270.                 }
  2271.  
  2272.                 If (PM6H)
  2273.                 {
  2274.                     CreateDWordField (BUF0, \_SB.PCI0._Y0C._LEN, ECLN)  // _LEN: Length
  2275.                     Store (Zero, ECLN)
  2276.                 }
  2277.  
  2278.                 If (LEqual (PM6H, One))
  2279.                 {
  2280.                     CreateBitField (BUF0, \_SB.PCI0._Y0C._RW, ECRW)  // _RW_: Read-Write Status
  2281.                     Store (Zero, ECRW)
  2282.                 }
  2283.  
  2284.                 If (PM0H)
  2285.                 {
  2286.                     CreateDWordField (BUF0, \_SB.PCI0._Y0D._LEN, F0LN)  // _LEN: Length
  2287.                     Store (Zero, F0LN)
  2288.                 }
  2289.  
  2290.                 If (LEqual (PM0H, One))
  2291.                 {
  2292.                     CreateBitField (BUF0, \_SB.PCI0._Y0D._RW, F0RW)  // _RW_: Read-Write Status
  2293.                     Store (Zero, F0RW)
  2294.                 }
  2295.  
  2296.                 CreateDWordField (BUF0, \_SB.PCI0._Y0E._MIN, M1MN)  // _MIN: Minimum Base Address
  2297.                 CreateDWordField (BUF0, \_SB.PCI0._Y0E._MAX, M1MX)  // _MAX: Maximum Base Address
  2298.                 CreateDWordField (BUF0, \_SB.PCI0._Y0E._LEN, M1LN)  // _LEN: Length
  2299.                 ShiftLeft (TLUD, 0x14, M1MN)
  2300.                 Add (Subtract (M1MX, M1MN), One, M1LN)
  2301.                 If (LOr (LEqual (MM64, Zero), LLessEqual (OSYS, 0x07D3)))
  2302.                 {
  2303.                     CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, MSLN)  // _LEN: Length
  2304.                     Store (Zero, MSLN)
  2305.                 }
  2306.                 Else
  2307.                 {
  2308.                     CreateQWordField (BUF0, \_SB.PCI0._Y0F._LEN, M2LN)  // _LEN: Length
  2309.                     CreateQWordField (BUF0, \_SB.PCI0._Y0F._MIN, M2MN)  // _MIN: Minimum Base Address
  2310.                     CreateQWordField (BUF0, \_SB.PCI0._Y0F._MAX, M2MX)  // _MAX: Maximum Base Address
  2311.                     Store (0x0000000400000000, M2LN)
  2312.                     If (LGreaterEqual (TUUD, 0x1000))
  2313.                     {
  2314.                         ShiftLeft (TUUD, 0x14, M2MN)
  2315.                     }
  2316.                     Else
  2317.                     {
  2318.                         Store (0x0000000100000000, M2MN)
  2319.                     }
  2320.  
  2321.                     Subtract (Add (M2MN, M2LN), One, M2MX)
  2322.                 }
  2323.  
  2324.                 Return (BUF0)
  2325.             }
  2326.  
  2327.             Name (GUID, Buffer (0x10)
  2328.             {
  2329.                 /* 0000 */   0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40,
  2330.                 /* 0008 */   0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66
  2331.             })
  2332.             Name (SUPP, Zero)
  2333.             Name (CTRL, Zero)
  2334.             Name (XCNT, Zero)
  2335.             Method (_OSC, 4, Serialized)  // _OSC: Operating System Capabilities
  2336.             {
  2337.                 Store (Arg3, Local0)
  2338.                 CreateDWordField (Local0, Zero, CDW1)
  2339.                 CreateDWordField (Local0, 0x04, CDW2)
  2340.                 CreateDWordField (Local0, 0x08, CDW3)
  2341.                 If (^XHC.CUID (Arg0))
  2342.                 {
  2343.                     Return (^XHC.POSC (Arg1, Arg2, Arg3))
  2344.                 }
  2345.                 Else
  2346.                 {
  2347.                     If (_OSI ("Windows 2012"))
  2348.                     {
  2349.                         If (LEqual (XCNT, Zero))
  2350.                         {
  2351.                             ^XHC.XSEL ()
  2352.                             Increment (XCNT)
  2353.                         }
  2354.                     }
  2355.                 }
  2356.  
  2357.                 If (LAnd (LEqual (Arg0, GUID), NEXP))
  2358.                 {
  2359.                     Store (CDW2, SUPP)
  2360.                     Store (CDW3, CTRL)
  2361.                     If (Not (And (CDW1, One)))
  2362.                     {
  2363.                         If (And (CTRL, One))
  2364.                         {
  2365.                             NHPG ()
  2366.                         }
  2367.  
  2368.                         If (And (CTRL, 0x04))
  2369.                         {
  2370.                             NPME ()
  2371.                         }
  2372.                     }
  2373.  
  2374.                     If (LNotEqual (Arg1, One))
  2375.                     {
  2376.                         Or (CDW1, 0x08, CDW1)
  2377.                     }
  2378.  
  2379.                     If (LNotEqual (CDW3, CTRL))
  2380.                     {
  2381.                         Or (CDW1, 0x10, CDW1)
  2382.                     }
  2383.  
  2384.                     Store (CTRL, CDW3)
  2385.                     Store (CTRL, OSCC)
  2386.                     Return (Local0)
  2387.                 }
  2388.                 Else
  2389.                 {
  2390.                     Or (CDW1, 0x04, CDW1)
  2391.                     Return (Local0)
  2392.                 }
  2393.             }
  2394.  
  2395.             Scope (\_SB.PCI0)
  2396.             {
  2397.                 Method (AR00, 0, NotSerialized)
  2398.                 {
  2399.                     Return (^^AR00)
  2400.                 }
  2401.  
  2402.                 Method (PR00, 0, NotSerialized)
  2403.                 {
  2404.                     Return (^^PR00)
  2405.                 }
  2406.  
  2407.                 Method (AR01, 0, NotSerialized)
  2408.                 {
  2409.                     Return (^^AR01)
  2410.                 }
  2411.  
  2412.                 Method (PR01, 0, NotSerialized)
  2413.                 {
  2414.                     Return (^^PR01)
  2415.                 }
  2416.  
  2417.                 Method (AR02, 0, NotSerialized)
  2418.                 {
  2419.                     Return (^^AR02)
  2420.                 }
  2421.  
  2422.                 Method (PR02, 0, NotSerialized)
  2423.                 {
  2424.                     Return (^^PR02)
  2425.                 }
  2426.  
  2427.                 Method (AR04, 0, NotSerialized)
  2428.                 {
  2429.                     Return (^^AR04)
  2430.                 }
  2431.  
  2432.                 Method (PR04, 0, NotSerialized)
  2433.                 {
  2434.                     Return (^^PR04)
  2435.                 }
  2436.  
  2437.                 Method (AR05, 0, NotSerialized)
  2438.                 {
  2439.                     Return (^^AR05)
  2440.                 }
  2441.  
  2442.                 Method (PR05, 0, NotSerialized)
  2443.                 {
  2444.                     Return (^^PR05)
  2445.                 }
  2446.  
  2447.                 Method (AR06, 0, NotSerialized)
  2448.                 {
  2449.                     Return (^^AR06)
  2450.                 }
  2451.  
  2452.                 Method (PR06, 0, NotSerialized)
  2453.                 {
  2454.                     Return (^^PR06)
  2455.                 }
  2456.  
  2457.                 Method (AR07, 0, NotSerialized)
  2458.                 {
  2459.                     Return (^^AR07)
  2460.                 }
  2461.  
  2462.                 Method (PR07, 0, NotSerialized)
  2463.                 {
  2464.                     Return (^^PR07)
  2465.                 }
  2466.  
  2467.                 Method (AR08, 0, NotSerialized)
  2468.                 {
  2469.                     Return (^^AR08)
  2470.                 }
  2471.  
  2472.                 Method (PR08, 0, NotSerialized)
  2473.                 {
  2474.                     Return (^^PR08)
  2475.                 }
  2476.  
  2477.                 Method (AR09, 0, NotSerialized)
  2478.                 {
  2479.                     Return (^^AR09)
  2480.                 }
  2481.  
  2482.                 Method (PR09, 0, NotSerialized)
  2483.                 {
  2484.                     Return (^^PR09)
  2485.                 }
  2486.  
  2487.                 Method (AR0A, 0, NotSerialized)
  2488.                 {
  2489.                     Return (^^AR0A)
  2490.                 }
  2491.  
  2492.                 Method (PR0A, 0, NotSerialized)
  2493.                 {
  2494.                     Return (^^PR0A)
  2495.                 }
  2496.  
  2497.                 Method (AR0B, 0, NotSerialized)
  2498.                 {
  2499.                     Return (^^AR0B)
  2500.                 }
  2501.  
  2502.                 Method (PR0B, 0, NotSerialized)
  2503.                 {
  2504.                     Return (^^PR0B)
  2505.                 }
  2506.             }
  2507.  
  2508.             Device (P0P1)
  2509.             {
  2510.                 Name (_ADR, 0x001E0000)  // _ADR: Address
  2511.                 Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  2512.                 {
  2513.                     Return (GPRW (0x0B, 0x04))
  2514.                 }
  2515.  
  2516.                 Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  2517.                 {
  2518.                     If (PICM)
  2519.                     {
  2520.                         Return (AR01 ())
  2521.                     }
  2522.  
  2523.                     Return (PR01 ())
  2524.                 }
  2525.             }
  2526.  
  2527.             Device (LPCB)
  2528.             {
  2529.                 Name (_ADR, 0x001F0000)  // _ADR: Address
  2530.                 Scope (\_SB)
  2531.                 {
  2532.                     Name (TCGP, Buffer (0x08)
  2533.                     {
  2534.                          0x1F, 0xE0, 0x1F, 0x01, 0x02, 0x04, 0x08, 0xF0
  2535.                     })
  2536.                     CreateByteField (TCGP, Zero, PPRQ)
  2537.                     CreateByteField (TCGP, One, PPL1)
  2538.                     CreateByteField (TCGP, 0x02, PPRP)
  2539.                     CreateByteField (TCGP, 0x03, TPRS)
  2540.                     CreateByteField (TCGP, 0x04, PPOR)
  2541.                     CreateByteField (TCGP, 0x05, TPMV)
  2542.                     CreateByteField (TCGP, 0x06, MOR)
  2543.                     CreateByteField (TCGP, 0x07, TVEN)
  2544.                     OperationRegion (TCGC, SystemIO, 0x72, 0x02)
  2545.                     Field (TCGC, ByteAcc, Lock, Preserve)
  2546.                     {
  2547.                         TIDX,   8,
  2548.                         TPDA,   8
  2549.                     }
  2550.  
  2551.                     IndexField (TIDX, TPDA, ByteAcc, Lock, Preserve)
  2552.                     {
  2553.                         Offset (0x40),
  2554.                         TPP1,   8,
  2555.                         PPLO,   8,
  2556.                         TPP3,   8
  2557.                     }
  2558.  
  2559.                     OperationRegion (SMIP, SystemIO, 0xB2, 0x02)
  2560.                     Field (SMIP, WordAcc, NoLock, Preserve)
  2561.                     {
  2562.                         SMIT,   8,
  2563.                         SMID,   8
  2564.                     }
  2565.  
  2566.                     OperationRegion (PCI0.LPCB.LPC1, PCI_Config, 0x40, 0xC0)
  2567.                     Field (PCI0.LPCB.LPC1, AnyAcc, NoLock, Preserve)
  2568.                     {
  2569.                         Offset (0x20),
  2570.                         PARC,   8,
  2571.                         PBRC,   8,
  2572.                         PCRC,   8,
  2573.                         PDRC,   8,
  2574.                         Offset (0x28),
  2575.                         PERC,   8,
  2576.                         PFRC,   8,
  2577.                         PGRC,   8,
  2578.                         PHRC,   8,
  2579.                         Offset (0x6C),
  2580.                         Offset (0x6D),
  2581.                         Offset (0x6E),
  2582.                         XUSB,   1
  2583.                     }
  2584.  
  2585.                     Device (LNKA)
  2586.                     {
  2587.                         Name (_HID, EisaId ("PNP0C0F"))  // _HID: Hardware ID
  2588.                         Name (_UID, One)  // _UID: Unique ID
  2589.                         Method (_DIS, 0, Serialized)  // _DIS: Disable Device
  2590.                         {
  2591.                             Or (PARC, 0x80, PARC)
  2592.                         }
  2593.  
  2594.                         Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
  2595.                         {
  2596.                             Return (PRSA)
  2597.                         }
  2598.  
  2599.                         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2600.                         {
  2601.                             Name (RTLA, ResourceTemplate ()
  2602.                             {
  2603.                                 IRQ (Level, ActiveLow, Shared, )
  2604.                                     {}
  2605.                             })
  2606.                             CreateWordField (RTLA, One, IRQ0)
  2607.                             Store (Zero, IRQ0)
  2608.                             ShiftLeft (One, And (PARC, 0x0F), IRQ0)
  2609.                             Return (RTLA)
  2610.                         }
  2611.  
  2612.                         Method (_SRS, 1, Serialized)  // _SRS: Set Resource Settings
  2613.                         {
  2614.                             CreateWordField (Arg0, One, IRQ0)
  2615.                             FindSetRightBit (IRQ0, Local0)
  2616.                             Decrement (Local0)
  2617.                             Store (Local0, PARC)
  2618.                         }
  2619.  
  2620.                         Method (_STA, 0, Serialized)  // _STA: Status
  2621.                         {
  2622.                             If (And (PARC, 0x80))
  2623.                             {
  2624.                                 Return (0x09)
  2625.                             }
  2626.                             Else
  2627.                             {
  2628.                                 Return (0x0B)
  2629.                             }
  2630.                         }
  2631.                     }
  2632.  
  2633.                     Device (LNKB)
  2634.                     {
  2635.                         Name (_HID, EisaId ("PNP0C0F"))  // _HID: Hardware ID
  2636.                         Name (_UID, 0x02)  // _UID: Unique ID
  2637.                         Method (_DIS, 0, Serialized)  // _DIS: Disable Device
  2638.                         {
  2639.                             Or (PBRC, 0x80, PBRC)
  2640.                         }
  2641.  
  2642.                         Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
  2643.                         {
  2644.                             Return (PRSB)
  2645.                         }
  2646.  
  2647.                         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2648.                         {
  2649.                             Name (RTLB, ResourceTemplate ()
  2650.                             {
  2651.                                 IRQ (Level, ActiveLow, Shared, )
  2652.                                     {}
  2653.                             })
  2654.                             CreateWordField (RTLB, One, IRQ0)
  2655.                             Store (Zero, IRQ0)
  2656.                             ShiftLeft (One, And (PBRC, 0x0F), IRQ0)
  2657.                             Return (RTLB)
  2658.                         }
  2659.  
  2660.                         Method (_SRS, 1, Serialized)  // _SRS: Set Resource Settings
  2661.                         {
  2662.                             CreateWordField (Arg0, One, IRQ0)
  2663.                             FindSetRightBit (IRQ0, Local0)
  2664.                             Decrement (Local0)
  2665.                             Store (Local0, PBRC)
  2666.                         }
  2667.  
  2668.                         Method (_STA, 0, Serialized)  // _STA: Status
  2669.                         {
  2670.                             If (And (PBRC, 0x80))
  2671.                             {
  2672.                                 Return (0x09)
  2673.                             }
  2674.                             Else
  2675.                             {
  2676.                                 Return (0x0B)
  2677.                             }
  2678.                         }
  2679.                     }
  2680.  
  2681.                     Device (LNKC)
  2682.                     {
  2683.                         Name (_HID, EisaId ("PNP0C0F"))  // _HID: Hardware ID
  2684.                         Name (_UID, 0x03)  // _UID: Unique ID
  2685.                         Method (_DIS, 0, Serialized)  // _DIS: Disable Device
  2686.                         {
  2687.                             Or (PCRC, 0x80, PCRC)
  2688.                         }
  2689.  
  2690.                         Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
  2691.                         {
  2692.                             Return (PRSC)
  2693.                         }
  2694.  
  2695.                         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2696.                         {
  2697.                             Name (RTLC, ResourceTemplate ()
  2698.                             {
  2699.                                 IRQ (Level, ActiveLow, Shared, )
  2700.                                     {}
  2701.                             })
  2702.                             CreateWordField (RTLC, One, IRQ0)
  2703.                             Store (Zero, IRQ0)
  2704.                             ShiftLeft (One, And (PCRC, 0x0F), IRQ0)
  2705.                             Return (RTLC)
  2706.                         }
  2707.  
  2708.                         Method (_SRS, 1, Serialized)  // _SRS: Set Resource Settings
  2709.                         {
  2710.                             CreateWordField (Arg0, One, IRQ0)
  2711.                             FindSetRightBit (IRQ0, Local0)
  2712.                             Decrement (Local0)
  2713.                             Store (Local0, PCRC)
  2714.                         }
  2715.  
  2716.                         Method (_STA, 0, Serialized)  // _STA: Status
  2717.                         {
  2718.                             If (And (PCRC, 0x80))
  2719.                             {
  2720.                                 Return (0x09)
  2721.                             }
  2722.                             Else
  2723.                             {
  2724.                                 Return (0x0B)
  2725.                             }
  2726.                         }
  2727.                     }
  2728.  
  2729.                     Device (LNKD)
  2730.                     {
  2731.                         Name (_HID, EisaId ("PNP0C0F"))  // _HID: Hardware ID
  2732.                         Name (_UID, 0x04)  // _UID: Unique ID
  2733.                         Method (_DIS, 0, Serialized)  // _DIS: Disable Device
  2734.                         {
  2735.                             Or (PDRC, 0x80, PDRC)
  2736.                         }
  2737.  
  2738.                         Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
  2739.                         {
  2740.                             Return (PRSD)
  2741.                         }
  2742.  
  2743.                         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2744.                         {
  2745.                             Name (RTLD, ResourceTemplate ()
  2746.                             {
  2747.                                 IRQ (Level, ActiveLow, Shared, )
  2748.                                     {}
  2749.                             })
  2750.                             CreateWordField (RTLD, One, IRQ0)
  2751.                             Store (Zero, IRQ0)
  2752.                             ShiftLeft (One, And (PDRC, 0x0F), IRQ0)
  2753.                             Return (RTLD)
  2754.                         }
  2755.  
  2756.                         Method (_SRS, 1, Serialized)  // _SRS: Set Resource Settings
  2757.                         {
  2758.                             CreateWordField (Arg0, One, IRQ0)
  2759.                             FindSetRightBit (IRQ0, Local0)
  2760.                             Decrement (Local0)
  2761.                             Store (Local0, PDRC)
  2762.                         }
  2763.  
  2764.                         Method (_STA, 0, Serialized)  // _STA: Status
  2765.                         {
  2766.                             If (And (PDRC, 0x80))
  2767.                             {
  2768.                                 Return (0x09)
  2769.                             }
  2770.                             Else
  2771.                             {
  2772.                                 Return (0x0B)
  2773.                             }
  2774.                         }
  2775.                     }
  2776.  
  2777.                     Device (LNKE)
  2778.                     {
  2779.                         Name (_HID, EisaId ("PNP0C0F"))  // _HID: Hardware ID
  2780.                         Name (_UID, 0x05)  // _UID: Unique ID
  2781.                         Method (_DIS, 0, Serialized)  // _DIS: Disable Device
  2782.                         {
  2783.                             Or (PERC, 0x80, PERC)
  2784.                         }
  2785.  
  2786.                         Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
  2787.                         {
  2788.                             Return (PRSE)
  2789.                         }
  2790.  
  2791.                         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2792.                         {
  2793.                             Name (RTLE, ResourceTemplate ()
  2794.                             {
  2795.                                 IRQ (Level, ActiveLow, Shared, )
  2796.                                     {}
  2797.                             })
  2798.                             CreateWordField (RTLE, One, IRQ0)
  2799.                             Store (Zero, IRQ0)
  2800.                             ShiftLeft (One, And (PERC, 0x0F), IRQ0)
  2801.                             Return (RTLE)
  2802.                         }
  2803.  
  2804.                         Method (_SRS, 1, Serialized)  // _SRS: Set Resource Settings
  2805.                         {
  2806.                             CreateWordField (Arg0, One, IRQ0)
  2807.                             FindSetRightBit (IRQ0, Local0)
  2808.                             Decrement (Local0)
  2809.                             Store (Local0, PERC)
  2810.                         }
  2811.  
  2812.                         Method (_STA, 0, Serialized)  // _STA: Status
  2813.                         {
  2814.                             If (And (PERC, 0x80))
  2815.                             {
  2816.                                 Return (0x09)
  2817.                             }
  2818.                             Else
  2819.                             {
  2820.                                 Return (0x0B)
  2821.                             }
  2822.                         }
  2823.                     }
  2824.  
  2825.                     Device (LNKF)
  2826.                     {
  2827.                         Name (_HID, EisaId ("PNP0C0F"))  // _HID: Hardware ID
  2828.                         Name (_UID, 0x06)  // _UID: Unique ID
  2829.                         Method (_DIS, 0, Serialized)  // _DIS: Disable Device
  2830.                         {
  2831.                             Or (PFRC, 0x80, PFRC)
  2832.                         }
  2833.  
  2834.                         Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
  2835.                         {
  2836.                             Return (PRSF)
  2837.                         }
  2838.  
  2839.                         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2840.                         {
  2841.                             Name (RTLF, ResourceTemplate ()
  2842.                             {
  2843.                                 IRQ (Level, ActiveLow, Shared, )
  2844.                                     {}
  2845.                             })
  2846.                             CreateWordField (RTLF, One, IRQ0)
  2847.                             Store (Zero, IRQ0)
  2848.                             ShiftLeft (One, And (PFRC, 0x0F), IRQ0)
  2849.                             Return (RTLF)
  2850.                         }
  2851.  
  2852.                         Method (_SRS, 1, Serialized)  // _SRS: Set Resource Settings
  2853.                         {
  2854.                             CreateWordField (Arg0, One, IRQ0)
  2855.                             FindSetRightBit (IRQ0, Local0)
  2856.                             Decrement (Local0)
  2857.                             Store (Local0, PFRC)
  2858.                         }
  2859.  
  2860.                         Method (_STA, 0, Serialized)  // _STA: Status
  2861.                         {
  2862.                             If (And (PFRC, 0x80))
  2863.                             {
  2864.                                 Return (0x09)
  2865.                             }
  2866.                             Else
  2867.                             {
  2868.                                 Return (0x0B)
  2869.                             }
  2870.                         }
  2871.                     }
  2872.  
  2873.                     Device (LNKG)
  2874.                     {
  2875.                         Name (_HID, EisaId ("PNP0C0F"))  // _HID: Hardware ID
  2876.                         Name (_UID, 0x07)  // _UID: Unique ID
  2877.                         Method (_DIS, 0, Serialized)  // _DIS: Disable Device
  2878.                         {
  2879.                             Or (PGRC, 0x80, PGRC)
  2880.                         }
  2881.  
  2882.                         Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
  2883.                         {
  2884.                             Return (PRSG)
  2885.                         }
  2886.  
  2887.                         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2888.                         {
  2889.                             Name (RTLG, ResourceTemplate ()
  2890.                             {
  2891.                                 IRQ (Level, ActiveLow, Shared, )
  2892.                                     {}
  2893.                             })
  2894.                             CreateWordField (RTLG, One, IRQ0)
  2895.                             Store (Zero, IRQ0)
  2896.                             ShiftLeft (One, And (PGRC, 0x0F), IRQ0)
  2897.                             Return (RTLG)
  2898.                         }
  2899.  
  2900.                         Method (_SRS, 1, Serialized)  // _SRS: Set Resource Settings
  2901.                         {
  2902.                             CreateWordField (Arg0, One, IRQ0)
  2903.                             FindSetRightBit (IRQ0, Local0)
  2904.                             Decrement (Local0)
  2905.                             Store (Local0, PGRC)
  2906.                         }
  2907.  
  2908.                         Method (_STA, 0, Serialized)  // _STA: Status
  2909.                         {
  2910.                             If (And (PGRC, 0x80))
  2911.                             {
  2912.                                 Return (0x09)
  2913.                             }
  2914.                             Else
  2915.                             {
  2916.                                 Return (0x0B)
  2917.                             }
  2918.                         }
  2919.                     }
  2920.  
  2921.                     Device (LNKH)
  2922.                     {
  2923.                         Name (_HID, EisaId ("PNP0C0F"))  // _HID: Hardware ID
  2924.                         Name (_UID, 0x08)  // _UID: Unique ID
  2925.                         Method (_DIS, 0, Serialized)  // _DIS: Disable Device
  2926.                         {
  2927.                             Or (PHRC, 0x80, PHRC)
  2928.                         }
  2929.  
  2930.                         Method (_PRS, 0, Serialized)  // _PRS: Possible Resource Settings
  2931.                         {
  2932.                             Return (PRSH)
  2933.                         }
  2934.  
  2935.                         Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  2936.                         {
  2937.                             Name (RTLH, ResourceTemplate ()
  2938.                             {
  2939.                                 IRQ (Level, ActiveLow, Shared, )
  2940.                                     {}
  2941.                             })
  2942.                             CreateWordField (RTLH, One, IRQ0)
  2943.                             Store (Zero, IRQ0)
  2944.                             ShiftLeft (One, And (PHRC, 0x0F), IRQ0)
  2945.                             Return (RTLH)
  2946.                         }
  2947.  
  2948.                         Method (_SRS, 1, Serialized)  // _SRS: Set Resource Settings
  2949.                         {
  2950.                             CreateWordField (Arg0, One, IRQ0)
  2951.                             FindSetRightBit (IRQ0, Local0)
  2952.                             Decrement (Local0)
  2953.                             Store (Local0, PHRC)
  2954.                         }
  2955.  
  2956.                         Method (_STA, 0, Serialized)  // _STA: Status
  2957.                         {
  2958.                             If (And (PHRC, 0x80))
  2959.                             {
  2960.                                 Return (0x09)
  2961.                             }
  2962.                             Else
  2963.                             {
  2964.                                 Return (0x0B)
  2965.                             }
  2966.                         }
  2967.                     }
  2968.                 }
  2969.  
  2970.                 OperationRegion (LPC0, PCI_Config, 0x40, 0xC0)
  2971.                 Field (LPC0, AnyAcc, NoLock, Preserve)
  2972.                 {
  2973.                     Offset (0x40),
  2974.                     IOD0,   8,
  2975.                     IOD1,   8,
  2976.                     Offset (0x60),
  2977.                     Offset (0x61),
  2978.                         ,   1,
  2979.                     PBLV,   1,
  2980.                     Offset (0xB0),
  2981.                     RAEN,   1,
  2982.                         ,   13,
  2983.                     RCBA,   18
  2984.                 }
  2985.  
  2986.                 Device (H_EC)
  2987.                 {
  2988.                     Name (_HID, EisaId ("PNP0C09"))  // Embedded controller
  2989.                     Name (_UID, One)  // _UID: Unique ID
  2990.                     Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
  2991.                     {
  2992.                         Name (BFFR, ResourceTemplate ()
  2993.                         {
  2994.                             IO (Decode16,
  2995.                                 0x0062,             // Range Minimum
  2996.                                 0x0062,             // Range Maximum
  2997.                                 0x00,               // Alignment
  2998.                                 0x01,               // Length
  2999.                                 )
  3000.                             IO (Decode16,
  3001.                                 0x0066,             // Range Minimum
  3002.                                 0x0066,             // Range Maximum
  3003.                                 0x00,               // Alignment
  3004.                                 0x01,               // Length
  3005.                                 )
  3006.                         })
  3007.                         Return (BFFR)
  3008.                     }
  3009.  
  3010.                     Method (_STA, 0, NotSerialized)  // _STA: Status
  3011.                     {
  3012.                         If (LEqual (PFLV, One))
  3013.                         {
  3014.                             Return (0x0F)
  3015.                         }
  3016.  
  3017.                         Return (Zero)
  3018.                     }
  3019.  
  3020.                     OperationRegion (ECR, EmbeddedControl, Zero, 0xFF)
  3021.                     Field (ECR, ByteAcc, Lock, Preserve)
  3022.                     {
  3023.                         Offset (0x18),
  3024.                         SPTR,   8,
  3025.                         SSTS,   8,
  3026.                         SADR,   8,
  3027.                         SCMD,   8,
  3028.                         SBFR,   256,
  3029.                         SCNT,   8,
  3030.                         Offset (0x80),
  3031.                         B1EX,   1,
  3032.                             ,   1,
  3033.                         ACEX,   1,
  3034.                         Offset (0x81),
  3035.                         SWBE,   1,
  3036.                         DCBE,   1,
  3037.                         Offset (0x82),
  3038.                         WLST,   1,
  3039.                         OPST,   1,
  3040.                         Offset (0x83),
  3041.                         LIDS,   1,
  3042.                         Offset (0x84),
  3043.                         B1ST,   8,
  3044.                         Offset (0x86),
  3045.                         BRIT,   8,
  3046.                         Offset (0x90),
  3047.                         Offset (0x91),
  3048.                         BTPC,   16,
  3049.                         LUXH,   8,
  3050.                         LUXL,   8,
  3051.                         Offset (0x9A),
  3052.                         VRMF,   8,
  3053.                         Offset (0xA0),
  3054.                         B1RP,   16,
  3055.                         B1RA,   16,
  3056.                         B1PR,   16,
  3057.                         B1VO,   16,
  3058.                         Offset (0xB0),
  3059.                         B1DA,   16,
  3060.                         B1DF,   16,
  3061.                         B1DV,   16,
  3062.                         B1DL,   16,
  3063.                         Offset (0xC0),
  3064.                         CTMP,   8,
  3065.                         Offset (0xC7),
  3066.                         TIST,   8,
  3067.                         Offset (0xD0),
  3068.                         CYLC,   16,
  3069.                         B1SE,   16,
  3070.                         B1CR,   16,
  3071.                         B1TM,   16
  3072.                     }
  3073.  
  3074.                     Device (BAT1)
  3075.                     {
  3076.                         Name (_HID, EisaId ("PNP0C0A"))  // Battery
  3077.                         Name (_UID, One)  // _UID: Unique ID
  3078.                         Name (BATI, Package (0x0D)
  3079.                         {
  3080.                             One,
  3081.                             0xFFFFFFFF,
  3082.                             0xFFFFFFFF,
  3083.                             One,
  3084.                             0xFFFFFFFF,
  3085.                             0x03,
  3086.                             0x0A,
  3087.                             One,
  3088.                             One,
  3089.                             "Unknown",
  3090.                             "Unknown",
  3091.                             "Unknown",
  3092.                             "Unknown"
  3093.                         })
  3094.                         Name (BIXP, Package (0x14)
  3095.                         {
  3096.                             Zero,
  3097.                             One,
  3098.                             0xFFFFFFFF,
  3099.                             0xFFFFFFFF,
  3100.                             One,
  3101.                             0xFFFFFFFF,
  3102.                             0x0A,
  3103.                             0x04,
  3104.                             Zero,
  3105.                             0x00017318,
  3106.                             0xFFFFFFFF,
  3107.                             0xFFFFFFFF,
  3108.                             0x88B8,
  3109.                             0x61A8,
  3110.                             One,
  3111.                             One,
  3112.                             "SR Real Battery",
  3113.                             "123456789",
  3114.                             "LION",
  3115.                             "SAMSUNG Battery"
  3116.                         })
  3117.                         Method (_BIF, 0, NotSerialized)  // _BIF: Battery Information
  3118.                         {
  3119.                             If (LEqual (ECON, Zero))
  3120.                             {
  3121.                                 Store (SECW (0x82, 0xB0, Zero), Local0)
  3122.                                 If (LEqual (Local0, 0xFFFF))
  3123.                                 {
  3124.                                     Store (0xFFFFFFFF, Index (BATI, One))
  3125.                                 }
  3126.                                 Else
  3127.                                 {
  3128.                                     Store (Local0, Index (BATI, One))
  3129.                                 }
  3130.  
  3131.                                 Store (SECW (0x82, 0xB2, Zero), Local0)
  3132.                                 If (LEqual (Local0, 0xFFFF))
  3133.                                 {
  3134.                                     Store (0xFFFFFFFF, Index (BATI, 0x02))
  3135.                                 }
  3136.                                 Else
  3137.                                 {
  3138.                                     Store (Local0, Index (BATI, 0x02))
  3139.                                 }
  3140.  
  3141.                                 Store (SECW (0x82, 0xB4, Zero), Local0)
  3142.                                 If (LEqual (Local0, 0xFFFF))
  3143.                                 {
  3144.                                     Store (0xFFFFFFFF, Index (BATI, 0x04))
  3145.                                 }
  3146.                                 Else
  3147.                                 {
  3148.                                     Store (Local0, Index (BATI, 0x04))
  3149.                                 }
  3150.  
  3151.                                 Store (Zero, Index (BATI, 0x05))
  3152.                                 Store (SECW (0x82, 0xB6, Zero), Local0)
  3153.                                 If (LEqual (Local0, 0xFFFF))
  3154.                                 {
  3155.                                     Store (Zero, Index (BATI, 0x06))
  3156.                                 }
  3157.                                 Else
  3158.                                 {
  3159.                                     Store (Local0, Index (BATI, 0x06))
  3160.                                 }
  3161.                             }
  3162.                             Else
  3163.                             {
  3164.                                 Store (B1DA, Local0)
  3165.                                 ShiftLeft (Local0, 0x08, Local1)
  3166.                                 And (Local1, 0xFF00, Local1)
  3167.                                 ShiftRight (Local0, 0x08, Local0)
  3168.                                 Or (Local0, Local1, Local0)
  3169.                                 If (LEqual (Local0, 0xFFFF))
  3170.                                 {
  3171.                                     Store (0xFFFFFFFF, Index (BATI, One))
  3172.                                 }
  3173.                                 Else
  3174.                                 {
  3175.                                     Store (Local0, Index (BATI, One))
  3176.                                 }
  3177.  
  3178.                                 Store (B1DF, Local0)
  3179.                                 ShiftLeft (Local0, 0x08, Local1)
  3180.                                 And (Local1, 0xFF00, Local1)
  3181.                                 ShiftRight (Local0, 0x08, Local0)
  3182.                                 Or (Local0, Local1, Local0)
  3183.                                 If (LEqual (Local0, 0xFFFF))
  3184.                                 {
  3185.                                     Store (0xFFFFFFFF, Index (BATI, 0x02))
  3186.                                 }
  3187.                                 Else
  3188.                                 {
  3189.                                     Store (Local0, Index (BATI, 0x02))
  3190.                                 }
  3191.  
  3192.                                 Store (B1DV, Local0)
  3193.                                 ShiftLeft (Local0, 0x08, Local1)
  3194.                                 And (Local1, 0xFF00, Local1)
  3195.                                 ShiftRight (Local0, 0x08, Local0)
  3196.                                 Or (Local0, Local1, Local0)
  3197.                                 If (LEqual (Local0, 0xFFFF))
  3198.                                 {
  3199.                                     Store (0xFFFFFFFF, Index (BATI, 0x04))
  3200.                                 }
  3201.                                 Else
  3202.                                 {
  3203.                                     Store (Local0, Index (BATI, 0x04))
  3204.                                 }
  3205.  
  3206.                                 Store (Zero, Index (BATI, 0x05))
  3207.                                 Store (B1DL, Local0)
  3208.                                 ShiftLeft (Local0, 0x08, Local1)
  3209.                                 And (Local1, 0xFF00, Local1)
  3210.                                 ShiftRight (Local0, 0x08, Local0)
  3211.                                 Or (Local0, Local1, Local0)
  3212.                                 If (LEqual (Local0, 0xFFFF))
  3213.                                 {
  3214.                                     Store (0xFFFFFFFF, Index (BATI, 0x06))
  3215.                                 }
  3216.                                 Else
  3217.                                 {
  3218.                                     Store (Local0, Index (BATI, 0x06))
  3219.                                 }
  3220.                             }
  3221.  
  3222.                             Store ("", Index (BATI, 0x09))
  3223.                             Store ("", Index (BATI, 0x0A))
  3224.                             Store ("LION", Index (BATI, 0x0B))
  3225.                             Store ("SAMSUNG Electronics", Index (BATI, 0x0C))
  3226.                             Return (BATI)
  3227.                         }
  3228.  
  3229.                         Method (_BIX, 0, NotSerialized)  // _BIX: Battery Information Extended
  3230.                         {
  3231.                             If (LEqual (ECON, Zero))
  3232.                             {
  3233.                                 Store (SECW (0x82, 0xB0, Zero), Local0)
  3234.                                 If (LEqual (Local0, 0xFFFF))
  3235.                                 {
  3236.                                     Store (0xFFFFFFFF, Index (BIXP, 0x02))
  3237.                                 }
  3238.                                 Else
  3239.                                 {
  3240.                                     Store (Local0, Index (BIXP, 0x02))
  3241.                                 }
  3242.  
  3243.                                 Store (SECW (0x82, 0xB2, Zero), Local0)
  3244.                                 If (LEqual (Local0, 0xFFFF))
  3245.                                 {
  3246.                                     Store (0xFFFFFFFF, Index (BIXP, 0x03))
  3247.                                 }
  3248.                                 Else
  3249.                                 {
  3250.                                     Store (Local0, Index (BIXP, 0x03))
  3251.                                 }
  3252.  
  3253.                                 Store (SECW (0x82, 0xB4, Zero), Local0)
  3254.                                 If (LEqual (Local0, 0xFFFF))
  3255.                                 {
  3256.                                     Store (0xFFFFFFFF, Index (BIXP, 0x05))
  3257.                                 }
  3258.                                 Else
  3259.                                 {
  3260.                                     Store (Local0, Index (BIXP, 0x05))
  3261.                                 }
  3262.  
  3263.                                 Store (Zero, Index (BIXP, 0x06))
  3264.                                 Store (SECW (0x82, 0xB6, Zero), Local0)
  3265.                                 If (LEqual (Local0, 0xFFFF))
  3266.                                 {
  3267.                                     Store (Zero, Index (BIXP, 0x07))
  3268.                                 }
  3269.                                 Else
  3270.                                 {
  3271.                                     Store (Local0, Index (BIXP, 0x07))
  3272.                                 }
  3273.  
  3274.                                 Store (SECW (0x82, 0xD0, Zero), Local0)
  3275.                                 If (LEqual (Local0, 0xFFFF))
  3276.                                 {
  3277.                                     Store (Zero, Index (BIXP, 0x08))
  3278.                                 }
  3279.                                 Else
  3280.                                 {
  3281.                                     Store (Local0, Index (BIXP, 0x08))
  3282.                                 }
  3283.                             }
  3284.                             Else
  3285.                             {
  3286.                                 Store (B1DA, Local0)
  3287.                                 ShiftLeft (Local0, 0x08, Local1)
  3288.                                 And (Local1, 0xFF00, Local1)
  3289.                                 ShiftRight (Local0, 0x08, Local0)
  3290.                                 Or (Local0, Local1, Local0)
  3291.                                 If (LEqual (Local0, 0xFFFF))
  3292.                                 {
  3293.                                     Store (0xFFFFFFFF, Index (BIXP, 0x02))
  3294.                                 }
  3295.                                 Else
  3296.                                 {
  3297.                                     Store (Local0, Index (BIXP, 0x02))
  3298.                                 }
  3299.  
  3300.                                 Store (B1DF, Local0)
  3301.                                 ShiftLeft (Local0, 0x08, Local1)
  3302.                                 And (Local1, 0xFF00, Local1)
  3303.                                 ShiftRight (Local0, 0x08, Local0)
  3304.                                 Or (Local0, Local1, Local0)
  3305.                                 If (LEqual (Local0, 0xFFFF))
  3306.                                 {
  3307.                                     Store (0xFFFFFFFF, Index (BIXP, 0x03))
  3308.                                 }
  3309.                                 Else
  3310.                                 {
  3311.                                     Store (Local0, Index (BIXP, 0x03))
  3312.                                 }
  3313.  
  3314.                                 Store (B1DV, Local0)
  3315.                                 ShiftLeft (Local0, 0x08, Local1)
  3316.                                 And (Local1, 0xFF00, Local1)
  3317.                                 ShiftRight (Local0, 0x08, Local0)
  3318.                                 Or (Local0, Local1, Local0)
  3319.                                 If (LEqual (Local0, 0xFFFF))
  3320.                                 {
  3321.                                     Store (0xFFFFFFFF, Index (BIXP, 0x05))
  3322.                                 }
  3323.                                 Else
  3324.                                 {
  3325.                                     Store (Local0, Index (BIXP, 0x05))
  3326.                                 }
  3327.  
  3328.                                 Store (Zero, Index (BIXP, 0x06))
  3329.                                 Store (B1DL, Local0)
  3330.                                 ShiftLeft (Local0, 0x08, Local1)
  3331.                                 And (Local1, 0xFF00, Local1)
  3332.                                 ShiftRight (Local0, 0x08, Local0)
  3333.                                 Or (Local0, Local1, Local0)
  3334.                                 If (LEqual (Local0, 0xFFFF))
  3335.                                 {
  3336.                                     Store (0xFFFFFFFF, Index (BIXP, 0x07))
  3337.                                 }
  3338.                                 Else
  3339.                                 {
  3340.                                     Store (Local0, Index (BIXP, 0x07))
  3341.                                 }
  3342.  
  3343.                                 Store (CYLC, Local0)
  3344.                                 ShiftLeft (Local0, 0x08, Local1)
  3345.                                 And (Local1, 0xFF00, Local1)
  3346.                                 ShiftRight (Local0, 0x08, Local0)
  3347.                                 Or (Local0, Local1, Local0)
  3348.                                 If (LEqual (Local0, 0xFFFF))
  3349.                                 {
  3350.                                     Store (0xFFFFFFFF, Index (BIXP, 0x08))
  3351.                                 }
  3352.                                 Else
  3353.                                 {
  3354.                                     Store (Local0, Index (BIXP, 0x08))
  3355.                                 }
  3356.                             }
  3357.  
  3358.                             Store ("", Index (BIXP, 0x10))
  3359.                             Store ("", Index (BIXP, 0x11))
  3360.                             Store ("LION", Index (BIXP, 0x12))
  3361.                             Store ("SAMSUNG Electronics", Index (BIXP, 0x13))
  3362.                             Return (BIXP)
  3363.                         }
  3364.  
  3365.                         Method (_BTP, 1, NotSerialized)  // _BTP: Battery Trip Point
  3366.                         {
  3367.                             ShiftRight (Arg0, 0x08, Local0)
  3368.                             Or (Arg0, 0x80, Local0)
  3369.                             Store (Arg0, Local1)
  3370.                             And (Local1, 0xFF, Local1)
  3371.                             ShiftLeft (Local1, 0x08, Local1)
  3372.                             Add (Local0, Local1, Local0)
  3373.                             If (LEqual (ECON, Zero)) {}
  3374.                             Else
  3375.                             {
  3376.                                 Store (Local0, BTPC)
  3377.                             }
  3378.                         }
  3379.  
  3380.                         Name (STAT, Package (0x04)
  3381.                         {
  3382.                             Zero,
  3383.                             Zero,
  3384.                             Zero,
  3385.                             Zero
  3386.                         })
  3387.                         Method (_BST, 0, NotSerialized)  // _BST: Battery Status
  3388.                         {
  3389.                             If (LEqual (ECON, Zero))
  3390.                             {
  3391.                                 Store (SECB (0x81, 0x84), Local0)
  3392.                                 If (LAnd (LNotEqual (Local0, Zero), LNotEqual (Local0, 0x05)))
  3393.                                 {
  3394.                                     If (LEqual (PWRS, One))
  3395.                                     {
  3396.                                         Store (0x02, Local0)
  3397.                                     }
  3398.                                     Else
  3399.                                     {
  3400.                                         Store (One, Local0)
  3401.                                     }
  3402.                                 }
  3403.  
  3404.                                 Store (Local0, Index (STAT, Zero))
  3405.                                 Store (SECW (0x82, 0xA4, Zero), Local0)
  3406.                                 If (LEqual (Local0, 0xFFFF))
  3407.                                 {
  3408.                                     Store (0xFFFFFFFF, Index (STAT, One))
  3409.                                 }
  3410.                                 Else
  3411.                                 {
  3412.                                     If (LGreaterEqual (Local0, 0x8000))
  3413.                                     {
  3414.                                         XOr (Local0, 0xFFFF, Local0)
  3415.                                         Increment (Local0)
  3416.                                     }
  3417.  
  3418.                                     Store (Local0, Index (STAT, One))
  3419.                                 }
  3420.  
  3421.                                 Store (SECW (0x82, 0xA2, Zero), Local0)
  3422.                                 If (LEqual (Local0, 0xFFFF))
  3423.                                 {
  3424.                                     Store (0xFFFFFFFF, Index (STAT, 0x02))
  3425.                                 }
  3426.                                 Else
  3427.                                 {
  3428.                                     Store (Local0, Index (STAT, 0x02))
  3429.                                 }
  3430.  
  3431.                                 Store (SECW (0x82, 0xA6, Zero), Local0)
  3432.                                 If (LEqual (Local0, 0xFFFF))
  3433.                                 {
  3434.                                     Store (0xFFFFFFFF, Index (STAT, 0x03))
  3435.                                 }
  3436.                                 Else
  3437.                                 {
  3438.                                     Store (Local0, Index (STAT, 0x03))
  3439.                                 }
  3440.                             }
  3441.                             Else
  3442.                             {
  3443.                                 Store (B1ST, Local0)
  3444.                                 If (LAnd (LNotEqual (Local0, Zero), LNotEqual (Local0, 0x05)))
  3445.                                 {
  3446.                                     If (LEqual (PWRS, One))
  3447.                                     {
  3448.                                         Store (0x02, Local0)
  3449.                                     }
  3450.                                     Else
  3451.                                     {
  3452.                                         Store (One, Local0)
  3453.                                     }
  3454.                                 }
  3455.  
  3456.                                 Store (Local0, Index (STAT, Zero))
  3457.                                 Store (B1PR, Local0)
  3458.                                 ShiftLeft (Local0, 0x08, Local1)
  3459.                                 And (Local1, 0xFF00, Local1)
  3460.                                 ShiftRight (Local0, 0x08, Local0)
  3461.                                 Or (Local0, Local1, Local0)
  3462.                                 If (LEqual (Local0, 0xFFFF))
  3463.                                 {
  3464.                                     Store (0xFFFFFFFF, Index (STAT, One))
  3465.                                 }
  3466.                                 Else
  3467.                                 {
  3468.                                     If (LGreaterEqual (Local0, 0x8000))
  3469.                                     {
  3470.                                         XOr (Local0, 0xFFFF, Local0)
  3471.                                         Increment (Local0)
  3472.                                     }
  3473.  
  3474.                                     Store (Local0, Index (STAT, One))
  3475.                                 }
  3476.  
  3477.                                 Store (B1RA, Local0)
  3478.                                 ShiftLeft (Local0, 0x08, Local1)
  3479.                                 And (Local1, 0xFF00, Local1)
  3480.                                 ShiftRight (Local0, 0x08, Local0)
  3481.                                 Or (Local0, Local1, Local0)
  3482.                                 If (LEqual (Local0, 0xFFFF))
  3483.                                 {
  3484.                                     Store (0xFFFFFFFF, Index (STAT, 0x02))
  3485.                                 }
  3486.                                 Else
  3487.                                 {
  3488.                                     Store (Local0, Index (STAT, 0x02))
  3489.                                 }
  3490.  
  3491.                                 Store (B1VO, Local0)
  3492.                                 ShiftLeft (Local0, 0x08, Local1)
  3493.                                 And (Local1, 0xFF00, Local1)
  3494.                                 ShiftRight (Local0, 0x08, Local0)
  3495.                                 Or (Local0, Local1, Local0)
  3496.                                 If (LEqual (Local0, 0xFFFF))
  3497.                                 {
  3498.                                     Store (0xFFFFFFFF, Index (STAT, 0x03))
  3499.                                 }
  3500.                                 Else
  3501.                                 {
  3502.                                     Store (Local0, Index (STAT, 0x03))
  3503.                                 }
  3504.                             }
  3505.  
  3506.                             Return (STAT)
  3507.                         }
  3508.  
  3509.                         Method (_STA, 0, NotSerialized)  // _STA: Status
  3510.                         {
  3511.                             If (LEqual (ECON, Zero))
  3512.                             {
  3513.                                 If (LEqual (SECB (0x85, Zero), One))
  3514.                                 {
  3515.                                     Store (0x1F, Local0)
  3516.                                 }
  3517.                                 Else
  3518.                                 {
  3519.                                     Store (0x0F, Local0)
  3520.                                 }
  3521.                             }
  3522.                             Else
  3523.                             {
  3524.                                 If (LEqual (B1EX, One))
  3525.                                 {
  3526.                                     Store (0x1F, Local0)
  3527.                                 }
  3528.                                 Else
  3529.                                 {
  3530.                                     Store (0x0F, Local0)
  3531.                                 }
  3532.                             }
  3533.  
  3534.                             Return (Local0)
  3535.                         }
  3536.  
  3537.                         Method (_PCL, 0, NotSerialized)  // _PCL: Power Consumer List
  3538.                         {
  3539.                             Return (_SB)
  3540.                         }
  3541.                     }
  3542.  
  3543.                     Method (_REG, 2, NotSerialized)  // _REG: Region Availability
  3544.                     {
  3545.                         If (LAnd (LEqual (Arg0, 0x03), LEqual (Arg1, One)))
  3546.                         {
  3547.                             Store (One, ECON)
  3548.                             Store (0x03, ^^^GFX0.CLID)
  3549.                             Store (ACEX, PWRS)
  3550.                             Store (LIDS, \LIDS)
  3551.                             If (PWRS)
  3552.                             {
  3553.                                 And (GL02, 0xFE, GL02)
  3554.                             }
  3555.                             Else
  3556.                             {
  3557.                                 Or (GL02, One, GL02)
  3558.                             }
  3559.  
  3560.                             If (LOr (LAnd (LEqual (CTUR, One), LEqual (ETUR, One)),
  3561.                                 LNotEqual (TIST, One)))
  3562.                             {
  3563.                                 Store (One, GSSR)
  3564.                                 If (LLessEqual (TIST, 0x03))
  3565.                                 {
  3566.                                     Store (TIST, Local0)
  3567.                                     Store (Local0, TZON)
  3568.                                     Store (DIAG, Local1)
  3569.                                     If (Local1)
  3570.                                     {
  3571.                                         Sleep (0x64)
  3572.                                     }
  3573.                                     Else
  3574.                                     {
  3575.                                         SPPC ()
  3576.                                     }
  3577.                                 }
  3578.                                 Else
  3579.                                 {
  3580.                                     Store (Zero, TZON)
  3581.                                     SPPC ()
  3582.                                 }
  3583.                             }
  3584.                         }
  3585.                     }
  3586.  
  3587.                     Name (_GPE, 0x17)  // _GPE: General Purpose Events
  3588.                     Method (_Q51, 0, NotSerialized)  // _Qxx: EC Query
  3589.                     {
  3590.                         P8XH (Zero, 0x51)
  3591.                         Notify (ADP1, 0x80)
  3592.                         Store (One, PWRS)
  3593.                         If (LOr (LLess (OSYS, 0x07D6), LEqual (VDRV, Zero)))
  3594.                         {
  3595.                             SECS (0xA7)
  3596.                         }
  3597.  
  3598.                         And (GL02, 0xFE, GL02)
  3599.                         PNOT ()
  3600.                     }
  3601.  
  3602.                     Method (_Q52, 0, NotSerialized)  //  AC outlet
  3603.                     {
  3604.                         P8XH (Zero, 0x52)
  3605.                         Notify (ADP1, 0x80)
  3606.                         Store (Zero, PWRS)
  3607.                         If (LOr (LLess (OSYS, 0x07D6), LEqual (VDRV, Zero)))
  3608.                         {
  3609.                             SECS (0xA7)
  3610.                         }
  3611.  
  3612.                         Or (GL02, One, GL02)
  3613.                         PNOT ()
  3614.                     }
  3615.  
  3616.                     Method (_Q53, 0, NotSerialized)  // Battery
  3617.                     {
  3618.                         P8XH (Zero, 0x53)
  3619.                         Notify (BAT1, 0x80)
  3620.                         Notify (BAT1, 0x81)
  3621.                     }
  3622.  
  3623.                     Method (_Q54, 0, NotSerialized)  // Battery
  3624.                     {
  3625.                         P8XH (Zero, 0x54)
  3626.                         Notify (BAT1, 0x80)
  3627.                         Notify (BAT1, 0x81)
  3628.                     }
  3629.  
  3630.                     Method (_Q5D, 0, NotSerialized)  // _Qxx: EC Query
  3631.                     {
  3632.                         If (\IGDS)  // not initialized!
  3633.                         {
  3634.                             ^^^GFX0.GHDS (0x02)  // Grava 0x02 en TIDX
  3635.                         }
  3636.                     }
  3637.  
  3638.                     Method (_Q5E, 0, NotSerialized)  // Lid Open/Close
  3639.                     {
  3640.                         P8XH (Zero, 0x5E)
  3641.                         SECS (0xA1)
  3642.                         Notify (EHC2, One)
  3643.                         If (LNotEqual (LIDS, \LIDS))
  3644.                         {
  3645.                             Store (LIDS, \LIDS)
  3646.                             If (\IGDS)
  3647.                             {
  3648.                                 ^^^GFX0.GLID (LIDS)
  3649.                             }
  3650.  
  3651.                             Notify (LID0, 0x80)
  3652.                         }
  3653.                     }
  3654.  
  3655.                     Method (_Q5F, 0, NotSerialized)  // Lid Open/Close
  3656.                     {
  3657.                         P8XH (Zero, 0x5F)
  3658.                         SECS (0xA2)
  3659.                         Notify (EHC2, One)
  3660.                         If (LNotEqual (LIDS, \LIDS))
  3661.                         {
  3662.                             Store (LIDS, \LIDS)
  3663.                             If (\IGDS)
  3664.                             {
  3665.                                 ^^^GFX0.GLID (LIDS)
  3666.                             }
  3667.  
  3668.                             Notify (LID0, 0x80)
  3669.                         }
  3670.                     }
  3671.  
  3672.                     Method (_Q60, 0, NotSerialized)  // Batteria
  3673.                     {
  3674.                         P8XH (Zero, 0x60)
  3675.                         If (LEqual (B1EX, One))
  3676.                         {
  3677.                             Notify (BAT1, 0x80)
  3678.                         }
  3679.                     }
  3680.  
  3681.                     Method (_Q61, 0, NotSerialized)  // Bateria
  3682.                     {
  3683.                         P8XH (Zero, 0x61)
  3684.                         If (LEqual (B1EX, One))
  3685.                         {
  3686.                             Notify (BAT1, 0x80) // Battery Status Changed
  3687.                         }
  3688.                     }
  3689.  
  3690.                     Method (_Q63, 0, NotSerialized)  //
  3691.                     {
  3692.                         P8XH (Zero, 0x63)
  3693.                         If (LGreaterEqual (OSYS, 0x07D6))
  3694.                         {
  3695.                             If (And (VDRV, One))
  3696.                             {
  3697.                                 If (LNot (^^^GFX0.PDRD ()))
  3698.                                 {
  3699.                                     BRTN (0x87)
  3700.                                 }
  3701.                             }
  3702.  
  3703.                             If (And (VDRV, 0x02)) {}
  3704.                         }
  3705.                         Else
  3706.                         {
  3707.                             SECS (0x88)
  3708.                         }
  3709.                     }
  3710.  
  3711.                     Method (_Q64, 0, NotSerialized)  // _Qxx: EC Query
  3712.                     {
  3713.                         P8XH (Zero, 0x64)
  3714.                         If (LGreaterEqual (OSYS, 0x07D6))
  3715.                         {
  3716.                             If (And (VDRV, One))
  3717.                             {
  3718.                                 If (LNot (^^^GFX0.PDRD ()))
  3719.                                 {
  3720.                                     BRTN (0x86)
  3721.                                 }
  3722.                             }
  3723.  
  3724.                             If (And (VDRV, 0x02)) {}
  3725.                         }
  3726.                         Else
  3727.                         {
  3728.                             SECS (0x89)
  3729.                         }
  3730.                     }
  3731.  
  3732.                     Method (_Q65, 0, NotSerialized)  // _Qxx: EC Query
  3733.                     {
  3734.                         P8XH (Zero, 0x65)
  3735.                         Notify (\_TZ.TZ00, 0x80)
  3736.                         Notify (\_TZ.TZ01, 0x80)
  3737.                     }
  3738.  
  3739.                     Method (_Q66, 0, NotSerialized)  // _Qxx: EC Query
  3740.                     {
  3741.                         P8XH (Zero, 0x66)
  3742.                         If (LEqual (B1EX, One))
  3743.                         {
  3744.                             Notify (BAT1, 0x80)
  3745.                         }
  3746.                     }
  3747.  
  3748.                     Method (_Q68, 0, NotSerialized)  // _Qxx: EC Query
  3749.                     {
  3750.                     }
  3751.  
  3752.                     Method (_Q69, 0, NotSerialized)  // _Qxx: EC Query
  3753.                     {
  3754.                     }
  3755.  
  3756.                     Method (_Q6E, 0, NotSerialized)  // _Qxx: EC Query
  3757.                     {
  3758.                         If (LEqual (RP1D, Zero))
  3759.                         {
  3760.                             Sleep (0x64)
  3761.                             Notify (RP01, Zero)
  3762.                         }
  3763.                     }
  3764.  
  3765.                     Method (_Q6F, 0, NotSerialized)  // _Qxx: EC Query
  3766.                     {
  3767.                     }
  3768.  
  3769.                     Method (_Q73, 0, NotSerialized)  // _Qxx: EC Query
  3770.                     {
  3771.                         If (LOr (LAnd (LEqual (CTUR, One), LEqual (ETUR, One)),
  3772.                             LNotEqual (TIST, One)))
  3773.                         {
  3774.                             Store (One, GSSR)
  3775.                             If (LLessEqual (TIST, 0x03))
  3776.                             {
  3777.                                 Store (TIST, Local0)
  3778.                                 Store (Local0, TZON)
  3779.                                 Store (DIAG, Local1)
  3780.                                 If (Local1)
  3781.                                 {
  3782.                                     Sleep (0x64)
  3783.                                 }
  3784.                                 Else
  3785.                                 {
  3786.                                     CPRN ()
  3787.                                 }
  3788.                             }
  3789.                             Else
  3790.                             {
  3791.                                 Store (Zero, TZON)
  3792.                                 CPRN ()
  3793.                             }
  3794.                         }
  3795.                     }
  3796.  
  3797.                     Method (_Q76, 0, NotSerialized)  // _Qxx: EC Query
  3798.                     {
  3799.                         SECS (0x94)
  3800.                     }
  3801.  
  3802.                     Method (_Q77, 0, NotSerialized)  // _Qxx: EC Query
  3803.                     {
  3804.                     }
  3805.  
  3806.                     Method (_Q79, 0, NotSerialized)  // _Qxx: EC Query
  3807.                     {
  3808.                     }
  3809.  
  3810.                     Method (_Q7A, 0, NotSerialized)  // _Qxx: EC Query
  3811.                     {
  3812.                     }
  3813.  
  3814.                     Method (_Q7D, 0, NotSerialized)  // _Qxx: EC Query
  3815.                     {
  3816.                     }
  3817.  
  3818.                     Method (_Q7E, 0, NotSerialized)  // _Qxx: EC Query
  3819.                     {
  3820.                     }
  3821.  
  3822.                     Method (_Q7F, 0, NotSerialized)  // _Qxx: EC Query
  3823.                     {
  3824.                         If (LGreaterEqual (\OSYS, 0x07DC))
  3825.                         {
  3826.                             Notify (SAPM, 0x80)
  3827.                         }
  3828.                     }
  3829.  
  3830.                     Method (_Q80, 0, NotSerialized)  // _Qxx: EC Query
  3831.                     {
  3832.                         BreakPoint
  3833.                     }
  3834.                 }
  3835.  
  3836.                 Scope (\_SB)
  3837.                 {
  3838.                     Device (ADP1)
  3839.                     {
  3840.                         Name (_HID, "ACPI0003")  // Power Supply
  3841.                         Method (_PSR, 0, NotSerialized)  // _PSR: Power Source
  3842.                         {
  3843.                             If (LEqual (ECON, Zero))
  3844.                             {
  3845.                                 Store (SECB (0x85, 0x02), Local0)
  3846.                             }
  3847.                             Else
  3848.                             {
  3849.                                 Store (^^PCI0.LPCB.H_EC.ACEX, Local0)
  3850.                             }
  3851.  
  3852.                             Return (Local0)
  3853.                         }
  3854.  
  3855.                         Method (_PCL, 0, NotSerialized)  // _PCL: Power Consumer List
  3856.                         {
  3857.                             Return (_SB)
  3858.                         }
  3859.  
  3860.                         Method (_STA, 0, NotSerialized)  // _STA: Status
  3861.                         {
  3862.                             If (LEqual (ECON, Zero))
  3863.                             {
  3864.                                 Store (0x0F, Local0)
  3865.                             }
  3866.                             Else
  3867.                             {
  3868.                                 If (LEqual (^^PCI0.LPCB.H_EC.ACEX, Zero))
  3869.                                 {
  3870.                                     Store (0x1F, Local0)
  3871.                                 }
  3872.                                 Else
  3873.                                 {
  3874.                                     Store (0x0F, Local0)
  3875.                                 }
  3876.                             }
  3877.  
  3878.                             Return (Local0)
  3879.                         }
  3880.                     }
  3881.  
  3882.                     Device (LID0)
  3883.                     {
  3884.                         Name (_HID, EisaId ("PNP0C0D"))  // LID switch
  3885.                         Method (_LID, 0, NotSerialized)  // _LID: Lid Status
  3886.                         {
  3887.                             Return (LIDS)
  3888.                         }
  3889.                     }
  3890.  
  3891.                     Device (PWRB)    
  3892.                     {
  3893.                         Name (_HID, EisaId ("PNP0C0C"))  // Power Button
  3894.                         Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  3895.                         {
  3896.                             0x1E,
  3897.                             0x04
  3898.                         })
  3899.                     }
  3900.  
  3901.                     Device (SAPM)
  3902.                     {
  3903.                         Name (_HID, "SAM0714")  // Samsung Network (rfkill?)
  3904.                         Name (_UID, One)  // _UID: Unique ID
  3905.                         Method (_STA, 0, NotSerialized)  // _STA: Status
  3906.                         {
  3907.                             If (LGreaterEqual (\OSYS, 0x07DC))
  3908.                             {
  3909.                                 Return (0x0F)
  3910.                             }
  3911.  
  3912.                             Return (Zero)
  3913.                         }
  3914.                     }
  3915.                 }
  3916.  
  3917.                 Device (DMAC)
  3918.                 {
  3919.                     Name (_HID, EisaId ("PNP0200"))  // Direct Memory access controller
  3920.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  3921.                     {
  3922.                         IO (Decode16,
  3923.                             0x0000,             // Range Minimum
  3924.                             0x0000,             // Range Maximum
  3925.                             0x01,               // Alignment
  3926.                             0x20,               // Length
  3927.                             )
  3928.                         IO (Decode16,
  3929.                             0x0081,             // Range Minimum
  3930.                             0x0081,             // Range Maximum
  3931.                             0x01,               // Alignment
  3932.                             0x11,               // Length
  3933.                             )
  3934.                         IO (Decode16,
  3935.                             0x0093,             // Range Minimum
  3936.                             0x0093,             // Range Maximum
  3937.                             0x01,               // Alignment
  3938.                             0x0D,               // Length
  3939.                             )
  3940.                         IO (Decode16,
  3941.                             0x00C0,             // Range Minimum
  3942.                             0x00C0,             // Range Maximum
  3943.                             0x01,               // Alignment
  3944.                             0x20,               // Length
  3945.                             )
  3946.                         DMA (Compatibility, NotBusMaster, Transfer8_16, )
  3947.                             {4}
  3948.                     })
  3949.                 }
  3950.  
  3951.                 Device (FWHD)
  3952.                 {
  3953.                     Name (_HID, EisaId ("INT0800"))  // Firmware Hub Intel 82802 (BIOS Flash)
  3954.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  3955.                     {
  3956.                         Memory32Fixed (ReadOnly,
  3957.                             0xFF000000,         // Address Base
  3958.                             0x01000000,         // Address Length
  3959.                             )
  3960.                     })
  3961.                 }
  3962.  
  3963.                 Device (HPET)
  3964.                 {
  3965.                     Name (_HID, EisaId ("PNP0103"))  // Hih precission event timer
  3966.                     Name (_UID, Zero)  // _UID: Unique ID
  3967.                     Name (BUF0, ResourceTemplate ()
  3968.                     {
  3969.                         Memory32Fixed (ReadWrite,
  3970.                             0xFED00000,         // Address Base
  3971.                             0x00000400,         // Address Length
  3972.                             _Y10)
  3973.                     })
  3974.                     Method (_STA, 0, NotSerialized)  // _STA: Status
  3975.                     {
  3976.                         If (LGreaterEqual (OSYS, 0x07D1))
  3977.                         {
  3978.                             If (HPAE)
  3979.                             {
  3980.                                 Return (0x0F)
  3981.                             }
  3982.                         }
  3983.                         Else
  3984.                         {
  3985.                             If (HPAE)
  3986.                             {
  3987.                                 Return (0x0B)
  3988.                             }
  3989.                         }
  3990.  
  3991.                         Return (Zero)
  3992.                     }
  3993.  
  3994.                     Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  3995.                     {
  3996.                         If (HPAE)
  3997.                         {
  3998.                             CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y10._BAS, HPT0)  // _BAS: Base Address
  3999.                             If (LEqual (HPAS, One))
  4000.                             {
  4001.                                 Store (0xFED01000, HPT0)
  4002.                             }
  4003.  
  4004.                             If (LEqual (HPAS, 0x02))
  4005.                             {
  4006.                                 Store (0xFED02000, HPT0)
  4007.                             }
  4008.  
  4009.                             If (LEqual (HPAS, 0x03))
  4010.                             {
  4011.                                 Store (0xFED03000, HPT0)
  4012.                             }
  4013.                         }
  4014.  
  4015.                         Return (BUF0)
  4016.                     }
  4017.                 }
  4018.  
  4019.                 Device (IPIC)
  4020.                 {
  4021.                     Name (_HID, EisaId ("PNP0000"))  // integrated programmable interrupt controller
  4022.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4023.                     {
  4024.                         IO (Decode16,
  4025.                             0x0020,             // Range Minimum
  4026.                             0x0020,             // Range Maximum
  4027.                             0x01,               // Alignment
  4028.                             0x02,               // Length
  4029.                             )
  4030.                         IO (Decode16,
  4031.                             0x0024,             // Range Minimum
  4032.                             0x0024,             // Range Maximum
  4033.                             0x01,               // Alignment
  4034.                             0x02,               // Length
  4035.                             )
  4036.                         IO (Decode16,
  4037.                             0x0028,             // Range Minimum
  4038.                             0x0028,             // Range Maximum
  4039.                             0x01,               // Alignment
  4040.                             0x02,               // Length
  4041.                             )
  4042.                         IO (Decode16,
  4043.                             0x002C,             // Range Minimum
  4044.                             0x002C,             // Range Maximum
  4045.                             0x01,               // Alignment
  4046.                             0x02,               // Length
  4047.                             )
  4048.                         IO (Decode16,
  4049.                             0x0030,             // Range Minimum
  4050.                             0x0030,             // Range Maximum
  4051.                             0x01,               // Alignment
  4052.                             0x02,               // Length
  4053.                             )
  4054.                         IO (Decode16,
  4055.                             0x0034,             // Range Minimum
  4056.                             0x0034,             // Range Maximum
  4057.                             0x01,               // Alignment
  4058.                             0x02,               // Length
  4059.                             )
  4060.                         IO (Decode16,
  4061.                             0x0038,             // Range Minimum
  4062.                             0x0038,             // Range Maximum
  4063.                             0x01,               // Alignment
  4064.                             0x02,               // Length
  4065.                             )
  4066.                         IO (Decode16,
  4067.                             0x003C,             // Range Minimum
  4068.                             0x003C,             // Range Maximum
  4069.                             0x01,               // Alignment
  4070.                             0x02,               // Length
  4071.                             )
  4072.                         IO (Decode16,
  4073.                             0x00A0,             // Range Minimum
  4074.                             0x00A0,             // Range Maximum
  4075.                             0x01,               // Alignment
  4076.                             0x02,               // Length
  4077.                             )
  4078.                         IO (Decode16,
  4079.                             0x00A4,             // Range Minimum
  4080.                             0x00A4,             // Range Maximum
  4081.                             0x01,               // Alignment
  4082.                             0x02,               // Length
  4083.                             )
  4084.                         IO (Decode16,
  4085.                             0x00A8,             // Range Minimum
  4086.                             0x00A8,             // Range Maximum
  4087.                             0x01,               // Alignment
  4088.                             0x02,               // Length
  4089.                             )
  4090.                         IO (Decode16,
  4091.                             0x00AC,             // Range Minimum
  4092.                             0x00AC,             // Range Maximum
  4093.                             0x01,               // Alignment
  4094.                             0x02,               // Length
  4095.                             )
  4096.                         IO (Decode16,
  4097.                             0x00B0,             // Range Minimum
  4098.                             0x00B0,             // Range Maximum
  4099.                             0x01,               // Alignment
  4100.                             0x02,               // Length
  4101.                             )
  4102.                         IO (Decode16,
  4103.                             0x00B4,             // Range Minimum
  4104.                             0x00B4,             // Range Maximum
  4105.                             0x01,               // Alignment
  4106.                             0x02,               // Length
  4107.                             )
  4108.                         IO (Decode16,
  4109.                             0x00B8,             // Range Minimum
  4110.                             0x00B8,             // Range Maximum
  4111.                             0x01,               // Alignment
  4112.                             0x02,               // Length
  4113.                             )
  4114.                         IO (Decode16,
  4115.                             0x00BC,             // Range Minimum
  4116.                             0x00BC,             // Range Maximum
  4117.                             0x01,               // Alignment
  4118.                             0x02,               // Length
  4119.                             )
  4120.                         IO (Decode16,
  4121.                             0x04D0,             // Range Minimum
  4122.                             0x04D0,             // Range Maximum
  4123.                             0x01,               // Alignment
  4124.                             0x02,               // Length
  4125.                             )
  4126.                         IRQNoFlags ()
  4127.                             {2}
  4128.                     })
  4129.                 }
  4130.  
  4131.                 Device (MATH)
  4132.                 {
  4133.                     Name (_HID, EisaId ("PNP0C04"))  // Math coprocessor
  4134.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4135.                     {
  4136.                         IO (Decode16,
  4137.                             0x00F0,             // Range Minimum
  4138.                             0x00F0,             // Range Maximum
  4139.                             0x01,               // Alignment
  4140.                             0x01,               // Length
  4141.                             )
  4142.                         IRQNoFlags ()
  4143.                             {13}
  4144.                     })
  4145.                 }
  4146.  
  4147.                 Device (LDRC)
  4148.                 {
  4149.                     Name (_HID, EisaId ("PNP0C02"))  // SPI controller? Resources in
  4150.                                                 // /sys/bus/acpi/devices/PNP0C02:01/physical_nodes/driver/00:04/resources
  4151.                                                 // it has 20 IO ports
  4152.                     Name (_UID, 0x02)  // _UID: Unique ID
  4153.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4154.                     {
  4155.                         IO (Decode16,
  4156.                             0x002E,             // Range Minimum
  4157.                             0x002E,             // Range Maximum
  4158.                             0x01,               // Alignment
  4159.                             0x02,               // Length
  4160.                             )
  4161.                         IO (Decode16,
  4162.                             0x004E,             // Range Minimum
  4163.                             0x004E,             // Range Maximum
  4164.                             0x01,               // Alignment
  4165.                             0x02,               // Length
  4166.                             )
  4167.                         IO (Decode16,
  4168.                             0x0061,             // Range Minimum
  4169.                             0x0061,             // Range Maximum
  4170.                             0x01,               // Alignment
  4171.                             0x01,               // Length
  4172.                             )
  4173.                         IO (Decode16,
  4174.                             0x0063,             // Range Minimum
  4175.                             0x0063,             // Range Maximum
  4176.                             0x01,               // Alignment
  4177.                             0x01,               // Length
  4178.                             )
  4179.                         IO (Decode16,
  4180.                             0x0065,             // Range Minimum
  4181.                             0x0065,             // Range Maximum
  4182.                             0x01,               // Alignment
  4183.                             0x01,               // Length
  4184.                             )
  4185.                         IO (Decode16,
  4186.                             0x0067,             // Range Minimum
  4187.                             0x0067,             // Range Maximum
  4188.                             0x01,               // Alignment
  4189.                             0x01,               // Length
  4190.                             )
  4191.                         IO (Decode16,
  4192.                             0x0070,             // Range Minimum
  4193.                             0x0070,             // Range Maximum
  4194.                             0x01,               // Alignment
  4195.                             0x01,               // Length
  4196.                             )
  4197.                         IO (Decode16,
  4198.                             0x0080,             // Range Minimum
  4199.                             0x0080,             // Range Maximum
  4200.                             0x01,               // Alignment
  4201.                             0x01,               // Length
  4202.                             )
  4203.                         IO (Decode16,
  4204.                             0x0092,             // Range Minimum
  4205.                             0x0092,             // Range Maximum
  4206.                             0x01,               // Alignment
  4207.                             0x01,               // Length
  4208.                             )
  4209.                         IO (Decode16,
  4210.                             0x00B2,             // Range Minimum
  4211.                             0x00B2,             // Range Maximum
  4212.                             0x01,               // Alignment
  4213.                             0x02,               // Length
  4214.                             )
  4215.                         IO (Decode16,
  4216.                             0x0680,             // Range Minimum
  4217.                             0x0680,             // Range Maximum
  4218.                             0x01,               // Alignment
  4219.                             0x20,               // Length
  4220.                             )
  4221.                         IO (Decode16,
  4222.                             0x1000,             // Range Minimum
  4223.                             0x1000,             // Range Maximum
  4224.                             0x01,               // Alignment
  4225.                             0x10,               // Length
  4226.                             )
  4227.                         IO (Decode16,
  4228.                             0x5000,             // Range Minimum
  4229.                             0x5000,             // Range Maximum
  4230.                             0x01,               // Alignment
  4231.                             0x04,               // Length
  4232.                             )
  4233.                         IO (Decode16,
  4234.                             0xFFFF,             // Range Minimum
  4235.                             0xFFFF,             // Range Maximum
  4236.                             0x01,               // Alignment
  4237.                             0x01,               // Length
  4238.                             )
  4239.                         IO (Decode16,
  4240.                             0x0400,             // Range Minimum
  4241.                             0x0400,             // Range Maximum
  4242.                             0x01,               // Alignment
  4243.                             0x54,               // Length
  4244.                             )
  4245.                         IO (Decode16,
  4246.                             0x0458,             // Range Minimum
  4247.                             0x0458,             // Range Maximum
  4248.                             0x01,               // Alignment
  4249.                             0x28,               // Length
  4250.                             )
  4251.                         IO (Decode16,
  4252.                             0x0500,             // Range Minimum
  4253.                             0x0500,             // Range Maximum
  4254.                             0x01,               // Alignment
  4255.                             0x80,               // Length
  4256.                             )
  4257.                         IO (Decode16,
  4258.                             0x0A00,             // Range Minimum
  4259.                             0x0A00,             // Range Maximum
  4260.                             0x01,               // Alignment
  4261.                             0x10,               // Length
  4262.                             )
  4263.                         IO (Decode16,
  4264.                             0x164E,             // Range Minimum
  4265.                             0x164E,             // Range Maximum
  4266.                             0x01,               // Alignment
  4267.                             0x02,               // Length
  4268.                             )
  4269.                         IO (Decode16,
  4270.                             0x5000,             // Range Minimum
  4271.                             0x5000,             // Range Maximum
  4272.                             0x01,               // Alignment
  4273.                             0x10,               // Length
  4274.                             )
  4275.                     })
  4276.                 }
  4277.  
  4278.                 Device (RTC)
  4279.                 {
  4280.                     Name (_HID, EisaId ("PNP0B00"))  // Real Time Clock
  4281.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4282.                     {
  4283.                         IO (Decode16,
  4284.                             0x0070,             // Range Minimum
  4285.                             0x0070,             // Range Maximum
  4286.                             0x01,               // Alignment
  4287.                             0x08,               // Length
  4288.                             )
  4289.                         IRQNoFlags ()
  4290.                             {8}
  4291.                     })
  4292.                 }
  4293.  
  4294.                 Device (TIMR)
  4295.                 {
  4296.                     Name (_HID, EisaId ("PNP0100"))  // AT Timer
  4297.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4298.                     {
  4299.                         IO (Decode16,
  4300.                             0x0040,             // Range Minimum
  4301.                             0x0040,             // Range Maximum
  4302.                             0x01,               // Alignment
  4303.                             0x04,               // Length
  4304.                             )
  4305.                         IO (Decode16,
  4306.                             0x0050,             // Range Minimum
  4307.                             0x0050,             // Range Maximum
  4308.                             0x10,               // Alignment
  4309.                             0x04,               // Length
  4310.                             )
  4311.                         IRQNoFlags ()
  4312.                             {0}
  4313.                     })
  4314.                 }
  4315.  
  4316.                 Device (CWDT)
  4317.                 {
  4318.                     Name (_HID, EisaId ("INT3F0D"))  // Cooling device?
  4319.                     Name (_CID, EisaId ("PNP0C02"))  // _CID: Compatible ID
  4320.                     Name (BUF0, ResourceTemplate ()
  4321.                     {
  4322.                         IO (Decode16,
  4323.                             0x0454,             // Range Minimum
  4324.                             0x0454,             // Range Maximum
  4325.                             0x04,               // Alignment
  4326.                             0x04,               // Length
  4327.                             )
  4328.                     })
  4329.                     Method (_STA, 0, Serialized)  // _STA: Status
  4330.                     {
  4331.                         If (LEqual (WDTE, One))
  4332.                         {
  4333.                             Return (0x0F)
  4334.                         }
  4335.                         Else
  4336.                         {
  4337.                             Return (Zero)
  4338.                         }
  4339.                     }
  4340.  
  4341.                     Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  4342.                     {
  4343.                         Return (BUF0)
  4344.                     }
  4345.                 }
  4346.  
  4347.                 OperationRegion (PKBS, SystemIO, 0x60, 0x05)
  4348.                 Field (PKBS, ByteAcc, Lock, Preserve)
  4349.                 {
  4350.                     PKBD,   8,
  4351.                     Offset (0x02),
  4352.                     Offset (0x03),
  4353.                     Offset (0x04),
  4354.                     PKBC,   8
  4355.                 }
  4356.  
  4357.                 Device (PS2K)
  4358.                 {
  4359.                     Name (_HID, "MSFT0001")  // mouse
  4360.                     Name (_CID, EisaId ("PNP0303"))  // _CID: Compatible ID
  4361.                     Method (_STA, 0, NotSerialized)  // _STA: Status
  4362.                     {
  4363.                         Return (0x0F)
  4364.                     }
  4365.  
  4366.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4367.                     {
  4368.                         IO (Decode16,
  4369.                             0x0060,             // Range Minimum
  4370.                             0x0060,             // Range Maximum
  4371.                             0x01,               // Alignment
  4372.                             0x01,               // Length
  4373.                             )
  4374.                         IO (Decode16,
  4375.                             0x0064,             // Range Minimum
  4376.                             0x0064,             // Range Maximum
  4377.                             0x01,               // Alignment
  4378.                             0x01,               // Length
  4379.                             )
  4380.                         IRQ (Edge, ActiveHigh, Exclusive, )
  4381.                             {1}
  4382.                     })
  4383.                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
  4384.                     {
  4385.                         StartDependentFn (0x00, 0x00)
  4386.                         {
  4387.                             FixedIO (
  4388.                                 0x0060,             // Address
  4389.                                 0x01,               // Length
  4390.                                 )
  4391.                             FixedIO (
  4392.                                 0x0064,             // Address
  4393.                                 0x01,               // Length
  4394.                                 )
  4395.                             IRQNoFlags ()
  4396.                                 {1}
  4397.                         }
  4398.                         EndDependentFn ()
  4399.                     })
  4400.                 }
  4401.  
  4402.                 Device (EPAD)
  4403.                 {
  4404.                     Name (_HID, EisaId ("ETD0B00"))  // Pad/mouse
  4405.                     Name (_CID, EisaId ("PNP0F13"))  // _CID: Compatible ID
  4406.                     Method (_STA, 0, NotSerialized)  // _STA: Status
  4407.                     {
  4408.                         If (LEqual (PKBC, 0xFF))
  4409.                         {
  4410.                             Return (Zero)
  4411.                         }
  4412.  
  4413.                         If (LEqual (TPAD, One))
  4414.                         {
  4415.                             Return (0x0F)
  4416.                         }
  4417.  
  4418.                         Return (Zero)
  4419.                     }
  4420.  
  4421.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4422.                     {
  4423.                         IRQ (Edge, ActiveHigh, Exclusive, )
  4424.                             {12}
  4425.                     })
  4426.                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
  4427.                     {
  4428.                         StartDependentFn (0x00, 0x00)
  4429.                         {
  4430.                             IRQNoFlags ()
  4431.                                 {12}
  4432.                         }
  4433.                         EndDependentFn ()
  4434.                     })
  4435.                 }
  4436.  
  4437.                 Device (SPAD)
  4438.                 {
  4439.                     Name (_HID, EisaId ("SYN2601"))  // Pad/mouse
  4440.                     Name (_CID, EisaId ("PNP0F13"))  // _CID: Compatible ID
  4441.                     Method (_STA, 0, NotSerialized)  // _STA: Status
  4442.                     {
  4443.                         If (LEqual (PKBC, 0xFF))
  4444.                         {
  4445.                             Return (Zero)
  4446.                         }
  4447.  
  4448.                         If (LEqual (TPAD, Zero))
  4449.                         {
  4450.                             Return (0x0F)
  4451.                         }
  4452.  
  4453.                         Return (Zero)
  4454.                     }
  4455.  
  4456.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4457.                     {
  4458.                         IRQ (Edge, ActiveHigh, Exclusive, )
  4459.                             {12}
  4460.                     })
  4461.                     Name (_PRS, ResourceTemplate ()  // _PRS: Possible Resource Settings
  4462.                     {
  4463.                         StartDependentFn (0x00, 0x00)
  4464.                         {
  4465.                             IRQNoFlags ()
  4466.                                 {12}
  4467.                         }
  4468.                         EndDependentFn ()
  4469.                     })
  4470.                 }
  4471.  
  4472.                 OperationRegion (TPMF, SystemMemory, 0xFFFF0000, 0xAA55)
  4473.                 Field (TPMF, AnyAcc, Lock, Preserve)
  4474.                 {
  4475.                     PPIP,   8,
  4476.                     PPIC,   8
  4477.                 }
  4478.  
  4479.                 Device (TPM)
  4480.                 {
  4481.                     Name (TMPV, Zero)
  4482.                     Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
  4483.                     {
  4484.                         If (LEqual (TVID, 0x15D1))
  4485.                         {
  4486.                             Return (0x0201D824)
  4487.                         }
  4488.  
  4489.                         If (LOr (LEqual (TVID, 0x1050), LEqual (TVID, 0x100B)))
  4490.                         {
  4491.                             Return (0x0010A35C)
  4492.                         }
  4493.  
  4494.                         If (LEqual (TVID, 0x19FA))
  4495.                         {
  4496.                             Return (0x0435CF4D)
  4497.                         }
  4498.  
  4499.                         If (LEqual (TDID, 0x1002))
  4500.                         {
  4501.                             Return (0x02016D08)
  4502.                         }
  4503.  
  4504.                         If (LEqual (TDID, 0x1001))
  4505.                         {
  4506.                             Return (0x01016D08)
  4507.                         }
  4508.  
  4509.                         If (LEqual (TVID, 0x1114))
  4510.                         {
  4511.                             Return (0x00128D06)
  4512.                         }
  4513.  
  4514.                         Return (0x310CD041)
  4515.                     }
  4516.  
  4517.                     Name (_CID, EisaId ("PNP0C31"))  // _CID: Compatible ID
  4518.                     Name (_UID, One)  // _UID: Unique ID
  4519.                     OperationRegion (TMMB, SystemMemory, 0xFED40000, 0x1000)
  4520.                     Field (TMMB, ByteAcc, Lock, Preserve)
  4521.                     {
  4522.                         ACCS,   8,
  4523.                         Offset (0x18),
  4524.                         TSTA,   8,
  4525.                         TBCA,   8,
  4526.                         Offset (0xF00),
  4527.                         TVID,   16,
  4528.                         TDID,   16
  4529.                     }
  4530.  
  4531.                     Method (_STA, 0, NotSerialized)  // _STA: Status
  4532.                     {
  4533.                         If (LEqual (ACCS, 0xFF))
  4534.                         {
  4535.                             Return (Zero)
  4536.                         }
  4537.                         Else
  4538.                         {
  4539.                             If (LEqual (TPMP, One))
  4540.                             {
  4541.                                 Return (0x0F)
  4542.                             }
  4543.                             Else
  4544.                             {
  4545.                                 Return (Zero)
  4546.                             }
  4547.                         }
  4548.                     }
  4549.  
  4550.                     Name (_CRS, ResourceTemplate ()  // _CRS: Current Resource Settings
  4551.                     {
  4552.                         Memory32Fixed (ReadOnly,
  4553.                             0xFED40000,         // Address Base
  4554.                             0x00005000,         // Address Length
  4555.                             )
  4556.                     })
  4557.                     Method (UCMP, 2, NotSerialized)
  4558.                     {
  4559.                         If (LNotEqual (0x10, SizeOf (Arg0)))
  4560.                         {
  4561.                             Return (Zero)
  4562.                         }
  4563.  
  4564.                         If (LNotEqual (0x10, SizeOf (Arg1)))
  4565.                         {
  4566.                             Return (Zero)
  4567.                         }
  4568.  
  4569.                         Store (Zero, Local0)
  4570.                         While (LLess (Local0, 0x10))
  4571.                         {
  4572.                             If (LNotEqual (DerefOf (Index (Arg0, Local0)), DerefOf (Index (
  4573.                                 Arg1, Local0))))
  4574.                             {
  4575.                                 Return (Zero)
  4576.                             }
  4577.  
  4578.                             Increment (Local0)
  4579.                         }
  4580.  
  4581.                         Return (One)
  4582.                     }
  4583.  
  4584.                     Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
  4585.                     {
  4586.                         Name (TTMP, Buffer (One)
  4587.                         {
  4588.                              0x00
  4589.                         })
  4590.                         CreateByteField (TTMP, Zero, TMPV)
  4591.                         If (LEqual (UCMP (Arg0, Buffer (0x10)
  4592.                                     {
  4593.                                         /* 0000 */   0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E,
  4594.                                         /* 0008 */   0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53
  4595.                                     }), One))
  4596.                         {
  4597.                             If (LEqual (Arg2, Zero))
  4598.                             {
  4599.                                 Return (Buffer (0x02)
  4600.                                 {
  4601.                                      0xFF, 0x01
  4602.                                 })
  4603.                             }
  4604.  
  4605.                             If (LEqual (Arg2, One))
  4606.                             {
  4607.                                 Return (Buffer (0x04)
  4608.                                 {
  4609.                                     "1.2"
  4610.                                 })
  4611.                             }
  4612.  
  4613.                             If (LEqual (Arg2, 0x02))
  4614.                             {
  4615.                                 Store (TPP3, TMPV)
  4616.                                 If (And (TMPV, TPRS))
  4617.                                 {
  4618.                                     If (LLessEqual (DerefOf (Index (Arg3, Zero)), 0x0B))
  4619.                                     {
  4620.                                         Store (DerefOf (Index (Arg3, Zero)), TPP1)
  4621.                                         Return (Zero)
  4622.                                     }
  4623.  
  4624.                                     If (LAnd (LGreaterEqual (DerefOf (Index (Arg3, Zero)), 0x0E),
  4625.                                         LLessEqual (DerefOf (Index (Arg3, Zero)), 0x12)))
  4626.                                     {
  4627.                                         Store (DerefOf (Index (Arg3, Zero)), TPP1)
  4628.                                         Return (Zero)
  4629.                                     }
  4630.  
  4631.                                     If (LOr (LEqual (DerefOf (Index (Arg3, Zero)), 0x15), LEqual (
  4632.                                         DerefOf (Index (Arg3, Zero)), 0x16)))
  4633.                                     {
  4634.                                         Store (DerefOf (Index (Arg3, Zero)), TPP1)
  4635.                                         Return (Zero)
  4636.                                     }
  4637.  
  4638.                                     Return (One)
  4639.                                 }
  4640.  
  4641.                                 Return (0x02)
  4642.                             }
  4643.  
  4644.                             If (LEqual (Arg2, 0x03))
  4645.                             {
  4646.                                 Name (TMP1, Package (0x02)
  4647.                                 {
  4648.                                     Zero,
  4649.                                     0xFFFFFFFF
  4650.                                 })
  4651.                                 Store (TPP1, TMPV)
  4652.                                 Store (And (TMPV, PPRQ, TMPV), Index (TMP1, One))
  4653.                                 Return (TMP1)
  4654.                             }
  4655.  
  4656.                             If (LEqual (Arg2, 0x04))
  4657.                             {
  4658.                                 Return (0x02)
  4659.                             }
  4660.  
  4661.                             If (LEqual (Arg2, 0x05))
  4662.                             {
  4663.                                 Name (TMP2, Package (0x03)
  4664.                                 {
  4665.                                     Zero,
  4666.                                     0xFFFFFFFF,
  4667.                                     0xFFFFFFFF
  4668.                                 })
  4669.                                 Store (PPLO, TMPV)
  4670.                                 And (TMPV, 0x7F, TMPV)
  4671.                                 Store (TMPV, Index (TMP2, One))
  4672.                                 If (LGreaterEqual (PPLO, 0x80))
  4673.                                 {
  4674.                                     Store (Zero, Index (TMP2, 0x02))
  4675.                                     Return (TMP2)
  4676.                                 }
  4677.  
  4678.                                 Store (0xFFFFFFF1, Index (TMP2, 0x02))
  4679.                                 Return (TMP2)
  4680.                             }
  4681.  
  4682.                             If (LEqual (Arg2, 0x06))
  4683.                             {
  4684.                                 Return (0x03)
  4685.                             }
  4686.  
  4687.                             If (LEqual (Arg2, 0x07))
  4688.                             {
  4689.                                 Store (TPP3, TMPV)
  4690.                                 If (And (TMPV, TPRS))
  4691.                                 {
  4692.                                     If (LLessEqual (DerefOf (Index (Arg3, Zero)), 0x0B))
  4693.                                     {
  4694.                                         Store (DerefOf (Index (Arg3, Zero)), TPP1)
  4695.                                         Return (Zero)
  4696.                                     }
  4697.  
  4698.                                     If (LAnd (LGreaterEqual (DerefOf (Index (Arg3, Zero)), 0x0E),
  4699.                                         LLessEqual (DerefOf (Index (Arg3, Zero)), 0x12)))
  4700.                                     {
  4701.                                         Store (DerefOf (Index (Arg3, Zero)), TPP1)
  4702.                                         Return (Zero)
  4703.                                     }
  4704.  
  4705.                                     If (LOr (LEqual (DerefOf (Index (Arg3, Zero)), 0x15), LEqual (
  4706.                                         DerefOf (Index (Arg3, Zero)), 0x16)))
  4707.                                     {
  4708.                                         Store (DerefOf (Index (Arg3, Zero)), TPP1)
  4709.                                         Return (Zero)
  4710.                                     }
  4711.  
  4712.                                     Return (One)
  4713.                                 }
  4714.  
  4715.                                 Return (0x02)
  4716.                             }
  4717.  
  4718.                             If (LEqual (Arg2, 0x08))
  4719.                             {
  4720.                                 If (LEqual (DerefOf (Index (Arg3, Zero)), 0x05))
  4721.                                 {
  4722.                                     If (LGreater (PPIC, Zero))
  4723.                                     {
  4724.                                         Return (0x04)
  4725.                                     }
  4726.  
  4727.                                     Return (0x03)
  4728.                                 }
  4729.  
  4730.                                 If (LAnd (LGreaterEqual (DerefOf (Index (Arg3, Zero)), One),
  4731.                                     LLessEqual (DerefOf (Index (Arg3, Zero)), 0x04)))
  4732.                                 {
  4733.                                     If (LGreater (PPIP, Zero))
  4734.                                     {
  4735.                                         Return (0x04)
  4736.                                     }
  4737.  
  4738.                                     Return (0x03)
  4739.                                 }
  4740.  
  4741.                                 If (LAnd (LGreaterEqual (DerefOf (Index (Arg3, Zero)), 0x06),
  4742.                                     LLessEqual (DerefOf (Index (Arg3, Zero)), 0x0B)))
  4743.                                 {
  4744.                                     If (LGreater (PPIP, Zero))
  4745.                                     {
  4746.                                         Return (0x04)
  4747.                                     }
  4748.  
  4749.                                     Return (0x03)
  4750.                                 }
  4751.  
  4752.                                 If (LOr (LEqual (DerefOf (Index (Arg3, Zero)), 0x0E), LAnd (
  4753.                                     LGreaterEqual (DerefOf (Index (Arg3, Zero)), 0x15), LLessEqual (DerefOf (
  4754.                                     Index (Arg3, Zero)), 0x16))))
  4755.                                 {
  4756.                                     If (LAnd (LGreater (PPIP, Zero), LGreater (PPIC, Zero)))
  4757.                                     {
  4758.                                         Return (0x04)
  4759.                                     }
  4760.  
  4761.                                     Return (0x03)
  4762.                                 }
  4763.  
  4764.                                 If (LOr (LEqual (DerefOf (Index (Arg3, Zero)), 0x10), LEqual (
  4765.                                     DerefOf (Index (Arg3, Zero)), 0x12)))
  4766.                                 {
  4767.                                     Return (0x03)
  4768.                                 }
  4769.  
  4770.                                 If (LOr (LEqual (DerefOf (Index (Arg3, Zero)), Zero), LOr (
  4771.                                     LEqual (DerefOf (Index (Arg3, Zero)), 0x0F), LEqual (DerefOf (Index (Arg3,
  4772.                                     Zero)), 0x11))))
  4773.                                 {
  4774.                                     Return (0x04)
  4775.                                 }
  4776.  
  4777.                                 Return (Zero)
  4778.                             }
  4779.  
  4780.                             Return (One)
  4781.                         }
  4782.  
  4783.                         If (LEqual (UCMP (Arg0, Buffer (0x10)
  4784.                                     {
  4785.                                         /* 0000 */   0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46,
  4786.                                         /* 0008 */   0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D
  4787.                                     }), One))
  4788.                         {
  4789.                             If (LEqual (Arg2, Zero))
  4790.                             {
  4791.                                 Return (Buffer (One)
  4792.                                 {
  4793.                                      0x03
  4794.                                 })
  4795.                             }
  4796.  
  4797.                             If (LEqual (Arg2, One))
  4798.                             {
  4799.                                 Store (DerefOf (Index (Arg3, Zero)), TMPV)
  4800.                                 And (TMPV, One, TMPV)
  4801.                                 If (LEqual (TMPV, Zero))
  4802.                                 {
  4803.                                     Store (0x80, TPP1)
  4804.                                     Return (Zero)
  4805.                                 }
  4806.  
  4807.                                 If (LEqual (TMPV, One))
  4808.                                 {
  4809.                                     Store (0x81, TPP1)
  4810.                                     Return (Zero)
  4811.                                 }
  4812.                             }
  4813.  
  4814.                             Return (One)
  4815.                         }
  4816.  
  4817.                         Return (Buffer (One)
  4818.                         {
  4819.                              0x00
  4820.                         })
  4821.                     }
  4822.                 }
  4823.             }
  4824.         }
  4825.     }
  4826.  
  4827.     Scope (_PR)
  4828.     {
  4829.         Processor (CPU0, 0x01, 0x00000410, 0x06) {}
  4830.         Processor (CPU1, 0x02, 0x00000410, 0x06) {}
  4831.         Processor (CPU2, 0x03, 0x00000410, 0x06) {}
  4832.         Processor (CPU3, 0x04, 0x00000410, 0x06) {}
  4833.         Processor (CPU4, 0x05, 0x00000410, 0x06) {}
  4834.         Processor (CPU5, 0x06, 0x00000410, 0x06) {}
  4835.         Processor (CPU6, 0x07, 0x00000410, 0x06) {}
  4836.         Processor (CPU7, 0x08, 0x00000410, 0x06) {}
  4837.     }
  4838.  
  4839.     Mutex (MUTX, 0x00)
  4840.     OperationRegion (PRT0, SystemIO, 0x80, 0x04)
  4841.     Field (PRT0, DWordAcc, Lock, Preserve)
  4842.     {
  4843.         P80H,   32
  4844.     }
  4845.  
  4846.     Method (P8XH, 2, Serialized)
  4847.     {
  4848.         If (LEqual (Arg0, Zero))
  4849.         {
  4850.             Store (Or (And (P80D, 0xFFFFFF00), Arg1), P80D)
  4851.         }
  4852.  
  4853.         If (LEqual (Arg0, One))
  4854.         {
  4855.             Store (Or (And (P80D, 0xFFFF00FF), ShiftLeft (Arg1, 0x08)
  4856.                 ), P80D)
  4857.         }
  4858.  
  4859.         If (LEqual (Arg0, 0x02))
  4860.         {
  4861.             Store (Or (And (P80D, 0xFF00FFFF), ShiftLeft (Arg1, 0x10)
  4862.                 ), P80D)
  4863.         }
  4864.  
  4865.         If (LEqual (Arg0, 0x03))
  4866.         {
  4867.             Store (Or (And (P80D, 0x00FFFFFF), ShiftLeft (Arg1, 0x18)
  4868.                 ), P80D)
  4869.         }
  4870.  
  4871.         Store (P80D, P80H)
  4872.     }
  4873.  
  4874.     OperationRegion (SPRT, SystemIO, 0xB2, 0x02)
  4875.     Field (SPRT, ByteAcc, Lock, Preserve)
  4876.     {
  4877.         SSMP,   8
  4878.     }
  4879.  
  4880.     Method (_PIC, 1, NotSerialized)  // _PIC: Interrupt Model
  4881.     {
  4882.         Store (Arg0, GPIC)
  4883.         Store (Arg0, PICM)
  4884.     }
  4885.  
  4886.     Method (_PTS, 1, NotSerialized)  // _PTS: Prepare To Sleep
  4887.     {
  4888.         Store (Zero, P80D)
  4889.         P8XH (Zero, Arg0)
  4890.         Store (\_SB.PCI0.LPCB.H_EC.B1DF, \_SB.BFCC)
  4891.         If (LEqual (Arg0, 0x03))
  4892.         {
  4893.             If (LAnd (DTSE, LGreater (TCNT, One)))
  4894.             {
  4895.                 TRAP (TRTD, 0x1E)
  4896.             }
  4897.  
  4898.             Store (And (GL07, 0x0A), GBF0)
  4899.             And (GL07, 0xF5, GL07)
  4900.             Store (And (GL08, 0xA0), GBF1)
  4901.             And (GL08, 0x5F, GL08)
  4902.             Store (And (GL05, 0x08), GBF2)
  4903.             If (LAnd (LEqual (IFFS, One), LEqual (\_SB.FFBF, One)))
  4904.             {
  4905.                 Store (Zero, \_SB.IFFS.FFST)
  4906.             }
  4907.  
  4908.             While (LNotEqual (\_SB.PCI0.LPCB.PBLV, One))
  4909.             {
  4910.                 Stall (0x64)
  4911.             }
  4912.         }
  4913.  
  4914.         If (LOr (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)), LEqual (
  4915.             Arg0, 0x05)))
  4916.         {
  4917.             If (LEqual (PFLV, FDTP))
  4918.             {
  4919.                 Store (One, GP27)
  4920.             }
  4921.         }
  4922.  
  4923.         If (LEqual (Arg0, 0x04))
  4924.         {
  4925.             Store (0x06, STYP)
  4926.         }
  4927.     }
  4928.  
  4929.     Method (_WAK, 1, Serialized)  // _WAK: Wake
  4930.     {
  4931.         P8XH (One, 0xAB)
  4932.         Store (One, ECON)
  4933.         If (LNotEqual (\_SB.PCI0.LPCB.H_EC.ACEX, PWRS))
  4934.         {
  4935.             Store (\_SB.PCI0.LPCB.H_EC.ACEX, PWRS)
  4936.             If (LGreaterEqual (\_SB.OSYS, 0x07D1))
  4937.             {
  4938.                 PNOT ()
  4939.             }
  4940.         }
  4941.  
  4942.         If (LNotEqual (\_SB.PCI0.LPCB.H_EC.B1DF, \_SB.BFCC))
  4943.         {
  4944.             Notify (\_SB.PCI0.LPCB.H_EC.BAT1, 0x80)
  4945.             Notify (\_SB.PCI0.LPCB.H_EC.BAT1, 0x81)
  4946.         }
  4947.  
  4948.         If (PWRS)
  4949.         {
  4950.             And (GL02, 0xFE, GL02)
  4951.         }
  4952.         Else
  4953.         {
  4954.             Or (GL02, One, GL02)
  4955.         }
  4956.  
  4957.         If (LAnd (LEqual (\_SB.CTUR, One), LGreaterEqual (\_SB.CTDP, One)))
  4958.         {
  4959.             If (PWRS)
  4960.             {
  4961.                 \_SB.SECB (0x9C, One)
  4962.             }
  4963.             Else
  4964.             {
  4965.                 \_SB.SECB (0x9C, Zero)
  4966.             }
  4967.         }
  4968.  
  4969.         If (NEXP)
  4970.         {
  4971.             If (And (OSCC, 0x02))
  4972.             {
  4973.                 \_SB.PCI0.NHPG ()
  4974.             }
  4975.  
  4976.             If (And (OSCC, 0x04))
  4977.             {
  4978.                 \_SB.PCI0.NPME ()
  4979.             }
  4980.         }
  4981.  
  4982.         If (LEqual (Arg0, 0x03))
  4983.         {
  4984.             \_SB.SECS (0xA2)
  4985.             If (LNotEqual (\_SB.PCI0.LPCB.H_EC.TIST, \_SB.TZON))
  4986.             {
  4987.                 Store (\_SB.PCI0.LPCB.H_EC.TIST, \_SB.TZON)
  4988.                 CPRN ()
  4989.             }
  4990.  
  4991.             Or (GL07, GBF0, GL07)
  4992.             Or (GL08, GBF1, GL08)
  4993.             And (GL05, 0xF7, GL05)
  4994.             Or (GL05, GBF2, GL05)
  4995.             If (LOr (GBF0, GBF1))
  4996.             {
  4997.                 \_SB.SECS (0xB2)
  4998.             }
  4999.  
  5000.             If (LNotEqual (\_SB.HBAT, Zero))
  5001.             {
  5002.                 Notify (\_SB.PWRB, 0x02)
  5003.             }
  5004.  
  5005.             If (LAnd (LEqual (IFFS, One), LEqual (\_SB.FFBF, One)))
  5006.             {
  5007.                 Store (Zero, \_SB.FFBF)
  5008.                 Store (\_SB.FFBT, \_SB.IFFS.FFST)
  5009.             }
  5010.         }
  5011.  
  5012.         If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
  5013.         {
  5014.             Store (Arg0, \_SB.RTYP)
  5015.             If (LAnd (DTSE, LGreater (TCNT, One)))
  5016.             {
  5017.                 TRAP (TRTD, 0x14)
  5018.             }
  5019.  
  5020.             If (LEqual (OSYS, 0x07D2))
  5021.             {
  5022.                 If (And (CFGD, One))
  5023.                 {
  5024.                     If (LGreater (\_PR.CPU0._PPC, Zero))
  5025.                     {
  5026.                         Subtract (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
  5027.                         PNOT ()
  5028.                         Add (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
  5029.                         PNOT ()
  5030.                     }
  5031.                     Else
  5032.                     {
  5033.                         Add (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
  5034.                         PNOT ()
  5035.                         Subtract (\_PR.CPU0._PPC, One, \_PR.CPU0._PPC)
  5036.                         PNOT ()
  5037.                     }
  5038.                 }
  5039.             }
  5040.  
  5041.             If (LEqual (ECON, One))
  5042.             {
  5043.                 If (LNotEqual (LIDS, \_SB.PCI0.LPCB.H_EC.LIDS))
  5044.                 {
  5045.                     Store (\_SB.PCI0.LPCB.H_EC.LIDS, LIDS)
  5046.                     If (IGDS)
  5047.                     {
  5048.                         If (\_SB.PCI0.GFX0.GLID (LIDS))
  5049.                         {
  5050.                             Or (0x80000000, \_SB.PCI0.GFX0.CLID, \_SB.PCI0.GFX0.CLID)
  5051.                         }
  5052.                     }
  5053.  
  5054.                     Notify (\_SB.LID0, 0x80)
  5055.                 }
  5056.             }
  5057.  
  5058.             If (LEqual (RP1D, Zero))
  5059.             {
  5060.                 Notify (\_SB.PCI0.RP01, Zero)
  5061.             }
  5062.  
  5063.             If (LEqual (RP2D, Zero))
  5064.             {
  5065.                 Notify (\_SB.PCI0.RP02, Zero)
  5066.             }
  5067.  
  5068.             If (LEqual (RP3D, Zero))
  5069.             {
  5070.                 Notify (\_SB.PCI0.RP03, Zero)
  5071.             }
  5072.  
  5073.             If (LEqual (RP4D, Zero))
  5074.             {
  5075.                 Notify (\_SB.PCI0.RP04, Zero)
  5076.             }
  5077.  
  5078.             If (LEqual (RP5D, Zero))
  5079.             {
  5080.                 Notify (\_SB.PCI0.RP05, Zero)
  5081.             }
  5082.  
  5083.             If (LEqual (RP6D, Zero))
  5084.             {
  5085.                 Notify (\_SB.PCI0.RP06, Zero)
  5086.             }
  5087.  
  5088.             If (LEqual (RP7D, Zero))
  5089.             {
  5090.                 Notify (\_SB.PCI0.RP07, Zero)
  5091.             }
  5092.  
  5093.             If (LEqual (RP8D, Zero))
  5094.             {
  5095.                 Notify (\_SB.PCI0.RP08, Zero)
  5096.             }
  5097.         }
  5098.  
  5099.         If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
  5100.         {
  5101.             \_SB.PCI0.XHC.XWAK ()
  5102.         }
  5103.  
  5104.         Store (Zero, \_SB.KBST)
  5105.         If (LEqual (\_SB.FFS0, One))
  5106.         {
  5107.             \_SB.SECS (0x9D)
  5108.         }
  5109.  
  5110.         Return (Package (0x02)
  5111.         {
  5112.             Zero,
  5113.             Zero
  5114.         })
  5115.     }
  5116.  
  5117.     Method (GETB, 3, Serialized)
  5118.     {
  5119.         Multiply (Arg0, 0x08, Local0)
  5120.         Multiply (Arg1, 0x08, Local1)
  5121.         CreateField (Arg2, Local0, Local1, TBF3)
  5122.         Return (TBF3)
  5123.     }
  5124.  
  5125.     Method (PNOT, 0, Serialized)
  5126.     {
  5127.         If (LGreater (TCNT, One))
  5128.         {
  5129.             If (And (PDC0, 0x08))
  5130.             {
  5131.                 Notify (\_PR.CPU0, 0x80)
  5132.                 If (And (PDC0, 0x10))
  5133.                 {
  5134.                     Sleep (0x64)
  5135.                     Notify (\_PR.CPU0, 0x81)
  5136.                 }
  5137.             }
  5138.  
  5139.             If (And (PDC1, 0x08))
  5140.             {
  5141.                 Notify (\_PR.CPU1, 0x80)
  5142.                 If (And (PDC1, 0x10))
  5143.                 {
  5144.                     Sleep (0x64)
  5145.                     Notify (\_PR.CPU1, 0x81)
  5146.                 }
  5147.             }
  5148.  
  5149.             If (And (PDC2, 0x08))
  5150.             {
  5151.                 Notify (\_PR.CPU2, 0x80)
  5152.                 If (And (PDC2, 0x10))
  5153.                 {
  5154.                     Sleep (0x64)
  5155.                     Notify (\_PR.CPU2, 0x81)
  5156.                 }
  5157.             }
  5158.  
  5159.             If (And (PDC3, 0x08))
  5160.             {
  5161.                 Notify (\_PR.CPU3, 0x80)
  5162.                 If (And (PDC3, 0x10))
  5163.                 {
  5164.                     Sleep (0x64)
  5165.                     Notify (\_PR.CPU3, 0x81)
  5166.                 }
  5167.             }
  5168.  
  5169.             If (And (PDC4, 0x08))
  5170.             {
  5171.                 Notify (\_PR.CPU4, 0x80)
  5172.                 If (And (PDC4, 0x10))
  5173.                 {
  5174.                     Sleep (0x64)
  5175.                     Notify (\_PR.CPU4, 0x81)
  5176.                 }
  5177.             }
  5178.  
  5179.             If (And (PDC5, 0x08))
  5180.             {
  5181.                 Notify (\_PR.CPU5, 0x80)
  5182.                 If (And (PDC5, 0x10))
  5183.                 {
  5184.                     Sleep (0x64)
  5185.                     Notify (\_PR.CPU5, 0x81)
  5186.                 }
  5187.             }
  5188.  
  5189.             If (And (PDC6, 0x08))
  5190.             {
  5191.                 Notify (\_PR.CPU6, 0x80)
  5192.                 If (And (PDC6, 0x10))
  5193.                 {
  5194.                     Sleep (0x64)
  5195.                     Notify (\_PR.CPU6, 0x81)
  5196.                 }
  5197.             }
  5198.  
  5199.             If (And (PDC7, 0x08))
  5200.             {
  5201.                 Notify (\_PR.CPU7, 0x80)
  5202.                 If (And (PDC7, 0x10))
  5203.                 {
  5204.                     Sleep (0x64)
  5205.                     Notify (\_PR.CPU7, 0x81)
  5206.                 }
  5207.             }
  5208.         }
  5209.         Else
  5210.         {
  5211.             Notify (\_PR.CPU0, 0x80)
  5212.             Sleep (0x64)
  5213.             Notify (\_PR.CPU0, 0x81)
  5214.         }
  5215.     }
  5216.  
  5217.     Method (CPRN, 0, Serialized)
  5218.     {
  5219.         SPPC ()
  5220.         If (LGreater (TCNT, One))
  5221.         {
  5222.             If (And (PDC0, 0x08))
  5223.             {
  5224.                 Notify (\_PR.CPU0, 0x80)
  5225.                 Sleep (0x64)
  5226.             }
  5227.  
  5228.             If (And (PDC1, 0x08))
  5229.             {
  5230.                 Notify (\_PR.CPU1, 0x80)
  5231.                 Sleep (0x64)
  5232.             }
  5233.  
  5234.             If (And (PDC2, 0x08))
  5235.             {
  5236.                 Notify (\_PR.CPU2, 0x80)
  5237.                 Sleep (0x64)
  5238.             }
  5239.  
  5240.             If (And (PDC3, 0x08))
  5241.             {
  5242.                 Notify (\_PR.CPU3, 0x80)
  5243.                 Sleep (0x64)
  5244.             }
  5245.  
  5246.             If (And (PDC4, 0x08))
  5247.             {
  5248.                 Notify (\_PR.CPU4, 0x80)
  5249.                 Sleep (0x64)
  5250.             }
  5251.  
  5252.             If (And (PDC5, 0x08))
  5253.             {
  5254.                 Notify (\_PR.CPU5, 0x80)
  5255.                 Sleep (0x64)
  5256.             }
  5257.  
  5258.             If (And (PDC6, 0x08))
  5259.             {
  5260.                 Notify (\_PR.CPU6, 0x80)
  5261.                 Sleep (0x64)
  5262.             }
  5263.  
  5264.             If (And (PDC7, 0x08))
  5265.             {
  5266.                 Notify (\_PR.CPU7, 0x80)
  5267.                 Sleep (0x64)
  5268.             }
  5269.         }
  5270.         Else
  5271.         {
  5272.             Notify (\_PR.CPU0, 0x80)
  5273.             Sleep (0x64)
  5274.         }
  5275.     }
  5276.  
  5277.     Method (SPPC, 0, NotSerialized)
  5278.     {
  5279.         Add (\_SB.PPCM, One, \_SB.NIST)
  5280.         Store (\_PR.CPPC, \_SB.PPCS)
  5281.         Store (\_SB.PPCS, \_PR.CPU0._PPC)
  5282.         If (LAnd (LEqual (\_SB.CTUR, One), LGreaterEqual (\_SB.CTDP, One)))
  5283.         {
  5284.             \_SB.SECB (0x9C, One)
  5285.         }
  5286.  
  5287.         If (LEqual (\_SB.GSSR, One))
  5288.         {
  5289.             If (LEqual (\_SB.TZON, One))
  5290.             {
  5291.                 If (LAnd (LEqual (\_SB.CTUR, One), LGreaterEqual (\_SB.CTDP, One)))
  5292.                 {
  5293.                     \_SB.SECB (0x9C, Zero)
  5294.                 }
  5295.                 Else
  5296.                 {
  5297.                     Store (\_PR.CPPC, Local0)
  5298.                     Increment (Local0)
  5299.                     Store (Local0, \_SB.PPCS)
  5300.                     Subtract (\_SB.PPCM, \_SB.PPCS, \_SB.NIST)
  5301.                     Increment (\_SB.NIST)
  5302.                     Store (\_SB.PPCS, \_PR.CPU0._PPC)
  5303.                 }
  5304.             }
  5305.  
  5306.             If (LEqual (\_SB.TZON, 0x02))
  5307.             {
  5308.                 Store (\_SB.PPCM, Local1)
  5309.                 Subtract (Local1, \_PR.CPPC, Local1)
  5310.                 Divide (Local1, 0x02, Local2, Local3)
  5311.                 If (LNotEqual (Local2, Zero))
  5312.                 {
  5313.                     Increment (Local3)
  5314.                 }
  5315.  
  5316.                 Add (Local3, \_PR.CPPC, Local3)
  5317.                 Store (Local3, \_SB.PPCS)
  5318.                 Subtract (\_SB.PPCM, \_SB.PPCS, \_SB.NIST)
  5319.                 Increment (\_SB.NIST)
  5320.                 Store (\_SB.PPCS, \_PR.CPU0._PPC)
  5321.             }
  5322.  
  5323.             If (LEqual (\_SB.TZON, 0x03))
  5324.             {
  5325.                 Store (\_SB.PPCM, \_SB.PPCS)
  5326.                 Store (One, \_SB.NIST)
  5327.                 Store (\_SB.PPCS, \_PR.CPU0._PPC)
  5328.             }
  5329.         }
  5330.  
  5331.         If (LEqual (\_SB.GSSR, 0x02))
  5332.         {
  5333.             Subtract (\_SB.PPCM, \_SB.RIST, \_SB.PPCS)
  5334.             Store (\_SB.PPCS, \_PR.CPU0._PPC)
  5335.         }
  5336.     }
  5337.  
  5338.     Method (CCRN, 0, Serialized)
  5339.     {
  5340.         If (TCNT)
  5341.         {
  5342.             If (And (PDC0, 0x10))
  5343.             {
  5344.                 Notify (\_PR.CPU0, 0x81)
  5345.             }
  5346.  
  5347.             If (And (PDC1, 0x10))
  5348.             {
  5349.                 Notify (\_PR.CPU1, 0x81)
  5350.             }
  5351.  
  5352.             If (And (PDC2, 0x10))
  5353.             {
  5354.                 Notify (\_PR.CPU2, 0x81)
  5355.             }
  5356.  
  5357.             If (And (PDC3, 0x10))
  5358.             {
  5359.                 Notify (\_PR.CPU3, 0x81)
  5360.             }
  5361.  
  5362.             If (And (PDC4, 0x10))
  5363.             {
  5364.                 Notify (\_PR.CPU4, 0x81)
  5365.             }
  5366.  
  5367.             If (And (PDC5, 0x10))
  5368.             {
  5369.                 Notify (\_PR.CPU5, 0x81)
  5370.             }
  5371.  
  5372.             If (And (PDC6, 0x10))
  5373.             {
  5374.                 Notify (\_PR.CPU6, 0x81)
  5375.             }
  5376.  
  5377.             If (And (PDC7, 0x10))
  5378.             {
  5379.                 Notify (\_PR.CPU7, 0x81)
  5380.             }
  5381.         }
  5382.         Else
  5383.         {
  5384.             Notify (\_PR.CPU0, 0x81)
  5385.         }
  5386.     }
  5387.  
  5388.     Method (TRAP, 2, Serialized)
  5389.     {
  5390.         Store (Arg1, SMIF)
  5391.         If (LEqual (Arg0, TRTP))
  5392.         {
  5393.             Store (Zero, TRP0)
  5394.         }
  5395.  
  5396.         If (LEqual (Arg0, TRTD))
  5397.         {
  5398.             Store (Arg1, DTSF)
  5399.             Store (Zero, TRPD)
  5400.             Return (DTSF)
  5401.         }
  5402.  
  5403.         If (LEqual (Arg0, TRTI))
  5404.         {
  5405.             Store (Zero, TRPH)
  5406.         }
  5407.  
  5408.         Return (SMIF)
  5409.     }
  5410.  
  5411.     Scope (_SB.PCI0)
  5412.     {
  5413.         Method (_INI, 0, NotSerialized)  // _INI: Initialize
  5414.         {
  5415.             Store (0x07D0, \OSYS)
  5416.             Store (0x07D0, OSYS)
  5417.             If (CondRefOf (_OSI, Local0))
  5418.             {
  5419.                 If (_OSI ("Windows 2001"))
  5420.                 {
  5421.                     Store (0x07D1, \OSYS)
  5422.                     Store (0x07D1, OSYS)
  5423.                 }
  5424.  
  5425.                 If (_OSI ("Windows 2001 SP1"))
  5426.                 {
  5427.                     Store (0x07D1, \OSYS)
  5428.                     Store (0x07D1, OSYS)
  5429.                 }
  5430.  
  5431.                 If (_OSI ("Windows 2001 SP2"))
  5432.                 {
  5433.                     Store (0x07D2, \OSYS)
  5434.                     Store (0x07D2, OSYS)
  5435.                 }
  5436.  
  5437.                 If (_OSI ("Windows 2001.1"))
  5438.                 {
  5439.                     Store (0x07D3, \OSYS)
  5440.                     Store (0x07D3, OSYS)
  5441.                 }
  5442.  
  5443.                 If (_OSI ("Windows 2006"))
  5444.                 {
  5445.                     Store (0x07D6, \OSYS)
  5446.                     Store (0x07D6, OSYS)
  5447.                 }
  5448.  
  5449.                 If (_OSI ("Windows 2009"))
  5450.                 {
  5451.                     Store (0x07D9, \OSYS)
  5452.                     Store (0x07D9, OSYS)
  5453.                 }
  5454.  
  5455.                 If (_OSI ("Windows 2012"))
  5456.                 {
  5457.                     Store (0x07DC, \OSYS)
  5458.                     Store (0x07DC, OSYS)
  5459.                 }
  5460.  
  5461.                 SECS (0xA8)
  5462.                 Store (Zero, RTYP)
  5463.                 If (LEqual (\IFFS, One))
  5464.                 {
  5465.                     Store (^^IFFS.FFST, FFBT)
  5466.                 }
  5467.             }
  5468.         }
  5469.  
  5470.         Method (NHPG, 0, Serialized)
  5471.         {
  5472.             Store (Zero, ^RP01.HPEX)
  5473.             Store (Zero, ^RP02.HPEX)
  5474.             Store (Zero, ^RP03.HPEX)
  5475.             Store (Zero, ^RP04.HPEX)
  5476.             Store (One, ^RP01.HPSX)
  5477.             Store (One, ^RP02.HPSX)
  5478.             Store (One, ^RP03.HPSX)
  5479.             Store (One, ^RP04.HPSX)
  5480.         }
  5481.  
  5482.         Method (NPME, 0, Serialized)
  5483.         {
  5484.             Store (Zero, ^RP01.PMEX)
  5485.             Store (Zero, ^RP02.PMEX)
  5486.             Store (Zero, ^RP03.PMEX)
  5487.             Store (Zero, ^RP04.PMEX)
  5488.             Store (Zero, ^RP05.PMEX)
  5489.             Store (Zero, ^RP06.PMEX)
  5490.             Store (Zero, ^RP07.PMEX)
  5491.             Store (Zero, ^RP08.PMEX)
  5492.             Store (One, ^RP01.PMSX)
  5493.             Store (One, ^RP02.PMSX)
  5494.             Store (One, ^RP03.PMSX)
  5495.             Store (One, ^RP04.PMSX)
  5496.             Store (One, ^RP05.PMSX)
  5497.             Store (One, ^RP06.PMSX)
  5498.             Store (One, ^RP07.PMSX)
  5499.             Store (One, ^RP08.PMSX)
  5500.         }
  5501.     }
  5502.  
  5503.     Scope (\)
  5504.     {
  5505.         Name (PICM, Zero)
  5506.         Name (PRWP, Package (0x02)
  5507.         {
  5508.             Zero,
  5509.             Zero
  5510.         })
  5511.         Method (GPRW, 2, NotSerialized)
  5512.         {
  5513.             Store (Arg0, Index (PRWP, Zero))
  5514.             Store (ShiftLeft (SS1, One), Local0)
  5515.             Or (Local0, ShiftLeft (SS2, 0x02), Local0)
  5516.             Or (Local0, ShiftLeft (SS3, 0x03), Local0)
  5517.             Or (Local0, ShiftLeft (SS4, 0x04), Local0)
  5518.             If (And (ShiftLeft (One, Arg1), Local0))
  5519.             {
  5520.                 Store (Arg1, Index (PRWP, One))
  5521.             }
  5522.             Else
  5523.             {
  5524.                 ShiftRight (Local0, One, Local0)
  5525.                 FindSetLeftBit (Local0, Index (PRWP, One))
  5526.             }
  5527.  
  5528.             Return (PRWP)
  5529.         }
  5530.     }
  5531.  
  5532.     Scope (_TZ)
  5533.     {
  5534.         Name (ETMD, One)
  5535.         Name (THLD, 0x78)
  5536.         PowerResource (FN00, 0x00, 0x0000)
  5537.         {
  5538.             Method (_STA, 0, Serialized)  // _STA: Status
  5539.             {
  5540.                 Return (VFN0)
  5541.             }
  5542.  
  5543.             Method (_ON, 0, Serialized)  // _ON_: Power On
  5544.             {
  5545.                 Store (One, VFN0)
  5546.             }
  5547.  
  5548.             Method (_OFF, 0, Serialized)  // _OFF: Power Off
  5549.             {
  5550.                 Store (Zero, VFN0)
  5551.             }
  5552.         }
  5553.  
  5554.         Device (FAN0)
  5555.         {
  5556.             Name (_HID, EisaId ("PNP0C0B"))  //  Fan 0
  5557.             Name (_UID, Zero)  // _UID: Unique ID
  5558.             Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
  5559.             {
  5560.                 FN00
  5561.             })
  5562.         }
  5563.  
  5564.         PowerResource (FN01, 0x00, 0x0000)
  5565.         {
  5566.             Method (_STA, 0, Serialized)  // _STA: Status
  5567.             {
  5568.                 Return (VFN1)
  5569.             }
  5570.  
  5571.             Method (_ON, 0, Serialized)  // _ON_: Power On
  5572.             {
  5573.                 Store (One, VFN1)
  5574.             }
  5575.  
  5576.             Method (_OFF, 0, Serialized)  // _OFF: Power Off
  5577.             {
  5578.                 Store (Zero, VFN1)
  5579.             }
  5580.         }
  5581.  
  5582.         Device (FAN1)
  5583.         {
  5584.             Name (_HID, EisaId ("PNP0C0B"))  // Fan1
  5585.             Name (_UID, One)  // _UID: Unique ID
  5586.             Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
  5587.             {
  5588.                 FN01
  5589.             })
  5590.         }
  5591.  
  5592.         PowerResource (FN02, 0x00, 0x0000)
  5593.         {
  5594.             Method (_STA, 0, Serialized)  // _STA: Status
  5595.             {
  5596.                 Return (VFN2)
  5597.             }
  5598.  
  5599.             Method (_ON, 0, Serialized)  // _ON_: Power On
  5600.             {
  5601.                 Store (One, VFN2)
  5602.             }
  5603.  
  5604.             Method (_OFF, 0, Serialized)  // _OFF: Power Off
  5605.             {
  5606.                 Store (Zero, VFN2)
  5607.             }
  5608.         }
  5609.  
  5610.         Device (FAN2)
  5611.         {
  5612.             Name (_HID, EisaId ("PNP0C0B"))  // fan 2
  5613.             Name (_UID, 0x02)  // _UID: Unique ID
  5614.             Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
  5615.             {
  5616.                 FN02
  5617.             })
  5618.         }
  5619.  
  5620.         PowerResource (FN03, 0x00, 0x0000)
  5621.         {
  5622.             Method (_STA, 0, Serialized)  // _STA: Status
  5623.             {
  5624.                 Return (VFN3)
  5625.             }
  5626.  
  5627.             Method (_ON, 0, Serialized)  // _ON_: Power On
  5628.             {
  5629.                 Store (One, VFN3)
  5630.             }
  5631.  
  5632.             Method (_OFF, 0, Serialized)  // _OFF: Power Off
  5633.             {
  5634.                 Store (Zero, VFN3)
  5635.             }
  5636.         }
  5637.  
  5638.         Device (FAN3)
  5639.         {
  5640.             Name (_HID, EisaId ("PNP0C0B"))  // _HID: Hardware ID
  5641.             Name (_UID, 0x03)  // _UID: Unique ID
  5642.             Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
  5643.             {
  5644.                 FN03
  5645.             })
  5646.         }
  5647.  
  5648.         PowerResource (FN04, 0x00, 0x0000)
  5649.         {
  5650.             Method (_STA, 0, Serialized)  // _STA: Status
  5651.             {
  5652.                 Return (VFN4)
  5653.             }
  5654.  
  5655.             Method (_ON, 0, Serialized)  // _ON_: Power On
  5656.             {
  5657.                 Store (One, VFN4)
  5658.             }
  5659.  
  5660.             Method (_OFF, 0, Serialized)  // _OFF: Power Off
  5661.             {
  5662.                 Store (Zero, VFN4)
  5663.             }
  5664.         }
  5665.  
  5666.         Device (FAN4)
  5667.         {
  5668.             Name (_HID, EisaId ("PNP0C0B"))  // _HID: Hardware ID
  5669.             Name (_UID, 0x04)  // _UID: Unique ID
  5670.             Name (_PR0, Package (0x01)  // _PR0: Power Resources for D0
  5671.             {
  5672.                 FN04
  5673.             })
  5674.         }
  5675.  
  5676.         ThermalZone (TZ00)
  5677.         {
  5678.             Name (PTMP, 0x0BB8)
  5679.             Method (_SCP, 1, Serialized)  // _SCP: Set Cooling Policy
  5680.             {
  5681.                 Store (Arg0, CTYP)
  5682.             }
  5683.  
  5684.             Method (_CRT, 0, Serialized)  // _CRT: Critical Temperature
  5685.             {
  5686.                 If (CondRefOf (\_PR.ACRT))
  5687.                 {
  5688.                     If (LNotEqual (\_PR.ACRT, Zero))
  5689.                     {
  5690.                         Return (Add (0x0AAC, Multiply (\_PR.ACRT, 0x0A)))
  5691.                     }
  5692.                 }
  5693.  
  5694.                 Return (Add (0x0AAC, Multiply (CRTT, 0x0A)))
  5695.             }
  5696.  
  5697.             Method (_AC0, 0, Serialized)  // _ACx: Active Cooling
  5698.             {
  5699.                 If (CondRefOf (\_PR.AAC0))
  5700.                 {
  5701.                     If (LNotEqual (\_PR.AAC0, Zero))
  5702.                     {
  5703.                         Return (Add (0x0AAC, Multiply (\_PR.AAC0, 0x0A)))
  5704.                     }
  5705.                 }
  5706.  
  5707.                 Return (Add (0x0AAC, Multiply (ACTT, 0x0A)))
  5708.             }
  5709.  
  5710.             Method (_AC1, 0, Serialized)  // _ACx: Active Cooling
  5711.             {
  5712.                 Return (Add (0x0AAC, Multiply (ACT1, 0x0A)))
  5713.             }
  5714.  
  5715.             Method (_AC2, 0, Serialized)  // _ACx: Active Cooling
  5716.             {
  5717.                 Return (0x0AAC)
  5718.             }
  5719.  
  5720.             Method (_AC3, 0, Serialized)  // _ACx: Active Cooling
  5721.             {
  5722.                 Return (0x0AAC)
  5723.             }
  5724.  
  5725.             Method (_AC4, 0, Serialized)  // _ACx: Active Cooling
  5726.             {
  5727.                 Return (0x0AAC)
  5728.             }
  5729.  
  5730.             Name (_AL0, Package (0x01)  // _ALx: Active List
  5731.             {
  5732.                 FAN0
  5733.             })
  5734.             Name (_AL1, Package (0x01)  // _ALx: Active List
  5735.             {
  5736.                 FAN1
  5737.             })
  5738.             Name (_AL2, Package (0x01)  // _ALx: Active List
  5739.             {
  5740.                 FAN2
  5741.             })
  5742.             Name (_AL3, Package (0x01)  // _ALx: Active List
  5743.             {
  5744.                 FAN3
  5745.             })
  5746.             Name (_AL4, Package (0x01)  // _ALx: Active List
  5747.             {
  5748.                 FAN4
  5749.             })
  5750.             Method (_TMP, 0, Serialized)  // _TMP: Temperature
  5751.             {
  5752.                 If (LNot (ETMD))
  5753.                 {
  5754.                     Return (0x0BB8)
  5755.                 }
  5756.  
  5757.                 If (LEqual (DTSE, 0x03))
  5758.                 {
  5759.                     Return (Add (0x0B10, Multiply (CRTT, 0x0A)))
  5760.                 }
  5761.  
  5762.                 If (LEqual (DTSE, One))
  5763.                 {
  5764.                     If (LEqual (PKGA, One))
  5765.                     {
  5766.                         Store (PDTS, Local0)
  5767.                         Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  5768.                     }
  5769.  
  5770.                     Store (DTS1, Local0)
  5771.                     If (LGreater (DTS2, Local0))
  5772.                     {
  5773.                         Store (DTS2, Local0)
  5774.                     }
  5775.  
  5776.                     If (LGreater (DTS3, Local0))
  5777.                     {
  5778.                         Store (DTS3, Local0)
  5779.                     }
  5780.  
  5781.                     If (LGreater (DTS4, Local0))
  5782.                     {
  5783.                         Store (DTS4, Local0)
  5784.                     }
  5785.  
  5786.                     Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  5787.                 }
  5788.  
  5789.                 If (ECON)
  5790.                 {
  5791.                     Store (\_SB.PCI0.LPCB.H_EC.CTMP, Local0)
  5792.                     If (LNotEqual (Local0, 0xFF))
  5793.                     {
  5794.                         Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  5795.                     }
  5796.                     Else
  5797.                     {
  5798.                         Return (0x0C1C)
  5799.                     }
  5800.                 }
  5801.  
  5802.                 Return (0x0BC2)
  5803.             }
  5804.         }
  5805.  
  5806.         ThermalZone (TZ01)
  5807.         {
  5808.             Name (PTMP, 0x0BB8)
  5809.             Method (_SCP, 1, Serialized)  // _SCP: Set Cooling Policy
  5810.             {
  5811.                 Store (Arg0, CTYP)
  5812.             }
  5813.  
  5814.             Method (_CRT, 0, Serialized)  // _CRT: Critical Temperature
  5815.             {
  5816.                 If (CondRefOf (\_PR.ACRT))
  5817.                 {
  5818.                     If (LNotEqual (\_PR.ACRT, Zero))
  5819.                     {
  5820.                         Return (Add (0x0AAC, Multiply (\_PR.ACRT, 0x0A)))
  5821.                     }
  5822.                 }
  5823.  
  5824.                 Return (Add (0x0AAC, Multiply (CRTT, 0x0A)))
  5825.             }
  5826.  
  5827.             Method (_TMP, 0, Serialized)  // _TMP: Temperature
  5828.             {
  5829.                 If (LNot (ETMD))
  5830.                 {
  5831.                     Return (0x0BCC)
  5832.                 }
  5833.  
  5834.                 If (LEqual (DTSE, 0x03))
  5835.                 {
  5836.                     Return (Add (0x0B10, Multiply (CRTT, 0x0A)))
  5837.                 }
  5838.  
  5839.                 If (LEqual (DTSE, One))
  5840.                 {
  5841.                     If (LEqual (PKGA, One))
  5842.                     {
  5843.                         Store (PDTS, Local0)
  5844.                         Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  5845.                     }
  5846.  
  5847.                     Store (DTS1, Local0)
  5848.                     If (LGreater (DTS2, Local0))
  5849.                     {
  5850.                         Store (DTS2, Local0)
  5851.                     }
  5852.  
  5853.                     If (LGreater (DTS3, Local0))
  5854.                     {
  5855.                         Store (DTS3, Local0)
  5856.                     }
  5857.  
  5858.                     If (LGreater (DTS4, Local0))
  5859.                     {
  5860.                         Store (DTS4, Local0)
  5861.                     }
  5862.  
  5863.                     Return (Add (0x0AAC, Multiply (Local0, 0x0A)))
  5864.                 }
  5865.  
  5866.                 If (ECON) {}
  5867.                 Return (0x0BD6)
  5868.             }
  5869.  
  5870.             Method (_PSL, 0, Serialized)  // _PSL: Passive List
  5871.             {
  5872.                 If (LEqual (TCNT, 0x08))
  5873.                 {
  5874.                     Return (Package (0x08)
  5875.                     {
  5876.                         \_PR.CPU0,
  5877.                         \_PR.CPU1,
  5878.                         \_PR.CPU2,
  5879.                         \_PR.CPU3,
  5880.                         \_PR.CPU4,
  5881.                         \_PR.CPU5,
  5882.                         \_PR.CPU6,
  5883.                         \_PR.CPU7
  5884.                     })
  5885.                 }
  5886.  
  5887.                 If (LEqual (TCNT, 0x04))
  5888.                 {
  5889.                     Return (Package (0x04)
  5890.                     {
  5891.                         \_PR.CPU0,
  5892.                         \_PR.CPU1,
  5893.                         \_PR.CPU2,
  5894.                         \_PR.CPU3
  5895.                     })
  5896.                 }
  5897.  
  5898.                 If (LEqual (TCNT, 0x02))
  5899.                 {
  5900.                     Return (Package (0x02)
  5901.                     {
  5902.                         \_PR.CPU0,
  5903.                         \_PR.CPU1
  5904.                     })
  5905.                 }
  5906.  
  5907.                 Return (Package (0x01)
  5908.                 {
  5909.                     \_PR.CPU0
  5910.                 })
  5911.             }
  5912.  
  5913.             Method (_PSV, 0, Serialized)  // _PSV: Passive Temperature
  5914.             {
  5915.                 If (CondRefOf (\_PR.APSV))
  5916.                 {
  5917.                     If (LNotEqual (\_PR.APSV, Zero))
  5918.                     {
  5919.                         Return (Add (0x0AAC, Multiply (\_PR.APSV, 0x0A)))
  5920.                     }
  5921.                 }
  5922.  
  5923.                 Return (Add (0x0AAC, Multiply (PSVT, 0x0A)))
  5924.             }
  5925.  
  5926.             Method (_TC1, 0, Serialized)  // _TC1: Thermal Constant 1
  5927.             {
  5928.                 Return (TC1V)
  5929.             }
  5930.  
  5931.             Method (_TC2, 0, Serialized)  // _TC2: Thermal Constant 2
  5932.             {
  5933.                 Return (TC2V)
  5934.             }
  5935.  
  5936.             Method (_TSP, 0, Serialized)  // _TSP: Thermal Sampling Period
  5937.             {
  5938.                 Return (TSPV)
  5939.             }
  5940.         }
  5941.     }
  5942.  
  5943.     Scope (_SB.PCI0)
  5944.     {
  5945.         Device (PDRC)
  5946.         {
  5947.             Name (_HID, EisaId ("PNP0C02"))  //  
  5948.             Name (_UID, One)  // _UID: Unique ID
  5949.             Name (BUF0, ResourceTemplate ()
  5950.             {
  5951.                 Memory32Fixed (ReadWrite,
  5952.                     0x00000000,         // Address Base
  5953.                     0x00004000,         // Address Length
  5954.                     _Y11)
  5955.                 Memory32Fixed (ReadWrite,
  5956.                     0x00000000,         // Address Base
  5957.                     0x00008000,         // Address Length
  5958.                     _Y13)
  5959.                 Memory32Fixed (ReadWrite,
  5960.                     0x00000000,         // Address Base
  5961.                     0x00001000,         // Address Length
  5962.                     _Y14)
  5963.                 Memory32Fixed (ReadWrite,
  5964.                     0x00000000,         // Address Base
  5965.                     0x00001000,         // Address Length
  5966.                     _Y15)
  5967.                 Memory32Fixed (ReadWrite,
  5968.                     0x00000000,         // Address Base
  5969.                     0x00000000,         // Address Length
  5970.                     _Y16)
  5971.                 Memory32Fixed (ReadWrite,
  5972.                     0xFED20000,         // Address Base
  5973.                     0x00020000,         // Address Length
  5974.                     )
  5975.                 Memory32Fixed (ReadOnly,
  5976.                     0xFED90000,         // Address Base
  5977.                     0x00004000,         // Address Length
  5978.                     )
  5979.                 Memory32Fixed (ReadWrite,
  5980.                     0xFED45000,         // Address Base
  5981.                     0x0004B000,         // Address Length
  5982.                     )
  5983.                 Memory32Fixed (ReadOnly,
  5984.                     0xFF000000,         // Address Base
  5985.                     0x01000000,         // Address Length
  5986.                     )
  5987.                 Memory32Fixed (ReadOnly,
  5988.                     0xFEE00000,         // Address Base
  5989.                     0x00100000,         // Address Length
  5990.                     )
  5991.                 Memory32Fixed (ReadWrite,
  5992.                     0x00000000,         // Address Base
  5993.                     0x00001000,         // Address Length
  5994.                     _Y12)
  5995.             })
  5996.             Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
  5997.             {
  5998.                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y11._BAS, RBR0)  // _BAS: Base Address
  5999.                 ShiftLeft (^^LPCB.RCBA, 0x0E, RBR0)
  6000.                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y12._BAS, TBR0)  // _BAS: Base Address
  6001.                 Store (TBAB, TBR0)
  6002.                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y12._LEN, TBLN)  // _LEN: Length
  6003.                 If (LEqual (TBAB, Zero))
  6004.                 {
  6005.                     Store (Zero, TBLN)
  6006.                 }
  6007.  
  6008.                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y13._BAS, MBR0)  // _BAS: Base Address
  6009.                 ShiftLeft (MHBR, 0x0F, MBR0)
  6010.                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y14._BAS, DBR0)  // _BAS: Base Address
  6011.                 ShiftLeft (DIBR, 0x0C, DBR0)
  6012.                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y15._BAS, EBR0)  // _BAS: Base Address
  6013.                 ShiftLeft (EPBR, 0x0C, EBR0)
  6014.                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y16._BAS, XBR0)  // _BAS: Base Address
  6015.                 ShiftLeft (PXBR, 0x1A, XBR0)
  6016.                 CreateDWordField (BUF0, \_SB.PCI0.PDRC._Y16._LEN, XSZ0)  // _LEN: Length
  6017.                 ShiftRight (0x10000000, PXSZ, XSZ0)
  6018.                 Return (BUF0)
  6019.             }
  6020.         }
  6021.     }
  6022.  
  6023.     Method (BRTN, 1, Serialized) //Don't know what this does but it only affects graphical interface.
  6024.     {
  6025.         If (LEqual (And (DID1, 0x0F00), 0x0400))
  6026.         {
  6027.             Notify (\_SB.PCI0.GFX0.DD01, Arg0)
  6028.         }
  6029.  
  6030.         If (LEqual (And (DID2, 0x0F00), 0x0400))
  6031.         {
  6032.             Notify (\_SB.PCI0.GFX0.DD02, Arg0)
  6033.         }
  6034.  
  6035.         If (LEqual (And (DID3, 0x0F00), 0x0400))
  6036.         {
  6037.             Notify (\_SB.PCI0.GFX0.DD03, Arg0)
  6038.         }
  6039.  
  6040.         If (LEqual (And (DID4, 0x0F00), 0x0400))
  6041.         {
  6042.             Notify (\_SB.PCI0.GFX0.DD04, Arg0)
  6043.         }
  6044.  
  6045.         If (LEqual (And (DID5, 0x0F00), 0x0400))
  6046.         {
  6047.             Notify (\_SB.PCI0.GFX0.DD05, Arg0)
  6048.         }
  6049.  
  6050.         If (LEqual (And (DID6, 0x0F00), 0x0400))
  6051.         {
  6052.             Notify (\_SB.PCI0.GFX0.DD06, Arg0)
  6053.         }
  6054.  
  6055.         If (LEqual (And (DID7, 0x0F00), 0x0400))
  6056.         {
  6057.             Notify (\_SB.PCI0.GFX0.DD07, Arg0)
  6058.         }
  6059.  
  6060.         If (LEqual (And (DID8, 0x0F00), 0x0400))
  6061.         {
  6062.             Notify (\_SB.PCI0.GFX0.DD08, Arg0)
  6063.         }
  6064.     }
  6065.  
  6066.     Scope (_GPE)
  6067.     {
  6068.         Method (_L0B, 0, NotSerialized)  // _Lxx: Level-Triggered GPE
  6069.         {
  6070.             Notify (\_SB.PCI0.P0P1, 0x02)
  6071.         }
  6072.  
  6073.         Method (_L09, 0, NotSerialized)  // Is this to turn the wifi led On???
  6074.         {
  6075.             If (LEqual (RP1D, Zero))
  6076.             {
  6077.                 \_SB.PCI0.RP01.HPME ()
  6078.                 Notify (\_SB.PCI0.RP01, 0x02)
  6079.             }
  6080.  
  6081.             If (LEqual (RP2D, Zero))
  6082.             {
  6083.                 \_SB.PCI0.RP02.HPME ()
  6084.                 Notify (\_SB.PCI0.RP02, 0x02)
  6085.             }
  6086.  
  6087.             If (LEqual (RP3D, Zero))
  6088.             {
  6089.                 \_SB.PCI0.RP03.HPME ()
  6090.                 Notify (\_SB.PCI0.RP03, 0x02)
  6091.             }
  6092.  
  6093.             If (LEqual (RP4D, Zero))
  6094.             {
  6095.                 \_SB.PCI0.RP04.HPME ()
  6096.                 Notify (\_SB.PCI0.RP04, 0x02)
  6097.             }
  6098.  
  6099.             If (LEqual (RP5D, Zero))
  6100.             {
  6101.                 \_SB.PCI0.RP05.HPME ()
  6102.                 Notify (\_SB.PCI0.RP05, 0x02)
  6103.             }
  6104.  
  6105.             If (LEqual (RP6D, Zero))
  6106.             {
  6107.                 \_SB.PCI0.RP06.HPME ()
  6108.                 Notify (\_SB.PCI0.RP06, 0x02)
  6109.             }
  6110.  
  6111.             If (LEqual (RP7D, Zero))
  6112.             {
  6113.                 \_SB.PCI0.RP07.HPME ()
  6114.                 Notify (\_SB.PCI0.RP07, 0x02)
  6115.             }
  6116.  
  6117.             If (LEqual (RP8D, Zero))
  6118.             {
  6119.                 \_SB.PCI0.RP08.HPME ()
  6120.                 Notify (\_SB.PCI0.RP08, 0x02)
  6121.             }
  6122.  
  6123.             Notify (\_SB.PCI0.PEG0, 0x02)
  6124.             Notify (\_SB.PCI0.PEG0.PEGP, 0x02)
  6125.             Notify (\_SB.PCI0.PEG1, 0x02)
  6126.             Notify (\_SB.PCI0.PEG2, 0x02)
  6127.             Notify (\_SB.PCI0.PEG3, 0x02)
  6128.         }
  6129.  
  6130.         Method (_L0D, 0, NotSerialized)  // _Lxx: Level-Triggered GPE
  6131.         {
  6132.             Notify (\_SB.PCI0.EHC1, 0x02)
  6133.             Notify (\_SB.PCI0.EHC2, 0x02)
  6134.             Notify (\_SB.PCI0.HDEF, 0x02)
  6135.             Notify (\_SB.PCI0.GLAN, 0x02)
  6136.             Notify (\_SB.PWRB, 0x02)
  6137.             Notify (\_SB.PCI0.XHC, 0x02)
  6138.             If (LAnd (\_SB.PCI0.XHC.PMES, \_SB.PCI0.XHC.PMES))
  6139.             {
  6140.                 Store (One, \_SB.PCI0.XHC.PMES)
  6141.             }
  6142.         }
  6143.  
  6144.         Method (_L01, 0, NotSerialized)  // _Lxx: Level-Triggered GPE
  6145.         {
  6146.             Add (L01C, One, L01C)
  6147.             P8XH (Zero, One)
  6148.             P8XH (One, L01C)
  6149.             If (LAnd (LEqual (RP1D, Zero), \_SB.PCI0.RP01.HPSX))
  6150.             {
  6151.                 Sleep (0x64)
  6152.                 If (\_SB.PCI0.RP01.PDCX)
  6153.                 {
  6154.                     Store (One, \_SB.PCI0.RP01.PDCX)
  6155.                     Store (One, \_SB.PCI0.RP01.HPSX)
  6156.                     If (LNot (\_SB.PCI0.RP01.PDSX))
  6157.                     {
  6158.                         Store (Zero, \_SB.PCI0.RP01.L0SE)
  6159.                     }
  6160.  
  6161.                     Notify (\_SB.PCI0.RP01, Zero)
  6162.                 }
  6163.                 Else
  6164.                 {
  6165.                     Store (One, \_SB.PCI0.RP01.HPSX)
  6166.                 }
  6167.             }
  6168.  
  6169.             If (LAnd (LEqual (RP2D, Zero), \_SB.PCI0.RP02.HPSX))
  6170.             {
  6171.                 Sleep (0x64)
  6172.                 If (\_SB.PCI0.RP02.PDCX)
  6173.                 {
  6174.                     Store (One, \_SB.PCI0.RP02.PDCX)
  6175.                     Store (One, \_SB.PCI0.RP02.HPSX)
  6176.                     If (LNot (\_SB.PCI0.RP02.PDSX))
  6177.                     {
  6178.                         Store (Zero, \_SB.PCI0.RP02.L0SE)
  6179.                     }
  6180.  
  6181.                     Notify (\_SB.PCI0.RP02, Zero)
  6182.                 }
  6183.                 Else
  6184.                 {
  6185.                     Store (One, \_SB.PCI0.RP02.HPSX)
  6186.                 }
  6187.             }
  6188.  
  6189.             If (LAnd (LEqual (RP3D, Zero), \_SB.PCI0.RP03.HPSX))
  6190.             {
  6191.                 Sleep (0x64)
  6192.                 If (\_SB.PCI0.RP03.PDCX)
  6193.                 {
  6194.                     Store (One, \_SB.PCI0.RP03.PDCX)
  6195.                     Store (One, \_SB.PCI0.RP03.HPSX)
  6196.                     If (LNot (\_SB.PCI0.RP03.PDSX))
  6197.                     {
  6198.                         Store (Zero, \_SB.PCI0.RP03.L0SE)
  6199.                     }
  6200.  
  6201.                     Notify (\_SB.PCI0.RP03, Zero)
  6202.                 }
  6203.                 Else
  6204.                 {
  6205.                     Store (One, \_SB.PCI0.RP03.HPSX)
  6206.                 }
  6207.             }
  6208.  
  6209.             If (LAnd (LEqual (RP4D, Zero), \_SB.PCI0.RP04.HPSX))
  6210.             {
  6211.                 Sleep (0x64)
  6212.                 If (\_SB.PCI0.RP04.PDCX)
  6213.                 {
  6214.                     Store (One, \_SB.PCI0.RP04.PDCX)
  6215.                     Store (One, \_SB.PCI0.RP04.HPSX)
  6216.                     If (LNot (\_SB.PCI0.RP04.PDSX))
  6217.                     {
  6218.                         Store (Zero, \_SB.PCI0.RP04.L0SE)
  6219.                     }
  6220.  
  6221.                     Notify (\_SB.PCI0.RP04, Zero)
  6222.                 }
  6223.                 Else
  6224.                 {
  6225.                     Store (One, \_SB.PCI0.RP04.HPSX)
  6226.                 }
  6227.             }
  6228.  
  6229.             If (LAnd (LEqual (RP5D, Zero), \_SB.PCI0.RP05.HPSX))
  6230.             {
  6231.                 Sleep (0x64)
  6232.                 If (\_SB.PCI0.RP05.PDCX)
  6233.                 {
  6234.                     Store (One, \_SB.PCI0.RP05.PDCX)
  6235.                     Store (One, \_SB.PCI0.RP05.HPSX)
  6236.                     If (LNot (\_SB.PCI0.RP05.PDSX))
  6237.                     {
  6238.                         Store (Zero, \_SB.PCI0.RP05.L0SE)
  6239.                     }
  6240.  
  6241.                     Notify (\_SB.PCI0.RP05, Zero)
  6242.                 }
  6243.                 Else
  6244.                 {
  6245.                     Store (One, \_SB.PCI0.RP05.HPSX)
  6246.                 }
  6247.             }
  6248.  
  6249.             If (LAnd (LEqual (RP6D, Zero), \_SB.PCI0.RP06.HPSX))
  6250.             {
  6251.                 Sleep (0x64)
  6252.                 If (\_SB.PCI0.RP06.PDCX)
  6253.                 {
  6254.                     Store (One, \_SB.PCI0.RP06.PDCX)
  6255.                     Store (One, \_SB.PCI0.RP06.HPSX)
  6256.                     If (LNot (\_SB.PCI0.RP06.PDSX))
  6257.                     {
  6258.                         Store (Zero, \_SB.PCI0.RP06.L0SE)
  6259.                     }
  6260.  
  6261.                     Notify (\_SB.PCI0.RP06, Zero)
  6262.                 }
  6263.                 Else
  6264.                 {
  6265.                     Store (One, \_SB.PCI0.RP06.HPSX)
  6266.                 }
  6267.             }
  6268.  
  6269.             If (LAnd (LEqual (RP7D, Zero), \_SB.PCI0.RP07.HPSX))
  6270.             {
  6271.                 Sleep (0x64)
  6272.                 If (\_SB.PCI0.RP07.PDCX)
  6273.                 {
  6274.                     Store (One, \_SB.PCI0.RP07.PDCX)
  6275.                     Store (One, \_SB.PCI0.RP07.HPSX)
  6276.                     If (LNot (\_SB.PCI0.RP07.PDSX))
  6277.                     {
  6278.                         Store (Zero, \_SB.PCI0.RP07.L0SE)
  6279.                     }
  6280.                 }
  6281.                 Else
  6282.                 {
  6283.                     Store (One, \_SB.PCI0.RP07.HPSX)
  6284.                 }
  6285.             }
  6286.  
  6287.             If (LAnd (LEqual (RP8D, Zero), \_SB.PCI0.RP08.HPSX))
  6288.             {
  6289.                 Sleep (0x64)
  6290.                 If (\_SB.PCI0.RP08.PDCX)
  6291.                 {
  6292.                     Store (One, \_SB.PCI0.RP08.PDCX)
  6293.                     Store (One, \_SB.PCI0.RP08.HPSX)
  6294.                     If (LNot (\_SB.PCI0.RP08.PDSX))
  6295.                     {
  6296.                         Store (Zero, \_SB.PCI0.RP08.L0SE)
  6297.                     }
  6298.                 }
  6299.                 Else
  6300.                 {
  6301.                     Store (One, \_SB.PCI0.RP08.HPSX)
  6302.                 }
  6303.             }
  6304.         }
  6305.  
  6306.         Method (_L02, 0, NotSerialized)  // _Lxx: Level-Triggered GPE
  6307.         {
  6308.             Store (Zero, GPEC)
  6309.             If (CondRefOf (\_SB.PCI0.IEIT.EITV))
  6310.             {
  6311.                 \_SB.PCI0.IEIT.EITV ()
  6312.             }
  6313.  
  6314.             Notify (\_TZ.TZ00, 0x80)
  6315.             Notify (\_TZ.TZ01, 0x80)
  6316.             If (CondRefOf (TNOT))
  6317.             {
  6318.                 TNOT ()
  6319.             }
  6320.         }
  6321.  
  6322.         Method (_L06, 0, NotSerialized)  // _Lxx: Level-Triggered GPE
  6323.         {
  6324.             If (LAnd (\_SB.PCI0.GFX0.GSSE, LNot (GSMI)))
  6325.             {
  6326.                 \_SB.PCI0.GFX0.GSCI ()
  6327.             }
  6328.         }
  6329.  
  6330.         Method (_L07, 0, NotSerialized)  // _Lxx: Level-Triggered GPE
  6331.         {
  6332.             Store (0x20, \_SB.PCI0.SBUS.HSTS)
  6333.         }
  6334.  
  6335.         Method (_L1E, 0, NotSerialized)  // _Lxx: Level-Triggered GPE
  6336.         {
  6337.             Notify (\_SB.PWRB, 0x02)
  6338.             Return (Zero)
  6339.         }
  6340.     }
  6341.  
  6342.     Scope (\)
  6343.     {
  6344.         OperationRegion (IO_T, SystemIO, 0x1000, 0x10)
  6345.         Field (IO_T, ByteAcc, NoLock, Preserve)
  6346.         {
  6347.             TRPI,   16,
  6348.             Offset (0x04),
  6349.             Offset (0x06),
  6350.             Offset (0x08),
  6351.             TRP0,   8,
  6352.             Offset (0x0A),
  6353.             Offset (0x0B),
  6354.             Offset (0x0C),
  6355.             Offset (0x0D),
  6356.             Offset (0x0E),
  6357.             Offset (0x0F),
  6358.             Offset (0x10)
  6359.         }
  6360.  
  6361.         OperationRegion (IO_D, SystemIO, 0x0810, 0x04)
  6362.         Field (IO_D, ByteAcc, NoLock, Preserve)
  6363.         {
  6364.             TRPD,   8
  6365.         }
  6366.  
  6367.         OperationRegion (IO_H, SystemIO, 0x1000, 0x04)
  6368.         Field (IO_H, ByteAcc, NoLock, Preserve)
  6369.         {
  6370.             TRPH,   8
  6371.         }
  6372.  
  6373.         OperationRegion (PMIO, SystemIO, PMBS, 0x80) // This is in conflict from Offset 0x28 until 0x2f (so it includes GPE3)
  6374.         Field (PMIO, ByteAcc, NoLock, Preserve)
  6375.         {
  6376.             Offset (0x04),
  6377.                 ,   10,
  6378.             STYP,   3,
  6379.             Offset (0x28),
  6380.             Offset (0x2A),
  6381.                 ,   3,
  6382.             GPE3,   1,
  6383.             Offset (0x3C),
  6384.                 ,   1,
  6385.             UPRW,   1,
  6386.             Offset (0x42),
  6387.                 ,   1,
  6388.             GPEC,   1
  6389.         }
  6390.  
  6391.         Field (PMIO, ByteAcc, NoLock, WriteAsZeros)
  6392.         {
  6393.             Offset (0x20),
  6394.             Offset (0x22),
  6395.                 ,   3,
  6396.             GPS3,   1,
  6397.             Offset (0x64),
  6398.                 ,   9,
  6399.             SCIS,   1,
  6400.             Offset (0x66)
  6401.         }
  6402.  
  6403.         OperationRegion (GPIO, SystemIO, GPBS, 0x64)  // This is in Conflict! The regions in conflict are 0x30--0x3f and 0x00- 0x2f
  6404.         Field (GPIO, ByteAcc, NoLock, Preserve)
  6405.         {
  6406.             GU00,   8,
  6407.             GU01,   8,
  6408.             GU02,   8,
  6409.             GU03,   8,
  6410.             GIO0,   8,
  6411.             GIO1,   8,  // GU00 until GI03 are in conflict
  6412.             GIO2,   8,
  6413.             GIO3,   8,
  6414.             Offset (0x0C),
  6415.             GL00,   8,
  6416.             GL01,   8,
  6417.             GL02,   8,
  6418.             GP24,   1,
  6419.                 ,   2,
  6420.             GP27,   1,
  6421.             GP28,   1,
  6422.             Offset (0x10),
  6423.             Offset (0x18),
  6424.             GB00,   8,
  6425.             GB01,   8,
  6426.             GB02,   8,
  6427.             GB03,   8,
  6428.             Offset (0x2C),
  6429.             GIV0,   8,
  6430.             GIV1,   8,
  6431.             GIV2,   8,
  6432.             GIV3,   8,
  6433.             GU04,   8,
  6434.             GU05,   8,
  6435.             GU06,   8,
  6436.             GU07,   8,
  6437.             GIO4,   8,
  6438.             GIO5,   8,
  6439.             GIO6,   8,
  6440.             GIO7,   8,
  6441.             GL04,   8,
  6442.             GL05,   8,
  6443.             GL06,   8,
  6444.             GL07,   8,
  6445.             Offset (0x40),
  6446.             GU08,   8,
  6447.             GU09,   8,
  6448.             GU0A,   8,
  6449.             GU0B,   8,
  6450.             GIO8,   8,
  6451.             GIO9,   8,
  6452.             GIOA,   8,
  6453.             GIOB,   8,
  6454.             GL08,   8,
  6455.             GL09,   8,
  6456.             GL0A,   8,
  6457.             GL0B,   8
  6458.         }
  6459.  
  6460.         OperationRegion (RCRB, SystemMemory, SRCB, 0x4000)
  6461.         Field (RCRB, DWordAcc, Lock, Preserve)
  6462.         {
  6463.             Offset (0x1000),
  6464.             Offset (0x3000),
  6465.             Offset (0x3404),
  6466.             HPAS,   2,
  6467.                 ,   5,
  6468.             HPAE,   1,
  6469.             Offset (0x3418),
  6470.                 ,   1,
  6471.                 ,   1,
  6472.             SATD,   1,
  6473.             SMBD,   1,
  6474.             HDAD,   1,
  6475.             Offset (0x341A),
  6476.             RP1D,   1,
  6477.             RP2D,   1,
  6478.             RP3D,   1,
  6479.             RP4D,   1,
  6480.             RP5D,   1,
  6481.             RP6D,   1,
  6482.             RP7D,   1,
  6483.             RP8D,   1,
  6484.             Offset (0x359C),
  6485.             UP0D,   1,
  6486.             UP1D,   1,
  6487.             UP2D,   1,
  6488.             UP3D,   1,
  6489.             UP4D,   1,
  6490.             UP5D,   1,
  6491.             UP6D,   1,
  6492.             UP7D,   1,
  6493.             UP8D,   1,
  6494.             UP9D,   1,
  6495.             UPAD,   1,
  6496.             UPBD,   1,
  6497.             UPCD,   1,
  6498.             UPDD,   1,
  6499.                 ,   1,
  6500.             Offset (0x359E)
  6501.         }
  6502.  
  6503.         Name (GBF0, Zero)
  6504.         Name (GBF1, Zero)
  6505.         Name (GBF2, Zero)
  6506.     }
  6507.  
  6508.     Scope (_SB.PCI0)
  6509.     {
  6510.         Device (GLAN)
  6511.         {
  6512.             Name (_ADR, 0x00190000)  // _ADR: Address
  6513.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  6514.             {
  6515.                 Return (GPRW (0x0D, 0x04))
  6516.             }
  6517.         }
  6518.  
  6519.         Device (EHC1)
  6520.         {
  6521.             Name (_ADR, 0x001D0000)  // _ADR: Address
  6522.             OperationRegion (PWKE, PCI_Config, 0x62, 0x04)
  6523.             Field (PWKE, DWordAcc, NoLock, Preserve)
  6524.             {
  6525.                     ,   1,
  6526.                 PWUC,   8
  6527.             }
  6528.  
  6529.             Method (_PSW, 1, NotSerialized)  // _PSW: Power State Wake
  6530.             {
  6531.                 If (Arg0)
  6532.                 {
  6533.                     Store (Ones, PWUC)
  6534.                 }
  6535.                 Else
  6536.                 {
  6537.                     Store (Zero, PWUC)
  6538.                 }
  6539.             }
  6540.  
  6541.             Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
  6542.             {
  6543.                 Return (0x02)
  6544.             }
  6545.  
  6546.             Method (_S4D, 0, NotSerialized)  // _S4D: S4 Device State
  6547.             {
  6548.                 Return (0x02)
  6549.             }
  6550.  
  6551.             Device (HUBN)
  6552.             {
  6553.                 Name (_ADR, Zero)  // _ADR: Address
  6554.                 Device (PR01)
  6555.                 {
  6556.                     Name (_ADR, One)  // _ADR: Address
  6557.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6558.                     {
  6559.                         Name (UPCA, Package (0x04)
  6560.                         {
  6561.                             Zero,
  6562.                             0xFF,
  6563.                             Zero,
  6564.                             Zero
  6565.                         })
  6566.                         Return (UPCA)
  6567.                     }
  6568.  
  6569.                     Device (PR11)
  6570.                     {
  6571.                         Name (_ADR, One)  // _ADR: Address
  6572.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6573.                         {
  6574.                             Name (UPCP, Package (0x04)
  6575.                             {
  6576.                                 0xFF,
  6577.                                 0xFF,
  6578.                                 Zero,
  6579.                                 Zero
  6580.                             })
  6581.                             Return (UPCP)
  6582.                         }
  6583.                     }
  6584.  
  6585.                     Device (PR12)
  6586.                     {
  6587.                         Name (_ADR, 0x02)  // _ADR: Address
  6588.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6589.                         {
  6590.                             Name (UPCP, Package (0x04)
  6591.                             {
  6592.                                 0xFF,
  6593.                                 0xFF,
  6594.                                 Zero,
  6595.                                 Zero
  6596.                             })
  6597.                             Return (UPCP)
  6598.                         }
  6599.                     }
  6600.  
  6601.                     Device (PR13)
  6602.                     {
  6603.                         Name (_ADR, 0x03)  // _ADR: Address
  6604.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6605.                         {
  6606.                             Name (UPCP, Package (0x04)
  6607.                             {
  6608.                                 0xFF,
  6609.                                 0xFF,
  6610.                                 Zero,
  6611.                                 Zero
  6612.                             })
  6613.                             Return (UPCP)
  6614.                         }
  6615.                     }
  6616.  
  6617.                     Device (PR14)
  6618.                     {
  6619.                         Name (_ADR, 0x04)  // _ADR: Address
  6620.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6621.                         {
  6622.                             Name (UPCP, Package (0x04)
  6623.                             {
  6624.                                 0xFF,
  6625.                                 0xFF,
  6626.                                 Zero,
  6627.                                 Zero
  6628.                             })
  6629.                             Return (UPCP)
  6630.                         }
  6631.  
  6632.                         Alias (SBV1, SDGV)
  6633.                         Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
  6634.                         {
  6635.                             Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler
  6636.                             If (LEqual (Arg0, Buffer (0x10)
  6637.                                     {
  6638.                                         /* 0000 */   0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  6639.                                         /* 0008 */   0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  6640.                                     }))
  6641.                             {
  6642.                                 Store (ToInteger (Arg2), _T_0)
  6643.                                 If (LEqual (_T_0, Zero))
  6644.                                 {
  6645.                                     If (LEqual (Arg1, One))
  6646.                                     {
  6647.                                         Return (Buffer (One)
  6648.                                         {
  6649.                                              0x07
  6650.                                         })
  6651.                                     }
  6652.                                     Else
  6653.                                     {
  6654.                                         Return (Buffer (One)
  6655.                                         {
  6656.                                              0x00
  6657.                                         })
  6658.                                     }
  6659.                                 }
  6660.                                 Else
  6661.                                 {
  6662.                                     If (LEqual (_T_0, One))
  6663.                                     {
  6664.                                         If (LEqual (SDGV, 0xFF))
  6665.                                         {
  6666.                                             Return (Zero)
  6667.                                         }
  6668.                                         Else
  6669.                                         {
  6670.                                             Return (One)
  6671.                                         }
  6672.                                     }
  6673.                                     Else
  6674.                                     {
  6675.                                         If (LEqual (_T_0, 0x02))
  6676.                                         {
  6677.                                             Return (SDGV)
  6678.                                         }
  6679.                                     }
  6680.                                 }
  6681.                             }
  6682.  
  6683.                             Return (Zero)
  6684.                         }
  6685.                     }
  6686.  
  6687.                     Device (PR15)
  6688.                     {
  6689.                         Name (_ADR, 0x05)  // _ADR: Address
  6690.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6691.                         {
  6692.                             Name (UPCP, Package (0x04)
  6693.                             {
  6694.                                 Zero,
  6695.                                 0xFF,
  6696.                                 Zero,
  6697.                                 Zero
  6698.                             })
  6699.                             Return (UPCP)
  6700.                         }
  6701.  
  6702.                         Alias (SBV2, SDGV)
  6703.                         Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
  6704.                         {
  6705.                             Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler
  6706.                             If (LEqual (Arg0, Buffer (0x10)
  6707.                                     {
  6708.                                         /* 0000 */   0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  6709.                                         /* 0008 */   0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  6710.                                     }))
  6711.                             {
  6712.                                 Store (ToInteger (Arg2), _T_0)
  6713.                                 If (LEqual (_T_0, Zero))
  6714.                                 {
  6715.                                     If (LEqual (Arg1, One))
  6716.                                     {
  6717.                                         Return (Buffer (One)
  6718.                                         {
  6719.                                              0x07
  6720.                                         })
  6721.                                     }
  6722.                                     Else
  6723.                                     {
  6724.                                         Return (Buffer (One)
  6725.                                         {
  6726.                                              0x00
  6727.                                         })
  6728.                                     }
  6729.                                 }
  6730.                                 Else
  6731.                                 {
  6732.                                     If (LEqual (_T_0, One))
  6733.                                     {
  6734.                                         If (LEqual (SDGV, 0xFF))
  6735.                                         {
  6736.                                             Return (Zero)
  6737.                                         }
  6738.                                         Else
  6739.                                         {
  6740.                                             Return (One)
  6741.                                         }
  6742.                                     }
  6743.                                     Else
  6744.                                     {
  6745.                                         If (LEqual (_T_0, 0x02))
  6746.                                         {
  6747.                                             Return (SDGV)
  6748.                                         }
  6749.                                     }
  6750.                                 }
  6751.                             }
  6752.  
  6753.                             Return (Zero)
  6754.                         }
  6755.                     }
  6756.  
  6757.                     Device (PR16)
  6758.                     {
  6759.                         Name (_ADR, 0x06)  // _ADR: Address
  6760.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6761.                         {
  6762.                             Name (UPCP, Package (0x04)
  6763.                             {
  6764.                                 Zero,
  6765.                                 0xFF,
  6766.                                 Zero,
  6767.                                 Zero
  6768.                             })
  6769.                             Return (UPCP)
  6770.                         }
  6771.  
  6772.                         Alias (SBV1, SDGV)
  6773.                         Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
  6774.                         {
  6775.                             Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler
  6776.                             If (LEqual (Arg0, Buffer (0x10)
  6777.                                     {
  6778.                                         /* 0000 */   0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  6779.                                         /* 0008 */   0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  6780.                                     }))
  6781.                             {
  6782.                                 Store (ToInteger (Arg2), _T_0)
  6783.                                 If (LEqual (_T_0, Zero))
  6784.                                 {
  6785.                                     If (LEqual (Arg1, One))
  6786.                                     {
  6787.                                         Return (Buffer (One)
  6788.                                         {
  6789.                                              0x07
  6790.                                         })
  6791.                                     }
  6792.                                     Else
  6793.                                     {
  6794.                                         Return (Buffer (One)
  6795.                                         {
  6796.                                              0x00
  6797.                                         })
  6798.                                     }
  6799.                                 }
  6800.                                 Else
  6801.                                 {
  6802.                                     If (LEqual (_T_0, One))
  6803.                                     {
  6804.                                         If (LEqual (SDGV, 0xFF))
  6805.                                         {
  6806.                                             Return (Zero)
  6807.                                         }
  6808.                                         Else
  6809.                                         {
  6810.                                             Return (One)
  6811.                                         }
  6812.                                     }
  6813.                                     Else
  6814.                                     {
  6815.                                         If (LEqual (_T_0, 0x02))
  6816.                                         {
  6817.                                             Return (SDGV)
  6818.                                         }
  6819.                                     }
  6820.                                 }
  6821.                             }
  6822.  
  6823.                             Return (Zero)
  6824.                         }
  6825.                     }
  6826.  
  6827.                     Device (PR17)
  6828.                     {
  6829.                         Name (_ADR, 0x07)  // _ADR: Address
  6830.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6831.                         {
  6832.                             Name (UPCP, Package (0x04)
  6833.                             {
  6834.                                 Zero,
  6835.                                 0xFF,
  6836.                                 Zero,
  6837.                                 Zero
  6838.                             })
  6839.                             Return (UPCP)
  6840.                         }
  6841.  
  6842.                         Alias (SBV2, SDGV)
  6843.                         Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
  6844.                         {
  6845.                             Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler
  6846.                             If (LEqual (Arg0, Buffer (0x10)
  6847.                                     {
  6848.                                         /* 0000 */   0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  6849.                                         /* 0008 */   0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  6850.                                     }))
  6851.                             {
  6852.                                 Store (ToInteger (Arg2), _T_0)
  6853.                                 If (LEqual (_T_0, Zero))
  6854.                                 {
  6855.                                     If (LEqual (Arg1, One))
  6856.                                     {
  6857.                                         Return (Buffer (One)
  6858.                                         {
  6859.                                              0x07
  6860.                                         })
  6861.                                     }
  6862.                                     Else
  6863.                                     {
  6864.                                         Return (Buffer (One)
  6865.                                         {
  6866.                                              0x00
  6867.                                         })
  6868.                                     }
  6869.                                 }
  6870.                                 Else
  6871.                                 {
  6872.                                     If (LEqual (_T_0, One))
  6873.                                     {
  6874.                                         If (LEqual (SDGV, 0xFF))
  6875.                                         {
  6876.                                             Return (Zero)
  6877.                                         }
  6878.                                         Else
  6879.                                         {
  6880.                                             Return (One)
  6881.                                         }
  6882.                                     }
  6883.                                     Else
  6884.                                     {
  6885.                                         If (LEqual (_T_0, 0x02))
  6886.                                         {
  6887.                                             Return (SDGV)
  6888.                                         }
  6889.                                     }
  6890.                                 }
  6891.                             }
  6892.  
  6893.                             Return (Zero)
  6894.                         }
  6895.                     }
  6896.  
  6897.                     Device (PR18)
  6898.                     {
  6899.                         Name (_ADR, 0x08)  // _ADR: Address
  6900.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6901.                         {
  6902.                             Name (UPCP, Package (0x04)
  6903.                             {
  6904.                                 Zero,
  6905.                                 0xFF,
  6906.                                 Zero,
  6907.                                 Zero
  6908.                             })
  6909.                             Return (UPCP)
  6910.                         }
  6911.                     }
  6912.                 }
  6913.             }
  6914.  
  6915.             Method (ZPRW, 0, NotSerialized)
  6916.             {
  6917.                 Return (GPRW (0x0D, 0x04))
  6918.             }
  6919.         }
  6920.  
  6921.         Device (EHC2)
  6922.         {
  6923.             Name (_ADR, 0x001A0000)  // _ADR: Address
  6924.             OperationRegion (PWKE, PCI_Config, 0x62, 0x04)
  6925.             Field (PWKE, DWordAcc, NoLock, Preserve)
  6926.             {
  6927.                     ,   1,
  6928.                 PWUC,   6
  6929.             }
  6930.  
  6931.             Method (_PSW, 1, NotSerialized)  // _PSW: Power State Wake
  6932.             {
  6933.                 If (Arg0)
  6934.                 {
  6935.                     Store (Ones, PWUC)
  6936.                 }
  6937.                 Else
  6938.                 {
  6939.                     Store (Zero, PWUC)
  6940.                 }
  6941.             }
  6942.  
  6943.             Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
  6944.             {
  6945.                 Return (0x02)
  6946.             }
  6947.  
  6948.             Method (_S4D, 0, NotSerialized)  // _S4D: S4 Device State
  6949.             {
  6950.                 Return (0x02)
  6951.             }
  6952.  
  6953.             Device (HUBN)
  6954.             {
  6955.                 Name (_ADR, Zero)  // _ADR: Address
  6956.                 Device (PR01)
  6957.                 {
  6958.                     Name (_ADR, One)  // _ADR: Address
  6959.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6960.                     {
  6961.                         Name (UPCA, Package (0x04)
  6962.                         {
  6963.                             Zero,
  6964.                             0xFF,
  6965.                             Zero,
  6966.                             Zero
  6967.                         })
  6968.                         Return (UPCA)
  6969.                     }
  6970.  
  6971.                     Device (PR11)
  6972.                     {
  6973.                         Name (_ADR, One)  // _ADR: Address
  6974.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6975.                         {
  6976.                             Name (UPCP, Package (0x04)
  6977.                             {
  6978.                                 Zero,
  6979.                                 0xFF,
  6980.                                 Zero,
  6981.                                 Zero
  6982.                             })
  6983.                             Return (UPCP)
  6984.                         }
  6985.                     }
  6986.  
  6987.                     Device (PR12)
  6988.                     {
  6989.                         Name (_ADR, 0x02)  // _ADR: Address
  6990.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  6991.                         {
  6992.                             Name (UPCP, Package (0x04)
  6993.                             {
  6994.                                 0xFF,
  6995.                                 0xFF,
  6996.                                 Zero,
  6997.                                 Zero
  6998.                             })
  6999.                             Return (UPCP)
  7000.                         }
  7001.  
  7002.                         Alias (SBV1, SDGV)
  7003.                         Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
  7004.                         {
  7005.                             Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler
  7006.                             If (LEqual (Arg0, Buffer (0x10)
  7007.                                     {
  7008.                                         /* 0000 */   0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  7009.                                         /* 0008 */   0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  7010.                                     }))
  7011.                             {
  7012.                                 Store (ToInteger (Arg2), _T_0)
  7013.                                 If (LEqual (_T_0, Zero))
  7014.                                 {
  7015.                                     If (LEqual (Arg1, One))
  7016.                                     {
  7017.                                         Return (Buffer (One)
  7018.                                         {
  7019.                                              0x07
  7020.                                         })
  7021.                                     }
  7022.                                     Else
  7023.                                     {
  7024.                                         Return (Buffer (One)
  7025.                                         {
  7026.                                              0x00
  7027.                                         })
  7028.                                     }
  7029.                                 }
  7030.                                 Else
  7031.                                 {
  7032.                                     If (LEqual (_T_0, One))
  7033.                                     {
  7034.                                         If (LEqual (SDGV, 0xFF))
  7035.                                         {
  7036.                                             Return (Zero)
  7037.                                         }
  7038.                                         Else
  7039.                                         {
  7040.                                             Return (One)
  7041.                                         }
  7042.                                     }
  7043.                                     Else
  7044.                                     {
  7045.                                         If (LEqual (_T_0, 0x02))
  7046.                                         {
  7047.                                             Return (SDGV)
  7048.                                         }
  7049.                                     }
  7050.                                 }
  7051.                             }
  7052.  
  7053.                             Return (Zero)
  7054.                         }
  7055.                     }
  7056.  
  7057.                     Device (PR13)
  7058.                     {
  7059.                         Name (_ADR, 0x03)  // _ADR: Address
  7060.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7061.                         {
  7062.                             Name (UPCP, Package (0x04)
  7063.                             {
  7064.                                 0xFF,
  7065.                                 0xFF,
  7066.                                 Zero,
  7067.                                 Zero
  7068.                             })
  7069.                             Return (UPCP)
  7070.                         }
  7071.  
  7072.                         Alias (SBV2, SDGV)
  7073.                         Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
  7074.                         {
  7075.                             Name (_T_0, Zero)  // _T_x: Emitted by ASL Compiler
  7076.                             If (LEqual (Arg0, Buffer (0x10)
  7077.                                     {
  7078.                                         /* 0000 */   0x8F, 0x70, 0xFC, 0xA5, 0x75, 0x87, 0xA6, 0x4B,
  7079.                                         /* 0008 */   0xBD, 0x0C, 0xBA, 0x90, 0xA1, 0xEC, 0x72, 0xF8
  7080.                                     }))
  7081.                             {
  7082.                                 Store (ToInteger (Arg2), _T_0)
  7083.                                 If (LEqual (_T_0, Zero))
  7084.                                 {
  7085.                                     If (LEqual (Arg1, One))
  7086.                                     {
  7087.                                         Return (Buffer (One)
  7088.                                         {
  7089.                                              0x07
  7090.                                         })
  7091.                                     }
  7092.                                     Else
  7093.                                     {
  7094.                                         Return (Buffer (One)
  7095.                                         {
  7096.                                              0x00
  7097.                                         })
  7098.                                     }
  7099.                                 }
  7100.                                 Else
  7101.                                 {
  7102.                                     If (LEqual (_T_0, One))
  7103.                                     {
  7104.                                         If (LEqual (SDGV, 0xFF))
  7105.                                         {
  7106.                                             Return (Zero)
  7107.                                         }
  7108.                                         Else
  7109.                                         {
  7110.                                             Return (One)
  7111.                                         }
  7112.                                     }
  7113.                                     Else
  7114.                                     {
  7115.                                         If (LEqual (_T_0, 0x02))
  7116.                                         {
  7117.                                             Return (SDGV)
  7118.                                         }
  7119.                                     }
  7120.                                 }
  7121.                             }
  7122.  
  7123.                             Return (Zero)
  7124.                         }
  7125.                     }
  7126.  
  7127.                     Device (PR14) // Webcam?
  7128.                     {
  7129.                         Name (_ADR, 0x04)  // _ADR: Address
  7130.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7131.                         {
  7132.                             Name (UPCP, Package (0x04)
  7133.                             {
  7134.                                 Zero,
  7135.                                 0xFF,
  7136.                                 Zero,
  7137.                                 Zero
  7138.                             })
  7139.                             Return (UPCP)
  7140.                         }
  7141.  
  7142.                         Device (WCAM)
  7143.                         {
  7144.                             Name (_ADR, 0x04)  // _ADR: Address
  7145.                             Name (_PLD, Package (0x14)  // _PLD: Physical Location of Device
  7146.                             {
  7147.                                 /* 0000 */   0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  7148.                                 /* 0008 */   0x20, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  7149.                                 /* 0010 */   0xD2, 0x00, 0xA5, 0x00
  7150.                                 /*           Revision : 02     */
  7151.                                 /*        IgnoreColor : 01     */
  7152.                                 /*              Color : 000000 */
  7153.                                 /*              Width : 0000   */
  7154.                                 /*             Height : 0000   */
  7155.                                 /*        UserVisible : 00     */
  7156.                                 /*               Dock : 00     */
  7157.                                 /*                Lid : 00     */
  7158.                                 /*              Panel : 04     */
  7159.                                 /*   VerticalPosition : 00     */
  7160.                                 /* HorizontalPosition : 00     */
  7161.                                 /*              Shape : 07     */
  7162.                                 /*   GroupOrientation : 00     */
  7163.                                 /*         GroupToken : 00     */
  7164.                                 /*      GroupPosition : 00     */
  7165.                                 /*                Bay : 00     */
  7166.                                 /*          Ejectable : 00     */
  7167.                                 /*  OspmEjectRequired : 00     */
  7168.                                 /*      CabinetNumber : 00     */
  7169.                                 /*     CardCageNumber : 00     */
  7170.                                 /*          Reference : 00     */
  7171.                                 /*           Rotation : 00     */
  7172.                                 /*              Order : 00     */
  7173.                                 /*     VerticalOffset : 00D2   */
  7174.                                 /*   HorizontalOffset : 00A5   */
  7175.                             })
  7176.                         }
  7177.                     }
  7178.  
  7179.                     Device (PR15)
  7180.                     {
  7181.                         Name (_ADR, 0x05)  // _ADR: Address
  7182.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7183.                         {
  7184.                             Name (UPCP, Package (0x04)
  7185.                             {
  7186.                                 Zero,
  7187.                                 0xFF,
  7188.                                 Zero,
  7189.                                 Zero
  7190.                             })
  7191.                             Return (UPCP)
  7192.                         }
  7193.                     }
  7194.  
  7195.                     Device (PR16)
  7196.                     {
  7197.                         Name (_ADR, 0x06)  // _ADR: Address
  7198.                         Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7199.                         {
  7200.                             Name (UPCP, Package (0x04)
  7201.                             {
  7202.                                 0xFF,
  7203.                                 0xFF,
  7204.                                 Zero,
  7205.                                 Zero
  7206.                             })
  7207.                             Return (UPCP)
  7208.                         }
  7209.                     }
  7210.                 }
  7211.             }
  7212.  
  7213.             Method (ZPRW, 0, NotSerialized)
  7214.             {
  7215.                 Return (GPRW (0x0D, 0x04))
  7216.             }
  7217.         }
  7218.  
  7219.         Device (XHC)
  7220.         {
  7221.             Name (_ADR, 0x00140000)  // _ADR: Address
  7222.             OperationRegion (XPRT, PCI_Config, 0x74, 0x6C)
  7223.             Field (XPRT, DWordAcc, NoLock, Preserve)
  7224.             {
  7225.                 Offset (0x01),
  7226.                 PMEE,   1,
  7227.                     ,   6,
  7228.                 PMES,   1,
  7229.                 Offset (0x5C),
  7230.                 PR2,    32,
  7231.                 PR2M,   32,
  7232.                 PR3,    32,
  7233.                 PR3M,   32
  7234.             }
  7235.  
  7236.             Name (XRST, Zero)
  7237.             Method (CUID, 1, Serialized)
  7238.             {
  7239.                 If (LEqual (Arg0, Buffer (0x10)
  7240.                         {
  7241.                             /* 0000 */   0xA9, 0x12, 0x95, 0x7C, 0x05, 0x17, 0xB4, 0x4C,
  7242.                             /* 0008 */   0xAF, 0x7D, 0x50, 0x6A, 0x24, 0x23, 0xAB, 0x71
  7243.                         }))
  7244.                 {
  7245.                     Return (One)
  7246.                 }
  7247.  
  7248.                 Return (Zero)
  7249.             }
  7250.  
  7251.             Method (POSC, 3, Serialized)
  7252.             {
  7253.                 CreateDWordField (Arg2, Zero, CDW1)
  7254.                 CreateDWordField (Arg2, 0x08, CDW3)
  7255.                 If (LNotEqual (Arg1, One))
  7256.                 {
  7257.                     Or (CDW1, 0x08, CDW1)
  7258.                 }
  7259.  
  7260.                 If (LEqual (XHCI, Zero))
  7261.                 {
  7262.                     Or (CDW1, 0x02, CDW1)
  7263.                 }
  7264.  
  7265.                 If (LNot (And (CDW1, One)))
  7266.                 {
  7267.                     If (And (CDW3, One))
  7268.                     {
  7269.                         ESEL ()
  7270.                     }
  7271.                     Else
  7272.                     {
  7273.                         XSEL ()
  7274.                     }
  7275.                 }
  7276.  
  7277.                 Return (Arg2)
  7278.             }
  7279.  
  7280.             Method (XSEL, 0, Serialized)
  7281.             {
  7282.                 If (LOr (LEqual (XHCI, 0x02), LEqual (XHCI, 0x03)))
  7283.                 {
  7284.                     Store (One, XUSB)
  7285.                     Store (One, XRST)
  7286.                     Store (Zero, Local0)
  7287.                     And (PR3, 0xFFFFFFF0, Local0)
  7288.                     Or (Local0, XHPM, Local0)
  7289.                     And (Local0, PR3M, PR3)
  7290.                     Store (Zero, Local0)
  7291.                     And (PR2, 0xFFFFFFF0, Local0)
  7292.                     Or (Local0, XHPM, Local0)
  7293.                     And (Local0, PR2M, PR2)
  7294.                 }
  7295.             }
  7296.  
  7297.             Method (ESEL, 0, Serialized)
  7298.             {
  7299.                 If (LOr (LEqual (XHCI, 0x02), LEqual (XHCI, 0x03)))
  7300.                 {
  7301.                     And (PR3, 0xFFFFFFF0, PR3)
  7302.                     And (PR2, 0xFFFFFFF0, PR2)
  7303.                     Store (Zero, XUSB)
  7304.                     Store (Zero, XRST)
  7305.                 }
  7306.             }
  7307.  
  7308.             Method (XWAK, 0, Serialized)
  7309.             {
  7310.                 If (LOr (LEqual (XUSB, One), LEqual (XRST, One)))
  7311.                 {
  7312.                     XSEL ()
  7313.                 }
  7314.             }
  7315.  
  7316.             Method (_S3D, 0, NotSerialized)  // _S3D: S3 Device State
  7317.             {
  7318.                 Return (0x02)
  7319.             }
  7320.  
  7321.             Method (_S4D, 0, NotSerialized)  // _S4D: S4 Device State
  7322.             {
  7323.                 Return (0x02)
  7324.             }
  7325.  
  7326.             Device (RHUB)
  7327.             {
  7328.                 Name (_ADR, Zero)  // _ADR: Address
  7329.                 Device (HSP1)
  7330.                 {
  7331.                     Name (_ADR, One)  // _ADR: Address
  7332.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7333.                     {
  7334.                         Name (UPCP, Package (0x04)
  7335.                         {
  7336.                             0xFF,
  7337.                             0x03,
  7338.                             Zero,
  7339.                             Zero
  7340.                         })
  7341.                         If (LNot (And (PR2, One)))
  7342.                         {
  7343.                             Store (Zero, Index (UPCP, Zero))
  7344.                         }
  7345.  
  7346.                         Return (UPCP)
  7347.                     }
  7348.  
  7349.                     Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
  7350.                     {
  7351.                         Name (PLDP, Package (0x01)
  7352.                         {
  7353.                             Buffer (0x10)
  7354.                             {
  7355.                                 /* 0000 */   0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  7356.                                 /* 0008 */   0x69, 0x0C, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00
  7357.                             }
  7358.                         })
  7359.                         CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  7360.                         If (LNot (And (PR2, One)))
  7361.                         {
  7362.                             And (VIS, Zero, VIS)
  7363.                         }
  7364.  
  7365.                         Return (PLDP)
  7366.                     }
  7367.                 }
  7368.  
  7369.                 Device (HSP2)
  7370.                 {
  7371.                     Name (_ADR, 0x02)  // _ADR: Address
  7372.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7373.                     {
  7374.                         Name (UPCP, Package (0x04)
  7375.                         {
  7376.                             0xFF,
  7377.                             0x03,
  7378.                             Zero,
  7379.                             Zero
  7380.                         })
  7381.                         If (LNot (And (PR2, 0x02)))
  7382.                         {
  7383.                             Store (Zero, Index (UPCP, Zero))
  7384.                         }
  7385.  
  7386.                         Return (UPCP)
  7387.                     }
  7388.  
  7389.                     Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
  7390.                     {
  7391.                         Name (PLDP, Package (0x01)
  7392.                         {
  7393.                             Buffer (0x10)
  7394.                             {
  7395.                                 /* 0000 */   0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  7396.                                 /* 0008 */   0x69, 0x0C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
  7397.                             }
  7398.                         })
  7399.                         CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  7400.                         If (LNot (And (PR2, 0x02)))
  7401.                         {
  7402.                             And (VIS, Zero, VIS)
  7403.                         }
  7404.  
  7405.                         Return (PLDP)
  7406.                     }
  7407.                 }
  7408.  
  7409.                 Device (HSP3)
  7410.                 {
  7411.                     Name (_ADR, 0x03)  // _ADR: Address
  7412.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7413.                     {
  7414.                         Name (UPCP, Package (0x04)
  7415.                         {
  7416.                             0xFF,
  7417.                             0x03,
  7418.                             Zero,
  7419.                             Zero
  7420.                         })
  7421.                         If (LNot (And (PR2, 0x04)))
  7422.                         {
  7423.                             Store (Zero, Index (UPCP, Zero))
  7424.                         }
  7425.  
  7426.                         Return (UPCP)
  7427.                     }
  7428.  
  7429.                     Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
  7430.                     {
  7431.                         Name (PLDP, Package (0x01)
  7432.                         {
  7433.                             Buffer (0x10)
  7434.                             {
  7435.                                 /* 0000 */   0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  7436.                                 /* 0008 */   0x69, 0x0C, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00
  7437.                             }
  7438.                         })
  7439.                         CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  7440.                         If (LNot (And (PR2, 0x04)))
  7441.                         {
  7442.                             And (VIS, Zero, VIS)
  7443.                         }
  7444.  
  7445.                         Return (PLDP)
  7446.                     }
  7447.                 }
  7448.  
  7449.                 Device (HSP4)
  7450.                 {
  7451.                     Name (_ADR, 0x04)  // _ADR: Address
  7452.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7453.                     {
  7454.                         Name (UPCP, Package (0x04)
  7455.                         {
  7456.                             0xFF,
  7457.                             0x03,
  7458.                             Zero,
  7459.                             Zero
  7460.                         })
  7461.                         If (LNot (And (PR2, 0x08)))
  7462.                         {
  7463.                             Store (Zero, Index (UPCP, Zero))
  7464.                         }
  7465.  
  7466.                         Return (UPCP)
  7467.                     }
  7468.  
  7469.                     Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
  7470.                     {
  7471.                         Name (PLDP, Package (0x01)
  7472.                         {
  7473.                             Buffer (0x10)
  7474.                             {
  7475.                                 /* 0000 */   0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  7476.                                 /* 0008 */   0x69, 0x0C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00
  7477.                             }
  7478.                         })
  7479.                         CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  7480.                         If (LNot (And (PR2, 0x08)))
  7481.                         {
  7482.                             And (VIS, Zero, VIS)
  7483.                         }
  7484.  
  7485.                         Return (PLDP)
  7486.                     }
  7487.                 }
  7488.  
  7489.                 Device (SSP1)
  7490.                 {
  7491.                     Name (_ADR, 0x05)  // _ADR: Address
  7492.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7493.                     {
  7494.                         Name (UPCP, Package (0x04)
  7495.                         {
  7496.                             0xFF,
  7497.                             0x03,
  7498.                             Zero,
  7499.                             Zero
  7500.                         })
  7501.                         If (LNot (And (PR3, One)))
  7502.                         {
  7503.                             Store (Zero, Index (UPCP, Zero))
  7504.                         }
  7505.  
  7506.                         Return (UPCP)
  7507.                     }
  7508.  
  7509.                     Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
  7510.                     {
  7511.                         Name (PLDP, Package (0x01)
  7512.                         {
  7513.                             Buffer (0x10)
  7514.                             {
  7515.                                 /* 0000 */   0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  7516.                                 /* 0008 */   0x69, 0x0C, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00
  7517.                             }
  7518.                         })
  7519.                         CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  7520.                         If (LNot (And (PR3, One)))
  7521.                         {
  7522.                             And (VIS, Zero, VIS)
  7523.                         }
  7524.  
  7525.                         Return (PLDP)
  7526.                     }
  7527.                 }
  7528.  
  7529.                 Device (SSP2)
  7530.                 {
  7531.                     Name (_ADR, 0x06)  // _ADR: Address
  7532.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7533.                     {
  7534.                         Name (UPCP, Package (0x04)
  7535.                         {
  7536.                             0xFF,
  7537.                             0x03,
  7538.                             Zero,
  7539.                             Zero
  7540.                         })
  7541.                         If (LNot (And (PR3, 0x02)))
  7542.                         {
  7543.                             Store (Zero, Index (UPCP, Zero))
  7544.                         }
  7545.  
  7546.                         Return (UPCP)
  7547.                     }
  7548.  
  7549.                     Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
  7550.                     {
  7551.                         Name (PLDP, Package (0x01)
  7552.                         {
  7553.                             Buffer (0x10)
  7554.                             {
  7555.                                 /* 0000 */   0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  7556.                                 /* 0008 */   0x69, 0x0C, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00
  7557.                             }
  7558.                         })
  7559.                         CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  7560.                         If (LNot (And (PR3, 0x02)))
  7561.                         {
  7562.                             And (VIS, Zero, VIS)
  7563.                         }
  7564.  
  7565.                         Return (PLDP)
  7566.                     }
  7567.                 }
  7568.  
  7569.                 Device (SSP3)
  7570.                 {
  7571.                     Name (_ADR, 0x07)  // _ADR: Address
  7572.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7573.                     {
  7574.                         Name (UPCP, Package (0x04)
  7575.                         {
  7576.                             0xFF,
  7577.                             0x03,
  7578.                             Zero,
  7579.                             Zero
  7580.                         })
  7581.                         If (LNot (And (PR3, 0x04)))
  7582.                         {
  7583.                             Store (Zero, Index (UPCP, Zero))
  7584.                         }
  7585.  
  7586.                         Return (UPCP)
  7587.                     }
  7588.  
  7589.                     Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
  7590.                     {
  7591.                         Name (PLDP, Package (0x01)
  7592.                         {
  7593.                             Buffer (0x10)
  7594.                             {
  7595.                                 /* 0000 */   0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  7596.                                 /* 0008 */   0x69, 0x0C, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00
  7597.                             }
  7598.                         })
  7599.                         CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  7600.                         If (LNot (And (PR3, 0x04)))
  7601.                         {
  7602.                             And (VIS, Zero, VIS)
  7603.                         }
  7604.  
  7605.                         Return (PLDP)
  7606.                     }
  7607.                 }
  7608.  
  7609.                 Device (SSP4)
  7610.                 {
  7611.                     Name (_ADR, 0x08)  // _ADR: Address
  7612.                     Method (_UPC, 0, Serialized)  // _UPC: USB Port Capabilities
  7613.                     {
  7614.                         Name (UPCP, Package (0x04)
  7615.                         {
  7616.                             0xFF,
  7617.                             0x03,
  7618.                             Zero,
  7619.                             Zero
  7620.                         })
  7621.                         If (LNot (And (PR3, 0x08)))
  7622.                         {
  7623.                             Store (Zero, Index (UPCP, Zero))
  7624.                         }
  7625.  
  7626.                         Return (UPCP)
  7627.                     }
  7628.  
  7629.                     Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
  7630.                     {
  7631.                         Name (PLDP, Package (0x01)
  7632.                         {
  7633.                             Buffer (0x10)
  7634.                             {
  7635.                                 /* 0000 */   0x01, 0xC6, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
  7636.                                 /* 0008 */   0x69, 0x0C, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00
  7637.                             }
  7638.                         })
  7639.                         CreateBitField (DerefOf (Index (PLDP, Zero)), 0x40, VIS)
  7640.                         If (LNot (And (PR3, 0x08)))
  7641.                         {
  7642.                             And (VIS, Zero, VIS)
  7643.                         }
  7644.  
  7645.                         Return (PLDP)
  7646.                     }
  7647.                 }
  7648.             }
  7649.  
  7650.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  7651.             {
  7652.                 Return (GPRW (0x0D, 0x04))
  7653.             }
  7654.         }
  7655.  
  7656.         Device (HDEF)
  7657.         {
  7658.             Name (_ADR, 0x001B0000)  // _ADR: Address
  7659.             OperationRegion (HDAR, PCI_Config, 0x4C, 0x10)
  7660.             Field (HDAR, WordAcc, NoLock, Preserve)
  7661.             {
  7662.                 DCKA,   1,
  7663.                 Offset (0x01),
  7664.                 DCKM,   1,
  7665.                     ,   6,
  7666.                 DCKS,   1,
  7667.                 Offset (0x08),
  7668.                     ,   15,
  7669.                 PMES,   1
  7670.             }
  7671.  
  7672.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  7673.             {
  7674.                 Return (GPRW (0x0D, 0x04))
  7675.             }
  7676.         }
  7677.  
  7678.         Device (RP01) // /sys/bus/acpi/devices/device:24 (Intel Centrino)
  7679.         {
  7680.             Name (_ADR, 0x001C0000)  // _ADR: Address
  7681.             OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  7682.             Field (PXCS, AnyAcc, NoLock, Preserve)
  7683.             {
  7684.                 Offset (0x10),
  7685.                 L0SE,   1,
  7686.                 Offset (0x11),
  7687.                 Offset (0x12),
  7688.                     ,   13,
  7689.                 LASX,   1,
  7690.                 Offset (0x1A),
  7691.                 ABPX,   1,
  7692.                     ,   2,
  7693.                 PDCX,   1,
  7694.                     ,   2,
  7695.                 PDSX,   1,
  7696.                 Offset (0x1B),
  7697.                 Offset (0x20),
  7698.                 Offset (0x22),
  7699.                 PSPX,   1,
  7700.                 Offset (0x98),
  7701.                     ,   30,
  7702.                 HPEX,   1,
  7703.                 PMEX,   1
  7704.             }
  7705.  
  7706.             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  7707.             {
  7708.                 Offset (0x9C),
  7709.                     ,   30,
  7710.                 HPSX,   1,
  7711.                 PMSX,   1
  7712.             }
  7713.  
  7714.             Device (PXSX)
  7715.             {
  7716.                 Name (_ADR, Zero)  // _ADR: Address
  7717.                 Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  7718.                 {
  7719.                     0x09,
  7720.                     0x04
  7721.                 })
  7722.             }
  7723.  
  7724.             Method (HPME, 0, Serialized)   // Wake the device (led or wifi)???
  7725.             {
  7726.                 If (PMSX)
  7727.                 {
  7728.                     Store (0xC8, Local0)
  7729.                     While (Local0)
  7730.                     {
  7731.                         Store (One, PMSX)
  7732.                         If (PMSX)
  7733.                         {
  7734.                             Decrement (Local0)
  7735.                         }
  7736.                         Else
  7737.                         {
  7738.                             Store (Zero, Local0)
  7739.                         }
  7740.                     }
  7741.  
  7742.                     Notify (PXSX, 0x02)
  7743.                 }
  7744.             }
  7745.  
  7746.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  7747.             {
  7748.                 Return (GPRW (0x09, 0x04))
  7749.             }
  7750.  
  7751.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  7752.             {
  7753.                 If (PICM)
  7754.                 {
  7755.                     Return (AR04 ())
  7756.                 }
  7757.  
  7758.                 Return (PR04 ())
  7759.             }
  7760.         }
  7761.  
  7762.         Device (RP02)
  7763.         {
  7764.             Name (_ADR, 0x001C0001)  // _ADR: Address
  7765.             OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  7766.             Field (PXCS, AnyAcc, NoLock, Preserve)
  7767.             {
  7768.                 Offset (0x10),
  7769.                 L0SE,   1,
  7770.                 Offset (0x11),
  7771.                 Offset (0x12),
  7772.                     ,   13,
  7773.                 LASX,   1,
  7774.                 Offset (0x1A),
  7775.                 ABPX,   1,
  7776.                     ,   2,
  7777.                 PDCX,   1,
  7778.                     ,   2,
  7779.                 PDSX,   1,
  7780.                 Offset (0x1B),
  7781.                 Offset (0x20),
  7782.                 Offset (0x22),
  7783.                 PSPX,   1,
  7784.                 Offset (0x98),
  7785.                     ,   30,
  7786.                 HPEX,   1,
  7787.                 PMEX,   1
  7788.             }
  7789.  
  7790.             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  7791.             {
  7792.                 Offset (0x9C),
  7793.                     ,   30,
  7794.                 HPSX,   1,
  7795.                 PMSX,   1
  7796.             }
  7797.  
  7798.             Device (PXSX)
  7799.             {
  7800.                 Name (_ADR, Zero)  // _ADR: Address
  7801.                 Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  7802.                 {
  7803.                     0x09,
  7804.                     0x04
  7805.                 })
  7806.             }
  7807.  
  7808.             Method (HPME, 0, Serialized)
  7809.             {
  7810.                 If (PMSX)
  7811.                 {
  7812.                     Store (0xC8, Local0)
  7813.                     While (Local0)
  7814.                     {
  7815.                         Store (One, PMSX)
  7816.                         If (PMSX)
  7817.                         {
  7818.                             Decrement (Local0)
  7819.                         }
  7820.                         Else
  7821.                         {
  7822.                             Store (Zero, Local0)
  7823.                         }
  7824.                     }
  7825.  
  7826.                     Notify (PXSX, 0x02)
  7827.                 }
  7828.             }
  7829.  
  7830.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  7831.             {
  7832.                 Return (GPRW (0x09, 0x04))
  7833.             }
  7834.  
  7835.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  7836.             {
  7837.                 If (PICM)
  7838.                 {
  7839.                     Return (AR05 ())
  7840.                 }
  7841.  
  7842.                 Return (PR05 ())
  7843.             }
  7844.         }
  7845.  
  7846.         Device (RP03)
  7847.         {
  7848.             Name (_ADR, 0x001C0002)  // _ADR: Address
  7849.             OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  7850.             Field (PXCS, AnyAcc, NoLock, Preserve)
  7851.             {
  7852.                 Offset (0x10),
  7853.                 L0SE,   1,
  7854.                 Offset (0x11),
  7855.                 Offset (0x12),
  7856.                     ,   13,
  7857.                 LASX,   1,
  7858.                 Offset (0x1A),
  7859.                 ABPX,   1,
  7860.                     ,   2,
  7861.                 PDCX,   1,
  7862.                     ,   2,
  7863.                 PDSX,   1,
  7864.                 Offset (0x1B),
  7865.                 Offset (0x20),
  7866.                 Offset (0x22),
  7867.                 PSPX,   1,
  7868.                 Offset (0x98),
  7869.                     ,   30,
  7870.                 HPEX,   1,
  7871.                 PMEX,   1
  7872.             }
  7873.  
  7874.             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  7875.             {
  7876.                 Offset (0x9C),
  7877.                     ,   30,
  7878.                 HPSX,   1,
  7879.                 PMSX,   1
  7880.             }
  7881.  
  7882.             Device (PXSX)
  7883.             {
  7884.                 Name (_ADR, Zero)  // _ADR: Address
  7885.                 Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  7886.                 {
  7887.                     0x09,
  7888.                     0x04
  7889.                 })
  7890.             }
  7891.  
  7892.             Method (HPME, 0, Serialized)
  7893.             {
  7894.                 If (PMSX)
  7895.                 {
  7896.                     Store (0xC8, Local0)
  7897.                     While (Local0)
  7898.                     {
  7899.                         Store (One, PMSX)
  7900.                         If (PMSX)
  7901.                         {
  7902.                             Decrement (Local0)
  7903.                         }
  7904.                         Else
  7905.                         {
  7906.                             Store (Zero, Local0)
  7907.                         }
  7908.                     }
  7909.  
  7910.                     Notify (PXSX, 0x02)
  7911.                 }
  7912.             }
  7913.  
  7914.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  7915.             {
  7916.                 Return (GPRW (0x09, 0x04))
  7917.             }
  7918.  
  7919.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  7920.             {
  7921.                 If (PICM)
  7922.                 {
  7923.                     Return (AR06 ())
  7924.                 }
  7925.  
  7926.                 Return (PR06 ())
  7927.             }
  7928.         }
  7929.  
  7930.         Device (RP04)
  7931.         {
  7932.             Name (_ADR, 0x001C0003)  // _ADR: Address
  7933.             OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  7934.             Field (PXCS, AnyAcc, NoLock, Preserve)
  7935.             {
  7936.                 Offset (0x10),
  7937.                 L0SE,   1,
  7938.                 Offset (0x11),
  7939.                 Offset (0x12),
  7940.                     ,   13,
  7941.                 LASX,   1,
  7942.                 Offset (0x1A),
  7943.                 ABPX,   1,
  7944.                     ,   2,
  7945.                 PDCX,   1,
  7946.                     ,   2,
  7947.                 PDSX,   1,
  7948.                 Offset (0x1B),
  7949.                 Offset (0x20),
  7950.                 Offset (0x22),
  7951.                 PSPX,   1,
  7952.                 Offset (0x98),
  7953.                     ,   30,
  7954.                 HPEX,   1,
  7955.                 PMEX,   1
  7956.             }
  7957.  
  7958.             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  7959.             {
  7960.                 Offset (0x9C),
  7961.                     ,   30,
  7962.                 HPSX,   1,
  7963.                 PMSX,   1
  7964.             }
  7965.  
  7966.             Device (PXSX)
  7967.             {
  7968.                 Name (_ADR, Zero)  // _ADR: Address
  7969.                 Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  7970.                 {
  7971.                     0x09,
  7972.                     0x04
  7973.                 })
  7974.             }
  7975.  
  7976.             Method (HPME, 0, Serialized)
  7977.             {
  7978.                 If (PMSX)
  7979.                 {
  7980.                     Store (0xC8, Local0)
  7981.                     While (Local0)
  7982.                     {
  7983.                         Store (One, PMSX)
  7984.                         If (PMSX)
  7985.                         {
  7986.                             Decrement (Local0)
  7987.                         }
  7988.                         Else
  7989.                         {
  7990.                             Store (Zero, Local0)
  7991.                         }
  7992.                     }
  7993.  
  7994.                     Notify (PXSX, 0x02)
  7995.                 }
  7996.             }
  7997.  
  7998.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  7999.             {
  8000.                 Return (GPRW (0x09, 0x04))
  8001.             }
  8002.  
  8003.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  8004.             {
  8005.                 If (PICM)
  8006.                 {
  8007.                     Return (AR07 ())
  8008.                 }
  8009.  
  8010.                 Return (PR07 ())
  8011.             }
  8012.         }
  8013.  
  8014.         Device (RP05)
  8015.         {
  8016.             Name (_ADR, 0x001C0004)  // _ADR: Address
  8017.             OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  8018.             Field (PXCS, AnyAcc, NoLock, Preserve)
  8019.             {
  8020.                 Offset (0x10),
  8021.                 L0SE,   1,
  8022.                 Offset (0x11),
  8023.                 Offset (0x12),
  8024.                     ,   13,
  8025.                 LASX,   1,
  8026.                 Offset (0x1A),
  8027.                 ABPX,   1,
  8028.                     ,   2,
  8029.                 PDCX,   1,
  8030.                     ,   2,
  8031.                 PDSX,   1,
  8032.                 Offset (0x1B),
  8033.                 Offset (0x20),
  8034.                 Offset (0x22),
  8035.                 PSPX,   1,
  8036.                 Offset (0x98),
  8037.                     ,   30,
  8038.                 HPEX,   1,
  8039.                 PMEX,   1
  8040.             }
  8041.  
  8042.             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  8043.             {
  8044.                 Offset (0x9C),
  8045.                     ,   30,
  8046.                 HPSX,   1,
  8047.                 PMSX,   1
  8048.             }
  8049.  
  8050.             Device (PXSX)
  8051.             {
  8052.                 Name (_ADR, Zero)  // _ADR: Address
  8053.                 Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  8054.                 {
  8055.                     0x09,
  8056.                     0x04
  8057.                 })
  8058.             }
  8059.  
  8060.             Method (HPME, 0, Serialized)
  8061.             {
  8062.                 If (PMSX)
  8063.                 {
  8064.                     Store (0xC8, Local0)
  8065.                     While (Local0)
  8066.                     {
  8067.                         Store (One, PMSX)
  8068.                         If (PMSX)
  8069.                         {
  8070.                             Decrement (Local0)
  8071.                         }
  8072.                         Else
  8073.                         {
  8074.                             Store (Zero, Local0)
  8075.                         }
  8076.                     }
  8077.  
  8078.                     Notify (PXSX, 0x02)
  8079.                 }
  8080.             }
  8081.  
  8082.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  8083.             {
  8084.                 Return (GPRW (0x09, 0x04))
  8085.             }
  8086.  
  8087.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  8088.             {
  8089.                 If (PICM)
  8090.                 {
  8091.                     Return (AR08 ())
  8092.                 }
  8093.  
  8094.                 Return (PR08 ())
  8095.             }
  8096.         }
  8097.  
  8098.         Device (RP06)
  8099.         {
  8100.             Name (_ADR, 0x001C0005)  // _ADR: Address
  8101.             OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  8102.             Field (PXCS, AnyAcc, NoLock, Preserve)
  8103.             {
  8104.                 Offset (0x10),
  8105.                 L0SE,   1,
  8106.                 Offset (0x11),
  8107.                 Offset (0x12),
  8108.                     ,   13,
  8109.                 LASX,   1,
  8110.                 Offset (0x1A),
  8111.                 ABPX,   1,
  8112.                     ,   2,
  8113.                 PDCX,   1,
  8114.                     ,   2,
  8115.                 PDSX,   1,
  8116.                 Offset (0x1B),
  8117.                 Offset (0x20),
  8118.                 Offset (0x22),
  8119.                 PSPX,   1,
  8120.                 Offset (0x98),
  8121.                     ,   30,
  8122.                 HPEX,   1,
  8123.                 PMEX,   1
  8124.             }
  8125.  
  8126.             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  8127.             {
  8128.                 Offset (0x9C),
  8129.                     ,   30,
  8130.                 HPSX,   1,
  8131.                 PMSX,   1
  8132.             }
  8133.  
  8134.             Device (PXSX)
  8135.             {
  8136.                 Name (_ADR, Zero)  // _ADR: Address
  8137.                 Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  8138.                 {
  8139.                     0x09,
  8140.                     0x04
  8141.                 })
  8142.             }
  8143.  
  8144.             Method (HPME, 0, Serialized)
  8145.             {
  8146.                 If (PMSX)
  8147.                 {
  8148.                     Store (0xC8, Local0)
  8149.                     While (Local0)
  8150.                     {
  8151.                         Store (One, PMSX)
  8152.                         If (PMSX)
  8153.                         {
  8154.                             Decrement (Local0)
  8155.                         }
  8156.                         Else
  8157.                         {
  8158.                             Store (Zero, Local0)
  8159.                         }
  8160.                     }
  8161.  
  8162.                     Notify (PXSX, 0x02)
  8163.                 }
  8164.             }
  8165.  
  8166.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  8167.             {
  8168.                 Return (GPRW (0x09, 0x04))
  8169.             }
  8170.  
  8171.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  8172.             {
  8173.                 If (PICM)
  8174.                 {
  8175.                     Return (AR09 ())
  8176.                 }
  8177.  
  8178.                 Return (PR09 ())
  8179.             }
  8180.         }
  8181.  
  8182.         Device (RP07)
  8183.         {
  8184.             Name (_ADR, 0x001C0006)  // _ADR: Address
  8185.             OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  8186.             Field (PXCS, AnyAcc, NoLock, Preserve)
  8187.             {
  8188.                 Offset (0x10),
  8189.                 L0SE,   1,
  8190.                 Offset (0x11),
  8191.                 Offset (0x12),
  8192.                     ,   13,
  8193.                 LASX,   1,
  8194.                 Offset (0x1A),
  8195.                 ABPX,   1,
  8196.                     ,   2,
  8197.                 PDCX,   1,
  8198.                     ,   2,
  8199.                 PDSX,   1,
  8200.                 Offset (0x1B),
  8201.                 Offset (0x20),
  8202.                 Offset (0x22),
  8203.                 PSPX,   1,
  8204.                 Offset (0x98),
  8205.                     ,   30,
  8206.                 HPEX,   1,
  8207.                 PMEX,   1
  8208.             }
  8209.  
  8210.             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  8211.             {
  8212.                 Offset (0x9C),
  8213.                     ,   30,
  8214.                 HPSX,   1,
  8215.                 PMSX,   1
  8216.             }
  8217.  
  8218.             Device (PXSX)
  8219.             {
  8220.                 Name (_ADR, Zero)  // _ADR: Address
  8221.                 Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  8222.                 {
  8223.                     0x09,
  8224.                     0x04
  8225.                 })
  8226.             }
  8227.  
  8228.             Method (HPME, 0, Serialized)
  8229.             {
  8230.                 If (PMSX)
  8231.                 {
  8232.                     Store (0xC8, Local0)
  8233.                     While (Local0)
  8234.                     {
  8235.                         Store (One, PMSX)
  8236.                         If (PMSX)
  8237.                         {
  8238.                             Decrement (Local0)
  8239.                         }
  8240.                         Else
  8241.                         {
  8242.                             Store (Zero, Local0)
  8243.                         }
  8244.                     }
  8245.  
  8246.                     Notify (PXSX, 0x02)
  8247.                 }
  8248.             }
  8249.  
  8250.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  8251.             {
  8252.                 Return (GPRW (0x09, 0x04))
  8253.             }
  8254.  
  8255.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  8256.             {
  8257.                 If (PICM)
  8258.                 {
  8259.                     Return (AR0E)
  8260.                 }
  8261.  
  8262.                 Return (PR0E)
  8263.             }
  8264.         }
  8265.  
  8266.         Device (RP08)
  8267.         {
  8268.             Name (_ADR, 0x001C0007)  // _ADR: Address
  8269.             OperationRegion (PXCS, PCI_Config, 0x40, 0xC0)
  8270.             Field (PXCS, AnyAcc, NoLock, Preserve)
  8271.             {
  8272.                 Offset (0x10),
  8273.                 L0SE,   1,
  8274.                 Offset (0x11),
  8275.                 Offset (0x12),
  8276.                     ,   13,
  8277.                 LASX,   1,
  8278.                 Offset (0x1A),
  8279.                 ABPX,   1,
  8280.                     ,   2,
  8281.                 PDCX,   1,
  8282.                     ,   2,
  8283.                 PDSX,   1,
  8284.                 Offset (0x1B),
  8285.                 Offset (0x20),
  8286.                 Offset (0x22),
  8287.                 PSPX,   1,
  8288.                 Offset (0x98),
  8289.                     ,   30,
  8290.                 HPEX,   1,
  8291.                 PMEX,   1
  8292.             }
  8293.  
  8294.             Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
  8295.             {
  8296.                 Offset (0x9C),
  8297.                     ,   30,
  8298.                 HPSX,   1,
  8299.                 PMSX,   1
  8300.             }
  8301.  
  8302.             Device (PXSX)
  8303.             {
  8304.                 Name (_ADR, Zero)  // _ADR: Address
  8305.                 Name (_PRW, Package (0x02)  // _PRW: Power Resources for Wake
  8306.                 {
  8307.                     0x09,
  8308.                     0x04
  8309.                 })
  8310.             }
  8311.  
  8312.             Method (HPME, 0, Serialized)
  8313.             {
  8314.                 If (PMSX)
  8315.                 {
  8316.                     Store (0xC8, Local0)
  8317.                     While (Local0)
  8318.                     {
  8319.                         Store (One, PMSX)
  8320.                         If (PMSX)
  8321.                         {
  8322.                             Decrement (Local0)
  8323.                         }
  8324.                         Else
  8325.                         {
  8326.                             Store (Zero, Local0)
  8327.                         }
  8328.                     }
  8329.  
  8330.                     Notify (PXSX, 0x02)
  8331.                 }
  8332.             }
  8333.  
  8334.             Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
  8335.             {
  8336.                 Return (GPRW (0x09, 0x04))
  8337.             }
  8338.  
  8339.             Method (_PRT, 0, NotSerialized)  // _PRT: PCI Routing Table
  8340.             {
  8341.                 If (PICM)
  8342.                 {
  8343.                     Return (AR0F)
  8344.                 }
  8345.  
  8346.                 Return (PR0F)
  8347.             }
  8348.         }
  8349.  
  8350.         Device (SAT0)
  8351.         {
  8352.             Name (_ADR, 0x001F0002)  // _ADR: Address
  8353.             Device (PRID)
  8354.             {
  8355.                 Name (_ADR, Zero)  // _ADR: Address
  8356.                 Method (_GTM, 0, NotSerialized)  // _GTM: Get Timing Mode
  8357.                 {
  8358.                     Name (PBUF, Buffer (0x14)
  8359.                     {
  8360.                         /* 0000 */   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  8361.                         /* 0008 */   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  8362.                         /* 0010 */   0x00, 0x00, 0x00, 0x00
  8363.                     })
  8364.                     CreateDWordField (PBUF, Zero, PIO0)
  8365.                     CreateDWordField (PBUF, 0x04, DMA0)
  8366.                     CreateDWordField (PBUF, 0x08, PIO1)
  8367.                     CreateDWordField (PBUF, 0x0C, DMA1)
  8368.                     CreateDWordField (PBUF, 0x10, FLAG)
  8369.                     Store (0x78, PIO0)
  8370.                     Store (0x14, DMA0)
  8371.                     Store (0x78, PIO1)
  8372.                     Store (0x14, DMA1)
  8373.                     Store (0x1F, FLAG)
  8374.                     Return (PBUF)
  8375.                 }
  8376.             }
  8377.  
  8378.             Device (SECD)
  8379.             {
  8380.                 Name (_ADR, One)  // _ADR: Address
  8381.                 Method (_GTM, 0, NotSerialized)  // _GTM: Get Timing Mode
  8382.                 {
  8383.                     Name (SBUF, Buffer (0x14)
  8384.                     {
  8385.                         /* 0000 */   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  8386.                         /* 0008 */   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  8387.                         /* 0010 */   0x00, 0x00, 0x00, 0x00
  8388.                     })
  8389.                     CreateDWordField (SBUF, Zero, PIO0)
  8390.                     CreateDWordField (SBUF, 0x04, DMA0)
  8391.                     CreateDWordField (SBUF, 0x08, PIO1)
  8392.                     CreateDWordField (SBUF, 0x0C, DMA1)
  8393.                     CreateDWordField (SBUF, 0x10, FLAG)
  8394.                     Store (0x78, PIO0)
  8395.                     Store (0x14, DMA0)
  8396.                     Store (0x78, PIO1)
  8397.                     Store (0x14, DMA1)
  8398.                     Store (0x1F, FLAG)
  8399.                     Return (SBUF)
  8400.                 }
  8401.             }
  8402.         }
  8403.  
  8404.         Device (SAT1)
  8405.         {
  8406.             Name (_ADR, 0x001F0005)  // _ADR: Address
  8407.             Device (PRID)
  8408.             {
  8409.                 Name (_ADR, Zero)  // _ADR: Address
  8410.                 Method (_GTM, 0, NotSerialized)  // _GTM: Get Timing Mode
  8411.                 {
  8412.                     Name (PBUF, Buffer (0x14)
  8413.                     {
  8414.                         /* 0000 */   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  8415.                         /* 0008 */   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  8416.                         /* 0010 */   0x00, 0x00, 0x00, 0x00
  8417.                     })
  8418.                     CreateDWordField (PBUF, Zero, PIO0)
  8419.                     CreateDWordField (PBUF, 0x04, DMA0)
  8420.                     CreateDWordField (PBUF, 0x08, PIO1)
  8421.                     CreateDWordField (PBUF, 0x0C, DMA1)
  8422.                     CreateDWordField (PBUF, 0x10, FLAG)
  8423.                     Store (0x78, PIO0)
  8424.                     Store (0x14, DMA0)
  8425.                     Store (0x78, PIO1)
  8426.                     Store (0x14, DMA1)
  8427.                     Store (0x1F, FLAG)
  8428.                     Return (PBUF)
  8429.                 }
  8430.             }
  8431.  
  8432.             Device (SECD)
  8433.             {
  8434.                 Name (_ADR, One)  // _ADR: Address
  8435.                 Method (_GTM, 0, NotSerialized)  // _GTM: Get Timing Mode
  8436.                 {
  8437.                     Name (SBUF, Buffer (0x14)
  8438.                     {
  8439.                         /* 0000 */   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  8440.                         /* 0008 */   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  8441.                         /* 0010 */   0x00, 0x00, 0x00, 0x00
  8442.                     })
  8443.                     CreateDWordField (SBUF, Zero, PIO0)
  8444.                     CreateDWordField (SBUF, 0x04, DMA0)
  8445.                     CreateDWordField (SBUF, 0x08, PIO1)
  8446.                     CreateDWordField (SBUF, 0x0C, DMA1)
  8447.                     CreateDWordField (SBUF, 0x10, FLAG)
  8448.                     Store (0x78, PIO0)
  8449.                     Store (0x14, DMA0)
  8450.                     Store (0x78, PIO1)
  8451.                     Store (0x14, DMA1)
  8452.                     Store (0x1F, FLAG)
  8453.                     Return (SBUF)
  8454.                 }
  8455.             }
  8456.         }
  8457.  
  8458.         Device (SBUS)
  8459.         {
  8460.             Name (_ADR, 0x001F0003)  // _ADR: Address
  8461.             OperationRegion (SMBP, PCI_Config, 0x40, 0xC0)
  8462.             Field (SMBP, DWordAcc, NoLock, Preserve)
  8463.             {
  8464.                     ,   2,
  8465.                 I2CE,   1
  8466.             }
  8467.  
  8468.             OperationRegion (SMPB, PCI_Config, 0x20, 0x04)
  8469.             Field (SMPB, DWordAcc, NoLock, Preserve)
  8470.             {
  8471.                     ,   5,
  8472.                 SBAR,   11
  8473.             }
  8474.  
  8475.             OperationRegion (SMBI, SystemIO, ShiftLeft (SBAR, 0x05), 0x10)
  8476.             Field (SMBI, ByteAcc, NoLock, Preserve)
  8477.             {
  8478.                 HSTS,   8,
  8479.                 Offset (0x02),
  8480.                 HCON,   8,
  8481.                 HCOM,   8,
  8482.                 TXSA,   8,
  8483.                 DAT0,   8,
  8484.                 DAT1,   8,
  8485.                 HBDR,   8,
  8486.                 PECR,   8,
  8487.                 RXSA,   8,
  8488.                 SDAT,   16
  8489.             }