Don't like ads? PRO users don't see any ads ;-)
Guest

ikbendeman

By: a guest on Dec 16th, 2009  |  syntax: None  |  size: 327.56 KB  |  hits: 137  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. /*
  2.  * Intel ACPI Component Architecture
  3.  * AML Disassembler version 20070320
  4.  *
  5.  * Disassembly of /root/dv5-1004nr.dst, Wed Dec 16 23:38:07 2009
  6.  *
  7.  *
  8.  * Original Table Header:
  9.  *     Signature        "DSDT"
  10.  *     Length           0x00009A91 (39569)
  11.  *     Revision         0x01
  12.  *     OEM ID           "HP    "
  13.  *     OEM Table ID     "30F2    "
  14.  *     OEM Revision     0xF0000000 (4026531840)
  15.  *     Creator ID       "MSFT"
  16.  *     Creator Revision 0x01000013 (16777235)
  17.  */
  18. DefinitionBlock ("/root/dv5-1004nr.aml", "DSDT", 1, "HP    ", "30F2    ", 0xF0000000)
  19. {
  20.     OperationRegion (SSMI, SystemIO, 0x0F80, One)
  21.     Field (SSMI, ByteAcc, NoLock, Preserve)
  22.     {
  23.         TRP0,   8
  24.     }
  25.  
  26.     OperationRegion (DBG0, SystemIO, 0x80, One)
  27.     Field (DBG0, ByteAcc, NoLock, Preserve)
  28.     {
  29.         IO80,   8
  30.     }
  31.  
  32.     OperationRegion (ACMS, SystemIO, 0x72, 0x02)
  33.     Field (ACMS, ByteAcc, NoLock, Preserve)
  34.     {
  35.         INDX,   8,
  36.         DATA,   8
  37.     }
  38.  
  39.     IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
  40.     {
  41.                 Offset (0xC0),
  42.         BTWL,   2,
  43.         BTLS,   1,
  44.         WWLS,   1,
  45.         BWLS,   1,
  46.                 Offset (0xC2),
  47.         IVIM,   8,
  48.                 Offset (0xC5),
  49.         BRAC,   8,
  50.         BRDC,   8,
  51.         VRAM,   8,
  52.         WPES,   8,
  53.                 Offset (0xEE),
  54.             ,   3,
  55.         S3RW,   1
  56.     }
  57.  
  58.     OperationRegion (PSMI, SystemIO, 0xB0, 0x02)
  59.     Field (PSMI, ByteAcc, NoLock, Preserve)
  60.     {
  61.         APMC,   8,
  62.         APMD,   8
  63.     }
  64.  
  65.     OperationRegion (PMRG, SystemIO, 0x0CD6, 0x02)
  66.     Field (PMRG, ByteAcc, NoLock, Preserve)
  67.     {
  68.         PMRI,   8,
  69.         PMRD,   8
  70.     }
  71.  
  72.     IndexField (PMRI, PMRD, ByteAcc, NoLock, Preserve)
  73.     {
  74.             ,   1,
  75.         TM1E,   1,
  76.         TM2E,   1,
  77.                 Offset (0x01),
  78.             ,   1,
  79.         TM1S,   1,
  80.         TM2S,   1,
  81.                 Offset (0x04),
  82.             ,   7,
  83.         SLPS,   1,
  84.                 Offset (0x07),
  85.             ,   7,
  86.         CLPS,   1,
  87.                 Offset (0x10),
  88.             ,   6,
  89.         PWDE,   1,
  90.                 Offset (0x1C),
  91.             ,   3,
  92.         MKME,   1,
  93.         PI3E,   1,
  94.         PI2E,   1,
  95.         PI1E,   1,
  96.         PI0E,   1,
  97.             ,   3,
  98.         MKMS,   1,
  99.         PI3S,   1,
  100.         PI2S,   1,
  101.         PI1S,   1,
  102.         PI0S,   1,
  103.                 Offset (0x20),
  104.         P1EB,   16,
  105.                 Offset (0x36),
  106.             ,   6,
  107.         GV6P,   1,
  108.         GV7P,   1,
  109.             ,   3,
  110.         GM0P,   1,
  111.         GM1P,   1,
  112.         GM2P,   1,
  113.         GM3P,   1,
  114.         GM8P,   1,
  115.             ,   1,
  116.         GM4P,   1,
  117.         GM5P,   1,
  118.             ,   1,
  119.         GM6P,   1,
  120.         GM7P,   1,
  121.                 Offset (0x3B),
  122.         GPX0,   1,
  123.         GPX4,   1,
  124.         GPX5,   1,
  125.         GPX1,   1,
  126.         GPX6,   1,
  127.         GPX7,   1,
  128.         GPX2,   1,
  129.         GPX3,   1,
  130.                 Offset (0x55),
  131.         SPRE,   1,
  132.             ,   1,
  133.             ,   1,
  134.         EPNM,   1,
  135.         DPPF,   1,
  136.         FNGS,   1,
  137.                 Offset (0x61),
  138.             ,   7,
  139.         R617,   1,
  140.                 Offset (0x65),
  141.             ,   4,
  142.         RSTU,   1,
  143.                 Offset (0x68),
  144.             ,   3,
  145.         TPDE,   1,
  146.             ,   1,
  147.                 Offset (0x92),
  148.             ,   7,
  149.         GV7S,   1,
  150.                 Offset (0x9A),
  151.             ,   7,
  152.         HECO,   1,
  153.                 Offset (0xA8),
  154.         TPE0,   1,
  155.         TPE1,   1,
  156.         TPE2,   1,
  157.         TPE3,   1
  158.     }
  159.  
  160.     OperationRegion (P1E0, SystemIO, P1EB, 0x04)
  161.     Field (P1E0, ByteAcc, NoLock, Preserve)
  162.     {
  163.             ,   14,
  164.         PEWS,   1,
  165.         WSTA,   1,
  166.             ,   14,
  167.         PEWD,   1
  168.     }
  169.  
  170.     OperationRegion (IOCC, SystemIO, 0x0400, 0x80)
  171.     Field (IOCC, ByteAcc, NoLock, Preserve)
  172.     {
  173.                 Offset (0x01),
  174.             ,   2,
  175.         RTCS,   1
  176.     }
  177.  
  178.     Name (PCM1, Zero)
  179.     Name (IW1S, Zero)
  180.     Name (IW2S, Zero)
  181.     Method (OT80, 1, NotSerialized)
  182.     {
  183.         Store (Arg0, APMD)
  184.         Store (0xE5, APMC)
  185.         Stall (0xFF)
  186.         Stall (0xFF)
  187.         Stall (0xFF)
  188.         Stall (0xFF)
  189.         Stall (0xFF)
  190.         Stall (0xFF)
  191.     }
  192.  
  193.     Name (PS48, Zero)
  194.     Name (PS49, Zero)
  195.     Name (PS4A, Zero)
  196.     Name (PS4B, Zero)
  197.     Name (PRWP, Package (0x02)
  198.     {
  199.         Zero,
  200.         Zero
  201.     })
  202.     Method (GPRW, 2, NotSerialized)
  203.     {
  204.         Store (Arg0, Index (PRWP, Zero))
  205.         Store (Arg1, Index (PRWP, One))
  206.         If (LAnd (LEqual (DAS3, Zero), LEqual (DAS1, Zero)))
  207.         {
  208.             If (LLessEqual (Arg1, 0x03))
  209.             {
  210.                 Store (Zero, Index (PRWP, One))
  211.             }
  212.         }
  213.         Else
  214.         {
  215.             If (LAnd (LEqual (DAS3, Zero), LEqual (Arg1, 0x03)))
  216.             {
  217.                 Store (One, Index (PRWP, One))
  218.             }
  219.  
  220.             If (LAnd (LEqual (DAS1, Zero), LEqual (Arg1, One)))
  221.             {
  222.                 Store (Zero, Index (PRWP, One))
  223.             }
  224.         }
  225.  
  226.         Return (PRWP)
  227.     }
  228.  
  229.     OperationRegion (PCFG, SystemMemory, 0xE0000000, 0x10000000)
  230.     Field (PCFG, AnyAcc, NoLock, Preserve)
  231.     {
  232.                 Offset (0x88024),
  233.         STB5,   32,
  234.                 Offset (0x90042),
  235.         PT0D,   1,
  236.         PT1D,   1,
  237.         PT2D,   1,
  238.         PT3D,   1,
  239.         PT4D,   1,
  240.         PT5D,   1,
  241.         PT6D,   1,
  242.         PT7D,   1,
  243.         PT8D,   1,
  244.         PT9D,   1
  245.     }
  246.  
  247.     OperationRegion (BAR, SystemMemory, STB5, 0x1000)
  248.     Field (BAR, AnyAcc, NoLock, Preserve)
  249.     {
  250.                 Offset (0x120),
  251.             ,   7,
  252.         PMBY,   1,
  253.                 Offset (0x128),
  254.         PMS0,   4,
  255.                 Offset (0x129),
  256.         PMS1,   4,
  257.                 Offset (0x12C),
  258.         DET0,   4,
  259.                 Offset (0x130),
  260.                 Offset (0x132),
  261.         PRC0,   1,
  262.                 Offset (0x1A0),
  263.             ,   7,
  264.         SMBY,   1,
  265.                 Offset (0x1A8),
  266.         SMS0,   4,
  267.                 Offset (0x1A9),
  268.         SMS1,   4,
  269.                 Offset (0x1AC),
  270.         DET1,   4,
  271.                 Offset (0x1B0),
  272.                 Offset (0x1B2),
  273.         PRC1,   1,
  274.                 Offset (0x220),
  275.             ,   7,
  276.         PSBY,   1,
  277.                 Offset (0x228),
  278.         PSS0,   4,
  279.                 Offset (0x229),
  280.         PSS1,   4,
  281.                 Offset (0x22C),
  282.         DET2,   4,
  283.                 Offset (0x230),
  284.                 Offset (0x232),
  285.         PRC2,   1,
  286.                 Offset (0x2A0),
  287.             ,   7,
  288.         SSBY,   1,
  289.                 Offset (0x2A8),
  290.         SSS0,   4,
  291.                 Offset (0x2A9),
  292.         SSS1,   4,
  293.                 Offset (0x2AC),
  294.         DET3,   4,
  295.                 Offset (0x2B0),
  296.                 Offset (0x2B2),
  297.         PRC3,   1
  298.     }
  299.  
  300.     Method (SPTS, 1, NotSerialized)
  301.     {
  302.         If (LEqual (Arg0, 0x03))
  303.         {
  304.             Store (Zero, RSTU)
  305.         }
  306.  
  307.         Store (One, CLPS)
  308.         Store (One, SLPS)
  309.         Store (Zero, PWDE)
  310.     }
  311.  
  312.     Method (SWAK, 1, NotSerialized)
  313.     {
  314.         Store (One, HECO)
  315.         If (LEqual (Arg0, 0x03))
  316.         {
  317.             Store (One, RSTU)
  318.         }
  319.  
  320.         Store (PEWS, PEWS)
  321.         Store (One, PWDE)
  322.         Store (Zero, PEWD)
  323.     }
  324.  
  325.     Method (TRMD, 1, NotSerialized)
  326.     {
  327.         Store (Arg0, SPRE)
  328.         Store (Arg0, TPDE)
  329.     }
  330.  
  331.     Method (CHKH, 0, NotSerialized)
  332.     {
  333.         Store (\_SB.PCI0.SMBS.GEVS, Local0)
  334.         If (And (Local0, 0x10))
  335.         {
  336.             Store (Zero, \_SB.PCI0.SMBS.GE4T)
  337.         }
  338.         Else
  339.         {
  340.             Store (One, \_SB.PCI0.SMBS.GE4T)
  341.         }
  342.     }
  343.  
  344.     Method (TRAP, 1, Serialized)
  345.     {
  346.         Store (Arg0, SMIF)
  347.         Store (Zero, TRP0)
  348.         Return (SMIF)
  349.     }
  350.  
  351.     OperationRegion (MBOX, SystemMemory, 0xAFEBEA18, 0x000002BD)
  352.     Field (MBOX, AnyAcc, NoLock, Preserve)
  353.     {
  354.         PCI1,   8,
  355.         PCI2,   8,
  356.         PCI3,   8,
  357.         PCI4,   8,
  358.         PCI5,   8,
  359.         PCI6,   8,
  360.         PCI7,   8,
  361.         PCI8,   8,
  362.         NLCK,   8,
  363.         ZIPE,   8,
  364.         COMA,   8,
  365.         CAIO,   8,
  366.         CAIP,   8,
  367.         CAMD,   8,
  368.         CADA,   8,
  369.         COMB,   8,
  370.         CBIO,   8,
  371.         CBIP,   8,
  372.         CBMD,   8,
  373.         CBDA,   8,
  374.         FHSD,   8,
  375.         COMC,   8,
  376.         CCIO,   8,
  377.         CCIP,   8,
  378.         CCMD,   8,
  379.         CCDA,   8,
  380.         COMD,   8,
  381.         CDIO,   8,
  382.         CDIP,   8,
  383.         CDMD,   8,
  384.         CDDA,   8,
  385.         LPT1,   8,
  386.         L1IO,   8,
  387.         L1IP,   8,
  388.         L1MD,   8,
  389.         L1DA,   8,
  390.         LPT2,   8,
  391.         L2IO,   8,
  392.         L2IP,   8,
  393.         L2MD,   8,
  394.         L2DA,   8,
  395.         LPT3,   8,
  396.         L3IO,   8,
  397.         L3IP,   8,
  398.         L3MD,   8,
  399.         L3DA,   8,
  400.         FDDC,   8,
  401.         FDWP,   8,
  402.         HGMP,   8,
  403.         LGMP,   8,
  404.         MIDI,   8,
  405.         AZLA,   8,
  406.         AUDO,   8,
  407.         MODM,   8,
  408.         IDEC,   8,
  409.         SSED,   8,
  410.         PACT,   8,
  411.         SCFG,   8,
  412.         AMOD,   8,
  413.         IMOD,   8,
  414.         LCFG,   8,
  415.         IDLY,   8,
  416.         PMTP,   8,
  417.         PMIO,   8,
  418.         PMBM,   8,
  419.         PMTM,   8,
  420.         PSTP,   8,
  421.         PSIO,   8,
  422.         PSBM,   8,
  423.         PSTM,   8,
  424.         IDE0,   8,
  425.         IDE1,   8,
  426.         IDE2,   8,
  427.         IDE3,   8,
  428.         IDE4,   8,
  429.         IDE5,   8,
  430.         IDE6,   8,
  431.         IDE7,   8,
  432.         HIUB,   8,
  433.         LUBS,   8,
  434.         PLYT,   8,
  435.         EDCG,   8,
  436.         SDFY,   8,
  437.         SDTC,   8,
  438.         SDRP,   8,
  439.         SDCL,   8,
  440.         SDRC,   8,
  441.         SDRE,   8,
  442.         FC2L,   8,
  443.         FC3L,   8,
  444.         FCS4,   8,
  445.         APIM,   8,
  446.         HPTS,   8,
  447.         HPTA,   8,
  448.         EMAS,   8,
  449.         VGAO,   8,
  450.         SOFF,   8,
  451.         KBPO,   8,
  452.         MSPO,   8,
  453.         USBB,   8,
  454.         EVTL,   8,
  455.         SYBE,   8,
  456.         ETLC,   8,
  457.         AC30,   8,
  458.         TPMD,   8,
  459.         TPMO,   8,
  460.         TPMC,   8,
  461.         TPMM,   8,
  462.         TPCC,   8,
  463.         TPLC,   8,
  464.         TPLR,   32,
  465.         QBOT,   8,
  466.         QTBT,   8,
  467.         PBOT,   8,
  468.         M256,   8,
  469.         PEGF,   8,
  470.         ORTS,   16,
  471.         BMTP,   8,
  472.         BNPT,   8,
  473.         LNMT,   8,
  474.         NBTO,   8,
  475.         NABD,   8,
  476.         NEBD,   8,
  477.         NLBD,   8,
  478.         DFBT,   16,
  479.         NPSP,   16,
  480.         LANG,   8,
  481.         UACL,   8,
  482.         SUPS,   8,
  483.         DVET,   8,
  484.         S3RS,   8,
  485.         DAS1,   8,
  486.         DAS3,   8,
  487.         WKPM,   8,
  488.         WKMD,   8,
  489.         WKS5,   8,
  490.         HOUR,   8,
  491.         MINS,   8,
  492.         SECS,   8,
  493.         DOFM,   8,
  494.         NBTV,   64,
  495.         BTOD,   64,
  496.         SPVP,   16,
  497.         POPD,   16,
  498.         USPW,   16,
  499.         HDPW,   8,
  500.         KRSV,   488,
  501.         LIMF,   8,
  502.         LIMS,   8,
  503.         IGMT,   8,
  504.         PWST,   8,
  505.         PNOW,   8,
  506.         FNON,   8,
  507.         TRON,   8,
  508.         PCRR,   8,
  509.         C4EN,   8,
  510.         C43D,   8,
  511.         MPST,   8,
  512.         VTSP,   8,
  513.         VTFT,   8,
  514.         PFMP,   8,
  515.         PVAT,   8,
  516.         OHC0,   8,
  517.         OHC1,   8,
  518.         OHC2,   8,
  519.         OHC3,   8,
  520.         OHC4,   8,
  521.         EHC0,   8,
  522.         EHC1,   8,
  523.         SATE,   8,
  524.         EC1E,   8,
  525.         ESVM,   8,
  526.         MCLC,   8,
  527.         MCLV,   8,
  528.         HTFR,   8,
  529.         HTWD,   8,
  530.         GSPL,   8,
  531.         P2G2,   8,
  532.         P2LA,   8,
  533.         P2LW,   8,
  534.         P2SP,   8,
  535.         P2LI,   8,
  536.         P2CM,   8,
  537.         P4G2,   8,
  538.         P4LA,   8,
  539.         P4LI,   8,
  540.         P4CM,   8,
  541.         P5G2,   8,
  542.         P5LA,   8,
  543.         P5LI,   8,
  544.         P5CM,   8,
  545.         P6G2,   8,
  546.         P6LA,   8,
  547.         P6LI,   8,
  548.         P6CM,   8,
  549.         P7G2,   8,
  550.         P7LA,   8,
  551.         P7LI,   8,
  552.         P7CM,   8,
  553.         P8LA,   8,
  554.         P8VT,   8,
  555.         P8CM,   8,
  556.         P9G2,   8,
  557.         P9LA,   8,
  558.         P9LI,   8,
  559.         P9CM,   8,
  560.         PAG2,   8,
  561.         PALA,   8,
  562.         PALI,   8,
  563.         PACM,   8,
  564.         UMAR,   8,
  565.         CPST,   8,
  566.         OSCS,   8,
  567.         SSSW,   8,
  568.         OBLS,   8,
  569.         CRSV,   1856,
  570.         FDLY,   8,
  571.         CDBT,   8,
  572.         FPBT,   8,
  573.         FF11,   8,
  574.         CPBT,   8,
  575.         CPTR,   8,
  576.         DSME,   8,
  577.         D3E,    8,
  578.         FANO,   8,
  579.         DISP,   8,
  580.         OSFG,   8,
  581.         ORSV,   472,
  582.         DRSV,   800
  583.     }
  584.  
  585.     Name (ECON, Zero)
  586.     OperationRegion (NVST, SystemMemory, 0xAFEBECD5, 0x000001A2)
  587.     Field (NVST, AnyAcc, Lock, Preserve)
  588.     {
  589.         SMIF,   8,
  590.         PRM0,   8,
  591.         PRM1,   8,
  592.         BRTL,   8,
  593.         TLST,   8,
  594.         IGDS,   8,
  595.         LCDA,   16,
  596.         CSTE,   16,
  597.         NSTE,   16,
  598.         CADL,   16,
  599.         PADL,   16,
  600.         LIDS,   8,
  601.         PWRS,   8,
  602.         BVAL,   32,
  603.         ADDL,   16,
  604.         BCMD,   8,
  605.         DID,    32,
  606.         INFO,   2048,
  607.         RESD,   792,
  608.         VGAF,   8,
  609.         WDI0,   8,
  610.         WDI1,   8,
  611.         WDI2,   8,
  612.         WDI3,   8,
  613.         WSI0,   8,
  614.         WSI1,   8,
  615.         WSI2,   8,
  616.         WSI3,   8,
  617.         DCKS,   8,
  618.         SID0,   8,
  619.         SID1,   8,
  620.         SID2,   8,
  621.         SID3,   8,
  622.         SID4,   8,
  623.         PPCM,   8,
  624.         PPCN,   8,
  625.         NCPU,   8,
  626.         MCPU,   8,
  627.         ECPU,   8,
  628.         EXTM,   8,
  629.         CMTF,   8,
  630.         CMTI,   32,
  631.         CMTO,   8,
  632.         TOML,   8,
  633.         TOMH,   8,
  634.         CEBP,   8,
  635.         C0LS,   8,
  636.         C1LS,   8,
  637.         C0HS,   8,
  638.         C1HS,   8
  639.     }
  640.  
  641.     Method (SCMP, 2, NotSerialized)
  642.     {
  643.         Name (STG1, Buffer (0x50) {})
  644.         Name (STG2, Buffer (0x50) {})
  645.         Store (Arg0, STG1)
  646.         Store (Arg1, STG2)
  647.         If (LNotEqual (SizeOf (Arg0), SizeOf (Arg1)))
  648.         {
  649.             Return (Zero)
  650.         }
  651.  
  652.         Store (Zero, Local0)
  653.         While (LLess (Local0, SizeOf (Arg0)))
  654.         {
  655.             If (LNotEqual (DerefOf (Index (STG1, Local0)), DerefOf (Index (
  656.                 STG2, Local0))))
  657.             {
  658.                 Return (Zero)
  659.             }
  660.  
  661.             Increment (Local0)
  662.         }
  663.  
  664.         Return (One)
  665.     }
  666.  
  667.     Name (WNOS, Zero)
  668.     Method (CKOS, 0, NotSerialized)
  669.     {
  670.         If (LEqual (WNOS, Zero))
  671.         {
  672.             If (SCMP (_OS, "Microsoft Windows"))
  673.             {
  674.                 Store (One, WNOS)
  675.             }
  676.  
  677.             If (SCMP (_OS, "Microsoft Windows NT"))
  678.             {
  679.                 Store (0x02, WNOS)
  680.             }
  681.  
  682.             If (SCMP (_OS, "Microsoft WindowsME: Millennium Edition"))
  683.             {
  684.                 Store (0x03, WNOS)
  685.             }
  686.  
  687.             If (CondRefOf (_OSI, Local0))
  688.             {
  689.                 If (SCMP (_OS, "Windows 2006"))
  690.                 {
  691.                     Store (0x05, WNOS)
  692.                 }
  693.                 Else
  694.                 {
  695.                     Store (0x04, WNOS)
  696.                 }
  697.             }
  698.         }
  699.  
  700.         Return (WNOS)
  701.     }
  702.  
  703.     Name (MYOS, Zero)
  704.     Name (HTTS, Zero)
  705.     Method (SEQL, 2, Serialized)
  706.     {
  707.         Store (SizeOf (Arg0), Local0)
  708.         Store (SizeOf (Arg1), Local1)
  709.         If (LNotEqual (Local0, Local1))
  710.         {
  711.             Return (Zero)
  712.         }
  713.  
  714.         Name (BUF0, Buffer (Local0) {})
  715.         Store (Arg0, BUF0)
  716.         Name (BUF1, Buffer (Local0) {})
  717.         Store (Arg1, BUF1)
  718.         Store (Zero, Local2)
  719.         While (LLess (Local2, Local0))
  720.         {
  721.             Store (DerefOf (Index (BUF0, Local2)), Local3)
  722.             Store (DerefOf (Index (BUF1, Local2)), Local4)
  723.             If (LNotEqual (Local3, Local4))
  724.             {
  725.                 Return (Zero)
  726.             }
  727.  
  728.             Increment (Local2)
  729.         }
  730.  
  731.         Return (One)
  732.     }
  733.  
  734.     Name (OSTB, Ones)
  735.     Name (TPOS, Zero)
  736.     Name (LINX, Zero)
  737.     Method (OSTP, 0, NotSerialized)
  738.     {
  739.         If (LEqual (OSTB, Ones))
  740.         {
  741.             If (CondRefOf (_OSI, Local0))
  742.             {
  743.                 Store (Zero, OSTB)
  744.                 Store (Zero, TPOS)
  745.                 If (_OSI ("Windows 2001"))
  746.                 {
  747.                     Store (0x08, OSTB)
  748.                     Store (0x08, TPOS)
  749.                 }
  750.  
  751.                 If (_OSI ("Windows 2001.1"))
  752.                 {
  753.                     Store (0x20, OSTB)
  754.                     Store (0x20, TPOS)
  755.                 }
  756.  
  757.                 If (_OSI ("Windows 2001 SP1"))
  758.                 {
  759.                     Store (0x10, OSTB)
  760.                     Store (0x10, TPOS)
  761.                 }
  762.  
  763.                 If (_OSI ("Windows 2001 SP2"))
  764.                 {
  765.                     Store (0x11, OSTB)
  766.                     Store (0x11, TPOS)
  767.                 }
  768.  
  769.                 If (_OSI ("Windows 2001 SP3"))
  770.                 {
  771.                     Store (0x12, OSTB)
  772.                     Store (0x12, TPOS)
  773.                 }
  774.  
  775.                 If (_OSI ("Windows 2006"))
  776.                 {
  777.                     Store (0x40, OSTB)
  778.                     Store (0x40, TPOS)
  779.                 }
  780.  
  781.                 If (_OSI ("Windows 2006 SP1"))
  782.                 {
  783.                     Store (0x41, OSTB)
  784.                     Store (0x40, TPOS)
  785.                 }
  786.  
  787.                 If (_OSI ("Linux"))
  788.                 {
  789.                     Store (One, LINX)
  790.                     Store (0x80, OSTB)
  791.                     Store (0x80, TPOS)
  792.                 }
  793.             }
  794.             Else
  795.             {
  796.                 If (CondRefOf (_OS, Local0))
  797.                 {
  798.                     If (SEQL (_OS, "Microsoft Windows"))
  799.                     {
  800.                         Store (One, OSTB)
  801.                         Store (One, TPOS)
  802.                     }
  803.                     Else
  804.                     {
  805.                         If (SEQL (_OS, "Microsoft WindowsME: Millennium Edition"))
  806.                         {
  807.                             Store (0x02, OSTB)
  808.                             Store (0x02, TPOS)
  809.                         }
  810.                         Else
  811.                         {
  812.                             If (SEQL (_OS, "Microsoft Windows NT"))
  813.                             {
  814.                                 Store (0x04, OSTB)
  815.                                 Store (0x04, TPOS)
  816.                             }
  817.                             Else
  818.                             {
  819.                                 Store (Zero, OSTB)
  820.                                 Store (Zero, TPOS)
  821.                             }
  822.                         }
  823.                     }
  824.                 }
  825.                 Else
  826.                 {
  827.                     Store (Zero, OSTB)
  828.                     Store (Zero, TPOS)
  829.                 }
  830.             }
  831.         }
  832.  
  833.         Return (OSTB)
  834.     }
  835.  
  836.     Scope (_PR)
  837.     {
  838.         Processor (CPU0, 0x00, 0x00000410, 0x06) {}
  839.         Processor (CPU1, 0x01, 0x00000000, 0x00) {}
  840.     }
  841.  
  842.     Name (_S0, Package (0x04)
  843.     {
  844.         Zero,
  845.         Zero,
  846.         Zero,
  847.         Zero
  848.     })
  849.     If (LEqual (DAS3, One))
  850.     {
  851.         Name (_S3, Package (0x04)
  852.         {
  853.             0x03,
  854.             Zero,
  855.             Zero,
  856.             Zero
  857.         })
  858.     }
  859.  
  860.     Name (_S4, Package (0x04)
  861.     {
  862.         0x04,
  863.         Zero,
  864.         Zero,
  865.         Zero
  866.     })
  867.     Name (_S5, Package (0x04)
  868.     {
  869.         0x05,
  870.         Zero,
  871.         Zero,
  872.         Zero
  873.     })
  874.     Scope (_GPE)
  875.     {
  876.         Method (_L03, 0, NotSerialized)
  877.         {
  878.             Notify (\_SB.PCI0.LPC0.PS2K, 0x02)
  879.             Notify (\_SB.PCI0.LPC0.PS2M, 0x02)
  880.             Notify (\_SB.PWRB, 0x02)
  881.         }
  882.  
  883.         Method (_L04, 0, NotSerialized)
  884.         {
  885.             Name (HP4F, Zero)
  886.             If (\_SB.PCI0.SMBS.GE4T)
  887.             {
  888.                 Sleep (0x14)
  889.                 Store (\_SB.PCI0.SMBS.GEVS, Local0)
  890.                 If (And (Local0, 0x10))
  891.                 {
  892.                     Store (Zero, \_SB.PCI0.SMBS.GE4T)
  893.                     Store ("HotPlug:04: Removal Event", Debug)
  894.                     Store (0x08, \_SB.PCI0.PB4.SLST)
  895.                     Store (\_SB.PCI0.PB4.NCRD.DVID, Local7)
  896.                     Sleep (0x0A)
  897.                     Store (One, Local4)
  898.                     Store (0x05, Local5)
  899.                     While (LAnd (Local4, Local5))
  900.                     {
  901.                         Store (\_SB.PCI0.PB4.XPRD (0xA5), Local6)
  902.                         And (Local6, 0x3F, Local6)
  903.                         If (LLessEqual (Local6, 0x04))
  904.                         {
  905.                             Store (Zero, Local4)
  906.                         }
  907.                         Else
  908.                         {
  909.                             Store (\_SB.PCI0.PB4.NCRD.DVID, Local7)
  910.                             Sleep (0x05)
  911.                             Decrement (Local5)
  912.                         }
  913.                     }
  914.  
  915.                     \_SB.PCI0.XPTR (0x04, Zero)
  916.                     \_SB.PCI0.PB4.XPLP (Zero)
  917.                     Store (One, HP4F)
  918.                 }
  919.             }
  920.             Else
  921.             {
  922.                 Sleep (0x14)
  923.                 Store (\_SB.PCI0.SMBS.GEVS, Local0)
  924.                 If (LNot (And (Local0, 0x10)))
  925.                 {
  926.                     Store (One, \_SB.PCI0.SMBS.GE4T)
  927.                     Store ("HotPlug:04: Insertion Event", Debug)
  928.                     Store (Zero, HP4F)
  929.                     \_SB.PCI0.PB4.XPLP (One)
  930.                     Sleep (0xC8)
  931.                     \_SB.PCI0.XPTR (0x04, One)
  932.                     Sleep (0x14)
  933.                     Store (Zero, Local2)
  934.                     While (LLess (Local2, 0x0F))
  935.                     {
  936.                         Store (0x08, \_SB.PCI0.PB4.SLST)
  937.                         Store (One, Local4)
  938.                         Store (0xC8, Local5)
  939.                         While (LAnd (Local4, Local5))
  940.                         {
  941.                             Store (\_SB.PCI0.PB4.XPRD (0xA5), Local6)
  942.                             And (Local6, 0x3F, Local6)
  943.                             If (LEqual (Local6, 0x10))
  944.                             {
  945.                                 Store ("HotPlug:04: TrainingState=0x10", Debug)
  946.                                 Store (Zero, Local4)
  947.                             }
  948.                             Else
  949.                             {
  950.                                 Sleep (0x05)
  951.                                 Decrement (Local5)
  952.                             }
  953.                         }
  954.  
  955.                         If (LNot (Local4))
  956.                         {
  957.                             Store ("HotPlug:04: Check VC Negotiation Pending", Debug)
  958.                             Store (\_SB.PCI0.PB4.XPDL (), Local5)
  959.                             If (Local5)
  960.                             {
  961.                                 Store ("HotPlug:04: Retraining Link", Debug)
  962.                                 \_SB.PCI0.PB4.XPRT ()
  963.                                 Sleep (0x05)
  964.                                 Increment (Local2)
  965.                             }
  966.                             Else
  967.                             {
  968.                                 Store ("HotPlug:04: Device OK", Debug)
  969.                                 If (LEqual (\_SB.PCI0.PB4.XPR2 (), Ones))
  970.                                 {
  971.                                     Store (One, HP4F)
  972.                                     Store (0x10, Local2)
  973.                                 }
  974.                                 Else
  975.                                 {
  976.                                     Store ("HotPlug:04: Common Clock Retraining Failed", Debug)
  977.                                     Store (Zero, HP4F)
  978.                                     Store (0x10, Local2)
  979.                                 }
  980.                             }
  981.                         }
  982.                         Else
  983.                         {
  984.                             Store ("HotPlug:04: TrainingState Timeout", Debug)
  985.                             Store (0x10, Local2)
  986.                         }
  987.                     }
  988.  
  989.                     If (LNot (HP4F))
  990.                     {
  991.                         Store ("HotPlug:04: Insertion Failed: Disable Training & PowerDown", Debug)
  992.                         Store (\_SB.PCI0.PB4.NCRD.DVID, Local7)
  993.                         Sleep (0x0A)
  994.                         Store (One, Local4)
  995.                         Store (0x05, Local5)
  996.                         While (LAnd (Local4, Local5))
  997.                         {
  998.                             Store (\_SB.PCI0.PB4.XPRD (0xA5), Local6)
  999.                             And (Local6, 0x3F, Local6)
  1000.                             If (LLessEqual (Local6, 0x04))
  1001.                             {
  1002.                                 Store (Zero, Local4)
  1003.                             }
  1004.                             Else
  1005.                             {
  1006.                                 Store (\_SB.PCI0.PB4.NCRD.DVID, Local7)
  1007.                                 Sleep (0x05)
  1008.                                 Decrement (Local5)
  1009.                             }
  1010.                         }
  1011.  
  1012.                         \_SB.PCI0.XPTR (0x04, Zero)
  1013.                         \_SB.PCI0.PB4.XPLP (Zero)
  1014.                     }
  1015.                 }
  1016.             }
  1017.  
  1018.             If (HP4F)
  1019.             {
  1020.                 Notify (\_SB.PCI0.PB4, Zero)
  1021.             }
  1022.         }
  1023.  
  1024.         Method (_L12, 0, NotSerialized)
  1025.         {
  1026.             Notify (\_SB.PCI0.PB4, 0x02)
  1027.             Notify (\_SB.PCI0.PB5, 0x02)
  1028.             Notify (\_SB.PCI0.PB6, 0x02)
  1029.             Notify (\_SB.PCI0.PB7, 0x02)
  1030.             Notify (\_SB.PCI0.PB9, 0x02)
  1031.             Notify (\_SB.PCI0.PB10, 0x02)
  1032.             Notify (\_SB.PWRB, 0x02)
  1033.         }
  1034.  
  1035.         Method (_L07, 0, NotSerialized)
  1036.         {
  1037.             If (VGAF)
  1038.             {
  1039.                 If (D3E)
  1040.                 {
  1041.                     If (LNot (\_SB.PCI0.SMBS.G71C))
  1042.                     {
  1043.                         Store (One, \_SB.PCI0.SMBS.G71C)
  1044.                     }
  1045.  
  1046.                     Name (HPOK, Zero)
  1047.                     Sleep (0x14)
  1048.                     Store (\_SB.PCI0.SMBS.GEVS, Local0)
  1049.                     If (And (Local0, 0x80))
  1050.                     {
  1051.                         If (\_SB.PCI0.SMBS.GE7T)
  1052.                         {
  1053.                             Store (One, \_SB.PCI0.SMBS.GE7S)
  1054.                             Store (Zero, \_SB.PCI0.SMBS.GE7T)
  1055.                             Store (One, HPOK)
  1056.                             \_SB.PCI0.PB10.XPLP (One)
  1057.                             Sleep (0xC8)
  1058.                             \_SB.PCI0.XPTR (0x0A, One)
  1059.                             Sleep (0x14)
  1060.                             Store (Zero, Local2)
  1061.                             While (LLess (Local2, 0x0F))
  1062.                             {
  1063.                                 Store (0x08, \_SB.PCI0.PB10.SLST)
  1064.                                 Store (One, Local4)
  1065.                                 Store (0xC8, Local5)
  1066.                                 While (LAnd (Local4, Local5))
  1067.                                 {
  1068.                                     Store (\_SB.PCI0.PB10.XPRD (0xA5), Local6)
  1069.                                     And (Local6, 0x3F, Local6)
  1070.                                     If (LEqual (Local6, 0x10))
  1071.                                     {
  1072.                                         Store ("HotPlug:10: TrainingState=0x10", Debug)
  1073.                                         Store (Zero, Local4)
  1074.                                     }
  1075.                                     Else
  1076.                                     {
  1077.                                         Sleep (0x05)
  1078.                                         Decrement (Local5)
  1079.                                     }
  1080.                                 }
  1081.  
  1082.                                 If (LNot (Local4))
  1083.                                 {
  1084.                                     Store ("HotPlug:10: Check VC Negotiation Pending", Debug)
  1085.                                     Store (\_SB.PCI0.PB10.XPDL (), Local5)
  1086.                                     If (Local5)
  1087.                                     {
  1088.                                         Store ("HotPlug:10: Retraining Link", Debug)
  1089.                                         \_SB.PCI0.PB10.XPRT ()
  1090.                                         Sleep (0x05)
  1091.                                         Increment (Local2)
  1092.                                     }
  1093.                                     Else
  1094.                                     {
  1095.                                         Store ("HotPlug:10: Device OK", Debug)
  1096.                                         If (LEqual (\_SB.PCI0.PB10.XPR2 (), Ones))
  1097.                                         {
  1098.                                             Store (One, HPOK)
  1099.                                             Store (0x10, Local2)
  1100.                                         }
  1101.                                         Else
  1102.                                         {
  1103.                                             Store ("HotPlug:10: Common Clock Retraining Failed", Debug)
  1104.                                             Store (Zero, HPOK)
  1105.                                             Store (0x10, Local2)
  1106.                                         }
  1107.                                     }
  1108.                                 }
  1109.                                 Else
  1110.                                 {
  1111.                                     Store ("HotPlug:10: TrainingState Timeout", Debug)
  1112.                                     Store (0x10, Local2)
  1113.                                 }
  1114.                             }
  1115.                         }
  1116.                         Else
  1117.                         {
  1118.                             Store (0x10, Local2)
  1119.                         }
  1120.                     }
  1121.                     Else
  1122.                     {
  1123.                         If (LNot (\_SB.PCI0.SMBS.GE7T))
  1124.                         {
  1125.                             Store (One, \_SB.PCI0.SMBS.GE7S)
  1126.                             Store (One, \_SB.PCI0.SMBS.GE7T)
  1127.                             Store (0x08, \_SB.PCI0.PB10.SLST)
  1128.                             Store (\_SB.PCI0.PB10.J380.DVID, Local7)
  1129.                             Sleep (0x0A)
  1130.                             Store (One, Local4)
  1131.                             Store (0x05, Local5)
  1132.                             While (LAnd (Local4, Local5))
  1133.                             {
  1134.                                 Store (\_SB.PCI0.PB10.XPRD (0xA5), Local6)
  1135.                                 And (Local6, 0x3F, Local6)
  1136.                                 If (LLessEqual (Local6, 0x04))
  1137.                                 {
  1138.                                     Store (Zero, Local4)
  1139.                                 }
  1140.                                 Else
  1141.                                 {
  1142.                                     Store (\_SB.PCI0.PB10.J380.DVID, Local7)
  1143.                                     Sleep (0x05)
  1144.                                     Decrement (Local5)
  1145.                                 }
  1146.                             }
  1147.  
  1148.                             Store (One, HPOK)
  1149.                         }
  1150.                     }
  1151.  
  1152.                     If (HPOK)
  1153.                     {
  1154.                         If (And (\_SB.PCI0.PB10.SLST, 0x40))
  1155.                         {
  1156.                             Store (0x5A, APMC)
  1157.                             Stall (0xFF)
  1158.                             Stall (0xFF)
  1159.                             Stall (0xFF)
  1160.                             Stall (0xFF)
  1161.                             Stall (0xFF)
  1162.                             Stall (0xFF)
  1163.                             Notify (\_SB.PCI0.PB10, Zero)
  1164.                         }
  1165.                         Else
  1166.                         {
  1167.                             Notify (\_SB.PCI0.PB10, Zero)
  1168.                         }
  1169.                     }
  1170.                 }
  1171.             }
  1172.         }
  1173.     }
  1174.  
  1175.     Name (GPIC, Zero)
  1176.     Method (_PIC, 1, NotSerialized)
  1177.     {
  1178.         Store (Arg0, GPIC)
  1179.         If (GPIC)
  1180.         {
  1181.             \_SB.DSPI ()
  1182.         }
  1183.     }
  1184.  
  1185.     Name (SAV0, Zero)
  1186.     Name (SAV1, Zero)
  1187.     Method (_PTS, 1, NotSerialized)
  1188.     {
  1189.         Store (\_SB.PCI0.SMBS.GP13, SAV0)
  1190.         Store (\_SB.PCI0.SMBS.GP70, SAV1)
  1191.         SPTS (Arg0)
  1192.         Store (One, \_SB.PCI0.SMBS.SLPS)
  1193.         If (LEqual (Arg0, One))
  1194.         {
  1195.             Store (0x51, IO80)
  1196.             \_SB.S80H (0x51)
  1197.         }
  1198.         Else
  1199.         {
  1200.             If (LEqual (Arg0, 0x02)) {}
  1201.             Else
  1202.             {
  1203.                 If (LEqual (Arg0, 0x03))
  1204.                 {
  1205.                     Store (0x53, IO80)
  1206.                     \_SB.S80H (0x53)
  1207.                     Store (Zero, \_SB.PCI0.SMBS.GP13)
  1208.                     Store (Zero, \_SB.PCI0.SMBS.GP70)
  1209.                     \_SB.S80H (0x63)
  1210.                 }
  1211.                 Else
  1212.                 {
  1213.                     If (LEqual (Arg0, 0x04))
  1214.                     {
  1215.                         Store (0x54, IO80)
  1216.                         \_SB.S80H (0x54)
  1217.                         Store (One, \_SB.PCI0.SMBS.RSTU)
  1218.                         \_SB.S80H (0x64)
  1219.                         If (LEqual (Arg0, 0x05))
  1220.                         {
  1221.                             Store (0x55, IO80)
  1222.                             \_SB.S80H (0x55)
  1223.                             \_SB.GSMI (0x03)
  1224.                         }
  1225.                     }
  1226.                 }
  1227.             }
  1228.         }
  1229.     }
  1230.  
  1231.     Method (_WAK, 1, NotSerialized)
  1232.     {
  1233.         SWAK (Arg0)
  1234.         If (LEqual (Arg0, One))
  1235.         {
  1236.             Store (0xE1, IO80)
  1237.             \_SB.S80H (0xE1)
  1238.             Store (0xF1, \_SB.PCI0.P2P.PR4B)
  1239.         }
  1240.         Else
  1241.         {
  1242.             If (LEqual (Arg0, 0x03))
  1243.             {
  1244.                 Store (0xE3, IO80)
  1245.                 \_SB.S80H (0xE3)
  1246.                 CHKH ()
  1247.                 Store (SAV0, \_SB.PCI0.SMBS.GP13)
  1248.                 Store (SAV1, \_SB.PCI0.SMBS.GP70)
  1249.                 If (LNotEqual (S3RW, One))
  1250.                 {
  1251.                     Notify (\_SB.PWRB, 0x02)
  1252.                 }
  1253.             }
  1254.             Else
  1255.             {
  1256.                 If (LEqual (Arg0, 0x04))
  1257.                 {
  1258.                     Store (0xE4, IO80)
  1259.                     If (LEqual (GPIC, Zero)) {}
  1260.                     Else
  1261.                     {
  1262.                         \_SB.DSPI ()
  1263.                     }
  1264.  
  1265.                     \_SB.S80H (0xE4)
  1266.                     CHKH ()
  1267.                 }
  1268.             }
  1269.  
  1270.             If (LNotEqual (Arg0, 0x03))
  1271.             {
  1272.                 Notify (\_SB.PWRB, 0x02)
  1273.             }
  1274.  
  1275.             \_SB.PCI0.LPC0.EC0.NHSB ()
  1276.         }
  1277.  
  1278.         \_SB.PCI0.ACEL.INIT ()
  1279.         If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
  1280.         {
  1281.             If (VGAF)
  1282.             {
  1283.                 If (D3E)
  1284.                 {
  1285.                     Notify (\_SB.PCI0.PB10, Zero)
  1286.                 }
  1287.             }
  1288.         }
  1289.  
  1290.         Return (Zero)
  1291.     }
  1292.  
  1293.     Scope (_SB)
  1294.     {
  1295.         Device (PWRB)
  1296.         {
  1297.             Name (_HID, EisaId ("PNP0C0C"))
  1298.             Method (_STA, 0, NotSerialized)
  1299.             {
  1300.                 Return (0x0B)
  1301.             }
  1302.         }
  1303.  
  1304.         Device (SLPB)
  1305.         {
  1306.             Name (_HID, EisaId ("PNP0C0E"))
  1307.             Method (_STA, 0, NotSerialized)
  1308.             {
  1309.                 Return (0x0B)
  1310.             }
  1311.         }
  1312.  
  1313.         Device (PCI0)
  1314.         {
  1315.             Name (_HID, EisaId ("PNP0A08"))
  1316.             Name (_CID, 0x030AD041)
  1317.             Name (_ADR, Zero)
  1318.             OperationRegion (SCTH, PCI_Config, 0x7A, One)
  1319.             Field (SCTH, ByteAcc, NoLock, Preserve)
  1320.             {
  1321.                 RSMF,   1
  1322.             }
  1323.  
  1324.             Method (_INI, 0, NotSerialized)
  1325.             {
  1326.                 If (LEqual (GPIC, Zero)) {}
  1327.                 Else
  1328.                 {
  1329.                     DSPI ()
  1330.                 }
  1331.  
  1332.                 OSTP ()
  1333.                 CHKH ()
  1334.                 If (CondRefOf (_OSI, Local0))
  1335.                 {
  1336.                     Store (Zero, MYOS)
  1337.                 }
  1338.                 Else
  1339.                 {
  1340.                     If (LEqual (SizeOf (_OS), 0x14))
  1341.                     {
  1342.                         Store (One, MYOS)
  1343.                     }
  1344.                     Else
  1345.                     {
  1346.                         If (LEqual (SizeOf (_OS), 0x27))
  1347.                         {
  1348.                             Store (0x02, MYOS)
  1349.                         }
  1350.                         Else
  1351.                         {
  1352.                             Store (0x03, MYOS)
  1353.                         }
  1354.                     }
  1355.                 }
  1356.             }
  1357.  
  1358.             OperationRegion (NBMS, PCI_Config, 0x60, 0x08)
  1359.             Field (NBMS, DWordAcc, NoLock, Preserve)
  1360.             {
  1361.                 MIDX,   32,
  1362.                 MIDR,   32
  1363.             }
  1364.  
  1365.             Mutex (NBMM, 0x00)
  1366.             Method (NBMR, 1, NotSerialized)
  1367.             {
  1368.                 Acquire (NBMM, 0xFFFF)
  1369.                 And (Arg0, 0x7F, Local0)
  1370.                 Store (Local0, MIDX)
  1371.                 Store (MIDR, Local0)
  1372.                 Store (0x7F, MIDX)
  1373.                 Release (NBMM)
  1374.                 Return (Local0)
  1375.             }
  1376.  
  1377.             Method (NBMW, 2, NotSerialized)
  1378.             {
  1379.                 Acquire (NBMM, 0xFFFF)
  1380.                 And (Arg0, 0x7F, Local0)
  1381.                 Or (Local0, 0x80, Local0)
  1382.                 Store (Local0, MIDX)
  1383.                 Store (Arg1, MIDR)
  1384.                 Store (And (Local0, 0x7F, Local0), MIDX)
  1385.                 Release (NBMM)
  1386.             }
  1387.  
  1388.             OperationRegion (NBXP, PCI_Config, 0xE0, 0x08)
  1389.             Field (NBXP, DWordAcc, NoLock, Preserve)
  1390.             {
  1391.                 NBXI,   32,
  1392.                 NBXD,   32
  1393.             }
  1394.  
  1395.             Mutex (NBXM, 0x00)
  1396.             Method (NBXR, 1, NotSerialized)
  1397.             {
  1398.                 Acquire (NBXM, 0xFFFF)
  1399.                 Store (Arg0, NBXI)
  1400.                 Store (NBXD, Local0)
  1401.                 Store (Zero, NBXI)
  1402.                 Release (NBXM)
  1403.                 Return (Local0)
  1404.             }
  1405.  
  1406.             Method (NBXW, 2, NotSerialized)
  1407.             {
  1408.                 Acquire (NBXM, 0xFFFF)
  1409.                 Store (Arg0, NBXI)
  1410.                 Store (Arg1, NBXD)
  1411.                 Store (Zero, NBXI)
  1412.                 Release (NBXM)
  1413.             }
  1414.  
  1415.             Method (GFXM, 0, NotSerialized)
  1416.             {
  1417.                 Store (NBMR (0x08), Local0)
  1418.                 And (Local0, 0x0F, Local0)
  1419.                 Return (Local0)
  1420.             }
  1421.  
  1422.             Method (GPPM, 0, NotSerialized)
  1423.             {
  1424.                 Store (NBMR (0x31), Local0)
  1425.                 And (Local0, 0x0F, Local0)
  1426.                 Return (Local0)
  1427.             }
  1428.  
  1429.             Method (XPTR, 2, NotSerialized)
  1430.             {
  1431.                 If (LAnd (LLess (Arg0, 0x02), LGreater (Arg0, 0x07)))
  1432.                 {
  1433.                     Return (Zero)
  1434.                 }
  1435.                 Else
  1436.                 {
  1437.                     Store (One, Local0)
  1438.                     If (LLess (Arg0, 0x04))
  1439.                     {
  1440.                         Add (Arg0, 0x02, Local1)
  1441.                     }
  1442.                     Else
  1443.                     {
  1444.                         Add (Arg0, 0x11, Local1)
  1445.                     }
  1446.  
  1447.                     ShiftLeft (Local0, Local1, Local0)
  1448.                     Store (NBMR (0x08), Local2)
  1449.                     If (Arg1)
  1450.                     {
  1451.                         And (Local2, Not (Local0), Local2)
  1452.                     }
  1453.                     Else
  1454.                     {
  1455.                         Or (Local2, Local0, Local2)
  1456.                     }
  1457.  
  1458.                     NBMW (0x08, Local2)
  1459.                     Return (Ones)
  1460.                 }
  1461.             }
  1462.  
  1463.             Name (_UID, One)
  1464.             Name (_BBN, Zero)
  1465.             Name (SUPP, Zero)
  1466.             Name (CTRL, Zero)
  1467.             Method (_OSC, 4, NotSerialized)
  1468.             {
  1469.                 CreateDWordField (Arg3, Zero, CDW1)
  1470.                 CreateDWordField (Arg3, 0x04, CDW2)
  1471.                 CreateDWordField (Arg3, 0x08, CDW3)
  1472.                 If (LNotEqual (OSTB, 0x41))
  1473.                 {
  1474.                     Or (CDW1, 0x02, CDW1)
  1475.                     Return (Arg3)
  1476.                 }
  1477.  
  1478.                 If (LEqual (Arg0, Buffer (0x10)
  1479.                         {
  1480.                             /* 0000 */    0x5B, 0x4D, 0xDB, 0x33, 0xF7, 0x1F, 0x1C, 0x40,
  1481.                             /* 0008 */    0x96, 0x57, 0x74, 0x41, 0xC0, 0x3D, 0xD7, 0x66
  1482.                         }))
  1483.                 {
  1484.                     Store (CDW2, SUPP)
  1485.                     Store (CDW3, CTRL)
  1486.                     If (LNotEqual (And (SUPP, 0x16), 0x16))
  1487.                     {
  1488.                         And (CTRL, 0x1E, CTRL)
  1489.                     }
  1490.  
  1491.                     And (CTRL, 0x19, CTRL)
  1492.                     If (Not (And (CDW1, One)))
  1493.                     {
  1494.                         If (And (CTRL, One)) {}
  1495.                         If (And (CTRL, 0x04))
  1496.                         {
  1497.                             Store (One, EPNM)
  1498.                             Store (One, DPPF)
  1499.                             Store (One, FNGS)
  1500.                         }
  1501.                         Else
  1502.                         {
  1503.                             Store (Zero, EPNM)
  1504.                             Store (Zero, DPPF)
  1505.                             Store (Zero, FNGS)
  1506.                         }
  1507.  
  1508.                         If (And (CTRL, 0x10)) {}
  1509.                     }
  1510.  
  1511.                     If (LNotEqual (Arg1, One))
  1512.                     {
  1513.                         Or (CDW1, 0x08, CDW1)
  1514.                     }
  1515.  
  1516.                     If (LNotEqual (CDW3, CTRL))
  1517.                     {
  1518.                         Or (CDW1, 0x10, CDW1)
  1519.                     }
  1520.  
  1521.                     Store (CTRL, CDW3)
  1522.                     Return (Arg3)
  1523.                 }
  1524.                 Else
  1525.                 {
  1526.                     Or (CDW1, 0x04, CDW1)
  1527.                     Return (Arg3)
  1528.                 }
  1529.             }
  1530.  
  1531.             Method (TOM, 0, NotSerialized)
  1532.             {
  1533.                 Multiply (TOML, 0x00010000, Local0)
  1534.                 Multiply (TOMH, 0x01000000, Local1)
  1535.                 Add (Local0, Local1, Local0)
  1536.                 Return (Local0)
  1537.             }
  1538.  
  1539.             OperationRegion (NBBR, PCI_Config, 0x1C, 0x08)
  1540.             Field (NBBR, DWordAcc, NoLock, Preserve)
  1541.             {
  1542.                 BR3L,   32,
  1543.                 BR3H,   32
  1544.             }
  1545.  
  1546.             OperationRegion (NBBI, PCI_Config, 0x84, 0x04)
  1547.             Field (NBBI, DWordAcc, NoLock, Preserve)
  1548.             {
  1549.                 PARB,   32
  1550.             }
  1551.  
  1552.             Name (PX3L, 0x80000000)
  1553.             Name (PX3H, 0x80000000)
  1554.             Name (PX3S, 0x10000000)
  1555.             Name (PX3K, 0xF0000000)
  1556.             Mutex (BR3X, 0x00)
  1557.             Method (BR3M, 0, NotSerialized)
  1558.             {
  1559.                 Store (PARB, Local0)
  1560.                 ShiftRight (Local0, 0x10, Local0)
  1561.                 And (Local0, 0x07, Local0)
  1562.                 If (Local0)
  1563.                 {
  1564.                     ShiftLeft (One, Local0, Local1)
  1565.                     Subtract (0x1000, Local1, Local1)
  1566.                     ShiftLeft (Local1, 0x14, Local1)
  1567.                     Store (Local1, PX3K)
  1568.                     ShiftLeft (One, Local0, Local1)
  1569.                     Multiply (Local1, 0x00100000, Local1)
  1570.                     Store (Local1, PX3S)
  1571.                 }
  1572.  
  1573.                 Acquire (BR3X, 0xFFFF)
  1574.                 Store (NBMR (Zero), Local0)
  1575.                 And (Local0, 0xFFFFFFF7, Local0)
  1576.                 NBMW (Zero, Local0)
  1577.                 Store (BR3L, Local0)
  1578.                 And (Local0, PX3K, Local0)
  1579.                 Store (Local0, PX3L)
  1580.                 Store (BR3H, Local0)
  1581.                 And (Local0, 0xFF, Local0)
  1582.                 Store (Local0, PX3H)
  1583.                 Store (NBMR (Zero), Local0)
  1584.                 Or (Local0, 0x08, Local0)
  1585.                 NBMW (Zero, Local0)
  1586.                 Release (BR3X)
  1587.                 Return (PX3L)
  1588.             }
  1589.  
  1590.             Name (CRES, ResourceTemplate ()
  1591.             {
  1592.                 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, SubDecode,
  1593.                     0x0000,             // Granularity
  1594.                     0x0000,             // Range Minimum
  1595.                     0x00FF,             // Range Maximum
  1596.                     0x0000,             // Translation Offset
  1597.                     0x0100,             // Length
  1598.                     0x00,, )
  1599.                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  1600.                     0x0000,             // Granularity
  1601.                     0x0000,             // Range Minimum
  1602.                     0x0CF7,             // Range Maximum
  1603.                     0x0000,             // Translation Offset
  1604.                     0x0CF8,             // Length
  1605.                     0x00,, , TypeStatic)
  1606.                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
  1607.                     0x0000,             // Granularity
  1608.                     0x0D00,             // Range Minimum
  1609.                     0xFFFF,             // Range Maximum
  1610.                     0x0000,             // Translation Offset
  1611.                     0xF300,             // Length
  1612.                     ,, , TypeStatic)
  1613.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
  1614.                     0x00000000,         // Granularity
  1615.                     0x000A0000,         // Range Minimum
  1616.                     0x000BFFFF,         // Range Maximum
  1617.                     0x00000000,         // Translation Offset
  1618.                     0x00020000,         // Length
  1619.                     0x00,, , AddressRangeMemory, TypeStatic)
  1620.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, Cacheable, ReadOnly,
  1621.                     0x00000000,         // Granularity
  1622.                     0x000C0000,         // Range Minimum
  1623.                     0x000C3FFF,         // Range Maximum
  1624.                     0x00000000,         // Translation Offset
  1625.                     0x00004000,         // Length
  1626.                     0x00,, , AddressRangeMemory, TypeStatic)
  1627.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, Cacheable, ReadOnly,
  1628.                     0x00000000,         // Granularity
  1629.                     0x000C4000,         // Range Minimum
  1630.                     0x000C7FFF,         // Range Maximum
  1631.                     0x00000000,         // Translation Offset
  1632.                     0x00004000,         // Length
  1633.                     0x00,, , AddressRangeMemory, TypeStatic)
  1634.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadOnly,
  1635.                     0x00000000,         // Granularity
  1636.                     0x000C8000,         // Range Minimum
  1637.                     0x000CBFFF,         // Range Maximum
  1638.                     0x00000000,         // Translation Offset
  1639.                     0x00004000,         // Length
  1640.                     0x00,, , AddressRangeMemory, TypeStatic)
  1641.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadOnly,
  1642.                     0x00000000,         // Granularity
  1643.                     0x000CC000,         // Range Minimum
  1644.                     0x000CFFFF,         // Range Maximum
  1645.                     0x00000000,         // Translation Offset
  1646.                     0x00004000,         // Length
  1647.                     0x00,, , AddressRangeMemory, TypeStatic)
  1648.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
  1649.                     0x00000000,         // Granularity
  1650.                     0x000D0000,         // Range Minimum
  1651.                     0x000D3FFF,         // Range Maximum
  1652.                     0x00000000,         // Translation Offset
  1653.                     0x00004000,         // Length
  1654.                     0x00,, , AddressRangeMemory, TypeStatic)
  1655.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
  1656.                     0x00000000,         // Granularity
  1657.                     0x000D4000,         // Range Minimum
  1658.                     0x000D7FFF,         // Range Maximum
  1659.                     0x00000000,         // Translation Offset
  1660.                     0x00004000,         // Length
  1661.                     0x00,, , AddressRangeMemory, TypeStatic)
  1662.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
  1663.                     0x00000000,         // Granularity
  1664.                     0x000D8000,         // Range Minimum
  1665.                     0x000DBFFF,         // Range Maximum
  1666.                     0x00000000,         // Translation Offset
  1667.                     0x00004000,         // Length
  1668.                     0x00,, , AddressRangeMemory, TypeStatic)
  1669.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
  1670.                     0x00000000,         // Granularity
  1671.                     0x000DC000,         // Range Minimum
  1672.                     0x000DFFFF,         // Range Maximum
  1673.                     0x00000000,         // Translation Offset
  1674.                     0x00004000,         // Length
  1675.                     0x00,, , AddressRangeMemory, TypeStatic)
  1676.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1677.                     0x00000000,         // Granularity
  1678.                     0x000E0000,         // Range Minimum
  1679.                     0x000E3FFF,         // Range Maximum
  1680.                     0x00000000,         // Translation Offset
  1681.                     0x00004000,         // Length
  1682.                     0x00,, , AddressRangeMemory, TypeStatic)
  1683.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1684.                     0x00000000,         // Granularity
  1685.                     0x000E4000,         // Range Minimum
  1686.                     0x000E7FFF,         // Range Maximum
  1687.                     0x00000000,         // Translation Offset
  1688.                     0x00004000,         // Length
  1689.                     0x00,, , AddressRangeMemory, TypeStatic)
  1690.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1691.                     0x00000000,         // Granularity
  1692.                     0x000E8000,         // Range Minimum
  1693.                     0x000EBFFF,         // Range Maximum
  1694.                     0x00000000,         // Translation Offset
  1695.                     0x00004000,         // Length
  1696.                     0x00,, , AddressRangeMemory, TypeStatic)
  1697.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
  1698.                     0x00000000,         // Granularity
  1699.                     0x000EC000,         // Range Minimum
  1700.                     0x000EFFFF,         // Range Maximum
  1701.                     0x00000000,         // Translation Offset
  1702.                     0x00004000,         // Length
  1703.                     0x00,, , AddressRangeMemory, TypeStatic)
  1704.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
  1705.                     0x00000000,         // Granularity
  1706.                     0x00000000,         // Range Minimum
  1707.                     0xFFFDFFFF,         // Range Maximum
  1708.                     0x00000000,         // Translation Offset
  1709.                     0x00000000,         // Length
  1710.                     0x00,, _Y00, AddressRangeMemory, TypeStatic)
  1711.                 DWordMemory (ResourceProducer, SubDecode, MinFixed, MaxFixed, NonCacheable, ReadWrite,
  1712.                     0x00000000,         // Granularity
  1713.                     0xF0000000,         // Range Minimum
  1714.                     0xFFFFFFFF,         // Range Maximum
  1715.                     0x00000000,         // Translation Offset
  1716.                     0x10000000,         // Length
  1717.                     0x00,, _Y01, AddressRangeMemory, TypeStatic)
  1718.                 IO (Decode16,
  1719.                     0x0CF8,             // Range Minimum
  1720.                     0x0CF8,             // Range Maximum
  1721.                     0x01,               // Alignment
  1722.                     0x08,               // Length
  1723.                     )
  1724.             })
  1725.             Method (_CRS, 0, NotSerialized)
  1726.             {
  1727.                 CreateDWordField (CRES, \_SB.PCI0._Y00._MIN, BTMN)
  1728.                 CreateDWordField (CRES, \_SB.PCI0._Y00._MAX, BTMX)
  1729.                 CreateDWordField (CRES, \_SB.PCI0._Y00._LEN, BTLN)
  1730.                 CreateDWordField (CRES, \_SB.PCI0._Y01._MIN, BTN1)
  1731.                 CreateDWordField (CRES, \_SB.PCI0._Y01._MAX, BTX1)
  1732.                 CreateDWordField (CRES, \_SB.PCI0._Y01._LEN, BTL1)
  1733.                 Store (TOM (), BTMN)
  1734.                 Subtract (BR3M (), BTMN, BTLN)
  1735.                 Subtract (Add (BTMN, BTLN), One, BTMX)
  1736.                 Store (PX3S, Local0)
  1737.                 Add (Local0, BR3M (), Local0)
  1738.                 Store (Local0, BTN1)
  1739.                 Store (BTX1, Local1)
  1740.                 Subtract (Local1, Local0, Local2)
  1741.                 Store (Local2, BTL1)
  1742.                 Return (CRES)
  1743.             }
  1744.  
  1745.             Device (MEMR)
  1746.             {
  1747.                 Name (_HID, EisaId ("PNP0C02"))
  1748.                 Name (MEM1, ResourceTemplate ()
  1749.                 {
  1750.                     Memory32Fixed (ReadWrite,
  1751.                         0x00000000,         // Address Base
  1752.                         0x00000000,         // Address Length
  1753.                         _Y02)
  1754.                     Memory32Fixed (ReadWrite,
  1755.                         0x00000000,         // Address Base
  1756.                         0x00000000,         // Address Length
  1757.                         _Y03)
  1758.                 })
  1759.                 Method (_CRS, 0, NotSerialized)
  1760.                 {
  1761.                     CreateDWordField (MEM1, \_SB.PCI0.MEMR._Y02._BAS, MB01)
  1762.                     CreateDWordField (MEM1, \_SB.PCI0.MEMR._Y02._LEN, ML01)
  1763.                     CreateDWordField (MEM1, \_SB.PCI0.MEMR._Y03._BAS, MB02)
  1764.                     CreateDWordField (MEM1, \_SB.PCI0.MEMR._Y03._LEN, ML02)
  1765.                     If (GPIC)
  1766.                     {
  1767.                         Store (0xFEC00000, MB01)
  1768.                         Store (0xFEE00000, MB02)
  1769.                         Store (0x1000, ML01)
  1770.                         Store (0x1000, ML02)
  1771.                     }
  1772.  
  1773.                     Return (MEM1)
  1774.                 }
  1775.             }
  1776.  
  1777.             Method (_PRT, 0, NotSerialized)
  1778.             {
  1779.                 If (LEqual (GPIC, Zero))
  1780.                 {
  1781.                     Return (PICM)
  1782.                 }
  1783.                 Else
  1784.                 {
  1785.                     Return (APIC)
  1786.                 }
  1787.             }
  1788.  
  1789.             Name (PICM, Package (0x34)
  1790.             {
  1791.                 Package (0x04)
  1792.                 {
  1793.                     0x0001FFFF,
  1794.                     Zero,
  1795.                     LNKC,
  1796.                     Zero
  1797.                 },
  1798.  
  1799.                 Package (0x04)
  1800.                 {
  1801.                     0x0001FFFF,
  1802.                     One,
  1803.                     LNKD,
  1804.                     Zero
  1805.                 },
  1806.  
  1807.                 Package (0x04)
  1808.                 {
  1809.                     0x0001FFFF,
  1810.                     0x02,
  1811.                     LNKA,
  1812.                     Zero
  1813.                 },
  1814.  
  1815.                 Package (0x04)
  1816.                 {
  1817.                     0x0001FFFF,
  1818.                     0x03,
  1819.                     LNKB,
  1820.                     Zero
  1821.                 },
  1822.  
  1823.                 Package (0x04)
  1824.                 {
  1825.                     0x0002FFFF,
  1826.                     Zero,
  1827.                     LNKC,
  1828.                     Zero
  1829.                 },
  1830.  
  1831.                 Package (0x04)
  1832.                 {
  1833.                     0x0002FFFF,
  1834.                     One,
  1835.                     LNKD,
  1836.                     Zero
  1837.                 },
  1838.  
  1839.                 Package (0x04)
  1840.                 {
  1841.                     0x0002FFFF,
  1842.                     0x02,
  1843.                     LNKA,
  1844.                     Zero
  1845.                 },
  1846.  
  1847.                 Package (0x04)
  1848.                 {
  1849.                     0x0002FFFF,
  1850.                     0x03,
  1851.                     LNKB,
  1852.                     Zero
  1853.                 },
  1854.  
  1855.                 Package (0x04)
  1856.                 {
  1857.                     0x0003FFFF,
  1858.                     Zero,
  1859.                     LNKD,
  1860.                     Zero
  1861.                 },
  1862.  
  1863.                 Package (0x04)
  1864.                 {
  1865.                     0x0003FFFF,
  1866.                     One,
  1867.                     LNKA,
  1868.                     Zero
  1869.                 },
  1870.  
  1871.                 Package (0x04)
  1872.                 {
  1873.                     0x0003FFFF,
  1874.                     0x02,
  1875.                     LNKB,
  1876.                     Zero
  1877.                 },
  1878.  
  1879.                 Package (0x04)
  1880.                 {
  1881.                     0x0003FFFF,
  1882.                     0x03,
  1883.                     LNKC,
  1884.                     Zero
  1885.                 },
  1886.  
  1887.                 Package (0x04)
  1888.                 {
  1889.                     0x0004FFFF,
  1890.                     Zero,
  1891.                     LNKA,
  1892.                     Zero
  1893.                 },
  1894.  
  1895.                 Package (0x04)
  1896.                 {
  1897.                     0x0004FFFF,
  1898.                     One,
  1899.                     LNKB,
  1900.                     Zero
  1901.                 },
  1902.  
  1903.                 Package (0x04)
  1904.                 {
  1905.                     0x0004FFFF,
  1906.                     0x02,
  1907.                     LNKC,
  1908.                     Zero
  1909.                 },
  1910.  
  1911.                 Package (0x04)
  1912.                 {
  1913.                     0x0004FFFF,
  1914.                     0x03,
  1915.                     LNKD,
  1916.                     Zero
  1917.                 },
  1918.  
  1919.                 Package (0x04)
  1920.                 {
  1921.                     0x0005FFFF,
  1922.                     Zero,
  1923.                     LNKB,
  1924.                     Zero
  1925.                 },
  1926.  
  1927.                 Package (0x04)
  1928.                 {
  1929.                     0x0005FFFF,
  1930.                     One,
  1931.                     LNKC,
  1932.                     Zero
  1933.                 },
  1934.  
  1935.                 Package (0x04)
  1936.                 {
  1937.                     0x0005FFFF,
  1938.                     0x02,
  1939.                     LNKD,
  1940.                     Zero
  1941.                 },
  1942.  
  1943.                 Package (0x04)
  1944.                 {
  1945.                     0x0005FFFF,
  1946.                     0x03,
  1947.                     LNKA,
  1948.                     Zero
  1949.                 },
  1950.  
  1951.                 Package (0x04)
  1952.                 {
  1953.                     0x0006FFFF,
  1954.                     Zero,
  1955.                     LNKC,
  1956.                     Zero
  1957.                 },
  1958.  
  1959.                 Package (0x04)
  1960.                 {
  1961.                     0x0006FFFF,
  1962.                     One,
  1963.                     LNKD,
  1964.                     Zero
  1965.                 },
  1966.  
  1967.                 Package (0x04)
  1968.                 {
  1969.                     0x0006FFFF,
  1970.                     0x02,
  1971.                     LNKA,
  1972.                     Zero
  1973.                 },
  1974.  
  1975.                 Package (0x04)
  1976.                 {
  1977.                     0x0006FFFF,
  1978.                     0x03,
  1979.                     LNKB,
  1980.                     Zero
  1981.                 },
  1982.  
  1983.                 Package (0x04)
  1984.                 {
  1985.                     0x0007FFFF,
  1986.                     Zero,
  1987.                     LNKD,
  1988.                     Zero
  1989.                 },
  1990.  
  1991.                 Package (0x04)
  1992.                 {
  1993.                     0x0007FFFF,
  1994.                     One,
  1995.                     LNKA,
  1996.                     Zero
  1997.                 },
  1998.  
  1999.                 Package (0x04)
  2000.                 {
  2001.                     0x0007FFFF,
  2002.                     0x02,
  2003.                     LNKB,
  2004.                     Zero
  2005.                 },
  2006.  
  2007.                 Package (0x04)
  2008.                 {
  2009.                     0x0007FFFF,
  2010.                     0x03,
  2011.                     LNKC,
  2012.                     Zero
  2013.                 },
  2014.  
  2015.                 Package (0x04)
  2016.                 {
  2017.                     0x0009FFFF,
  2018.                     Zero,
  2019.                     LNKB,
  2020.                     Zero
  2021.                 },
  2022.  
  2023.                 Package (0x04)
  2024.                 {
  2025.                     0x0009FFFF,
  2026.                     One,
  2027.                     LNKC,
  2028.                     Zero
  2029.                 },
  2030.  
  2031.                 Package (0x04)
  2032.                 {
  2033.                     0x0009FFFF,
  2034.                     0x02,
  2035.                     LNKD,
  2036.                     Zero
  2037.                 },
  2038.  
  2039.                 Package (0x04)
  2040.                 {
  2041.                     0x0009FFFF,
  2042.                     0x03,
  2043.                     LNKA,
  2044.                     Zero
  2045.                 },
  2046.  
  2047.                 Package (0x04)
  2048.                 {
  2049.                     0x000AFFFF,
  2050.                     Zero,
  2051.                     LNKC,
  2052.                     Zero
  2053.                 },
  2054.  
  2055.                 Package (0x04)
  2056.                 {
  2057.                     0x000AFFFF,
  2058.                     One,
  2059.                     LNKD,
  2060.                     Zero
  2061.                 },
  2062.  
  2063.                 Package (0x04)
  2064.                 {
  2065.                     0x000AFFFF,
  2066.                     0x02,
  2067.                     LNKA,
  2068.                     Zero
  2069.                 },
  2070.  
  2071.                 Package (0x04)
  2072.                 {
  2073.                     0x000AFFFF,
  2074.                     0x03,
  2075.                     LNKB,
  2076.                     Zero
  2077.                 },
  2078.  
  2079.                 Package (0x04)
  2080.                 {
  2081.                     0x0011FFFF,
  2082.                     Zero,
  2083.                     LNKG,
  2084.                     Zero
  2085.                 },
  2086.  
  2087.                 Package (0x04)
  2088.                 {
  2089.                     0x0011FFFF,
  2090.                     One,
  2091.                     LNKH,
  2092.                     Zero
  2093.                 },
  2094.  
  2095.                 Package (0x04)
  2096.                 {
  2097.                     0x0011FFFF,
  2098.                     0x02,
  2099.                     LNKE,
  2100.                     Zero
  2101.                 },
  2102.  
  2103.                 Package (0x04)
  2104.                 {
  2105.                     0x0011FFFF,
  2106.                     0x03,
  2107.                     LNKF,
  2108.                     Zero
  2109.                 },
  2110.  
  2111.                 Package (0x04)
  2112.                 {
  2113.                     0x0012FFFF,
  2114.                     Zero,
  2115.                     LNKA,
  2116.                     Zero
  2117.                 },
  2118.  
  2119.                 Package (0x04)
  2120.                 {
  2121.                     0x0012FFFF,
  2122.                     One,
  2123.                     LNKB,
  2124.                     Zero
  2125.                 },
  2126.  
  2127.                 Package (0x04)
  2128.                 {
  2129.                     0x0012FFFF,
  2130.                     0x02,
  2131.                     LNKC,
  2132.                     Zero
  2133.                 },
  2134.  
  2135.                 Package (0x04)
  2136.                 {
  2137.                     0x0012FFFF,
  2138.                     0x03,
  2139.                     LNKD,
  2140.                     Zero
  2141.                 },
  2142.  
  2143.                 Package (0x04)
  2144.                 {
  2145.                     0x0013FFFF,
  2146.                     Zero,
  2147.                     LNKC,
  2148.                     Zero
  2149.                 },
  2150.  
  2151.                 Package (0x04)
  2152.                 {
  2153.                     0x0013FFFF,
  2154.                     One,
  2155.                     LNKD,
  2156.                     Zero
  2157.                 },
  2158.  
  2159.                 Package (0x04)
  2160.                 {
  2161.                     0x0013FFFF,
  2162.                     0x02,
  2163.                     LNKA,
  2164.                     Zero
  2165.                 },
  2166.  
  2167.                 Package (0x04)
  2168.                 {
  2169.                     0x0013FFFF,
  2170.                     0x03,
  2171.                     LNKB,
  2172.                     Zero
  2173.                 },
  2174.  
  2175.                 Package (0x04)
  2176.                 {
  2177.                     0x0014FFFF,
  2178.                     Zero,
  2179.                     LNKA,
  2180.                     Zero
  2181.                 },
  2182.  
  2183.                 Package (0x04)
  2184.                 {
  2185.                     0x0014FFFF,
  2186.                     One,
  2187.                     LNKB,
  2188.                     Zero
  2189.                 },
  2190.  
  2191.                 Package (0x04)
  2192.                 {
  2193.                     0x0014FFFF,
  2194.                     0x02,
  2195.                     LNKC,
  2196.                     Zero
  2197.                 },
  2198.  
  2199.                 Package (0x04)
  2200.                 {
  2201.                     0x0014FFFF,
  2202.                     0x03,
  2203.                     LNKD,
  2204.                     Zero
  2205.                 }
  2206.             })
  2207.             Name (APIC, Package (0x34)
  2208.             {
  2209.                 Package (0x04)
  2210.                 {
  2211.                     0x0001FFFF,
  2212.                     Zero,
  2213.                     Zero,
  2214.                     0x12
  2215.                 },
  2216.  
  2217.                 Package (0x04)
  2218.                 {
  2219.                     0x0001FFFF,
  2220.                     One,
  2221.                     Zero,
  2222.                     0x13
  2223.                 },
  2224.  
  2225.                 Package (0x04)
  2226.                 {
  2227.                     0x0001FFFF,
  2228.                     0x02,
  2229.                     Zero,
  2230.                     0x10
  2231.                 },
  2232.  
  2233.                 Package (0x04)
  2234.                 {
  2235.                     0x0001FFFF,
  2236.                     0x03,
  2237.                     Zero,
  2238.                     0x11
  2239.                 },
  2240.  
  2241.                 Package (0x04)
  2242.                 {
  2243.                     0x0002FFFF,
  2244.                     Zero,
  2245.                     Zero,
  2246.                     0x12
  2247.                 },
  2248.  
  2249.                 Package (0x04)
  2250.                 {
  2251.                     0x0002FFFF,
  2252.                     One,
  2253.                     Zero,
  2254.                     0x13
  2255.                 },
  2256.  
  2257.                 Package (0x04)
  2258.                 {
  2259.                     0x0002FFFF,
  2260.                     0x02,
  2261.                     Zero,
  2262.                     0x10
  2263.                 },
  2264.  
  2265.                 Package (0x04)
  2266.                 {
  2267.                     0x0002FFFF,
  2268.                     0x03,
  2269.                     Zero,
  2270.                     0x11
  2271.                 },
  2272.  
  2273.                 Package (0x04)
  2274.                 {
  2275.                     0x0003FFFF,
  2276.                     Zero,
  2277.                     Zero,
  2278.                     0x13
  2279.                 },
  2280.  
  2281.                 Package (0x04)
  2282.                 {
  2283.                     0x0003FFFF,
  2284.                     One,
  2285.                     Zero,
  2286.                     0x10
  2287.                 },
  2288.  
  2289.                 Package (0x04)
  2290.                 {
  2291.                     0x0003FFFF,
  2292.                     0x02,
  2293.                     Zero,
  2294.                     0x11
  2295.                 },
  2296.  
  2297.                 Package (0x04)
  2298.                 {
  2299.                     0x0003FFFF,
  2300.                     0x03,
  2301.                     Zero,
  2302.                     0x12
  2303.                 },
  2304.  
  2305.                 Package (0x04)
  2306.                 {
  2307.                     0x0004FFFF,
  2308.                     Zero,
  2309.                     Zero,
  2310.                     0x10
  2311.                 },
  2312.  
  2313.                 Package (0x04)
  2314.                 {
  2315.                     0x0004FFFF,
  2316.                     One,
  2317.                     Zero,
  2318.                     0x11
  2319.                 },
  2320.  
  2321.                 Package (0x04)
  2322.                 {
  2323.                     0x0004FFFF,
  2324.                     0x02,
  2325.                     Zero,
  2326.                     0x12
  2327.                 },
  2328.  
  2329.                 Package (0x04)
  2330.                 {
  2331.                     0x0004FFFF,
  2332.                     0x03,
  2333.                     Zero,
  2334.                     0x13
  2335.                 },
  2336.  
  2337.                 Package (0x04)
  2338.                 {
  2339.                     0x0005FFFF,
  2340.                     Zero,
  2341.                     Zero,
  2342.                     0x11
  2343.                 },
  2344.  
  2345.                 Package (0x04)
  2346.                 {
  2347.                     0x0005FFFF,
  2348.                     One,
  2349.                     Zero,
  2350.                     0x12
  2351.                 },
  2352.  
  2353.                 Package (0x04)
  2354.                 {
  2355.                     0x0005FFFF,
  2356.                     0x02,
  2357.                     Zero,
  2358.                     0x13
  2359.                 },
  2360.  
  2361.                 Package (0x04)
  2362.                 {
  2363.                     0x0005FFFF,
  2364.                     0x03,
  2365.                     Zero,
  2366.                     0x10
  2367.                 },
  2368.  
  2369.                 Package (0x04)
  2370.                 {
  2371.                     0x0006FFFF,
  2372.                     Zero,
  2373.                     Zero,
  2374.                     0x12
  2375.                 },
  2376.  
  2377.                 Package (0x04)
  2378.                 {
  2379.                     0x0006FFFF,
  2380.                     One,
  2381.                     Zero,
  2382.                     0x13
  2383.                 },
  2384.  
  2385.                 Package (0x04)
  2386.                 {
  2387.                     0x0006FFFF,
  2388.                     0x02,
  2389.                     Zero,
  2390.                     0x10
  2391.                 },
  2392.  
  2393.                 Package (0x04)
  2394.                 {
  2395.                     0x0006FFFF,
  2396.                     0x03,
  2397.                     Zero,
  2398.                     0x11
  2399.                 },
  2400.  
  2401.                 Package (0x04)
  2402.                 {
  2403.                     0x0007FFFF,
  2404.                     Zero,
  2405.                     Zero,
  2406.                     0x13
  2407.                 },
  2408.  
  2409.                 Package (0x04)
  2410.                 {
  2411.                     0x0007FFFF,
  2412.                     One,
  2413.                     Zero,
  2414.                     0x10
  2415.                 },
  2416.  
  2417.                 Package (0x04)
  2418.                 {
  2419.                     0x0007FFFF,
  2420.                     0x02,
  2421.                     Zero,
  2422.                     0x11
  2423.                 },
  2424.  
  2425.                 Package (0x04)
  2426.                 {
  2427.                     0x0007FFFF,
  2428.                     0x03,
  2429.                     Zero,
  2430.                     0x12
  2431.                 },
  2432.  
  2433.                 Package (0x04)
  2434.                 {
  2435.                     0x0009FFFF,
  2436.                     Zero,
  2437.                     Zero,
  2438.                     0x11
  2439.                 },
  2440.  
  2441.                 Package (0x04)
  2442.                 {
  2443.                     0x0009FFFF,
  2444.                     One,
  2445.                     Zero,
  2446.                     0x12
  2447.                 },
  2448.  
  2449.                 Package (0x04)
  2450.                 {
  2451.                     0x0009FFFF,
  2452.                     0x02,
  2453.                     Zero,
  2454.                     0x13
  2455.                 },
  2456.  
  2457.                 Package (0x04)
  2458.                 {
  2459.                     0x0009FFFF,
  2460.                     0x03,
  2461.                     Zero,
  2462.                     0x10
  2463.                 },
  2464.  
  2465.                 Package (0x04)
  2466.                 {
  2467.                     0x000AFFFF,
  2468.                     Zero,
  2469.                     Zero,
  2470.                     0x12
  2471.                 },
  2472.  
  2473.                 Package (0x04)
  2474.                 {
  2475.                     0x000AFFFF,
  2476.                     One,
  2477.                     Zero,
  2478.                     0x13
  2479.                 },
  2480.  
  2481.                 Package (0x04)
  2482.                 {
  2483.                     0x000AFFFF,
  2484.                     0x02,
  2485.                     Zero,
  2486.                     0x10
  2487.                 },
  2488.  
  2489.                 Package (0x04)
  2490.                 {
  2491.                     0x000AFFFF,
  2492.                     0x03,
  2493.                     Zero,
  2494.                     0x11
  2495.                 },
  2496.  
  2497.                 Package (0x04)
  2498.                 {
  2499.                     0x0011FFFF,
  2500.                     Zero,
  2501.                     Zero,
  2502.                     0x16
  2503.                 },
  2504.  
  2505.                 Package (0x04)
  2506.                 {
  2507.                     0x0011FFFF,
  2508.                     One,
  2509.                     Zero,
  2510.                     0x17
  2511.                 },
  2512.  
  2513.                 Package (0x04)
  2514.                 {
  2515.                     0x0011FFFF,
  2516.                     0x02,
  2517.                     Zero,
  2518.                     0x14
  2519.                 },
  2520.  
  2521.                 Package (0x04)
  2522.                 {
  2523.                     0x0011FFFF,
  2524.                     0x03,
  2525.                     Zero,
  2526.                     0x15
  2527.                 },
  2528.  
  2529.                 Package (0x04)
  2530.                 {
  2531.                     0x0012FFFF,
  2532.                     Zero,
  2533.                     Zero,
  2534.                     0x10
  2535.                 },
  2536.  
  2537.                 Package (0x04)
  2538.                 {
  2539.                     0x0012FFFF,
  2540.                     One,
  2541.                     Zero,
  2542.                     0x11
  2543.                 },
  2544.  
  2545.                 Package (0x04)
  2546.                 {
  2547.                     0x0012FFFF,
  2548.                     0x02,
  2549.                     Zero,
  2550.                     0x12
  2551.                 },
  2552.  
  2553.                 Package (0x04)
  2554.                 {
  2555.                     0x0012FFFF,
  2556.                     0x03,
  2557.                     Zero,
  2558.                     0x13
  2559.                 },
  2560.  
  2561.                 Package (0x04)
  2562.                 {
  2563.                     0x0013FFFF,
  2564.                     Zero,
  2565.                     Zero,
  2566.                     0x12
  2567.                 },
  2568.  
  2569.                 Package (0x04)
  2570.                 {
  2571.                     0x0013FFFF,
  2572.                     One,
  2573.                     Zero,
  2574.                     0x13
  2575.                 },
  2576.  
  2577.                 Package (0x04)
  2578.                 {
  2579.                     0x0013FFFF,
  2580.                     0x02,
  2581.                     Zero,
  2582.                     0x10
  2583.                 },
  2584.  
  2585.                 Package (0x04)
  2586.                 {
  2587.                     0x0013FFFF,
  2588.                     0x03,
  2589.                     Zero,
  2590.                     0x11
  2591.                 },
  2592.  
  2593.                 Package (0x04)
  2594.                 {
  2595.                     0x0014FFFF,
  2596.                     Zero,
  2597.                     Zero,
  2598.                     0x10
  2599.                 },
  2600.  
  2601.                 Package (0x04)
  2602.                 {
  2603.                     0x0014FFFF,
  2604.                     One,
  2605.                     Zero,
  2606.                     0x11
  2607.                 },
  2608.  
  2609.                 Package (0x04)
  2610.                 {
  2611.                     0x0014FFFF,
  2612.                     0x02,
  2613.                     Zero,
  2614.                     0x12
  2615.                 },
  2616.  
  2617.                 Package (0x04)
  2618.                 {
  2619.                     0x0014FFFF,
  2620.                     0x03,
  2621.                     Zero,
  2622.                     0x13
  2623.                 }
  2624.             })
  2625.             Device (AGP)
  2626.             {
  2627.                 Name (_ADR, 0x00010000)
  2628.                 Method (_PRT, 0, NotSerialized)
  2629.                 {
  2630.                     If (LEqual (GPIC, Zero))
  2631.                     {
  2632.                         Return (PIC)
  2633.                     }
  2634.                     Else
  2635.                     {
  2636.                         Return (APIC)
  2637.                     }
  2638.                 }
  2639.  
  2640.                 Name (PIC, Package (0x04)
  2641.                 {
  2642.                     Package (0x04)
  2643.                     {
  2644.                         0x0005FFFF,
  2645.                         Zero,
  2646.                         LNKC,
  2647.                         Zero
  2648.                     },
  2649.  
  2650.                     Package (0x04)
  2651.                     {
  2652.                         0x0005FFFF,
  2653.                         One,
  2654.                         LNKD,
  2655.                         Zero
  2656.                     },
  2657.  
  2658.                     Package (0x04)
  2659.                     {
  2660.                         0x0005FFFF,
  2661.                         0x02,
  2662.                         LNKA,
  2663.                         Zero
  2664.                     },
  2665.  
  2666.                     Package (0x04)
  2667.                     {
  2668.                         0x0005FFFF,
  2669.                         0x03,
  2670.                         LNKB,
  2671.                         Zero
  2672.                     }
  2673.                 })
  2674.                 Name (APIC, Package (0x04)
  2675.                 {
  2676.                     Package (0x04)
  2677.                     {
  2678.                         0x0005FFFF,
  2679.                         Zero,
  2680.                         Zero,
  2681.                         0x12
  2682.                     },
  2683.  
  2684.                     Package (0x04)
  2685.                     {
  2686.                         0x0005FFFF,
  2687.                         One,
  2688.                         Zero,
  2689.                         0x13
  2690.                     },
  2691.  
  2692.                     Package (0x04)
  2693.                     {
  2694.                         0x0005FFFF,
  2695.                         0x02,
  2696.                         Zero,
  2697.                         0x10
  2698.                     },
  2699.  
  2700.                     Package (0x04)
  2701.                     {
  2702.                         0x0005FFFF,
  2703.                         0x03,
  2704.                         Zero,
  2705.                         0x11
  2706.                     }
  2707.                 })
  2708.                 Device (VGA)
  2709.                 {
  2710.                     Name (_ADR, 0x00050000)
  2711.                     Name (SWIT, One)
  2712.                     Name (CRTA, One)
  2713.                     Name (LCDA, One)
  2714.                     Name (TV0A, One)
  2715.                     Name (HDTV, One)
  2716.                     Name (CV0A, One)
  2717.                     Method (_STA, 0, NotSerialized)
  2718.                     {
  2719.                         Return (0x0F)
  2720.                     }
  2721.  
  2722.                     Name (_PSC, Zero)
  2723.                     Method (_PS0, 0, NotSerialized)
  2724.                     {
  2725.                         Store (Zero, _PSC)
  2726.                     }
  2727.  
  2728.                     Method (_PS3, 0, NotSerialized)
  2729.                     {
  2730.                         Store (0x03, _PSC)
  2731.                     }
  2732.  
  2733.                     Method (_DOS, 1, NotSerialized)
  2734.                     {
  2735.                         Store (And (Arg0, 0x03), SWIT)
  2736.                     }
  2737.  
  2738.                     Method (_DOD, 0, NotSerialized)
  2739.                     {
  2740.                         Return (Package (0x05)
  2741.                         {
  2742.                             0x00010100,
  2743.                             0x00010110,
  2744.                             0x00010200,
  2745.                             0x00010210,
  2746.                             0x000101F0
  2747.                         })
  2748.                     }
  2749.  
  2750.                     Device (CRT)
  2751.                     {
  2752.                         Name (_ADR, 0x0100)
  2753.                         Method (_DCS, 0, NotSerialized)
  2754.                         {
  2755.                             Store ("CRT -- _DCS", Debug)
  2756.                             If (CRTA)
  2757.                             {
  2758.                                 Return (0x1F)
  2759.                             }
  2760.                             Else
  2761.                             {
  2762.                                 Return (0x1D)
  2763.                             }
  2764.                         }
  2765.  
  2766.                         Method (_DGS, 0, NotSerialized)
  2767.                         {
  2768.                             Store ("CRT -- _DGS", Debug)
  2769.                             If (CRTA)
  2770.                             {
  2771.                                 Return (One)
  2772.                             }
  2773.                             Else
  2774.                             {
  2775.                                 Return (Zero)
  2776.                             }
  2777.                         }
  2778.  
  2779.                         Method (_DSS, 1, NotSerialized)
  2780.                         {
  2781.                             Store ("CRT -- _DSS", Debug)
  2782.                         }
  2783.                     }
  2784.  
  2785.                     Device (TV0)
  2786.                     {
  2787.                         Name (_ADR, 0x0200)
  2788.                         Method (_DCS, 0, NotSerialized)
  2789.                         {
  2790.                             Store ("TV -- _DCS", Debug)
  2791.                             If (TV0A)
  2792.                             {
  2793.                                 Return (0x1F)
  2794.                             }
  2795.                             Else
  2796.                             {
  2797.                                 Return (0x1D)
  2798.                             }
  2799.                         }
  2800.  
  2801.                         Method (_DGS, 0, NotSerialized)
  2802.                         {
  2803.                             Store ("TV -- _DCS", Debug)
  2804.                             If (TV0A)
  2805.                             {
  2806.                                 Return (One)
  2807.                             }
  2808.                             Else
  2809.                             {
  2810.                                 Return (Zero)
  2811.                             }
  2812.                         }
  2813.  
  2814.                         Method (_DSS, 1, NotSerialized)
  2815.                         {
  2816.                             Store ("TV -- _DSS", Debug)
  2817.                         }
  2818.                     }
  2819.  
  2820.                     Device (LCD)
  2821.                     {
  2822.                         Name (_ADR, 0x0110)
  2823.                         Method (_DCS, 0, NotSerialized)
  2824.                         {
  2825.                             Store ("LCD -- _DCS", Debug)
  2826.                             If (LCDA)
  2827.                             {
  2828.                                 Return (0x1F)
  2829.                             }
  2830.                             Else
  2831.                             {
  2832.                                 Return (0x1D)
  2833.                             }
  2834.                         }
  2835.  
  2836.                         Method (_DGS, 0, NotSerialized)
  2837.                         {
  2838.                             Store ("LCD -- _DCS", Debug)
  2839.                             If (LCDA)
  2840.                             {
  2841.                                 Return (One)
  2842.                             }
  2843.                             Else
  2844.                             {
  2845.                                 Return (Zero)
  2846.                             }
  2847.                         }
  2848.  
  2849.                         Method (_DSS, 1, NotSerialized)
  2850.                         {
  2851.                             Store ("LCD -- _DSS", Debug)
  2852.                         }
  2853.  
  2854.                         Method (_BCL, 0, NotSerialized)
  2855.                         {
  2856.                             Return (BCLT)
  2857.                         }
  2858.  
  2859.                         Method (_BCM, 1, NotSerialized)
  2860.                         {
  2861.                             SBCM (Arg0)
  2862.                         }
  2863.  
  2864.                         Method (_BQC, 0, NotSerialized)
  2865.                         {
  2866.                             Return (^^^^LPC0.EC0.BRTL)
  2867.                         }
  2868.                     }
  2869.  
  2870.                     Device (HDMI)
  2871.                     {
  2872.                         Name (_ADR, 0x0210)
  2873.                         Method (_DCS, 0, NotSerialized)
  2874.                         {
  2875.                             Store ("HDMI TV -- _DCS", Debug)
  2876.                             If (HDTV)
  2877.                             {
  2878.                                 Return (0x1F)
  2879.                             }
  2880.                             Else
  2881.                             {
  2882.                                 Return (0x1D)
  2883.                             }
  2884.                         }
  2885.  
  2886.                         Method (_DGS, 0, NotSerialized)
  2887.                         {
  2888.                             Store ("HDMI TV -- _DCS", Debug)
  2889.                             If (HDTV)
  2890.                             {
  2891.                                 Return (One)
  2892.                             }
  2893.                             Else
  2894.                             {
  2895.                                 Return (Zero)
  2896.                             }
  2897.                         }
  2898.  
  2899.                         Method (_DSS, 1, NotSerialized)
  2900.                         {
  2901.                             Store ("HDMI TV -- _DSS", Debug)
  2902.                         }
  2903.                     }
  2904.  
  2905.                     Device (CVTV)
  2906.                     {
  2907.                         Name (_ADR, 0x01F0)
  2908.                         Method (_DCS, 0, NotSerialized)
  2909.                         {
  2910.                             Store ("Composite Video -- _DCS", Debug)
  2911.                             If (CV0A)
  2912.                             {
  2913.                                 Return (0x1F)
  2914.                             }
  2915.                             Else
  2916.                             {
  2917.                                 Return (0x1D)
  2918.                             }
  2919.                         }
  2920.  
  2921.                         Method (_DGS, 0, NotSerialized)
  2922.                         {
  2923.                             Store ("Composite Video -- _DCS", Debug)
  2924.                             If (CV0A)
  2925.                             {
  2926.                                 Return (One)
  2927.                             }
  2928.                             Else
  2929.                             {
  2930.                                 Return (Zero)
  2931.                             }
  2932.                         }
  2933.  
  2934.                         Method (_DSS, 1, NotSerialized)
  2935.                         {
  2936.                             Store ("Composite Video -- _DSS", Debug)
  2937.                         }
  2938.                     }
  2939.                 }
  2940.             }
  2941.  
  2942.             Device (PB2)
  2943.             {
  2944.                 Name (_ADR, 0x00020000)
  2945.                 Method (_PRT, 0, NotSerialized)
  2946.                 {
  2947.                     If (GPIC)
  2948.                     {
  2949.                         Return (Package (0x04)
  2950.                         {
  2951.                             Package (0x04)
  2952.                             {
  2953.                                 0xFFFF,
  2954.                                 Zero,
  2955.                                 Zero,
  2956.                                 0x12
  2957.                             },
  2958.  
  2959.                             Package (0x04)
  2960.                             {
  2961.                                 0xFFFF,
  2962.                                 One,
  2963.                                 Zero,
  2964.                                 0x13
  2965.                             },
  2966.  
  2967.                             Package (0x04)
  2968.                             {
  2969.                                 0xFFFF,
  2970.                                 0x02,
  2971.                                 Zero,
  2972.                                 0x10
  2973.                             },
  2974.  
  2975.                             Package (0x04)
  2976.                             {
  2977.                                 0xFFFF,
  2978.                                 0x03,
  2979.                                 Zero,
  2980.                                 0x11
  2981.                             }
  2982.                         })
  2983.                     }
  2984.                     Else
  2985.                     {
  2986.                         Return (Package (0x04)
  2987.                         {
  2988.                             Package (0x04)
  2989.                             {
  2990.                                 0xFFFF,
  2991.                                 Zero,
  2992.                                 LNKC,
  2993.                                 Zero
  2994.                             },
  2995.  
  2996.                             Package (0x04)
  2997.                             {
  2998.                                 0xFFFF,
  2999.                                 One,
  3000.                                 LNKD,
  3001.                                 Zero
  3002.                             },
  3003.  
  3004.                             Package (0x04)
  3005.                             {
  3006.                                 0xFFFF,
  3007.                                 0x02,
  3008.                                 LNKA,
  3009.                                 Zero
  3010.                             },
  3011.  
  3012.                             Package (0x04)
  3013.                             {
  3014.                                 0xFFFF,
  3015.                                 0x03,
  3016.                                 LNKB,
  3017.                                 Zero
  3018.                             }
  3019.                         })
  3020.                     }
  3021.                 }
  3022.  
  3023.                 Device (DVGA)
  3024.                 {
  3025.                     Name (_ADR, Zero)
  3026.                     Name (SWIT, One)
  3027.                     Name (CRTA, One)
  3028.                     Name (LCDA, One)
  3029.                     Name (TV0A, One)
  3030.                     Name (HDTV, One)
  3031.                     Name (CV0A, One)
  3032.                     Method (_STA, 0, NotSerialized)
  3033.                     {
  3034.                         Return (0x0F)
  3035.                     }
  3036.  
  3037.                     Name (_PSC, Zero)
  3038.                     Method (_PS0, 0, NotSerialized)
  3039.                     {
  3040.                         Store (Zero, _PSC)
  3041.                     }
  3042.  
  3043.                     Method (_PS3, 0, NotSerialized)
  3044.                     {
  3045.                         Store (0x03, _PSC)
  3046.                     }
  3047.  
  3048.                     Method (_DOS, 1, NotSerialized)
  3049.                     {
  3050.                         Store (And (Arg0, 0x03), SWIT)
  3051.                     }
  3052.  
  3053.                     Method (_DOD, 0, NotSerialized)
  3054.                     {
  3055.                         Return (Package (0x05)
  3056.                         {
  3057.                             0x00010100,
  3058.                             0x00010110,
  3059.                             0x00010200,
  3060.                             0x00010210,
  3061.                             0x000101F0
  3062.                         })
  3063.                     }
  3064.  
  3065.                     Device (CRT)
  3066.                     {
  3067.                         Name (_ADR, 0x0100)
  3068.                         Method (_DCS, 0, NotSerialized)
  3069.                         {
  3070.                             Store ("CRT -- _DCS", Debug)
  3071.                             If (CRTA)
  3072.                             {
  3073.                                 Return (0x1F)
  3074.                             }
  3075.                             Else
  3076.                             {
  3077.                                 Return (0x1D)
  3078.                             }
  3079.                         }
  3080.  
  3081.                         Method (_DGS, 0, NotSerialized)
  3082.                         {
  3083.                             Store ("CRT -- _DGS", Debug)
  3084.                             If (CRTA)
  3085.                             {
  3086.                                 Return (One)
  3087.                             }
  3088.                             Else
  3089.                             {
  3090.                                 Return (Zero)
  3091.                             }
  3092.                         }
  3093.  
  3094.                         Method (_DSS, 1, NotSerialized)
  3095.                         {
  3096.                             Store ("CRT -- _DSS", Debug)
  3097.                         }
  3098.                     }
  3099.  
  3100.                     Device (TV0)
  3101.                     {
  3102.                         Name (_ADR, 0x0200)
  3103.                         Method (_DCS, 0, NotSerialized)
  3104.                         {
  3105.                             Store ("TV -- _DCS", Debug)
  3106.                             If (TV0A)
  3107.                             {
  3108.                                 Return (0x1F)
  3109.                             }
  3110.                             Else
  3111.                             {
  3112.                                 Return (0x1D)
  3113.                             }
  3114.                         }
  3115.  
  3116.                         Method (_DGS, 0, NotSerialized)
  3117.                         {
  3118.                             Store ("TV -- _DCS", Debug)
  3119.                             If (TV0A)
  3120.                             {
  3121.                                 Return (One)
  3122.                             }
  3123.                             Else
  3124.                             {
  3125.                                 Return (Zero)
  3126.                             }
  3127.                         }
  3128.  
  3129.                         Method (_DSS, 1, NotSerialized)
  3130.                         {
  3131.                             Store ("TV -- _DSS", Debug)
  3132.                         }
  3133.                     }
  3134.  
  3135.                     Device (LCD)
  3136.                     {
  3137.                         Name (_ADR, 0x0110)
  3138.                         Method (_DCS, 0, NotSerialized)
  3139.                         {
  3140.                             Store ("LCD -- _DCS", Debug)
  3141.                             If (LCDA)
  3142.                             {
  3143.                                 Return (0x1F)
  3144.                             }
  3145.                             Else
  3146.                             {
  3147.                                 Return (0x1D)
  3148.                             }
  3149.                         }
  3150.  
  3151.                         Method (_DGS, 0, NotSerialized)
  3152.                         {
  3153.                             Store ("LCD -- _DCS", Debug)
  3154.                             If (LCDA)
  3155.                             {
  3156.                                 Return (One)
  3157.                             }
  3158.                             Else
  3159.                             {
  3160.                                 Return (Zero)
  3161.                             }
  3162.                         }
  3163.  
  3164.                         Method (_DSS, 1, NotSerialized)
  3165.                         {
  3166.                             Store ("LCD -- _DSS", Debug)
  3167.                         }
  3168.  
  3169.                         Method (_BCL, 0, NotSerialized)
  3170.                         {
  3171.                             Return (BCLT)
  3172.                         }
  3173.  
  3174.                         Method (_BCM, 1, NotSerialized)
  3175.                         {
  3176.                             SBCM (Arg0)
  3177.                         }
  3178.  
  3179.                         Method (_BQC, 0, NotSerialized)
  3180.                         {
  3181.                             Return (^^^^LPC0.EC0.BRTL)
  3182.                         }
  3183.                     }
  3184.  
  3185.                     Device (HDMI)
  3186.                     {
  3187.                         Name (_ADR, 0x0210)
  3188.                         Method (_DCS, 0, NotSerialized)
  3189.                         {
  3190.                             Store ("HDMI TV -- _DCS", Debug)
  3191.                             If (HDTV)
  3192.                             {
  3193.                                 Return (0x1F)
  3194.                             }
  3195.                             Else
  3196.                             {
  3197.                                 Return (0x1D)
  3198.                             }
  3199.                         }
  3200.  
  3201.                         Method (_DGS, 0, NotSerialized)
  3202.                         {
  3203.                             Store ("HDMI TV -- _DCS", Debug)
  3204.                             If (HDTV)
  3205.                             {
  3206.                                 Return (One)
  3207.                             }
  3208.                             Else
  3209.                             {
  3210.                                 Return (Zero)
  3211.                             }
  3212.                         }
  3213.  
  3214.                         Method (_DSS, 1, NotSerialized)
  3215.                         {
  3216.                             Store ("HDMI TV -- _DSS", Debug)
  3217.                         }
  3218.                     }
  3219.  
  3220.                     Device (CVTV)
  3221.                     {
  3222.                         Name (_ADR, 0x01F0)
  3223.                         Method (_DCS, 0, NotSerialized)
  3224.                         {
  3225.                             Store ("Composite Video -- _DCS", Debug)
  3226.                             If (CV0A)
  3227.                             {
  3228.                                 Return (0x1F)
  3229.                             }
  3230.                             Else
  3231.                             {
  3232.                                 Return (0x1D)
  3233.                             }
  3234.                         }
  3235.  
  3236.                         Method (_DGS, 0, NotSerialized)
  3237.                         {
  3238.                             Store ("Composite Video -- _DCS", Debug)
  3239.                             If (CV0A)
  3240.                             {
  3241.                                 Return (One)
  3242.                             }
  3243.                             Else
  3244.                             {
  3245.                                 Return (Zero)
  3246.                             }
  3247.                         }
  3248.  
  3249.                         Method (_DSS, 1, NotSerialized)
  3250.                         {
  3251.                             Store ("Composite Video -- _DSS", Debug)
  3252.                         }
  3253.                     }
  3254.                 }
  3255.             }
  3256.  
  3257.             Device (PB4)
  3258.             {
  3259.                 Name (_ADR, 0x00040000)
  3260.                 Method (_PRT, 0, NotSerialized)
  3261.                 {
  3262.                     If (GPIC)
  3263.                     {
  3264.                         Return (Package (0x04)
  3265.                         {
  3266.                             Package (0x04)
  3267.                             {
  3268.                                 0xFFFF,
  3269.                                 Zero,
  3270.                                 Zero,
  3271.                                 0x10
  3272.                             },
  3273.  
  3274.                             Package (0x04)
  3275.                             {
  3276.                                 0xFFFF,
  3277.                                 One,
  3278.                                 Zero,
  3279.                                 0x11
  3280.                             },
  3281.  
  3282.                             Package (0x04)
  3283.                             {
  3284.                                 0xFFFF,
  3285.                                 0x02,
  3286.                                 Zero,
  3287.                                 0x12
  3288.                             },
  3289.  
  3290.                             Package (0x04)
  3291.                             {
  3292.                                 0xFFFF,
  3293.                                 0x03,
  3294.                                 Zero,
  3295.                                 0x13
  3296.                             }
  3297.                         })
  3298.                     }
  3299.                     Else
  3300.                     {
  3301.                         Return (Package (0x04)
  3302.                         {
  3303.                             Package (0x04)
  3304.                             {
  3305.                                 0xFFFF,
  3306.                                 Zero,
  3307.                                 LNKA,
  3308.                                 Zero
  3309.                             },
  3310.  
  3311.                             Package (0x04)
  3312.                             {
  3313.                                 0xFFFF,
  3314.                                 One,
  3315.                                 LNKB,
  3316.                                 Zero
  3317.                             },
  3318.  
  3319.                             Package (0x04)
  3320.                             {
  3321.                                 0xFFFF,
  3322.                                 0x02,
  3323.                                 LNKC,
  3324.                                 Zero
  3325.                             },
  3326.  
  3327.                             Package (0x04)
  3328.                             {
  3329.                                 0xFFFF,
  3330.                                 0x03,
  3331.                                 LNKD,
  3332.                                 Zero
  3333.                             }
  3334.                         })
  3335.                     }
  3336.                 }
  3337.  
  3338.                 OperationRegion (XPCB, PCI_Config, 0x58, 0x24)
  3339.                 Field (XPCB, ByteAcc, NoLock, Preserve)
  3340.                 {
  3341.                             Offset (0x10),
  3342.                     LKCN,   16,
  3343.                     LKST,   16,
  3344.                             Offset (0x1A),
  3345.                     SLST,   16
  3346.                 }
  3347.  
  3348.                 OperationRegion (XPRI, PCI_Config, 0xE0, 0x08)
  3349.                 Field (XPRI, ByteAcc, NoLock, Preserve)
  3350.                 {
  3351.                     XPIR,   32,
  3352.                     XPID,   32
  3353.                 }
  3354.  
  3355.                 OperationRegion (XPEX, SystemMemory, 0xE0020100, 0x0100)
  3356.                 Field (XPEX, DWordAcc, NoLock, Preserve)
  3357.                 {
  3358.                             Offset (0x28),
  3359.                     VC0S,   32
  3360.                 }
  3361.  
  3362.                 Method (XPDL, 0, NotSerialized)
  3363.                 {
  3364.                     Store (Zero, Local0)
  3365.                     If (And (VC0S, 0x00020000))
  3366.                     {
  3367.                         Store (Ones, Local0)
  3368.                     }
  3369.  
  3370.                     Return (Local0)
  3371.                 }
  3372.  
  3373.                 Method (XPRD, 1, NotSerialized)
  3374.                 {
  3375.                     Store (Arg0, XPIR)
  3376.                     Store (XPID, Local0)
  3377.                     Store (Zero, XPIR)
  3378.                     Return (Local0)
  3379.                 }
  3380.  
  3381.                 Method (XPWR, 2, NotSerialized)
  3382.                 {
  3383.                     Store (Arg0, XPIR)
  3384.                     Store (Arg1, XPID)
  3385.                     Store (Zero, XPIR)
  3386.                 }
  3387.  
  3388.                 Method (XPRT, 0, NotSerialized)
  3389.                 {
  3390.                     Store (XPRD (0xA2), Local0)
  3391.                     And (Local0, 0xFFFFFFF8, Local0)
  3392.                     ShiftRight (Local0, 0x04, Local1)
  3393.                     And (Local1, 0x07, Local1)
  3394.                     Or (Local0, Local1, Local0)
  3395.                     Or (Local0, 0x0100, Local0)
  3396.                     XPWR (0xA2, Local0)
  3397.                 }
  3398.  
  3399.                 Method (XPLP, 1, NotSerialized)
  3400.                 {
  3401.                     Store (0x0101, Local1)
  3402.                     Store (NBXR (0x00020065), Local2)
  3403.                     If (Arg0)
  3404.                     {
  3405.                         And (Local2, Not (Local1), Local2)
  3406.                     }
  3407.                     Else
  3408.                     {
  3409.                         Or (Local2, Local1, Local2)
  3410.                     }
  3411.  
  3412.                     NBXW (0x00020065, Local2)
  3413.                 }
  3414.  
  3415.                 Method (XPR2, 0, NotSerialized)
  3416.                 {
  3417.                     Store (LKCN, Local0)
  3418.                     And (Local0, 0xFFFFFFDF, Local0)
  3419.                     Store (Local0, LKCN)
  3420.                     Or (Local0, 0x20, Local0)
  3421.                     Store (Local0, LKCN)
  3422.                     Store (0x64, Local1)
  3423.                     Store (One, Local2)
  3424.                     While (LAnd (Local1, Local2))
  3425.                     {
  3426.                         Sleep (One)
  3427.                         Store (LKST, Local3)
  3428.                         If (And (Local3, 0x0800))
  3429.                         {
  3430.                             Decrement (Local1)
  3431.                         }
  3432.                         Else
  3433.                         {
  3434.                             Store (Zero, Local2)
  3435.                         }
  3436.                     }
  3437.  
  3438.                     And (Local0, 0xFFFFFFDF, Local0)
  3439.                     Store (Local0, LKCN)
  3440.                     If (LNot (Local2))
  3441.                     {
  3442.                         Return (Ones)
  3443.                     }
  3444.                     Else
  3445.                     {
  3446.                         Return (Zero)
  3447.                     }
  3448.                 }
  3449.  
  3450.                 Device (NCRD)
  3451.                 {
  3452.                     Name (_ADR, Zero)
  3453.                     OperationRegion (PCFG, PCI_Config, Zero, 0x08)
  3454.                     Field (PCFG, DWordAcc, NoLock, Preserve)
  3455.                     {
  3456.                         DVID,   32,
  3457.                         PCMS,   32
  3458.                     }
  3459.  
  3460.                     Method (_RMV, 0, NotSerialized)
  3461.                     {
  3462.                         Return (One)
  3463.                     }
  3464.                 }
  3465.             }
  3466.  
  3467.             Device (PB5)
  3468.             {
  3469.                 Name (_ADR, 0x00050000)
  3470.                 Method (_PRW, 0, NotSerialized)
  3471.                 {
  3472.                     If (LEqual (WKPM, One))
  3473.                     {
  3474.                         Return (GPRW (0x12, 0x05))
  3475.                     }
  3476.                     Else
  3477.                     {
  3478.                         Return (GPRW (0x12, Zero))
  3479.                     }
  3480.                 }
  3481.  
  3482.                 Method (_PRT, 0, NotSerialized)
  3483.                 {
  3484.                     If (GPIC)
  3485.                     {
  3486.                         Return (Package (0x04)
  3487.                         {
  3488.                             Package (0x04)
  3489.                             {
  3490.                                 0xFFFF,
  3491.                                 Zero,
  3492.                                 Zero,
  3493.                                 0x11
  3494.                             },
  3495.  
  3496.                             Package (0x04)
  3497.                             {
  3498.                                 0xFFFF,
  3499.                                 One,
  3500.                                 Zero,
  3501.                                 0x12
  3502.                             },
  3503.  
  3504.                             Package (0x04)
  3505.                             {
  3506.                                 0xFFFF,
  3507.                                 0x02,
  3508.                                 Zero,
  3509.                                 0x13
  3510.                             },
  3511.  
  3512.                             Package (0x04)
  3513.                             {
  3514.                                 0xFFFF,
  3515.                                 0x03,
  3516.                                 Zero,
  3517.                                 0x10
  3518.                             }
  3519.                         })
  3520.                     }
  3521.                     Else
  3522.                     {
  3523.                         Return (Package (0x04)
  3524.                         {
  3525.                             Package (0x04)
  3526.                             {
  3527.                                 0xFFFF,
  3528.                                 Zero,
  3529.                                 LNKB,
  3530.                                 Zero
  3531.                             },
  3532.  
  3533.                             Package (0x04)
  3534.                             {
  3535.                                 0xFFFF,
  3536.                                 One,
  3537.                                 LNKC,
  3538.                                 Zero
  3539.                             },
  3540.  
  3541.                             Package (0x04)
  3542.                             {
  3543.                                 0xFFFF,
  3544.                                 0x02,
  3545.                                 LNKD,
  3546.                                 Zero
  3547.                             },
  3548.  
  3549.                             Package (0x04)
  3550.                             {
  3551.                                 0xFFFF,
  3552.                                 0x03,
  3553.                                 LNKA,
  3554.                                 Zero
  3555.                             }
  3556.                         })
  3557.                     }
  3558.                 }
  3559.             }
  3560.  
  3561.             Device (PB6)
  3562.             {
  3563.                 Name (_ADR, 0x00060000)
  3564.                 Name (_PRW, Package (0x02)
  3565.                 {
  3566.                     0x12,
  3567.                     0x04
  3568.                 })
  3569.                 Method (_PSW, 1, NotSerialized)
  3570.                 {
  3571.                     Store (Arg0, ^^LPC0.EC0.LANP)
  3572.                 }
  3573.  
  3574.                 Method (_PRT, 0, NotSerialized)
  3575.                 {
  3576.                     If (GPIC)
  3577.                     {
  3578.                         Return (Package (0x04)
  3579.                         {
  3580.                             Package (0x04)
  3581.                             {
  3582.                                 0xFFFF,
  3583.                                 Zero,
  3584.                                 Zero,
  3585.                                 0x12
  3586.                             },
  3587.  
  3588.                             Package (0x04)
  3589.                             {
  3590.                                 0xFFFF,
  3591.                                 One,
  3592.                                 Zero,
  3593.                                 0x13
  3594.                             },
  3595.  
  3596.                             Package (0x04)
  3597.                             {
  3598.                                 0xFFFF,
  3599.                                 0x02,
  3600.                                 Zero,
  3601.                                 0x10
  3602.                             },
  3603.  
  3604.                             Package (0x04)
  3605.                             {
  3606.                                 0xFFFF,
  3607.                                 0x03,
  3608.                                 Zero,
  3609.                                 0x11
  3610.                             }
  3611.                         })
  3612.                     }
  3613.                     Else
  3614.                     {
  3615.                         Return (Package (0x04)
  3616.                         {
  3617.                             Package (0x04)
  3618.                             {
  3619.                                 0xFFFF,
  3620.                                 Zero,
  3621.                                 LNKC,
  3622.                                 Zero
  3623.                             },
  3624.  
  3625.                             Package (0x04)
  3626.                             {
  3627.                                 0xFFFF,
  3628.                                 One,
  3629.                                 LNKD,
  3630.                                 Zero
  3631.                             },
  3632.  
  3633.                             Package (0x04)
  3634.                             {
  3635.                                 0xFFFF,
  3636.                                 0x02,
  3637.                                 LNKA,
  3638.                                 Zero
  3639.                             },
  3640.  
  3641.                             Package (0x04)
  3642.                             {
  3643.                                 0xFFFF,
  3644.                                 0x03,
  3645.                                 LNKB,
  3646.                                 Zero
  3647.                             }
  3648.                         })
  3649.                     }
  3650.                 }
  3651.             }
  3652.  
  3653.             Device (PB7)
  3654.             {
  3655.                 Name (_ADR, 0x00070000)
  3656.                 Method (_PRW, 0, NotSerialized)
  3657.                 {
  3658.                     If (LEqual (WKPM, One))
  3659.                     {
  3660.                         Return (GPRW (0x12, 0x05))
  3661.                     }
  3662.                     Else
  3663.                     {
  3664.                         Return (GPRW (0x12, Zero))
  3665.                     }
  3666.                 }
  3667.  
  3668.                 Method (_PRT, 0, NotSerialized)
  3669.                 {
  3670.                     If (GPIC)
  3671.                     {
  3672.                         Return (Package (0x04)
  3673.                         {
  3674.                             Package (0x04)
  3675.                             {
  3676.                                 0xFFFF,
  3677.                                 Zero,
  3678.                                 Zero,
  3679.                                 0x13
  3680.                             },
  3681.  
  3682.                             Package (0x04)
  3683.                             {
  3684.                                 0xFFFF,
  3685.                                 One,
  3686.                                 Zero,
  3687.                                 0x10
  3688.                             },
  3689.  
  3690.                             Package (0x04)
  3691.                             {
  3692.                                 0xFFFF,
  3693.                                 0x02,
  3694.                                 Zero,
  3695.                                 0x11
  3696.                             },
  3697.  
  3698.                             Package (0x04)
  3699.                             {
  3700.                                 0xFFFF,
  3701.                                 0x03,
  3702.                                 Zero,
  3703.                                 0x12
  3704.                             }
  3705.                         })
  3706.                     }
  3707.                     Else
  3708.                     {
  3709.                         Return (Package (0x04)
  3710.                         {
  3711.                             Package (0x04)
  3712.                             {
  3713.                                 0xFFFF,
  3714.                                 Zero,
  3715.                                 LNKD,
  3716.                                 Zero
  3717.                             },
  3718.  
  3719.                             Package (0x04)
  3720.                             {
  3721.                                 0xFFFF,
  3722.                                 One,
  3723.                                 LNKA,
  3724.                                 Zero
  3725.                             },
  3726.  
  3727.                             Package (0x04)
  3728.                             {
  3729.                                 0xFFFF,
  3730.                                 0x02,
  3731.                                 LNKB,
  3732.                                 Zero
  3733.                             },
  3734.  
  3735.                             Package (0x04)
  3736.                             {
  3737.                                 0xFFFF,
  3738.                                 0x03,
  3739.                                 LNKC,
  3740.                                 Zero
  3741.                             }
  3742.                         })
  3743.                     }
  3744.                 }
  3745.             }
  3746.  
  3747.             Device (PB9)
  3748.             {
  3749.                 Name (_ADR, 0x00090000)
  3750.                 Method (_PRW, 0, NotSerialized)
  3751.                 {
  3752.                     If (LEqual (WKPM, One))
  3753.                     {
  3754.                         Return (GPRW (0x12, 0x05))
  3755.                     }
  3756.                     Else
  3757.                     {
  3758.                         Return (GPRW (0x12, Zero))
  3759.                     }
  3760.                 }
  3761.  
  3762.                 Method (_PRT, 0, NotSerialized)
  3763.                 {
  3764.                     If (GPIC)
  3765.                     {
  3766.                         Return (Package (0x04)
  3767.                         {
  3768.                             Package (0x04)
  3769.                             {
  3770.                                 0xFFFF,
  3771.                                 Zero,
  3772.                                 Zero,
  3773.                                 0x11
  3774.                             },
  3775.  
  3776.                             Package (0x04)
  3777.                             {
  3778.                                 0xFFFF,
  3779.                                 One,
  3780.                                 Zero,
  3781.                                 0x12
  3782.                             },
  3783.  
  3784.                             Package (0x04)
  3785.                             {
  3786.                                 0xFFFF,
  3787.                                 0x02,
  3788.                                 Zero,
  3789.                                 0x13
  3790.                             },
  3791.  
  3792.                             Package (0x04)
  3793.                             {
  3794.                                 0xFFFF,
  3795.                                 0x03,
  3796.                                 Zero,
  3797.                                 0x10
  3798.                             }
  3799.                         })
  3800.                     }
  3801.                     Else
  3802.                     {
  3803.                         Return (Package (0x04)
  3804.                         {
  3805.                             Package (0x04)
  3806.                             {
  3807.                                 0xFFFF,
  3808.                                 Zero,
  3809.                                 LNKB,
  3810.                                 Zero
  3811.                             },
  3812.  
  3813.                             Package (0x04)
  3814.                             {
  3815.                                 0xFFFF,
  3816.                                 One,
  3817.                                 LNKC,
  3818.                                 Zero
  3819.                             },
  3820.  
  3821.                             Package (0x04)
  3822.                             {
  3823.                                 0xFFFF,
  3824.                                 0x02,
  3825.                                 LNKD,
  3826.                                 Zero
  3827.                             },
  3828.  
  3829.                             Package (0x04)
  3830.                             {
  3831.                                 0xFFFF,
  3832.                                 0x03,
  3833.                                 LNKA,
  3834.                                 Zero
  3835.                             }
  3836.                         })
  3837.                     }
  3838.                 }
  3839.             }
  3840.  
  3841.             Device (PB10)
  3842.             {
  3843.                 Name (_ADR, 0x000A0000)
  3844.                 OperationRegion (XPCB, PCI_Config, 0x58, 0x24)
  3845.                 Field (XPCB, ByteAcc, NoLock, Preserve)
  3846.                 {
  3847.                             Offset (0x10),
  3848.                     LKCN,   16,
  3849.                     LKST,   16,
  3850.                             Offset (0x1A),
  3851.                     SLST,   16
  3852.                 }
  3853.  
  3854.                 OperationRegion (XPRI, PCI_Config, 0xE0, 0x08)
  3855.                 Field (XPRI, ByteAcc, NoLock, Preserve)
  3856.                 {
  3857.                     XPIR,   32,
  3858.                     XPID,   32
  3859.                 }
  3860.  
  3861.                 OperationRegion (XPEX, SystemMemory, 0xE0028100, 0x0100)
  3862.                 Field (XPEX, DWordAcc, NoLock, Preserve)
  3863.                 {
  3864.                             Offset (0x28),
  3865.                     VC0S,   32
  3866.                 }
  3867.  
  3868.                 Method (XPDL, 0, NotSerialized)
  3869.                 {
  3870.                     Store (Zero, Local0)
  3871.                     If (And (VC0S, 0x00020000))
  3872.                     {
  3873.                         Store (Ones, Local0)
  3874.                     }
  3875.  
  3876.                     Return (Local0)
  3877.                 }
  3878.  
  3879.                 Method (XPRD, 1, NotSerialized)
  3880.                 {
  3881.                     Store (Arg0, XPIR)
  3882.                     Store (XPID, Local0)
  3883.                     Store (Zero, XPIR)
  3884.                     Return (Local0)
  3885.                 }
  3886.  
  3887.                 Method (XPWR, 2, NotSerialized)
  3888.                 {
  3889.                     Store (Arg0, XPIR)
  3890.                     Store (Arg1, XPID)
  3891.                     Store (Zero, XPIR)
  3892.                 }
  3893.  
  3894.                 Method (XPRT, 0, NotSerialized)
  3895.                 {
  3896.                     Store (XPRD (0xA2), Local0)
  3897.                     And (Local0, 0xFFFFFFF8, Local0)
  3898.                     ShiftRight (Local0, 0x04, Local1)
  3899.                     And (Local1, 0x07, Local1)
  3900.                     Or (Local0, Local1, Local0)
  3901.                     Or (Local0, 0x0100, Local0)
  3902.                     XPWR (0xA2, Local0)
  3903.                 }
  3904.  
  3905.                 Method (XPLP, 1, NotSerialized)
  3906.                 {
  3907.                     Store (0x2020, Local1)
  3908.                     Store (NBXR (0x00010065), Local2)
  3909.                     If (Arg0)
  3910.                     {
  3911.                         And (Local2, Not (Local1), Local2)
  3912.                     }
  3913.                     Else
  3914.                     {
  3915.                         Or (Local2, Local1, Local2)
  3916.                     }
  3917.  
  3918.                     NBXW (0x00010065, Local2)
  3919.                 }
  3920.  
  3921.                 Method (XPR2, 0, NotSerialized)
  3922.                 {
  3923.                     Store (LKCN, Local0)
  3924.                     And (Local0, 0xFFFFFFDF, Local0)
  3925.                     Store (Local0, LKCN)
  3926.                     Or (Local0, 0x20, Local0)
  3927.                     Store (Local0, LKCN)
  3928.                     Store (0x64, Local1)
  3929.                     Store (One, Local2)
  3930.                     While (LAnd (Local1, Local2))
  3931.                     {
  3932.                         Sleep (One)
  3933.                         Store (LKST, Local3)
  3934.                         If (And (Local3, 0x0800))
  3935.                         {
  3936.                             Decrement (Local1)
  3937.                         }
  3938.                         Else
  3939.                         {
  3940.                             Store (Zero, Local2)
  3941.                         }
  3942.                     }
  3943.  
  3944.                     And (Local0, 0xFFFFFFDF, Local0)
  3945.                     Store (Local0, LKCN)
  3946.                     If (LNot (Local2))
  3947.                     {
  3948.                         Return (Ones)
  3949.                     }
  3950.                     Else
  3951.                     {
  3952.                         Return (Zero)
  3953.                     }
  3954.                 }
  3955.  
  3956.                 Method (_PRW, 0, NotSerialized)
  3957.                 {
  3958.                     If (LEqual (WKPM, One))
  3959.                     {
  3960.                         Return (GPRW (0x12, 0x05))
  3961.                     }
  3962.                     Else
  3963.                     {
  3964.                         Return (GPRW (0x12, Zero))
  3965.                     }
  3966.                 }
  3967.  
  3968.                 Method (_PRT, 0, NotSerialized)
  3969.                 {
  3970.                     If (GPIC)
  3971.                     {
  3972.                         Return (Package (0x04)
  3973.                         {
  3974.                             Package (0x04)
  3975.                             {
  3976.                                 0xFFFF,
  3977.                                 Zero,
  3978.                                 Zero,
  3979.                                 0x12
  3980.                             },
  3981.  
  3982.                             Package (0x04)
  3983.                             {
  3984.                                 0xFFFF,
  3985.                                 One,
  3986.                                 Zero,
  3987.                                 0x13
  3988.                             },
  3989.  
  3990.                             Package (0x04)
  3991.                             {
  3992.                                 0xFFFF,
  3993.                                 0x02,
  3994.                                 Zero,
  3995.                                 0x10
  3996.                             },
  3997.  
  3998.                             Package (0x04)
  3999.                             {
  4000.                                 0xFFFF,
  4001.                                 0x03,
  4002.                                 Zero,
  4003.                                 0x11
  4004.                             }
  4005.                         })
  4006.                     }
  4007.                     Else
  4008.                     {
  4009.                         Return (Package (0x04)
  4010.                         {
  4011.                             Package (0x04)
  4012.                             {
  4013.                                 0xFFFF,
  4014.                                 Zero,
  4015.                                 LNKC,
  4016.                                 Zero
  4017.                             },
  4018.  
  4019.                             Package (0x04)
  4020.                             {
  4021.                                 0xFFFF,
  4022.                                 One,
  4023.                                 LNKD,
  4024.                                 Zero
  4025.                             },
  4026.  
  4027.                             Package (0x04)
  4028.                             {
  4029.                                 0xFFFF,
  4030.                                 0x02,
  4031.                                 LNKA,
  4032.                                 Zero
  4033.                             },
  4034.  
  4035.                             Package (0x04)
  4036.                             {
  4037.                                 0xFFFF,
  4038.                                 0x03,
  4039.                                 LNKB,
  4040.                                 Zero
  4041.                             }
  4042.                         })
  4043.                     }
  4044.                 }
  4045.  
  4046.                 Device (J380)
  4047.                 {
  4048.                     Name (_ADR, Zero)
  4049.                     OperationRegion (PCFG, PCI_Config, Zero, 0xFF)
  4050.                     Field (PCFG, ByteAcc, NoLock, Preserve)
  4051.                     {
  4052.                         DVID,   32,
  4053.                                 Offset (0x2C),
  4054.                         SSID,   32,
  4055.                                 Offset (0xAC),
  4056.                         D3EF,   8,
  4057.                                 Offset (0xB2),
  4058.                         LAT0,   8,
  4059.                                 Offset (0xCF),
  4060.                         ATRB,   8,
  4061.                                 Offset (0xD3),
  4062.                         PMC0,   8
  4063.                     }
  4064.  
  4065.                     Method (_STA, 0, NotSerialized)
  4066.                     {
  4067.                         If (LNotEqual (DVID, Ones))
  4068.                         {
  4069.                             Return (0x0F)
  4070.                         }
  4071.                         Else
  4072.                         {
  4073.                             Return (Zero)
  4074.                         }
  4075.                     }
  4076.  
  4077.                     Method (_RMV, 0, NotSerialized)
  4078.                     {
  4079.                         Return (One)
  4080.                     }
  4081.                 }
  4082.  
  4083.                 Device (J381)
  4084.                 {
  4085.                     Name (_ADR, One)
  4086.                     Method (_RMV, 0, NotSerialized)
  4087.                     {
  4088.                         Return (One)
  4089.                     }
  4090.                 }
  4091.  
  4092.                 Device (J382)
  4093.                 {
  4094.                     Name (_ADR, 0x02)
  4095.                     Method (_RMV, 0, NotSerialized)
  4096.                     {
  4097.                         Return (One)
  4098.                     }
  4099.                 }
  4100.  
  4101.                 Device (J383)
  4102.                 {
  4103.                     Name (_ADR, 0x03)
  4104.                     Method (_RMV, 0, NotSerialized)
  4105.                     {
  4106.                         Return (One)
  4107.                     }
  4108.                 }
  4109.  
  4110.                 Device (J384)
  4111.                 {
  4112.                     Name (_ADR, 0x04)
  4113.                     Method (_RMV, 0, NotSerialized)
  4114.                     {
  4115.                         Return (One)
  4116.                     }
  4117.                 }
  4118.             }
  4119.  
  4120.             Device (HPET)
  4121.             {
  4122.                 Name (_HID, EisaId ("PNP0103"))
  4123.                 Method (_STA, 0, NotSerialized)
  4124.                 {
  4125.                     If (LAnd (^^SMBS.HPAD, Ones))
  4126.                     {
  4127.                         If (LAnd (TPOS, 0x40))
  4128.                         {
  4129.                             Return (0x0F)
  4130.                         }
  4131.                     }
  4132.  
  4133.                     Return (Zero)
  4134.                 }
  4135.  
  4136.                 Method (_CRS, 0, NotSerialized)
  4137.                 {
  4138.                     Name (BUF0, ResourceTemplate ()
  4139.                     {
  4140.                         IRQNoFlags ()
  4141.                             {0}
  4142.                         IRQNoFlags ()
  4143.                             {8}
  4144.                         Memory32Fixed (ReadOnly,
  4145.                             0xFED00000,         // Address Base
  4146.                             0x00000400,         // Address Length
  4147.                             _Y04)
  4148.                     })
  4149.                     CreateDWordField (BUF0, \_SB.PCI0.HPET._CRS._Y04._BAS, HPEB)
  4150.                     Store (^^SMBS.HPAD, Local0)
  4151.                     And (Local0, 0xFFFFFFC0, HPEB)
  4152.                     Return (BUF0)
  4153.                 }
  4154.             }
  4155.  
  4156.             Device (USB0)
  4157.             {
  4158.                 Name (_ADR, 0x00120000)
  4159.                 Method (_S3D, 0, NotSerialized)
  4160.                 {
  4161.                     Return (0x02)
  4162.                 }
  4163.  
  4164.                 Method (_S4D, 0, NotSerialized)
  4165.                 {
  4166.                     Return (0x02)
  4167.                 }
  4168.             }
  4169.  
  4170.             Device (USB1)
  4171.             {
  4172.                 Name (_ADR, 0x00120001)
  4173.                 Method (_S3D, 0, NotSerialized)
  4174.                 {
  4175.                     Return (0x02)
  4176.                 }
  4177.  
  4178.                 Method (_S4D, 0, NotSerialized)
  4179.                 {
  4180.                     Return (0x02)
  4181.                 }
  4182.             }
  4183.  
  4184.             Device (USB2)
  4185.             {
  4186.                 Name (_ADR, 0x00130000)
  4187.                 Method (_S3D, 0, NotSerialized)
  4188.                 {
  4189.                     Return (0x02)
  4190.                 }
  4191.  
  4192.                 Method (_S4D, 0, NotSerialized)
  4193.                 {
  4194.                     Return (0x02)
  4195.                 }
  4196.             }
  4197.  
  4198.             Device (USB3)
  4199.             {
  4200.                 Name (_ADR, 0x00130001)
  4201.                 Method (_S3D, 0, NotSerialized)
  4202.                 {
  4203.                     Return (0x02)
  4204.                 }
  4205.  
  4206.                 Method (_S4D, 0, NotSerialized)
  4207.                 {
  4208.                     Return (0x02)
  4209.                 }
  4210.             }
  4211.  
  4212.             Device (USB4)
  4213.             {
  4214.                 Name (_ADR, 0x00140005)
  4215.                 Method (_S3D, 0, NotSerialized)
  4216.                 {
  4217.                     Return (0x02)
  4218.                 }
  4219.  
  4220.                 Method (_S4D, 0, NotSerialized)
  4221.                 {
  4222.                     Return (0x02)
  4223.                 }
  4224.             }
  4225.  
  4226.             Device (USB5)
  4227.             {
  4228.                 Name (_ADR, 0x00120002)
  4229.             }
  4230.  
  4231.             Device (USB6)
  4232.             {
  4233.                 Name (_ADR, 0x00130002)
  4234.             }
  4235.  
  4236.             Device (SMBS)
  4237.             {
  4238.                 Name (_ADR, 0x00140000)
  4239.                 OperationRegion (IRQF, PCI_Config, Zero, 0xFF)
  4240.                 Field (IRQF, ByteAcc, NoLock, Preserve)
  4241.                 {
  4242.                             Offset (0x08),
  4243.                     RVID,   8,
  4244.                             Offset (0x52),
  4245.                     GP53,   1,
  4246.                     GP54,   1,
  4247.                     GP55,   1,
  4248.                     GP56,   1,
  4249.                             Offset (0x54),
  4250.                     GP57,   1,
  4251.                     GP58,   1,
  4252.                     GP59,   1,
  4253.                     GP60,   1,
  4254.                             Offset (0x56),
  4255.                     R56H,   3,
  4256.                     GP64,   1,
  4257.                             Offset (0x5A),
  4258.                     GP70,   1,
  4259.                     GP71,   1,
  4260.                     GP72,   1,
  4261.                     GP73,   1,
  4262.                     G70C,   1,
  4263.                     G71C,   1,
  4264.                             Offset (0x62),
  4265.                     IRQK,   1,
  4266.                     IRQM,   1,
  4267.                             Offset (0x63),
  4268.                             Offset (0x82),
  4269.                     GP13,   1,
  4270.                             Offset (0x90),
  4271.                     BMBS,   16,
  4272.                             Offset (0xAD),
  4273.                     SA1E,   1,
  4274.                         ,   3,
  4275.                     SA2E,   1,
  4276.                             Offset (0xB4),
  4277.                     HPAD,   32
  4278.                 }
  4279.  
  4280.                 OperationRegion (PMIO, SystemIO, 0x0CD6, 0x02)
  4281.                 Field (PMIO, ByteAcc, NoLock, Preserve)
  4282.                 {
  4283.                     INPM,   8,
  4284.                     DAPM,   8
  4285.                 }
  4286.  
  4287.                 IndexField (INPM, DAPM, ByteAcc, NoLock, Preserve)
  4288.                 {
  4289.                         ,   1,
  4290.                     TM1E,   1,
  4291.                     TM2E,   1,
  4292.                             Offset (0x01),
  4293.                         ,   1,
  4294.                     TM1S,   1,
  4295.                     TM2S,   1,
  4296.                             Offset (0x04),
  4297.                         ,   7,
  4298.                     SLPS,   1,
  4299.                             Offset (0x1C),
  4300.                         ,   3,
  4301.                     MKME,   1,
  4302.                     PI3E,   1,
  4303.                     PI2E,   1,
  4304.                     PI1E,   1,
  4305.                     PI0E,   1,
  4306.                         ,   3,
  4307.                     MKMS,   1,
  4308.                     PI3S,   1,
  4309.                     PI2S,   1,
  4310.                     PI1S,   1,
  4311.                     PI0S,   1,
  4312.                             Offset (0x36),
  4313.                     GE0T,   1,
  4314.                     GE1T,   1,
  4315.                     GE2T,   1,
  4316.                     GE3T,   1,
  4317.                     GE4T,   1,
  4318.                     GE5T,   1,
  4319.                     GE6T,   1,
  4320.                     GE7T,   1,
  4321.                             Offset (0x38),
  4322.                         ,   1,
  4323.                     GM4C,   1,
  4324.                     GM5C,   1,
  4325.                         ,   1,
  4326.                     GM6C,   1,
  4327.                             Offset (0x39),
  4328.                         ,   7,
  4329.                     GE7S,   1,
  4330.                             Offset (0x55),
  4331.                     SPRE,   1,
  4332.                             Offset (0x65),
  4333.                         ,   4,
  4334.                     RS3U,   1,
  4335.                     RSTU,   1,
  4336.                             Offset (0x68),
  4337.                         ,   3,
  4338.                     TPDE,   1,
  4339.                         ,   1,
  4340.                             Offset (0x92),
  4341.                     GEVS,   8
  4342.                 }
  4343.  
  4344.                 OperationRegion (SMBI, SystemIO, And (BMBS, 0xFFFE), 0x10)
  4345.                 Field (SMBI, ByteAcc, NoLock, Preserve)
  4346.                 {
  4347.                     HSTS,   8,
  4348.                             Offset (0x02),
  4349.                     HCTR,   8,
  4350.                     HCMD,   8,
  4351.                     SLVA,   8,
  4352.                     SDT0,   8,
  4353.                     SDT1,   8
  4354.                 }
  4355.  
  4356.                 Method (SWRB, 3, Serialized)
  4357.                 {
  4358.                     If (STRT ())
  4359.                     {
  4360.                         Return (Zero)
  4361.                     }
  4362.  
  4363.                     Store (0x1F, HSTS)
  4364.                     Store (Arg0, SLVA)
  4365.                     Store (Arg1, HCMD)
  4366.                     Store (Arg2, SDT0)
  4367.                     Store (0x48, HCTR)
  4368.                     If (COMP ())
  4369.                     {
  4370.                         Or (HSTS, 0x1F, HSTS)
  4371.                         Return (One)
  4372.                     }
  4373.  
  4374.                     Return (Zero)
  4375.                 }
  4376.  
  4377.                 Method (SRDB, 2, Serialized)
  4378.                 {
  4379.                     If (STRT ())
  4380.                     {
  4381.                         Return (0xFFFF)
  4382.                     }
  4383.  
  4384.                     Store (0x1F, HSTS)
  4385.                     Store (Or (Arg0, One), SLVA)
  4386.                     Store (Arg1, HCMD)
  4387.                     Store (0x48, HCTR)
  4388.                     If (COMP ())
  4389.                     {
  4390.                         Or (HSTS, 0x1F, HSTS)
  4391.                         Return (SDT0)
  4392.                     }
  4393.  
  4394.                     Return (0xFFFF)
  4395.                 }
  4396.  
  4397.                 Method (STRT, 0, Serialized)
  4398.                 {
  4399.                     Store (0x4E20, Local0)
  4400.                     While (Local0)
  4401.                     {
  4402.                         If (And (HSTS, One))
  4403.                         {
  4404.                             Decrement (Local0)
  4405.                             Stall (0x32)
  4406.                             If (LEqual (Local0, Zero))
  4407.                             {
  4408.                                 KEL ()
  4409.                             }
  4410.                         }
  4411.                         Else
  4412.                         {
  4413.                             Return (Zero)
  4414.                         }
  4415.                     }
  4416.  
  4417.                     Return (One)
  4418.                 }
  4419.  
  4420.                 Method (COMP, 0, Serialized)
  4421.                 {
  4422.                     Store (0x4E20, Local0)
  4423.                     While (Local0)
  4424.                     {
  4425.                         If (And (HSTS, One))
  4426.                         {
  4427.                             Decrement (Local0)
  4428.                             Stall (0x32)
  4429.                             If (LEqual (Local0, Zero))
  4430.                             {
  4431.                                 KEL ()
  4432.                             }
  4433.                         }
  4434.                         Else
  4435.                         {
  4436.                             Return (One)
  4437.                         }
  4438.                     }
  4439.  
  4440.                     Return (Zero)
  4441.                 }
  4442.  
  4443.                 Method (KEL, 0, Serialized)
  4444.                 {
  4445.                     Or (HCTR, 0x02, HCTR)
  4446.                     Or (HSTS, 0x1F, HSTS)
  4447.                 }
  4448.             }
  4449.  
  4450.             Device (LPC0)
  4451.             {
  4452.                 Name (_ADR, 0x00140003)
  4453.                 Mutex (PSMX, 0x00)
  4454.                 Device (DMAC)
  4455.                 {
  4456.                     Name (_HID, EisaId ("PNP0200"))
  4457.                     Name (_CRS, ResourceTemplate ()
  4458.                     {
  4459.                         IO (Decode16,
  4460.                             0x0000,             // Range Minimum
  4461.                             0x0000,             // Range Maximum
  4462.                             0x01,               // Alignment
  4463.                             0x10,               // Length
  4464.                             )
  4465.                         IO (Decode16,
  4466.                             0x0081,             // Range Minimum
  4467.                             0x0081,             // Range Maximum
  4468.                             0x01,               // Alignment
  4469.                             0x0F,               // Length
  4470.                             )
  4471.                         IO (Decode16,
  4472.                             0x00C0,             // Range Minimum
  4473.                             0x00C0,             // Range Maximum
  4474.                             0x01,               // Alignment
  4475.                             0x20,               // Length
  4476.                             )
  4477.                         DMA (Compatibility, NotBusMaster, Transfer8_16, )
  4478.                             {4}
  4479.                     })
  4480.                 }
  4481.  
  4482.                 Device (COPR)
  4483.                 {
  4484.                     Name (_HID, EisaId ("PNP0C04"))
  4485.                     Name (_CRS, ResourceTemplate ()
  4486.                     {
  4487.                         IO (Decode16,
  4488.                             0x00F0,             // Range Minimum
  4489.                             0x00F0,             // Range Maximum
  4490.                             0x01,               // Alignment
  4491.                             0x0F,               // Length
  4492.                             )
  4493.                         IRQNoFlags ()
  4494.                             {13}
  4495.                     })
  4496.                 }
  4497.  
  4498.                 Device (PIC)
  4499.                 {
  4500.                     Name (_HID, EisaId ("PNP0000"))
  4501.                     Name (_CRS, ResourceTemplate ()
  4502.                     {
  4503.                         IO (Decode16,
  4504.                             0x0020,             // Range Minimum
  4505.                             0x0020,             // Range Maximum
  4506.                             0x01,               // Alignment
  4507.                             0x02,               // Length
  4508.                             )
  4509.                         IO (Decode16,
  4510.                             0x00A0,             // Range Minimum
  4511.                             0x00A0,             // Range Maximum
  4512.                             0x01,               // Alignment
  4513.                             0x02,               // Length
  4514.                             )
  4515.                         IRQNoFlags ()
  4516.                             {2}
  4517.                     })
  4518.                 }
  4519.  
  4520.                 Device (RTC)
  4521.                 {
  4522.                     Name (_HID, EisaId ("PNP0B00"))
  4523.                     Name (BUF0, ResourceTemplate ()
  4524.                     {
  4525.                         IO (Decode16,
  4526.                             0x0070,             // Range Minimum
  4527.                             0x0070,             // Range Maximum
  4528.                             0x01,               // Alignment
  4529.                             0x02,               // Length
  4530.                             )
  4531.                     })
  4532.                     Name (BUF1, ResourceTemplate ()
  4533.                     {
  4534.                         IO (Decode16,
  4535.                             0x0070,             // Range Minimum
  4536.                             0x0070,             // Range Maximum
  4537.                             0x01,               // Alignment
  4538.                             0x02,               // Length
  4539.                             )
  4540.                         IRQNoFlags ()
  4541.                             {8}
  4542.                     })
  4543.                     Method (_CRS, 0, Serialized)
  4544.                     {
  4545.                         If (LAnd (^^^SMBS.HPAD, Ones))
  4546.                         {
  4547.                             Return (BUF0)
  4548.                         }
  4549.  
  4550.                         Return (BUF1)
  4551.                     }
  4552.                 }
  4553.  
  4554.                 Device (SPKR)
  4555.                 {
  4556.                     Name (_HID, EisaId ("PNP0800"))
  4557.                     Name (_CRS, ResourceTemplate ()
  4558.                     {
  4559.                         IO (Decode16,
  4560.                             0x0061,             // Range Minimum
  4561.                             0x0061,             // Range Maximum
  4562.                             0x01,               // Alignment
  4563.                             0x01,               // Length
  4564.                             )
  4565.                     })
  4566.                 }
  4567.  
  4568.                 Device (TMR)
  4569.                 {
  4570.                     Name (_HID, EisaId ("PNP0100"))
  4571.                     Name (BUF0, ResourceTemplate ()
  4572.                     {
  4573.                         IO (Decode16,
  4574.                             0x0040,             // Range Minimum
  4575.                             0x0040,             // Range Maximum
  4576.                             0x01,               // Alignment
  4577.                             0x04,               // Length
  4578.                             )
  4579.                     })
  4580.                     Name (BUF1, ResourceTemplate ()
  4581.                     {
  4582.                         IO (Decode16,
  4583.                             0x0040,             // Range Minimum
  4584.                             0x0040,             // Range Maximum
  4585.                             0x01,               // Alignment
  4586.                             0x04,               // Length
  4587.                             )
  4588.                         IRQNoFlags ()
  4589.                             {0}
  4590.                     })
  4591.                     Method (_CRS, 0, Serialized)
  4592.                     {
  4593.                         If (LAnd (^^^SMBS.HPAD, Ones))
  4594.                         {
  4595.                             Return (BUF0)
  4596.                         }
  4597.  
  4598.                         Return (BUF1)
  4599.                     }
  4600.                 }
  4601.  
  4602.                 Device (PS2K)
  4603.                 {
  4604.                     Name (_HID, EisaId ("PNP0303"))
  4605.                     Name (_CRS, ResourceTemplate ()
  4606.                     {
  4607.                         IO (Decode16,
  4608.                             0x0060,             // Range Minimum
  4609.                             0x0060,             // Range Maximum
  4610.                             0x01,               // Alignment
  4611.                             0x01,               // Length
  4612.                             )
  4613.                         IO (Decode16,
  4614.                             0x0064,             // Range Minimum
  4615.                             0x0064,             // Range Maximum
  4616.                             0x01,               // Alignment
  4617.                             0x01,               // Length
  4618.                             )
  4619.                         IRQ (Edge, ActiveHigh, Exclusive, )
  4620.                             {1}
  4621.                     })
  4622.                     Name (_PRW, Package (0x02)
  4623.                     {
  4624.                         0x19,
  4625.                         0x03
  4626.                     })
  4627.                     Method (_PSW, 1, NotSerialized)
  4628.                     {
  4629.                         If (ECON)
  4630.                         {
  4631.                             If (LEqual (Arg0, One))
  4632.                             {
  4633.                                 Store (One, ^^EC0.PSKB)
  4634.                             }
  4635.                             Else
  4636.                             {
  4637.                                 Store (Zero, ^^EC0.PSKB)
  4638.                             }
  4639.                         }
  4640.                     }
  4641.                 }
  4642.  
  4643.                 Device (PS2M)
  4644.                 {
  4645.                     Method (_HID, 0, NotSerialized)
  4646.                     {
  4647.                         Return ("*SYN0150")
  4648.                     }
  4649.  
  4650.                     Name (_CID, Package (0x03)
  4651.                     {
  4652.                         0x00012E4F,
  4653.                         0x02002E4F,
  4654.                         0x130FD041
  4655.                     })
  4656.                     Name (_CRS, ResourceTemplate ()
  4657.                     {
  4658.                         IRQ (Edge, ActiveHigh, Exclusive, )
  4659.                             {12}
  4660.                     })
  4661.                     Name (_PRW, Package (0x02)
  4662.                     {
  4663.                         0x19,
  4664.                         0x03
  4665.                     })
  4666.                     Method (_PSW, 1, NotSerialized)
  4667.                     {
  4668.                         If (ECON)
  4669.                         {
  4670.                             If (LEqual (Arg0, One))
  4671.                             {
  4672.                                 Store (One, ^^EC0.PSTP)
  4673.                             }
  4674.                             Else
  4675.                             {
  4676.                                 Store (Zero, ^^EC0.PSTP)
  4677.                             }
  4678.                         }
  4679.                     }
  4680.                 }
  4681.  
  4682.                 Device (SYSR)
  4683.                 {
  4684.                     Name (_HID, EisaId ("PNP0C02"))
  4685.                     Name (_CRS, ResourceTemplate ()
  4686.                     {
  4687.                         IO (Decode16,
  4688.                             0x0010,             // Range Minimum
  4689.                             0x0010,             // Range Maximum
  4690.                             0x01,               // Alignment
  4691.                             0x10,               // Length
  4692.                             )
  4693.                         IO (Decode16,
  4694.                             0x002E,             // Range Minimum
  4695.                             0x002E,             // Range Maximum
  4696.                             0x01,               // Alignment
  4697.                             0x02,               // Length
  4698.                             )
  4699.                         IO (Decode16,
  4700.                             0x0072,             // Range Minimum
  4701.                             0x0072,             // Range Maximum
  4702.                             0x01,               // Alignment
  4703.                             0x02,               // Length
  4704.                             )
  4705.                         IO (Decode16,
  4706.                             0x0080,             // Range Minimum
  4707.                             0x0080,             // Range Maximum
  4708.                             0x01,               // Alignment
  4709.                             0x01,               // Length
  4710.                             )
  4711.                         IO (Decode16,
  4712.                             0x00B0,             // Range Minimum
  4713.                             0x00B0,             // Range Maximum
  4714.                             0x01,               // Alignment
  4715.                             0x02,               // Length
  4716.                             )
  4717.                         IO (Decode16,
  4718.                             0x0092,             // Range Minimum
  4719.                             0x0092,             // Range Maximum
  4720.                             0x01,               // Alignment
  4721.                             0x01,               // Length
  4722.                             )
  4723.                         IO (Decode16,
  4724.                             0x0400,             // Range Minimum
  4725.                             0x0400,             // Range Maximum
  4726.                             0x01,               // Alignment
  4727.                             0xD0,               // Length
  4728.                             )
  4729.                         IO (Decode16,
  4730.                             0x04D0,             // Range Minimum
  4731.                             0x04D0,             // Range Maximum
  4732.                             0x01,               // Alignment
  4733.                             0x02,               // Length
  4734.                             )
  4735.                         IO (Decode16,
  4736.                             0x04D6,             // Range Minimum
  4737.                             0x04D6,             // Range Maximum
  4738.                             0x01,               // Alignment
  4739.                             0x01,               // Length
  4740.                             )
  4741.                         IO (Decode16,
  4742.                             0x0680,             // Range Minimum
  4743.                             0x0680,             // Range Maximum
  4744.                             0x01,               // Alignment
  4745.                             0x80,               // Length
  4746.                             )
  4747.                         IO (Decode16,
  4748.                             0x077A,             // Range Minimum
  4749.                             0x077A,             // Range Maximum
  4750.                             0x01,               // Alignment
  4751.                             0x01,               // Length
  4752.                             )
  4753.                         IO (Decode16,
  4754.                             0x0C00,             // Range Minimum
  4755.                             0x0C00,             // Range Maximum
  4756.                             0x01,               // Alignment
  4757.                             0x02,               // Length
  4758.                             )
  4759.                         IO (Decode16,
  4760.                             0x0C14,             // Range Minimum
  4761.                             0x0C14,             // Range Maximum
  4762.                             0x01,               // Alignment
  4763.                             0x01,               // Length
  4764.                             )
  4765.                         IO (Decode16,
  4766.                             0x0C50,             // Range Minimum
  4767.                             0x0C50,             // Range Maximum
  4768.                             0x01,               // Alignment
  4769.                             0x03,               // Length
  4770.                             )
  4771.                         IO (Decode16,
  4772.                             0x0C6C,             // Range Minimum
  4773.                             0x0C6C,             // Range Maximum
  4774.                             0x01,               // Alignment
  4775.                             0x01,               // Length
  4776.                             )
  4777.                         IO (Decode16,
  4778.                             0x0C6F,             // Range Minimum
  4779.                             0x0C6F,             // Range Maximum
  4780.                             0x01,               // Alignment
  4781.                             0x01,               // Length
  4782.                             )
  4783.                         IO (Decode16,
  4784.                             0x0CD0,             // Range Minimum
  4785.                             0x0CD0,             // Range Maximum
  4786.                             0x01,               // Alignment
  4787.                             0x0C,               // Length
  4788.                             )
  4789.                     })
  4790.                 }
  4791.  
  4792.                 Device (MEM)
  4793.                 {
  4794.                     Name (_HID, EisaId ("PNP0C01"))
  4795.                     Name (MSRC, ResourceTemplate ()
  4796.                     {
  4797.                         Memory32Fixed (ReadOnly,
  4798.                             0x000E0000,         // Address Base
  4799.                             0x00020000,         // Address Length
  4800.                             )
  4801.                         Memory32Fixed (ReadWrite,
  4802.                             0xFFF00000,         // Address Base
  4803.                             0x00100000,         // Address Length
  4804.                             )
  4805.                     })
  4806.                     Method (_CRS, 0, NotSerialized)
  4807.                     {
  4808.                         Return (MSRC)
  4809.                     }
  4810.                 }
  4811.  
  4812.                 Device (EC0)
  4813.                 {
  4814.                     Name (_HID, EisaId ("PNP0C09"))
  4815.                     Name (_UID, One)
  4816.                     Method (_CRS, 0, NotSerialized)
  4817.                     {
  4818.                         Name (BFFR, ResourceTemplate ()
  4819.                         {
  4820.                             IO (Decode16,
  4821.                                 0x0062,             // Range Minimum
  4822.                                 0x0062,             // Range Maximum
  4823.                                 0x00,               // Alignment
  4824.                                 0x01,               // Length
  4825.                                 )
  4826.                             IO (Decode16,
  4827.                                 0x0066,             // Range Minimum
  4828.                                 0x0066,             // Range Maximum
  4829.                                 0x00,               // Alignment
  4830.                                 0x01,               // Length
  4831.                                 )
  4832.                         })
  4833.                         Return (BFFR)
  4834.                     }
  4835.  
  4836.                     OperationRegion (ERAM, EmbeddedControl, Zero, 0xFF)
  4837.                     Field (ERAM, ByteAcc, NoLock, Preserve)
  4838.                     {
  4839.                         SMPR,   8,
  4840.                         SMST,   8,
  4841.                         SMAD,   8,
  4842.                         SMCM,   8,
  4843.                         SMD0,   256,
  4844.                         BCNT,   8,
  4845.                         SMAA,   8,
  4846.                         BATD,   16,
  4847.                                 Offset (0x40),
  4848.                         SW2S,   1,
  4849.                                 Offset (0x41),
  4850.                             ,   4,
  4851.                         CFAN,   1,
  4852.                         PFN2,   1,
  4853.                         WOLF,   1,
  4854.                         PFLG,   1,
  4855.                                 Offset (0x43),
  4856.                         BBDA,   1,
  4857.                             ,   4,
  4858.                                 Offset (0x4E),
  4859.                         LIDE,   1,
  4860.                             ,   2,
  4861.                         TLDP,   1,
  4862.                                 Offset (0x52),
  4863.                         LIDS,   1,
  4864.                         WBSS,   1,
  4865.                             ,   1,
  4866.                         TLID,   1,
  4867.                                 Offset (0x58),
  4868.                         RTMP,   8,
  4869.                         ECT1,   8,
  4870.                         ECT2,   8,
  4871.                         RG5B,   8,
  4872.                         FSPD,   16,
  4873.                                 Offset (0x5F),
  4874.                         CFN2,   1,
  4875.                         SFN2,   1,
  4876.                                 Offset (0x67),
  4877.                         PWPE,   8,
  4878.                                 Offset (0x7E),
  4879.                         BATP,   8,
  4880.                                 Offset (0x82),
  4881.                         MBST,   8,
  4882.                         MCUR,   16,
  4883.                         MBRM,   16,
  4884.                         MBCV,   16,
  4885.                                 Offset (0xA0),
  4886.                         QBHK,   8,
  4887.                             ,   5,
  4888.                                 Offset (0xA2),
  4889.                         QBBB,   8,
  4890.                                 Offset (0xA4),
  4891.                         MBTS,   1,
  4892.                         MBTF,   1,
  4893.                                 Offset (0xA5),
  4894.                         MBTC,   1,
  4895.                             ,   2,
  4896.                         MBNH,   1,
  4897.                                 Offset (0xA6),
  4898.                         BA1C,   8,
  4899.                                 Offset (0xAF),
  4900.                         MCER,   8,
  4901.                                 Offset (0xB2),
  4902.                         RPM1,   8,
  4903.                         RPM2,   8,
  4904.                         Q8EF,   8,
  4905.                                 Offset (0xBC),
  4906.                         MCEA,   8,
  4907.                                 Offset (0xCF),
  4908.                         DLYC,   8,
  4909.                         EBPL,   1,
  4910.                                 Offset (0xD2),
  4911.                             ,   6,
  4912.                         APWR,   1,
  4913.                         DLYE,   1,
  4914.                                 Offset (0xD6),
  4915.                         DBPL,   8,
  4916.                                 Offset (0xDA),
  4917.                         EPRW,   8,
  4918.                         PSKB,   1,
  4919.                         PSTP,   1,
  4920.                         PSBA,   1,
  4921.                         LANP,   1,
  4922.                                 Offset (0xDF),
  4923.                         ECBW,   1,
  4924.                                 Offset (0xE0),
  4925.                         DLYT,   8,
  4926.                                 Offset (0xE2),
  4927.                         BRTL,   8,
  4928.                                 Offset (0xE5),
  4929.                         SARS,   8,
  4930.                         SFHK,   8,
  4931.                         GQKS,   7,
  4932.                                 Offset (0xF4),
  4933.                         SFAN,   8
  4934.                     }
  4935.  
  4936.                     Name (FNF4, Zero)
  4937.                     Name (BATO, Zero)
  4938.                     Name (BATN, Zero)
  4939.                     Name (BATF, 0xC0)
  4940.                     Method (_REG, 2, NotSerialized)
  4941.                     {
  4942.                         If (LAnd (LEqual (Arg0, 0x03), LEqual (Arg1, One)))
  4943.                         {
  4944.                             Store (One, ECON)
  4945.                         }
  4946.                     }
  4947.  
  4948.                     Method (BPOL, 1, NotSerialized)
  4949.                     {
  4950.                         Store (Arg0, DBPL)
  4951.                         Store (One, EBPL)
  4952.                     }
  4953.  
  4954.                     Method (BPOM, 0, NotSerialized)
  4955.                     {
  4956.                         Store (Zero, DBPL)
  4957.                         Store (Zero, EBPL)
  4958.                     }
  4959.  
  4960.                     Name (_GPE, 0x03)
  4961.                     Method (_Q09, 0, NotSerialized)
  4962.                     {
  4963.                         If (LEqual (FNF4, Zero))
  4964.                         {
  4965.                             Notify (BAT0, 0x80)
  4966.                             Notify (ACAD, 0x80)
  4967.                         }
  4968.                         Else
  4969.                         {
  4970.                             Store (Zero, FNF4)
  4971.                         }
  4972.                     }
  4973.  
  4974.                     Method (_Q20, 0, NotSerialized)
  4975.                     {
  4976.                         CPUS ()
  4977.                         GBAS ()
  4978.                         If (And (0x40, BATF))
  4979.                         {
  4980.                             Notify (BAT0, 0x81)
  4981.                         }
  4982.  
  4983.                         If (And (0x02, BATF))
  4984.                         {
  4985.                             Notify (ACAD, 0x80)
  4986.                         }
  4987.  
  4988.                         Notify (BAT0, 0x80)
  4989.                         BPOL (0x05)
  4990.                     }
  4991.  
  4992.                     Method (GBAS, 0, NotSerialized)
  4993.                     {
  4994.                         Store (Zero, BATF)
  4995.                         Store (MBTS, Local0)
  4996.                         Store (SW2S, Local1)
  4997.                         ShiftLeft (Local0, 0x06, Local0)
  4998.                         ShiftLeft (Local1, One, Local1)
  4999.                         If (LNotEqual (And (BATO, 0x40), Local0))
  5000.                         {
  5001.                             Or (BATF, 0x40, BATF)
  5002.                         }
  5003.  
  5004.                         If (LNotEqual (And (BATO, 0x02), Local1))
  5005.                         {
  5006.                             Or (BATF, 0x02, BATF)
  5007.                         }
  5008.  
  5009.                         Store (BATF, BATO)
  5010.                     }
  5011.  
  5012.                     Method (_Q21, 0, NotSerialized)
  5013.                     {
  5014.                         Notify (ACAD, 0x80)
  5015.                         Notify (BAT0, 0x80)
  5016.                         CPUS ()
  5017.                         If (SW2S)
  5018.                         {
  5019.                             Store (0x03, ^^^^WMID.WEID)
  5020.                             Store (Zero, ^^^^WMID.WEDT)
  5021.                             Notify (WMID, 0x80)
  5022.                         }
  5023.  
  5024.                         If (VGAF)
  5025.                         {
  5026.                             If (D3E)
  5027.                             {
  5028.                                 If (SW2S)
  5029.                                 {
  5030.                                     Sleep (0x14)
  5031.                                     Store (^^^SMBS.GEVS, Local0)
  5032.                                     If (LNot (And (Local0, 0x80)))
  5033.                                     {
  5034.                                         Store (0x5B, APMC)
  5035.                                         Stall (0xFF)
  5036.                                         Stall (0xFF)
  5037.                                         Stall (0xFF)
  5038.                                         Stall (0xFF)
  5039.                                         Stall (0xFF)
  5040.                                         Stall (0xFF)
  5041.                                     }
  5042.                                     Else
  5043.                                     {
  5044.                                         Store (^^^PB10.J380.DVID, Local7)
  5045.                                         And (Local7, 0xFFF0FFFF, Local7)
  5046.                                         If (LEqual (Local7, 0x2380197B))
  5047.                                         {
  5048.                                             And (^^^PB10.J380.D3EF, 0xBF, ^^^PB10.J380.D3EF)
  5049.                                         }
  5050.                                     }
  5051.                                 }
  5052.                                 Else
  5053.                                 {
  5054.                                     Sleep (0x14)
  5055.                                     Store (^^^SMBS.GEVS, Local0)
  5056.                                     If (And (Local0, 0x80))
  5057.                                     {
  5058.                                         Store (^^^PB10.J380.DVID, Local7)
  5059.                                         And (Local7, 0xFFF0FFFF, Local7)
  5060.                                         If (LEqual (Local7, 0x2380197B))
  5061.                                         {
  5062.                                             Or (^^^PB10.J380.D3EF, 0x40, ^^^PB10.J380.D3EF)
  5063.                                         }
  5064.                                     }
  5065.                                 }
  5066.                             }
  5067.                         }
  5068.                     }
  5069.  
  5070.                     Method (_Q80, 0, NotSerialized)
  5071.                     {
  5072.                         Store ("_Q80 : Temperature Up/Down", Debug)
  5073.                         Notify (\_TZ.THRM, 0x80)
  5074.                     }
  5075.  
  5076.                     Method (_Q8A, 0, NotSerialized)
  5077.                     {
  5078.                         If (LIDE)
  5079.                         {
  5080.                             Store ("_Q8A : LID Switch Event", Debug)
  5081.                             Store (Zero, LIDE)
  5082.                             Notify (LID, 0x80)
  5083.                         }
  5084.                     }
  5085.  
  5086.                     Mutex (VGMX, 0x00)
  5087.                     Method (_Q0D, 0, NotSerialized)
  5088.                     {
  5089.                         Store ("_Q0D : Switch Display (Fn+F4)", Debug)
  5090.                         If (LEqual (FNF4, Zero))
  5091.                         {
  5092.                             Store (0x70, BCMD)
  5093.                             BSMI (Zero)
  5094.                             GNSD ()
  5095.                             If (VGAF)
  5096.                             {
  5097.                                 Store (And (NSTE, One), ^^^PB2.DVGA.LCDA)
  5098.                                 Store (ShiftRight (And (NSTE, 0x02), One), ^^^PB2.DVGA.CRTA)
  5099.                                 Store (ShiftRight (And (NSTE, 0x04), 0x02), ^^^PB2.DVGA.TV0A)
  5100.                                 Store (ShiftRight (And (NSTE, 0x10), 0x04), ^^^PB2.DVGA.HDTV)
  5101.                                 Store (ShiftRight (And (NSTE, 0x20), 0x05), ^^^PB2.DVGA.CV0A)
  5102.                                 Notify (^^^PB2.DVGA, 0x80)
  5103.                                 Notify (^^^PB2.DVGA, 0x80)
  5104.                             }
  5105.                             Else
  5106.                             {
  5107.                                 Store (And (NSTE, One), ^^^AGP.VGA.LCDA)
  5108.                                 Store (ShiftRight (And (NSTE, 0x02), One), ^^^AGP.VGA.CRTA)
  5109.                                 Store (ShiftRight (And (NSTE, 0x04), 0x02), ^^^AGP.VGA.TV0A)
  5110.                                 Store (ShiftRight (And (NSTE, 0x10), 0x04), ^^^AGP.VGA.HDTV)
  5111.                                 Store (ShiftRight (And (NSTE, 0x20), 0x05), ^^^AGP.VGA.CV0A)
  5112.                                 Notify (^^^AGP.VGA, 0x80)
  5113.                             }
  5114.  
  5115.                             Store (One, FNF4)
  5116.                             Store (0x03, DLYT)
  5117.                         }
  5118.                     }
  5119.  
  5120.                     Method (_Q0E, 0, NotSerialized)
  5121.                     {
  5122.                         Notify (SLPB, 0x80)
  5123.                     }
  5124.  
  5125.                     Method (_Q11, 0, NotSerialized)
  5126.                     {
  5127.                         If (LEqual (TPOS, 0x40))
  5128.                         {
  5129.                             If (VGAF)
  5130.                             {
  5131.                                 Notify (^^^PB2.DVGA.LCD, 0x86)
  5132.                             }
  5133.                             Else
  5134.                             {
  5135.                                 Notify (^^^AGP.VGA.LCD, 0x86)
  5136.                             }
  5137.                         }
  5138.                         Else
  5139.                         {
  5140.                             BRXP (One)
  5141.                         }
  5142.  
  5143.                         Sleep (0x32)
  5144.                     }
  5145.  
  5146.                     Method (_Q10, 0, NotSerialized)
  5147.                     {
  5148.                         If (LEqual (TPOS, 0x40))
  5149.                         {
  5150.                             If (VGAF)
  5151.                             {
  5152.                                 Notify (^^^PB2.DVGA.LCD, 0x87)
  5153.                             }
  5154.                             Else
  5155.                             {
  5156.                                 Notify (^^^AGP.VGA.LCD, 0x87)
  5157.                             }
  5158.                         }
  5159.                         Else
  5160.                         {
  5161.                             BRXP (0x02)
  5162.                         }
  5163.  
  5164.                         Sleep (0x32)
  5165.                     }
  5166.  
  5167.                     Method (_Q15, 0, NotSerialized)
  5168.                     {
  5169.                         Store ("!!! Wireless Button pressed !!!", Debug)
  5170.                         If (BTLS)
  5171.                         {
  5172.                             Store (Zero, BTLS)
  5173.                             Store (Zero, ^^^SMBS.GP13)
  5174.                             Store (Zero, ^^^SMBS.GP70)
  5175.                         }
  5176.                         Else
  5177.                         {
  5178.                             Store (One, BTLS)
  5179.                             If (^^^^WMID.WMIF)
  5180.                             {
  5181.                                 If (BWLS)
  5182.                                 {
  5183.                                     Store (One, ^^^SMBS.GP13)
  5184.                                 }
  5185.                             }
  5186.                             Else
  5187.                             {
  5188.                                 Store (One, ^^^SMBS.GP13)
  5189.                             }
  5190.  
  5191.                             If (^^^^WMID.WMIF)
  5192.                             {
  5193.                                 If (WWLS)
  5194.                                 {
  5195.                                     Store (One, ^^^SMBS.GP70)
  5196.                                 }
  5197.                             }
  5198.                             Else
  5199.                             {
  5200.                                 Store (One, ^^^SMBS.GP70)
  5201.                             }
  5202.                         }
  5203.  
  5204.                         Store (0x05, ^^^^WMID.WEID)
  5205.                         Store (Zero, ^^^^WMID.WEDT)
  5206.                         Notify (WMID, 0x80)
  5207.                     }
  5208.  
  5209.                     Method (_Q16, 0, NotSerialized)
  5210.                     {
  5211.                         Store ("!!! DVD/Music Button pressed !!!", Debug)
  5212.                         Store (QBBB, Local0)
  5213.                         If (LEqual (Local0, 0x03))
  5214.                         {
  5215.                             Notify (MBTN, 0x02)
  5216.                         }
  5217.  
  5218.                         If (LEqual (Local0, 0x06))
  5219.                         {
  5220.                             Notify (PBTN, 0x02)
  5221.                         }
  5222.  
  5223.                         If (LEqual (Local0, 0x09))
  5224.                         {
  5225.                             Notify (VBTN, 0x02)
  5226.                         }
  5227.  
  5228.                         If (LEqual (Local0, 0x12))
  5229.                         {
  5230.                             Notify (TBTN, 0x02)
  5231.                         }
  5232.  
  5233.                         Store (0x04, ^^^^WMID.WEID)
  5234.                         Store (Zero, ^^^^WMID.WEDT)
  5235.                         Notify (WMID, 0x80)
  5236.                     }
  5237.  
  5238.                     Method (_Q8E, 0, NotSerialized)
  5239.                     {
  5240.                         Store ("!!! Increase CPU P State. !!!", Debug)
  5241.                         If (LGreater (PPCM, One))
  5242.                         {
  5243.                             If (LGreater (PPCM, 0x03))
  5244.                             {
  5245.                                 Subtract (PPCM, 0x02, Local1)
  5246.                             }
  5247.                             Else
  5248.                             {
  5249.                                 Store (PPCM, Local1)
  5250.                             }
  5251.  
  5252.                             Store (\_PR.CPU0._PPC, Local0)
  5253.                             If (LLess (Local0, Local1))
  5254.                             {
  5255.                                 Add (Local0, One, Local0)
  5256.                             }
  5257.  
  5258.                             Store (Local0, \_PR.CPU0._PPC)
  5259.                             Notify (\_PR.CPU0, 0x80)
  5260.                             If (LGreater (ECPU, One))
  5261.                             {
  5262.                                 Store (Local0, \_PR.CPU1._PPC)
  5263.                                 Notify (\_PR.CPU1, 0x80)
  5264.                             }
  5265.  
  5266.                             If (LEqual (Local0, Local1))
  5267.                             {
  5268.                                 Store (One, Q8EF)
  5269.                             }
  5270.                             Else
  5271.                             {
  5272.                                 Store (0xFF, Q8EF)
  5273.                             }
  5274.                         }
  5275.                     }
  5276.  
  5277.                     Method (_Q8F, 0, NotSerialized)
  5278.                     {
  5279.                         Store ("!!! Decrease CPU P State !!!", Debug)
  5280.                         If (LGreater (PPCM, One))
  5281.                         {
  5282.                             Store (\_PR.CPU0._PPC, Local0)
  5283.                             If (Local0)
  5284.                             {
  5285.                                 Subtract (Local0, One, Local0)
  5286.                                 Store (Local0, \_PR.CPU0._PPC)
  5287.                                 Notify (\_PR.CPU0, 0x80)
  5288.                                 If (LGreater (ECPU, One))
  5289.                                 {
  5290.                                     Store (Local0, \_PR.CPU1._PPC)
  5291.                                     Notify (\_PR.CPU1, 0x80)
  5292.                                 }
  5293.                             }
  5294.  
  5295.                             If (LEqual (Local0, Zero))
  5296.                             {
  5297.                                 Store (Zero, Q8EF)
  5298.                             }
  5299.                             Else
  5300.                             {
  5301.                                 Store (0xFF, Q8EF)
  5302.                             }
  5303.                         }
  5304.                     }
  5305.  
  5306.                     Field (ERAM, ByteAcc, NoLock, Preserve)
  5307.                     {
  5308.                                 Offset (0x04),
  5309.                         SMW0,   16
  5310.                     }
  5311.  
  5312.                     Field (ERAM, ByteAcc, NoLock, Preserve)
  5313.                     {
  5314.                                 Offset (0x04),
  5315.                         SMB0,   8
  5316.                     }
  5317.  
  5318.                     Field (ERAM, ByteAcc, NoLock, Preserve)
  5319.                     {
  5320.                                 Offset (0x04),
  5321.                         FLD0,   64
  5322.                     }
  5323.  
  5324.                     Field (ERAM, ByteAcc, NoLock, Preserve)
  5325.                     {
  5326.                                 Offset (0x04),
  5327.                         FLD1,   128
  5328.                     }
  5329.  
  5330.                     Field (ERAM, ByteAcc, NoLock, Preserve)
  5331.                     {
  5332.                                 Offset (0x04),
  5333.                         FLD2,   192
  5334.                     }
  5335.  
  5336.                     Field (ERAM, ByteAcc, NoLock, Preserve)
  5337.                     {
  5338.                                 Offset (0x04),
  5339.                         FLD3,   256
  5340.                     }
  5341.  
  5342.                     Mutex (MUT0, 0x00)
  5343.                     Method (SMRD, 4, NotSerialized)
  5344.                     {
  5345.                         If (LNot (ECON))
  5346.                         {
  5347.                             Return (0xFF)
  5348.                         }
  5349.  
  5350.                         If (LNotEqual (Arg0, 0x07))
  5351.                         {
  5352.                             If (LNotEqual (Arg0, 0x09))
  5353.                             {
  5354.                                 If (LNotEqual (Arg0, 0x0B))
  5355.                                 {
  5356.                                     Return (0x19)
  5357.                                 }
  5358.                             }
  5359.                         }
  5360.  
  5361.                         Acquire (MUT0, 0xFFFF)
  5362.                         Store (0x04, Local0)
  5363.                         While (LGreater (Local0, One))
  5364.                         {
  5365.                             And (SMST, 0x40, SMST)
  5366.                             Store (Arg2, SMCM)
  5367.                             Store (Arg1, SMAD)
  5368.                             Store (Arg0, SMPR)
  5369.                             Store (Zero, Local3)
  5370.                             While (LNot (And (SMST, 0xBF, Local1)))
  5371.                             {
  5372.                                 Sleep (0x02)
  5373.                                 Increment (Local3)
  5374.                                 If (LEqual (Local3, 0x32))
  5375.                                 {
  5376.                                     And (SMST, 0x40, SMST)
  5377.                                     Store (Arg2, SMCM)
  5378.                                     Store (Arg1, SMAD)
  5379.                                     Store (Arg0, SMPR)
  5380.                                     Store (Zero, Local3)
  5381.                                 }
  5382.                             }
  5383.  
  5384.                             If (LEqual (Local1, 0x80))
  5385.                             {
  5386.                                 Store (Zero, Local0)
  5387.                             }
  5388.                             Else
  5389.                             {
  5390.                                 Decrement (Local0)
  5391.                             }
  5392.                         }
  5393.  
  5394.                         If (Local0)
  5395.                         {
  5396.                             Store (And (Local1, 0x1F), Local0)
  5397.                         }
  5398.                         Else
  5399.                         {
  5400.                             If (LEqual (Arg0, 0x07))
  5401.                             {
  5402.                                 Store (SMB0, Arg3)
  5403.                             }
  5404.  
  5405.                             If (LEqual (Arg0, 0x09))
  5406.                             {
  5407.                                 Store (SMW0, Arg3)
  5408.                             }
  5409.  
  5410.                             If (LEqual (Arg0, 0x0B))
  5411.                             {
  5412.                                 Store (BCNT, Local3)
  5413.                                 ShiftRight (0x0100, 0x03, Local2)
  5414.                                 If (LGreater (Local3, Local2))
  5415.                                 {
  5416.                                     Store (Local2, Local3)
  5417.                                 }
  5418.  
  5419.                                 If (LLess (Local3, 0x09))
  5420.                                 {
  5421.                                     Store (FLD0, Local2)
  5422.                                 }
  5423.                                 Else
  5424.                                 {
  5425.                                     If (LLess (Local3, 0x11))
  5426.                                     {
  5427.                                         Store (FLD1, Local2)
  5428.                                     }
  5429.                                     Else
  5430.                                     {
  5431.                                         If (LLess (Local3, 0x19))
  5432.                                         {
  5433.                                             Store (FLD2, Local2)
  5434.                                         }
  5435.                                         Else
  5436.                                         {
  5437.                                             Store (FLD3, Local2)
  5438.                                         }
  5439.                                     }
  5440.                                 }
  5441.  
  5442.                                 Increment (Local3)
  5443.                                 Store (Buffer (Local3) {}, Local4)
  5444.                                 Decrement (Local3)
  5445.                                 Store (Zero, Local5)
  5446.                                 While (LGreater (Local3, Local5))
  5447.                                 {
  5448.                                     GBFE (Local2, Local5, RefOf (Local6))
  5449.                                     PBFE (Local4, Local5, Local6)
  5450.                                     Increment (Local5)
  5451.                                 }
  5452.  
  5453.                                 PBFE (Local4, Local5, Zero)
  5454.                                 Store (Local4, Arg3)
  5455.                             }
  5456.                         }
  5457.  
  5458.                         Release (MUT0)
  5459.                         Return (Local0)
  5460.                     }
  5461.  
  5462.                     Method (SMWR, 4, NotSerialized)
  5463.                     {
  5464.                         If (LNot (ECON))
  5465.                         {
  5466.                             Return (0xFF)
  5467.                         }
  5468.  
  5469.                         If (LNotEqual (Arg0, 0x06))
  5470.                         {
  5471.                             If (LNotEqual (Arg0, 0x08))
  5472.                             {
  5473.                                 If (LNotEqual (Arg0, 0x0A))
  5474.                                 {
  5475.                                     Return (0x19)
  5476.                                 }
  5477.                             }
  5478.                         }
  5479.  
  5480.                         Acquire (MUT0, 0xFFFF)
  5481.                         Store (0x04, Local0)
  5482.                         While (LGreater (Local0, One))
  5483.                         {
  5484.                             If (LEqual (Arg0, 0x06))
  5485.                             {
  5486.                                 Store (Arg3, SMB0)
  5487.                             }
  5488.  
  5489.                             If (LEqual (Arg0, 0x08))
  5490.                             {
  5491.                                 Store (Arg3, SMW0)
  5492.                             }
  5493.  
  5494.                             If (LEqual (Arg0, 0x0A))
  5495.                             {
  5496.                                 Store (Arg3, SMD0)
  5497.                             }
  5498.  
  5499.                             And (SMST, 0x40, SMST)
  5500.                             Store (Arg2, SMCM)
  5501.                             Store (Arg1, SMAD)
  5502.                             Store (Arg0, SMPR)
  5503.                             Store (Zero, Local3)
  5504.                             While (LNot (And (SMST, 0xBF, Local1)))
  5505.                             {
  5506.                                 Sleep (0x02)
  5507.                                 Increment (Local3)
  5508.                                 If (LEqual (Local3, 0x32))
  5509.                                 {
  5510.                                     And (SMST, 0x40, SMST)
  5511.                                     Store (Arg2, SMCM)
  5512.                                     Store (Arg1, SMAD)
  5513.                                     Store (Arg0, SMPR)
  5514.                                     Store (Zero, Local3)
  5515.                                 }
  5516.                             }
  5517.  
  5518.                             If (LEqual (Local1, 0x80))
  5519.                             {
  5520.                                 Store (Zero, Local0)
  5521.                             }
  5522.                             Else
  5523.                             {
  5524.                                 Decrement (Local0)
  5525.                             }
  5526.                         }
  5527.  
  5528.                         If (Local0)
  5529.                         {
  5530.                             Store (And (Local1, 0x1F), Local0)
  5531.                         }
  5532.  
  5533.                         Release (MUT0)
  5534.                         Return (Local0)
  5535.                     }
  5536.  
  5537.                     Method (GSHK, 0, Serialized)
  5538.                     {
  5539.                         If (ECON)
  5540.                         {
  5541.                             Store (SFHK, Local0)
  5542.                         }
  5543.  
  5544.                         Return (Local0)
  5545.                     }
  5546.  
  5547.                     Method (SSHK, 1, Serialized)
  5548.                     {
  5549.                         If (ECON)
  5550.                         {
  5551.                             Store (Arg0, SFHK)
  5552.                         }
  5553.                     }
  5554.  
  5555.                     Name (DISS, Buffer (0x0A)
  5556.                     {
  5557.                         /* 0000 */    0x01, 0x02, 0x04, 0x10, 0x20, 0x03, 0x05, 0x11,
  5558.                         /* 0008 */    0x21, 0x01
  5559.                     })
  5560.                     Name (SWII, 0x0A)
  5561.                     Method (GNSD, 0, Serialized)
  5562.                     {
  5563.                         Store (Zero, Local0)
  5564.                         Store (CSTE, Local1)
  5565.                         Store (ADDL, Local2)
  5566.                         While (LLess (Local0, SWII))
  5567.                         {
  5568.                             Store (DerefOf (Index (DISS, Local0)), Local3)
  5569.                             If (LEqual (Local3, Local1))
  5570.                             {
  5571.                                 While (LLess (Local0, SWII))
  5572.                                 {
  5573.                                     Store (Local0, Local4)
  5574.                                     Increment (Local4)
  5575.                                     Store (DerefOf (Index (DISS, Local4)), Local5)
  5576.                                     If (LEqual (And (Local2, Local5), Local5))
  5577.                                     {
  5578.                                         Store (Local5, NSTE)
  5579.                                         Store (SWII, Local0)
  5580.                                     }
  5581.                                     Else
  5582.                                     {
  5583.                                         Increment (Local0)
  5584.                                     }
  5585.                                 }
  5586.                             }
  5587.                             Else
  5588.                             {
  5589.                                 Increment (Local0)
  5590.                             }
  5591.                         }
  5592.                     }
  5593.  
  5594.                     Method (NHSB, 0, NotSerialized)
  5595.                     {
  5596.                         Store (IVIM, Local0)
  5597.                         If (LEqual (Local0, 0x04))
  5598.                         {
  5599.                             Notify (QBTN, 0x02)
  5600.                         }
  5601.  
  5602.                         If (LEqual (Local0, 0x05))
  5603.                         {
  5604.                             Notify (DBTN, 0x02)
  5605.                         }
  5606.  
  5607.                         If (LEqual (Local0, 0x03))
  5608.                         {
  5609.                             Notify (MBTN, 0x02)
  5610.                         }
  5611.  
  5612.                         If (LEqual (Local0, 0x10))
  5613.                         {
  5614.                             Notify (EBTN, 0x02)
  5615.                         }
  5616.  
  5617.                         If (LEqual (Local0, 0x06))
  5618.                         {
  5619.                             Notify (PBTN, 0x02)
  5620.                         }
  5621.  
  5622.                         If (LEqual (Local0, 0x11))
  5623.                         {
  5624.                             Notify (VBTN, 0x02)
  5625.                         }
  5626.  
  5627.                         If (LEqual (Local0, 0x12))
  5628.                         {
  5629.                             Notify (TBTN, 0x02)
  5630.                         }
  5631.                     }
  5632.  
  5633.                     Method (CPUS, 0, NotSerialized)
  5634.                     {
  5635.                         Store (Zero, Local0)
  5636.                         Store (Local0, \_PR.CPU0._PPC)
  5637.                         Notify (\_PR.CPU0, 0x80)
  5638.                         If (LGreater (ECPU, One))
  5639.                         {
  5640.                             Store (Local0, \_PR.CPU1._PPC)
  5641.                             Notify (\_PR.CPU1, 0x80)
  5642.                         }
  5643.                     }
  5644.                 }
  5645.  
  5646.                 Device (CIR)
  5647.                 {
  5648.                     Method (_HID, 0, NotSerialized)
  5649.                     {
  5650.                         Return ("*ENE0100")
  5651.                     }
  5652.  
  5653.                     Method (_STA, 0, NotSerialized)
  5654.                     {
  5655.                         Return (0x0F)
  5656.                     }
  5657.  
  5658.                     Method (_CRS, 0, NotSerialized)
  5659.                     {
  5660.                         Name (BUFA, ResourceTemplate ()
  5661.                         {
  5662.                             IO (Decode16,
  5663.                                 0x0380,             // Range Minimum
  5664.                                 0x0380,             // Range Maximum
  5665.                                 0x01,               // Alignment
  5666.                                 0x04,               // Length
  5667.                                 )
  5668.                             IRQNoFlags ()
  5669.                                 {4}
  5670.                         })
  5671.                         Return (BUFA)
  5672.                     }
  5673.  
  5674.                     Name (_PRS, ResourceTemplate ()
  5675.                     {
  5676.                         IO (Decode16,
  5677.                             0x0380,             // Range Minimum
  5678.                             0x0380,             // Range Maximum
  5679.                             0x01,               // Alignment
  5680.                             0x04,               // Length
  5681.                             )
  5682.                         IRQNoFlags ()
  5683.                             {4}
  5684.                     })
  5685.                 }
  5686.  
  5687.                 OperationRegion (LCLM, SystemIO, 0x0C50, 0x03)
  5688.                 Field (LCLM, ByteAcc, NoLock, Preserve)
  5689.                 {
  5690.                     CLMI,   8,
  5691.                     CLMD,   8,
  5692.                     CLGP,   8
  5693.                 }
  5694.  
  5695.                 IndexField (CLMI, CLMD, ByteAcc, NoLock, Preserve)
  5696.                 {
  5697.                     IDRG,   8,
  5698.                             Offset (0x02),
  5699.                     TSTS,   8,
  5700.                     TINT,   8,
  5701.                             Offset (0x12),
  5702.                     I2CC,   8,
  5703.                     GPIO,   8
  5704.                 }
  5705.  
  5706.                 Method (RGPM, 0, NotSerialized)
  5707.                 {
  5708.                     Store (GPIO, Local0)
  5709.                     And (Local0, 0xFFFFFF3F, Local0)
  5710.                     Store (Local0, GPIO)
  5711.                     Store (CLGP, Local1)
  5712.                     Return (Local1)
  5713.                 }
  5714.             }
  5715.  
  5716.             Device (P2P)
  5717.             {
  5718.                 Name (_ADR, 0x00140004)
  5719.                 OperationRegion (PCPC, PCI_Config, Zero, 0xFF)
  5720.                 Field (PCPC, ByteAcc, NoLock, Preserve)
  5721.                 {
  5722.                             Offset (0x04),
  5723.                     PCMD,   8,
  5724.                             Offset (0x1C),
  5725.                     IOW1,   8,
  5726.                     IOW2,   8,
  5727.                             Offset (0x48),
  5728.                     PR48,   8,
  5729.                     PR49,   8,
  5730.                     PR4A,   8,
  5731.                     PR4B,   8
  5732.                 }
  5733.  
  5734.                 Method (_PRT, 0, NotSerialized)
  5735.                 {
  5736.                     If (LEqual (GPIC, Zero))
  5737.                     {
  5738.                         Return (PIC)
  5739.                     }
  5740.                     Else
  5741.                     {
  5742.                         Return (APIC)
  5743.                     }
  5744.                 }
  5745.  
  5746.                 Name (PIC, Package (0x0E)
  5747.                 {
  5748.                     Package (0x04)
  5749.                     {
  5750.                         0x0004FFFF,
  5751.                         Zero,
  5752.                         LNKE,
  5753.                         Zero
  5754.                     },
  5755.  
  5756.                     Package (0x04)
  5757.                     {
  5758.                         0x0004FFFF,
  5759.                         One,
  5760.                         LNKF,
  5761.                         Zero
  5762.                     },
  5763.  
  5764.                     Package (0x04)
  5765.                     {
  5766.                         0x0005FFFF,
  5767.                         Zero,
  5768.                         LNKE,
  5769.                         Zero
  5770.                     },
  5771.  
  5772.                     Package (0x04)
  5773.                     {
  5774.                         0x0005FFFF,
  5775.                         One,
  5776.                         LNKF,
  5777.                         Zero
  5778.                     },
  5779.  
  5780.                     Package (0x04)
  5781.                     {
  5782.                         0x0005FFFF,
  5783.                         0x02,
  5784.                         LNKG,
  5785.                         Zero
  5786.                     },
  5787.  
  5788.                     Package (0x04)
  5789.                     {
  5790.                         0x0005FFFF,
  5791.                         0x03,
  5792.                         LNKH,
  5793.                         Zero
  5794.                     },
  5795.  
  5796.                     Package (0x04)
  5797.                     {
  5798.                         0x0006FFFF,
  5799.                         Zero,
  5800.                         LNKF,
  5801.                         Zero
  5802.                     },
  5803.  
  5804.                     Package (0x04)
  5805.                     {
  5806.                         0x0006FFFF,
  5807.                         One,
  5808.                         LNKG,
  5809.                         Zero
  5810.                     },
  5811.  
  5812.                     Package (0x04)
  5813.                     {
  5814.                         0x0006FFFF,
  5815.                         0x02,
  5816.                         LNKH,
  5817.                         Zero
  5818.                     },
  5819.  
  5820.                     Package (0x04)
  5821.                     {
  5822.                         0x0006FFFF,
  5823.                         0x03,
  5824.                         LNKE,
  5825.                         Zero
  5826.                     },
  5827.  
  5828.                     Package (0x04)
  5829.                     {
  5830.                         0x0007FFFF,
  5831.                         Zero,
  5832.                         LNKG,
  5833.                         Zero
  5834.                     },
  5835.  
  5836.                     Package (0x04)
  5837.                     {
  5838.                         0x0007FFFF,
  5839.                         One,
  5840.                         LNKH,
  5841.                         Zero
  5842.                     },
  5843.  
  5844.                     Package (0x04)
  5845.                     {
  5846.                         0x0007FFFF,
  5847.                         0x02,
  5848.                         LNKE,
  5849.                         Zero
  5850.                     },
  5851.  
  5852.                     Package (0x04)
  5853.                     {
  5854.                         0x0007FFFF,
  5855.                         0x03,
  5856.                         LNKF,
  5857.                         Zero
  5858.                     }
  5859.                 })
  5860.                 Name (APIC, Package (0x0E)
  5861.                 {
  5862.                     Package (0x04)
  5863.                     {
  5864.                         0x0004FFFF,
  5865.                         Zero,
  5866.                         Zero,
  5867.                         0x14
  5868.                     },
  5869.  
  5870.                     Package (0x04)
  5871.                     {
  5872.                         0x0004FFFF,
  5873.                         One,
  5874.                         Zero,
  5875.                         0x15
  5876.                     },
  5877.  
  5878.                     Package (0x04)
  5879.                     {
  5880.                         0x0005FFFF,
  5881.                         Zero,
  5882.                         Zero,
  5883.                         0x14
  5884.                     },
  5885.  
  5886.                     Package (0x04)
  5887.                     {
  5888.                         0x0005FFFF,
  5889.                         One,
  5890.                         Zero,
  5891.                         0x15
  5892.                     },
  5893.  
  5894.                     Package (0x04)
  5895.                     {
  5896.                         0x0005FFFF,
  5897.                         0x02,
  5898.                         Zero,
  5899.                         0x16
  5900.                     },
  5901.  
  5902.                     Package (0x04)
  5903.                     {
  5904.                         0x0005FFFF,
  5905.                         0x03,
  5906.                         Zero,
  5907.                         0x17
  5908.                     },
  5909.  
  5910.                     Package (0x04)
  5911.                     {
  5912.                         0x0006FFFF,
  5913.                         Zero,
  5914.                         Zero,
  5915.                         0x15
  5916.                     },
  5917.  
  5918.                     Package (0x04)
  5919.                     {
  5920.                         0x0006FFFF,
  5921.                         One,
  5922.                         Zero,
  5923.                         0x16
  5924.                     },
  5925.  
  5926.                     Package (0x04)
  5927.                     {
  5928.                         0x0006FFFF,
  5929.                         0x02,
  5930.                         Zero,
  5931.                         0x17
  5932.                     },
  5933.  
  5934.                     Package (0x04)
  5935.                     {
  5936.                         0x0006FFFF,
  5937.                         0x03,
  5938.                         Zero,
  5939.                         0x14
  5940.                     },
  5941.  
  5942.                     Package (0x04)
  5943.                     {
  5944.                         0x0007FFFF,
  5945.                         Zero,
  5946.                         Zero,
  5947.                         0x16
  5948.                     },
  5949.  
  5950.                     Package (0x04)
  5951.                     {
  5952.                         0x0007FFFF,
  5953.                         One,
  5954.                         Zero,
  5955.                         0x17
  5956.                     },
  5957.  
  5958.                     Package (0x04)
  5959.                     {
  5960.                         0x0007FFFF,
  5961.                         0x02,
  5962.                         Zero,
  5963.                         0x14
  5964.                     },
  5965.  
  5966.                     Package (0x04)
  5967.                     {
  5968.                         0x0007FFFF,
  5969.                         0x03,
  5970.                         Zero,
  5971.                         0x15
  5972.                     }
  5973.                 })
  5974.             }
  5975.  
  5976.             Device (SATA)
  5977.             {
  5978.                 Name (_ADR, 0x00110000)
  5979.             }
  5980.  
  5981.             Device (IDE)
  5982.             {
  5983.                 Name (_ADR, 0x00140001)
  5984.                 Name (UDMT, Package (0x08)
  5985.                 {
  5986.                     0x78,
  5987.                     0x5A,
  5988.                     0x3C,
  5989.                     0x2D,
  5990.                     0x1E,
  5991.                     0x14,
  5992.                     Zero,
  5993.                     Zero
  5994.                 })
  5995.                 Name (PIOT, Package (0x06)
  5996.                 {
  5997.                     0x0258,
  5998.                     0x0186,
  5999.                     0x010E,
  6000.                     0xB4,
  6001.                     0x78,
  6002.                     Zero
  6003.                 })
  6004.                 Name (PITR, Package (0x06)
  6005.                 {
  6006.                     0x99,
  6007.                     0x47,
  6008.                     0x34,
  6009.                     0x22,
  6010.                     0x20,
  6011.                     0x99
  6012.                 })
  6013.                 Name (MDMT, Package (0x04)
  6014.                 {
  6015.                     0x01E0,
  6016.                     0x96,
  6017.                     0x78,
  6018.                     Zero
  6019.                 })
  6020.                 Name (MDTR, Package (0x04)
  6021.                 {
  6022.                     0x77,
  6023.                     0x21,
  6024.                     0x20,
  6025.                     0xFF
  6026.                 })
  6027.                 OperationRegion (IDE, PCI_Config, 0x40, 0x20)
  6028.                 Field (IDE, WordAcc, NoLock, Preserve)
  6029.                 {
  6030.                     PPIT,   16,
  6031.                     SPIT,   16,
  6032.                     PMDT,   16,
  6033.                     SMDT,   16,
  6034.                     PPIC,   8,
  6035.                     SPIC,   8,
  6036.                     PPIM,   8,
  6037.                     SPIM,   8,
  6038.                             Offset (0x14),
  6039.                     PUDC,   2,
  6040.                     SUDC,   2,
  6041.                             Offset (0x16),
  6042.                     PUDM,   8,
  6043.                     SUDM,   8
  6044.                 }
  6045.  
  6046.                 Method (GETT, 1, NotSerialized)
  6047.                 {
  6048.                     Store (And (Arg0, 0x0F), Local0)
  6049.                     Store (ShiftRight (Arg0, 0x04), Local1)
  6050.                     Return (Multiply (0x1E, Add (Add (Local0, One), Add (Local1,
  6051.                         One))))
  6052.                 }
  6053.  
  6054.                 Method (GTM, 1, NotSerialized)
  6055.                 {
  6056.                     CreateByteField (Arg0, Zero, PIT1)
  6057.                     CreateByteField (Arg0, One, PIT0)
  6058.                     CreateByteField (Arg0, 0x02, MDT1)
  6059.                     CreateByteField (Arg0, 0x03, MDT0)
  6060.                     CreateByteField (Arg0, 0x04, PICX)
  6061.                     CreateByteField (Arg0, 0x05, UDCX)
  6062.                     CreateByteField (Arg0, 0x06, UDMX)
  6063.                     Name (BUF, Buffer (0x14)
  6064.                     {
  6065.                         /* 0000 */    0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  6066.                         /* 0008 */    0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  6067.                         /* 0010 */    0x00, 0x00, 0x00, 0x00
  6068.                     })
  6069.                     CreateDWordField (BUF, Zero, PIO0)
  6070.                     CreateDWordField (BUF, 0x04, DMA0)
  6071.                     CreateDWordField (BUF, 0x08, PIO1)
  6072.                     CreateDWordField (BUF, 0x0C, DMA1)
  6073.                     CreateDWordField (BUF, 0x10, FLAG)
  6074.                     If (And (PICX, One))
  6075.                     {
  6076.                         Return (BUF)
  6077.                     }
  6078.  
  6079.                     Store (GETT (PIT0), PIO0)
  6080.                     Store (GETT (PIT1), PIO1)
  6081.                     If (And (UDCX, One))
  6082.                     {
  6083.                         Or (FLAG, One, FLAG)
  6084.                         Store (DerefOf (Index (UDMT, And (UDMX, 0x0F))), DMA0)
  6085.                     }
  6086.                     Else
  6087.                     {
  6088.                         If (LNotEqual (MDT0, 0xFF))
  6089.                         {
  6090.                             Store (GETT (MDT0), DMA0)
  6091.                         }
  6092.                     }
  6093.  
  6094.                     If (And (UDCX, 0x02))
  6095.                     {
  6096.                         Or (FLAG, 0x04, FLAG)
  6097.                         Store (DerefOf (Index (UDMT, ShiftRight (UDMX, 0x04))), DMA1)
  6098.                     }
  6099.                     Else
  6100.                     {
  6101.                         If (LNotEqual (MDT1, 0xFF))
  6102.                         {
  6103.                             Store (GETT (MDT1), DMA1)
  6104.                         }
  6105.                     }
  6106.  
  6107.                     Or (FLAG, 0x1A, FLAG)
  6108.                     Return (BUF)
  6109.                 }
  6110.  
  6111.                 Method (STM, 3, NotSerialized)
  6112.                 {
  6113.                     CreateDWordField (Arg0, Zero, PIO0)
  6114.                     CreateDWordField (Arg0, 0x04, DMA0)
  6115.                     CreateDWordField (Arg0, 0x08, PIO1)
  6116.                     CreateDWordField (Arg0, 0x0C, DMA1)
  6117.                     CreateDWordField (Arg0, 0x10, FLAG)
  6118.                     Name (BUF, Buffer (0x07)
  6119.                     {
  6120.                         0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
  6121.                     })
  6122.                     CreateByteField (BUF, Zero, PIT1)
  6123.                     CreateByteField (BUF, One, PIT0)
  6124.                     CreateByteField (BUF, 0x02, MDT1)
  6125.                     CreateByteField (BUF, 0x03, MDT0)
  6126.                     CreateByteField (BUF, 0x04, PIMX)
  6127.                     CreateByteField (BUF, 0x05, UDCX)
  6128.                     CreateByteField (BUF, 0x06, UDMX)
  6129.                     Store (Match (PIOT, MLE, PIO0, MTR, Zero, Zero), Local0)
  6130.                     Divide (Local0, 0x05, Local0)
  6131.                     Store (Match (PIOT, MLE, PIO1, MTR, Zero, Zero), Local1)
  6132.                     Divide (Local1, 0x05, Local1)
  6133.                     Store (Or (ShiftLeft (Local1, 0x04), Local0), PIMX)
  6134.                     Store (DerefOf (Index (PITR, Local0)), PIT0)
  6135.                     Store (DerefOf (Index (PITR, Local1)), PIT1)
  6136.                     If (And (FLAG, One))
  6137.                     {
  6138.                         Store (Match (UDMT, MLE, DMA0, MTR, Zero, Zero), Local0)
  6139.                         Divide (Local0, 0x06, Local0)
  6140.                         Or (UDMX, Local0, UDMX)
  6141.                         Or (UDCX, One, UDCX)
  6142.                     }
  6143.                     Else
  6144.                     {
  6145.                         If (LNotEqual (DMA0, Ones))
  6146.                         {
  6147.                             Store (Match (MDMT, MLE, DMA0, MTR, Zero, Zero), Local0)
  6148.                             Store (DerefOf (Index (MDTR, Local0)), MDT0)
  6149.                         }
  6150.                     }
  6151.  
  6152.                     If (And (FLAG, 0x04))
  6153.                     {
  6154.                         Store (Match (UDMT, MLE, DMA1, MTR, Zero, Zero), Local0)
  6155.                         Divide (Local0, 0x06, Local0)
  6156.                         Or (UDMX, ShiftLeft (Local0, 0x04), UDMX)
  6157.                         Or (UDCX, 0x02, UDCX)
  6158.                     }
  6159.                     Else
  6160.                     {
  6161.                         If (LNotEqual (DMA1, Ones))
  6162.                         {
  6163.                             Store (Match (MDMT, MLE, DMA1, MTR, Zero, Zero), Local0)
  6164.                             Store (DerefOf (Index (MDTR, Local0)), MDT1)
  6165.                         }
  6166.                     }
  6167.  
  6168.                     Return (BUF)
  6169.                 }
  6170.  
  6171.                 Method (GTF, 2, NotSerialized)
  6172.                 {
  6173.                     CreateByteField (Arg1, Zero, MDT1)
  6174.                     CreateByteField (Arg1, One, MDT0)
  6175.                     CreateByteField (Arg1, 0x02, PIMX)
  6176.                     CreateByteField (Arg1, 0x03, UDCX)
  6177.                     CreateByteField (Arg1, 0x04, UDMX)
  6178.                     If (LEqual (Arg0, 0xA0))
  6179.                     {
  6180.                         Store (And (PIMX, 0x0F), Local0)
  6181.                         Store (MDT0, Local1)
  6182.                         And (UDCX, One, Local2)
  6183.                         Store (And (UDMX, 0x0F), Local3)
  6184.                     }
  6185.                     Else
  6186.                     {
  6187.                         Store (ShiftRight (PIMX, 0x04), Local0)
  6188.                         Store (MDT1, Local1)
  6189.                         And (UDCX, 0x02, Local2)
  6190.                         Store (ShiftRight (UDMX, 0x04), Local3)
  6191.                     }
  6192.  
  6193.                     Name (BUF, Buffer (0x0E)
  6194.                     {
  6195.                         /* 0000 */    0x03, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF, 0x03,
  6196.                         /* 0008 */    0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF
  6197.                     })
  6198.                     CreateByteField (BUF, One, PMOD)
  6199.                     CreateByteField (BUF, 0x08, DMOD)
  6200.                     CreateByteField (BUF, 0x05, CMDA)
  6201.                     CreateByteField (BUF, 0x0C, CMDB)
  6202.                     Store (Arg0, CMDA)
  6203.                     Store (Arg0, CMDB)
  6204.                     Or (Local0, 0x08, PMOD)
  6205.                     If (Local2)
  6206.                     {
  6207.                         Or (Local3, 0x40, DMOD)
  6208.                     }
  6209.                     Else
  6210.                     {
  6211.                         If (LNotEqual (Local1, 0xFF))
  6212.                         {
  6213.                             Store (Match (MDMT, MLE, GETT (Local1), MTR, Zero, Zero), Local4)
  6214.                             If (LLess (Local4, 0x03))
  6215.                             {
  6216.                                 Or (0x20, Local4, DMOD)
  6217.                             }
  6218.                         }
  6219.                     }
  6220.  
  6221.                     Return (BUF)
  6222.                 }
  6223.  
  6224.                 Device (PRID)
  6225.                 {
  6226.                     Name (_ADR, Zero)
  6227.                     Method (_GTM, 0, NotSerialized)
  6228.                     {
  6229.                         Name (BUF, Buffer (0x07)
  6230.                         {
  6231.                             0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
  6232.                         })
  6233.                         CreateWordField (BUF, Zero, VPIT)
  6234.                         CreateWordField (BUF, 0x02, VMDT)
  6235.                         CreateByteField (BUF, 0x04, VPIC)
  6236.                         CreateByteField (BUF, 0x05, VUDC)
  6237.                         CreateByteField (BUF, 0x06, VUDM)
  6238.                         Store (PPIT, VPIT)
  6239.                         Store (PMDT, VMDT)
  6240.                         Store (PPIC, VPIC)
  6241.                         Store (PUDC, VUDC)
  6242.                         Store (PUDM, VUDM)
  6243.                         Return (GTM (BUF))
  6244.                     }
  6245.  
  6246.                     Method (_STM, 3, NotSerialized)
  6247.                     {
  6248.                         Name (BUF, Buffer (0x07)
  6249.                         {
  6250.                             0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  6251.                         })
  6252.                         CreateWordField (BUF, Zero, VPIT)
  6253.                         CreateWordField (BUF, 0x02, VMDT)
  6254.                         CreateByteField (BUF, 0x04, VPIM)
  6255.                         CreateByteField (BUF, 0x05, VUDC)
  6256.                         CreateByteField (BUF, 0x06, VUDM)
  6257.                         Store (STM (Arg0, Arg1, Arg2), BUF)
  6258.                         Store (VPIT, PPIT)
  6259.                         Store (VMDT, PMDT)
  6260.                         Store (VPIM, PPIM)
  6261.                         Store (VUDC, PUDC)
  6262.                         Store (VUDM, PUDM)
  6263.                     }
  6264.  
  6265.                     Device (P_D0)
  6266.                     {
  6267.                         Name (_ADR, Zero)
  6268.                         Method (_GTF, 0, NotSerialized)
  6269.                         {
  6270.                             Name (BUF, Buffer (0x05)
  6271.                             {
  6272.                                 0x00, 0x00, 0x00, 0x00, 0x00
  6273.                             })
  6274.                             CreateWordField (BUF, Zero, VMDT)
  6275.                             CreateByteField (BUF, 0x02, VPIM)
  6276.                             CreateByteField (BUF, 0x03, VUDC)
  6277.                             CreateByteField (BUF, 0x04, VUDM)
  6278.                             Store (PMDT, VMDT)
  6279.                             Store (PPIM, VPIM)
  6280.                             Store (PUDC, VUDC)
  6281.                             Store (PUDM, VUDM)
  6282.                             Return (GTF (0xA0, BUF))
  6283.                         }
  6284.                     }
  6285.  
  6286.                     Device (P_D1)
  6287.                     {
  6288.                         Name (_ADR, One)
  6289.                         Method (_GTF, 0, NotSerialized)
  6290.                         {
  6291.                             Name (BUF, Buffer (0x05)
  6292.                             {
  6293.                                 0x00, 0x00, 0x00, 0x00, 0x00
  6294.                             })
  6295.                             CreateWordField (BUF, Zero, VMDT)
  6296.                             CreateByteField (BUF, 0x02, VPIM)
  6297.                             CreateByteField (BUF, 0x03, VUDC)
  6298.                             CreateByteField (BUF, 0x04, VUDM)
  6299.                             Store (PMDT, VMDT)
  6300.                             Store (PPIM, VPIM)
  6301.                             Store (PUDC, VUDC)
  6302.                             Store (PUDM, VUDM)
  6303.                             Return (GTF (0xB0, BUF))
  6304.                         }
  6305.                     }
  6306.                 }
  6307.  
  6308.                 Device (SECD)
  6309.                 {
  6310.                     Name (_ADR, One)
  6311.                     Method (_GTM, 0, NotSerialized)
  6312.                     {
  6313.                         Name (BUF, Buffer (0x07)
  6314.                         {
  6315.                             0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
  6316.                         })
  6317.                         CreateWordField (BUF, Zero, VPIT)
  6318.                         CreateWordField (BUF, 0x02, VMDT)
  6319.                         CreateByteField (BUF, 0x04, VPIC)
  6320.                         CreateByteField (BUF, 0x05, VUDC)
  6321.                         CreateByteField (BUF, 0x06, VUDM)
  6322.                         Store (SPIT, VPIT)
  6323.                         Store (SMDT, VMDT)
  6324.                         Store (SPIC, VPIC)
  6325.                         Store (SUDC, VUDC)
  6326.                         Store (SUDM, VUDM)
  6327.                         Return (GTM (BUF))
  6328.                     }
  6329.  
  6330.                     Method (_STM, 3, NotSerialized)
  6331.                     {
  6332.                         Name (BUF, Buffer (0x07)
  6333.                         {
  6334.                             0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
  6335.                         })
  6336.                         CreateWordField (BUF, Zero, VPIT)
  6337.                         CreateWordField (BUF, 0x02, VMDT)
  6338.                         CreateByteField (BUF, 0x04, VPIM)
  6339.                         CreateByteField (BUF, 0x05, VUDC)
  6340.                         CreateByteField (BUF, 0x06, VUDM)
  6341.                         Store (STM (Arg0, Arg1, Arg2), BUF)
  6342.                         Store (VPIT, SPIT)
  6343.                         Store (VMDT, SMDT)
  6344.                         Store (VPIM, SPIM)
  6345.                         Store (VUDC, SUDC)
  6346.                         Store (VUDM, SUDM)
  6347.                     }
  6348.  
  6349.                     Device (S_D0)
  6350.                     {
  6351.                         Name (_ADR, Zero)
  6352.                         Method (_GTF, 0, NotSerialized)
  6353.                         {
  6354.                             Name (BUF, Buffer (0x05)
  6355.                             {
  6356.                                 0x00, 0x00, 0x00, 0x00, 0x00
  6357.                             })
  6358.                             CreateWordField (BUF, Zero, VMDT)
  6359.                             CreateByteField (BUF, 0x02, VPIM)
  6360.                             CreateByteField (BUF, 0x03, VUDC)
  6361.                             CreateByteField (BUF, 0x04, VUDM)
  6362.                             Store (SMDT, VMDT)
  6363.                             Store (SPIM, VPIM)
  6364.                             Store (SUDC, VUDC)
  6365.                             Store (SUDM, VUDM)
  6366.                             Return (GTF (0xA0, BUF))
  6367.                         }
  6368.                     }
  6369.  
  6370.                     Device (S_D1)
  6371.                     {
  6372.                         Name (_ADR, One)
  6373.                         Method (_GTF, 0, NotSerialized)
  6374.                         {
  6375.                             Name (BUF, Buffer (0x05)
  6376.                             {
  6377.                                 0x00, 0x00, 0x00, 0x00, 0x00
  6378.                             })
  6379.                             CreateWordField (BUF, Zero, VMDT)
  6380.                             CreateByteField (BUF, 0x02, VPIM)
  6381.                             CreateByteField (BUF, 0x03, VUDC)
  6382.                             CreateByteField (BUF, 0x04, VUDM)
  6383.                             Store (SMDT, VMDT)
  6384.                             Store (SPIM, VPIM)
  6385.                             Store (SUDC, VUDC)
  6386.                             Store (SUDM, VUDM)
  6387.                             Return (GTF (0xB0, BUF))
  6388.                         }
  6389.                     }
  6390.                 }
  6391.             }
  6392.  
  6393.             Device (ACEL)
  6394.             {
  6395.                 Name (_HID, EisaId ("HPQ0004"))
  6396.                 Name (DEVP, 0xFF)
  6397.                 Name (CURS, 0xFF)
  6398.                 Method (_INI, 0, NotSerialized)
  6399.                 {
  6400.                     INIT ()
  6401.                 }
  6402.  
  6403.                 Name (_CRS, ResourceTemplate ()
  6404.                 {
  6405.                     Interrupt (ResourceConsumer, Edge, ActiveLow, Exclusive, ,, )
  6406.                     {
  6407.                         0x00000017,
  6408.                     }
  6409.                 })
  6410.                 Method (_STA, 0, NotSerialized)
  6411.                 {
  6412.                     If (LEqual (DEVP, 0xFF))
  6413.                     {
  6414.                         Store (0x0F, Local0)
  6415.                         Store (^^SMBS.SRDB (0x39, 0x20), Local1)
  6416.                         If (LEqual (Local1, 0xFFFF))
  6417.                         {
  6418.                             Store (Zero, Local0)
  6419.                         }
  6420.  
  6421.                         Store (Local0, DEVP)
  6422.                     }
  6423.  
  6424.                     Return (DEVP)
  6425.                 }
  6426.  
  6427.                 Method (INIT, 0, Serialized)
  6428.                 {
  6429.                     If (_STA ())
  6430.                     {
  6431.                         ^^SMBS.SWRB (0x38, 0x20, 0x47)
  6432.                         ^^SMBS.SWRB (0x38, 0x21, 0x0A)
  6433.                         ^^SMBS.SWRB (0x38, 0x32, 0x14)
  6434.                         ^^SMBS.SWRB (0x38, 0x33, 0x02)
  6435.                         ^^SMBS.SWRB (0x38, 0x30, 0x95)
  6436.                         Store (^^SMBS.SRDB (0x39, 0x23), Local0)
  6437.                         ^^SMBS.SWRB (0x38, 0x36, 0x11)
  6438.                         ^^SMBS.SWRB (0x38, 0x37, One)
  6439.                         ^^SMBS.SWRB (0x38, 0x34, 0x2A)
  6440.                         Store (0xFF, CURS)
  6441.                         JACC ()
  6442.                     }
  6443.                 }
  6444.  
  6445.                 Method (JACC, 0, Serialized)
  6446.                 {
  6447.                     If (_STA ())
  6448.                     {
  6449.                         ^^SMBS.SWRB (0x38, 0x22, 0x81)
  6450.                     }
  6451.                 }
  6452.  
  6453.                 Method (CLRI, 0, Serialized)
  6454.                 {
  6455.                     Store (Zero, Local2)
  6456.                     If (LEqual (PWRS, Zero))
  6457.                     {
  6458.                         If (LEqual (^^^BAT0._STA (), 0x1F))
  6459.                         {
  6460.                             If (ECON)
  6461.                             {
  6462.                                 If (LLessEqual (^^LPC0.EC0.MBRM, 0x96))
  6463.                                 {
  6464.                                     Store (One, Local2)
  6465.                                 }
  6466.                             }
  6467.                         }
  6468.                     }
  6469.  
  6470.                     Return (Local2)
  6471.                 }
  6472.  
  6473.                 Method (ALRD, 1, Serialized)
  6474.                 {
  6475.                     Store (^^SMBS.SRDB (0x39, Arg0), Local0)
  6476.                     Return (Local0)
  6477.                 }
  6478.  
  6479.                 Method (ALWR, 2, Serialized)
  6480.                 {
  6481.                     Store (^^SMBS.SWRB (0x38, Arg0, Arg1), Local0)
  6482.                     Return (Local0)
  6483.                 }
  6484.  
  6485.                 Method (ALED, 1, Serialized)
  6486.                 {
  6487.                     If (Arg0)
  6488.                     {
  6489.                         Store (One, ^^SMBS.GP53)
  6490.                     }
  6491.                     Else
  6492.                     {
  6493.                         Store (Zero, ^^SMBS.GP53)
  6494.                     }
  6495.                 }
  6496.  
  6497.                 Method (ALID, 1, Serialized)
  6498.                 {
  6499.                     Return (^^^LID._LID ())
  6500.                 }
  6501.  
  6502.                 Method (ADSN, 0, Serialized)
  6503.                 {
  6504.                     Store (Zero, Local0)
  6505.                     Return (Local0)
  6506.                 }
  6507.             }
  6508.  
  6509.             Name (BCLT, Package (0x0D)
  6510.             {
  6511.                 0x64,
  6512.                 0x30,
  6513.                 0x13,
  6514.                 0x18,
  6515.                 0x1D,
  6516.                 0x22,
  6517.                 0x27,
  6518.                 0x30,
  6519.                 0x37,
  6520.                 0x3D,
  6521.                 0x47,
  6522.                 0x50,
  6523.                 0x64
  6524.             })
  6525.             Method (SBCM, 1, NotSerialized)
  6526.             {
  6527.                 Store (Arg0, ^LPC0.EC0.BRTL)
  6528.                 Store (Zero, Local0)
  6529.                 While (LLess (Local0, 0x0C))
  6530.                 {
  6531.                     Add (Local0, 0x02, Local1)
  6532.                     Store (DerefOf (Index (BCLT, Local1)), Local2)
  6533.                     If (LEqual (Arg0, Local2))
  6534.                     {
  6535.                         If (^LPC0.EC0.SW2S)
  6536.                         {
  6537.                             Store (Local0, BRAC)
  6538.                         }
  6539.                         Else
  6540.                         {
  6541.                             Store (Local0, BRDC)
  6542.                         }
  6543.  
  6544.                         Store (0x0C, Local0)
  6545.                     }
  6546.  
  6547.                     Increment (Local0)
  6548.                 }
  6549.             }
  6550.  
  6551.             Method (BRXP, 1, NotSerialized)
  6552.             {
  6553.                 Store (^LPC0.EC0.BRTL, Local0)
  6554.                 Store (Zero, Local1)
  6555.                 While (LLess (Local1, 0x0C))
  6556.                 {
  6557.                     Add (Local1, 0x02, Local2)
  6558.                     Store (DerefOf (Index (BCLT, Local2)), Local3)
  6559.                     If (LEqual (Local0, Local3))
  6560.                     {
  6561.                         If (LEqual (Arg0, One))
  6562.                         {
  6563.                             Increment (Local2)
  6564.                         }
  6565.  
  6566.                         If (LEqual (Arg0, 0x02))
  6567.                         {
  6568.                             Decrement (Local2)
  6569.                         }
  6570.  
  6571.                         If (LAnd (LLess (Local2, 0x0E), LGreater (Local2, One)))
  6572.                         {
  6573.                             Store (DerefOf (Index (BCLT, Local2)), ^LPC0.EC0.BRTL)
  6574.                             Subtract (Local2, 0x02, Local2)
  6575.                             If (^LPC0.EC0.SW2S)
  6576.                             {
  6577.                                 Store (Local2, BRAC)
  6578.                             }
  6579.                             Else
  6580.                             {
  6581.                                 Store (Local2, BRDC)
  6582.                             }
  6583.  
  6584.                             Store (0x0C, Local1)
  6585.                         }
  6586.                         Else
  6587.                         {
  6588.                             Store (0x0C, Local1)
  6589.                         }
  6590.                     }
  6591.  
  6592.                     Increment (Local1)
  6593.                 }
  6594.             }
  6595.         }
  6596.  
  6597.         OperationRegion (PIRQ, SystemIO, 0x0C00, 0x02)
  6598.         Field (PIRQ, ByteAcc, NoLock, Preserve)
  6599.         {
  6600.             PIDX,   8,
  6601.             PDAT,   8
  6602.         }
  6603.  
  6604.         IndexField (PIDX, PDAT, ByteAcc, NoLock, Preserve)
  6605.         {
  6606.             PIRA,   8,
  6607.             PIRB,   8,
  6608.             PIRC,   8,
  6609.             PIRD,   8,
  6610.             PIRS,   8,
  6611.                     Offset (0x09),
  6612.             PIRE,   8,
  6613.             PIRF,   8,
  6614.             PIRG,   8,
  6615.             PIRH,   8
  6616.         }
  6617.  
  6618.         Method (DSPI, 0, NotSerialized)
  6619.         {
  6620.             Store (Zero, PIRA)
  6621.             Store (Zero, PIRB)
  6622.             Store (Zero, PIRC)
  6623.             Store (Zero, PIRD)
  6624.             Store (Zero, PIRE)
  6625.             Store (Zero, PIRF)
  6626.             Store (Zero, PIRG)
  6627.             Store (Zero, PIRH)
  6628.             Store (Zero, PIRS)
  6629.         }
  6630.  
  6631.         Name (PRS1, ResourceTemplate ()
  6632.         {
  6633.             IRQ (Level, ActiveLow, Shared, )
  6634.                 {3,4,5,7,10,11,12,14,15}
  6635.         })
  6636.         Name (BUFA, ResourceTemplate ()
  6637.         {
  6638.             IRQ (Level, ActiveLow, Shared, )
  6639.                 {15}
  6640.         })
  6641.         Name (IPRA, ResourceTemplate ()
  6642.         {
  6643.             IRQ (Level, ActiveLow, Shared, )
  6644.                 {5,10,11}
  6645.         })
  6646.         Name (IPRB, ResourceTemplate ()
  6647.         {
  6648.             IRQ (Level, ActiveLow, Shared, )
  6649.                 {5,10,11}
  6650.         })
  6651.         Name (IPRC, ResourceTemplate ()
  6652.         {
  6653.             IRQ (Level, ActiveLow, Shared, )
  6654.                 {5,10,11}
  6655.         })
  6656.         Name (IPRD, ResourceTemplate ()
  6657.         {
  6658.             IRQ (Level, ActiveLow, Shared, )
  6659.                 {5,10,11}
  6660.         })
  6661.         Device (LNKA)
  6662.         {
  6663.             Name (_HID, EisaId ("PNP0C0F"))
  6664.             Name (_UID, One)
  6665.             Method (_STA, 0, NotSerialized)
  6666.             {
  6667.                 If (PIRA)
  6668.                 {
  6669.                     Return (0x0B)
  6670.                 }
  6671.                 Else
  6672.                 {
  6673.                     Return (0x09)
  6674.                 }
  6675.             }
  6676.  
  6677.             Method (_PRS, 0, NotSerialized)
  6678.             {
  6679.                 Return (PRS1)
  6680.             }
  6681.  
  6682.             Method (_DIS, 0, NotSerialized)
  6683.             {
  6684.                 Store (Zero, PIRA)
  6685.             }
  6686.  
  6687.             Method (_CRS, 0, NotSerialized)
  6688.             {
  6689.                 CreateWordField (BUFA, One, IRQX)
  6690.                 ShiftLeft (One, PIRA, IRQX)
  6691.                 Return (BUFA)
  6692.             }
  6693.  
  6694.             Method (_SRS, 1, NotSerialized)
  6695.             {
  6696.                 CreateWordField (Arg0, One, IRA)
  6697.                 FindSetRightBit (IRA, Local0)
  6698.                 Decrement (Local0)
  6699.                 Store (Local0, PIRA)
  6700.             }
  6701.         }
  6702.  
  6703.         Device (LNKB)
  6704.         {
  6705.             Name (_HID, EisaId ("PNP0C0F"))
  6706.             Name (_UID, 0x02)
  6707.             Method (_STA, 0, NotSerialized)
  6708.             {
  6709.                 If (PIRB)
  6710.                 {
  6711.                     Return (0x0B)
  6712.                 }
  6713.                 Else
  6714.                 {
  6715.                     Return (0x09)
  6716.                 }
  6717.             }
  6718.  
  6719.             Method (_PRS, 0, NotSerialized)
  6720.             {
  6721.                 Return (PRS1)
  6722.             }
  6723.  
  6724.             Method (_DIS, 0, NotSerialized)
  6725.             {
  6726.                 Store (Zero, PIRB)
  6727.             }
  6728.  
  6729.             Method (_CRS, 0, NotSerialized)
  6730.             {
  6731.                 CreateWordField (BUFA, One, IRQX)
  6732.                 ShiftLeft (One, PIRB, IRQX)
  6733.                 Return (BUFA)
  6734.             }
  6735.  
  6736.             Method (_SRS, 1, NotSerialized)
  6737.             {
  6738.                 CreateWordField (Arg0, One, IRA)
  6739.                 FindSetRightBit (IRA, Local0)
  6740.                 Decrement (Local0)
  6741.                 Store (Local0, PIRB)
  6742.             }
  6743.         }
  6744.  
  6745.         Device (LNKC)
  6746.         {
  6747.             Name (_HID, EisaId ("PNP0C0F"))
  6748.             Name (_UID, 0x03)
  6749.             Method (_STA, 0, NotSerialized)
  6750.             {
  6751.                 If (PIRC)
  6752.                 {
  6753.                     Return (0x0B)
  6754.                 }
  6755.                 Else
  6756.                 {
  6757.                     Return (0x09)
  6758.                 }
  6759.             }
  6760.  
  6761.             Method (_PRS, 0, NotSerialized)
  6762.             {
  6763.                 Return (PRS1)
  6764.             }
  6765.  
  6766.             Method (_DIS, 0, NotSerialized)
  6767.             {
  6768.                 Store (Zero, PIRC)
  6769.             }
  6770.  
  6771.             Method (_CRS, 0, NotSerialized)
  6772.             {
  6773.                 CreateWordField (BUFA, One, IRQX)
  6774.                 ShiftLeft (One, PIRC, IRQX)
  6775.                 Return (BUFA)
  6776.             }
  6777.  
  6778.             Method (_SRS, 1, NotSerialized)
  6779.             {
  6780.                 CreateWordField (Arg0, One, IRA)
  6781.                 FindSetRightBit (IRA, Local0)
  6782.                 Decrement (Local0)
  6783.                 Store (Local0, PIRC)
  6784.             }
  6785.         }
  6786.  
  6787.         Device (LNKD)
  6788.         {
  6789.             Name (_HID, EisaId ("PNP0C0F"))
  6790.             Name (_UID, 0x04)
  6791.             Method (_STA, 0, NotSerialized)
  6792.             {
  6793.                 If (PIRD)
  6794.                 {
  6795.                     Return (0x0B)
  6796.                 }
  6797.                 Else
  6798.                 {
  6799.                     Return (0x09)
  6800.                 }
  6801.             }
  6802.  
  6803.             Method (_PRS, 0, NotSerialized)
  6804.             {
  6805.                 Return (PRS1)
  6806.             }
  6807.  
  6808.             Method (_DIS, 0, NotSerialized)
  6809.             {
  6810.                 Store (Zero, PIRD)
  6811.             }
  6812.  
  6813.             Method (_CRS, 0, NotSerialized)
  6814.             {
  6815.                 CreateWordField (BUFA, One, IRQX)
  6816.                 ShiftLeft (One, PIRD, IRQX)
  6817.                 Return (BUFA)
  6818.             }
  6819.  
  6820.             Method (_SRS, 1, NotSerialized)
  6821.             {
  6822.                 CreateWordField (Arg0, One, IRA)
  6823.                 FindSetRightBit (IRA, Local0)
  6824.                 Decrement (Local0)
  6825.                 Store (Local0, PIRD)
  6826.             }
  6827.         }
  6828.  
  6829.         Device (LNKE)
  6830.         {
  6831.             Name (_HID, EisaId ("PNP0C0F"))
  6832.             Name (_UID, 0x05)
  6833.             Method (_STA, 0, NotSerialized)
  6834.             {
  6835.                 If (PIRE)
  6836.                 {
  6837.                     Return (0x0B)
  6838.                 }
  6839.                 Else
  6840.                 {
  6841.                     Return (0x09)
  6842.                 }
  6843.             }
  6844.  
  6845.             Method (_PRS, 0, NotSerialized)
  6846.             {
  6847.                 Return (PRS1)
  6848.             }
  6849.  
  6850.             Method (_DIS, 0, NotSerialized)
  6851.             {
  6852.                 Store (Zero, PIRE)
  6853.             }
  6854.  
  6855.             Method (_CRS, 0, NotSerialized)
  6856.             {
  6857.                 CreateWordField (BUFA, One, IRQX)
  6858.                 ShiftLeft (One, PIRE, IRQX)
  6859.                 Return (BUFA)
  6860.             }
  6861.  
  6862.             Method (_SRS, 1, NotSerialized)
  6863.             {
  6864.                 CreateWordField (Arg0, One, IRA)
  6865.                 FindSetRightBit (IRA, Local0)
  6866.                 Decrement (Local0)
  6867.                 Store (Local0, PIRE)
  6868.             }
  6869.         }
  6870.  
  6871.         Device (LNKF)
  6872.         {
  6873.             Name (_HID, EisaId ("PNP0C0F"))
  6874.             Name (_UID, 0x06)
  6875.             Method (_STA, 0, NotSerialized)
  6876.             {
  6877.                 If (PIRF)
  6878.                 {
  6879.                     Return (0x0B)
  6880.                 }
  6881.                 Else
  6882.                 {
  6883.                     Return (0x09)
  6884.                 }
  6885.             }
  6886.  
  6887.             Method (_PRS, 0, NotSerialized)
  6888.             {
  6889.                 Return (PRS1)
  6890.             }
  6891.  
  6892.             Method (_DIS, 0, NotSerialized)
  6893.             {
  6894.                 Store (Zero, PIRF)
  6895.             }
  6896.  
  6897.             Method (_CRS, 0, NotSerialized)
  6898.             {
  6899.                 CreateWordField (BUFA, One, IRQX)
  6900.                 ShiftLeft (One, PIRF, IRQX)
  6901.                 Return (BUFA)
  6902.             }
  6903.  
  6904.             Method (_SRS, 1, NotSerialized)
  6905.             {
  6906.                 CreateWordField (Arg0, One, IRA)
  6907.                 FindSetRightBit (IRA, Local0)
  6908.                 Decrement (Local0)
  6909.                 Store (Local0, PIRF)
  6910.             }
  6911.         }
  6912.  
  6913.         Device (LNKG)
  6914.         {
  6915.             Name (_HID, EisaId ("PNP0C0F"))
  6916.             Name (_UID, 0x07)
  6917.             Method (_STA, 0, NotSerialized)
  6918.             {
  6919.                 If (PIRG)
  6920.                 {
  6921.                     Return (0x0B)
  6922.                 }
  6923.                 Else
  6924.                 {
  6925.                     Return (0x09)
  6926.                 }
  6927.             }
  6928.  
  6929.             Method (_PRS, 0, NotSerialized)
  6930.             {
  6931.                 Return (PRS1)
  6932.             }
  6933.  
  6934.             Method (_DIS, 0, NotSerialized)
  6935.             {
  6936.                 Store (Zero, PIRG)
  6937.             }
  6938.  
  6939.             Method (_CRS, 0, NotSerialized)
  6940.             {
  6941.                 CreateWordField (BUFA, One, IRQX)
  6942.                 ShiftLeft (One, PIRG, IRQX)
  6943.                 Return (BUFA)
  6944.             }
  6945.  
  6946.             Method (_SRS, 1, NotSerialized)
  6947.             {
  6948.                 CreateWordField (Arg0, One, IRA)
  6949.                 FindSetRightBit (IRA, Local0)
  6950.                 Decrement (Local0)
  6951.                 Store (Local0, PIRG)
  6952.             }
  6953.         }
  6954.  
  6955.         Device (LNKH)
  6956.         {
  6957.             Name (_HID, EisaId ("PNP0C0F"))
  6958.             Name (_UID, 0x08)
  6959.             Method (_STA, 0, NotSerialized)
  6960.             {
  6961.                 If (PIRH)
  6962.                 {
  6963.                     Return (0x0B)
  6964.                 }
  6965.                 Else
  6966.                 {
  6967.                     Return (0x09)
  6968.                 }
  6969.             }
  6970.  
  6971.             Method (_PRS, 0, NotSerialized)
  6972.             {
  6973.                 Return (PRS1)
  6974.             }
  6975.  
  6976.             Method (_DIS, 0, NotSerialized)
  6977.             {
  6978.                 Store (Zero, PIRH)
  6979.             }
  6980.  
  6981.             Method (_CRS, 0, NotSerialized)
  6982.             {
  6983.                 CreateWordField (BUFA, One, IRQX)
  6984.                 ShiftLeft (One, PIRH, IRQX)
  6985.                 Return (BUFA)
  6986.             }
  6987.  
  6988.             Method (_SRS, 1, NotSerialized)
  6989.             {
  6990.                 CreateWordField (Arg0, One, IRA)
  6991.                 FindSetRightBit (IRA, Local0)
  6992.                 Decrement (Local0)
  6993.                 Store (Local0, PIRH)
  6994.             }
  6995.         }
  6996.  
  6997.         Method (GSMI, 1, NotSerialized)
  6998.         {
  6999.             Store (Arg0, APMD)
  7000.             Store (0xE4, APMC)
  7001.             Stall (0xFF)
  7002.             Stall (0xFF)
  7003.             Stall (0xFF)
  7004.             Stall (0xFF)
  7005.             Stall (0xFF)
  7006.             Stall (0xFF)
  7007.         }
  7008.  
  7009.         Method (S80H, 1, NotSerialized)
  7010.         {
  7011.             Store (Arg0, APMD)
  7012.             Store (0xE5, APMC)
  7013.             Stall (0xFF)
  7014.             Stall (0xFF)
  7015.             Stall (0xFF)
  7016.             Stall (0xFF)
  7017.             Stall (0xFF)
  7018.             Stall (0xFF)
  7019.         }
  7020.  
  7021.         Method (BSMI, 1, NotSerialized)
  7022.         {
  7023.             Store (Arg0, APMD)
  7024.             Store (0xBE, APMC)
  7025.             Stall (0xFF)
  7026.         }
  7027.  
  7028.         Method (VTOB, 1, NotSerialized)
  7029.         {
  7030.             Store (One, Local0)
  7031.             ShiftLeft (Local0, Arg0, Local0)
  7032.             Return (Local0)
  7033.         }
  7034.  
  7035.         Method (BTOV, 1, NotSerialized)
  7036.         {
  7037.             ShiftRight (Arg0, One, Local0)
  7038.             Store (Zero, Local1)
  7039.             While (Local0)
  7040.             {
  7041.                 Increment (Local1)
  7042.                 ShiftRight (Local0, One, Local0)
  7043.             }
  7044.  
  7045.             Return (Local1)
  7046.         }
  7047.  
  7048.         Method (MKWD, 2, NotSerialized)
  7049.         {
  7050.             If (And (Arg1, 0x80))
  7051.             {
  7052.                 Store (0xFFFF0000, Local0)
  7053.             }
  7054.             Else
  7055.             {
  7056.                 Store (Zero, Local0)
  7057.             }
  7058.  
  7059.             Or (Local0, Arg0, Local0)
  7060.             Or (Local0, ShiftLeft (Arg1, 0x08), Local0)
  7061.             Return (Local0)
  7062.         }
  7063.  
  7064.         Method (POSW, 1, NotSerialized)
  7065.         {
  7066.             If (And (Arg0, 0x8000))
  7067.             {
  7068.                 If (LEqual (Arg0, 0xFFFF))
  7069.                 {
  7070.                     Return (Ones)
  7071.                 }
  7072.                 Else
  7073.                 {
  7074.                     Not (Arg0, Local0)
  7075.                     Increment (Local0)
  7076.                     And (Local0, 0xFFFF, Local0)
  7077.                     Return (Local0)
  7078.                 }
  7079.             }
  7080.             Else
  7081.             {
  7082.                 Return (Arg0)
  7083.             }
  7084.         }
  7085.  
  7086.         Method (GBFE, 3, NotSerialized)
  7087.         {
  7088.             CreateByteField (Arg0, Arg1, TIDX)
  7089.             Store (TIDX, Arg2)
  7090.         }
  7091.  
  7092.         Method (PBFE, 3, NotSerialized)
  7093.         {
  7094.             CreateByteField (Arg0, Arg1, TIDX)
  7095.             Store (Arg2, TIDX)
  7096.         }
  7097.  
  7098.         Method (ITOS, 1, NotSerialized)
  7099.         {
  7100.             Store (Buffer (0x05)
  7101.                 {
  7102.                     0x20, 0x20, 0x20, 0x20, 0x20
  7103.                 }, Local0)
  7104.             Store (Buffer (0x11)
  7105.                 {
  7106.                     "0123456789ABCDEF"
  7107.                 }, Local7)
  7108.             Store (0x05, Local1)
  7109.             Store (Zero, Local2)
  7110.             Store (Zero, Local3)
  7111.             While (Local1)
  7112.             {
  7113.                 Decrement (Local1)
  7114.                 And (ShiftRight (Arg0, ShiftLeft (Local1, 0x02)), 0x0F, Local4)
  7115.                 GBFE (Local7, Local4, RefOf (Local5))
  7116.                 PBFE (Local0, Local2, Local5)
  7117.                 Increment (Local2)
  7118.             }
  7119.  
  7120.             Return (Local0)
  7121.         }
  7122.  
  7123.         Device (BAT0)
  7124.         {
  7125.             Name (_HID, EisaId ("PNP0C0A"))
  7126.             Name (_PCL, Package (0x01)
  7127.             {
  7128.                 _SB
  7129.             })
  7130.             Name (PBIF, Package (0x0D)
  7131.             {
  7132.                 One,
  7133.                 Ones,
  7134.                 Ones,
  7135.                 One,
  7136.                 Ones,
  7137.                 0xFA,
  7138.                 0x96,
  7139.                 0x0A,
  7140.                 0x19,
  7141.                 "BAT1",
  7142.                 " ",
  7143.                 " ",
  7144.                 " "
  7145.             })
  7146.             Name (PBST, Package (0x04)
  7147.             {
  7148.                 Zero,
  7149.                 Ones,
  7150.                 Ones,
  7151.                 0x2710
  7152.             })
  7153.             Name (BAST, Zero)
  7154.             Name (B1ST, 0x0F)
  7155.             Name (B1WT, Zero)
  7156.             Method (_STA, 0, NotSerialized)
  7157.             {
  7158.                 If (ECON)
  7159.                 {
  7160.                     If (^^PCI0.LPC0.EC0.MBTS)
  7161.                     {
  7162.                         Store (0x1F, B1ST)
  7163.                     }
  7164.                     Else
  7165.                     {
  7166.                         Store (0x0F, B1ST)
  7167.                     }
  7168.                 }
  7169.                 Else
  7170.                 {
  7171.                     Store (0x0F, B1ST)
  7172.                 }
  7173.  
  7174.                 Return (B1ST)
  7175.             }
  7176.  
  7177.             Method (_BIF, 0, NotSerialized)
  7178.             {
  7179.                 If (ECON)
  7180.                 {
  7181.                     If (^^PCI0.LPC0.EC0.MBTS)
  7182.                     {
  7183.                         UPBI ()
  7184.                     }
  7185.                     Else
  7186.                     {
  7187.                         IVBI ()
  7188.                     }
  7189.                 }
  7190.                 Else
  7191.                 {
  7192.                     IVBI ()
  7193.                 }
  7194.  
  7195.                 Return (PBIF)
  7196.             }
  7197.  
  7198.             Method (_BST, 0, NotSerialized)
  7199.             {
  7200.                 If (ECON)
  7201.                 {
  7202.                     If (^^PCI0.LPC0.EC0.MBTS)
  7203.                     {
  7204.                         UPBS ()
  7205.                     }
  7206.                     Else
  7207.                     {
  7208.                         IVBS ()
  7209.                     }
  7210.                 }
  7211.                 Else
  7212.                 {
  7213.                     IVBS ()
  7214.                 }
  7215.  
  7216.                 Return (PBST)
  7217.             }
  7218.  
  7219.             Method (UPBI, 0, NotSerialized)
  7220.             {
  7221.                 If (LNot (^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x10, RefOf (Local5))))
  7222.                 {
  7223.                     If (LAnd (Local5, LNot (And (Local5, 0x8000))))
  7224.                     {
  7225.                         ShiftRight (Local5, 0x05, Local5)
  7226.                         ShiftLeft (Local5, 0x05, Local5)
  7227.                         Store (Local5, Index (PBIF, 0x02))
  7228.                         Divide (Local5, 0x64, , Local2)
  7229.                         Add (Local2, One, Local2)
  7230.                         Multiply (Local2, 0x05, Local4)
  7231.                         Add (Local4, 0x02, Index (PBIF, 0x05))
  7232.                         Multiply (Local2, 0x03, Local4)
  7233.                         Add (Local4, 0x02, Index (PBIF, 0x06))
  7234.                     }
  7235.                 }
  7236.  
  7237.                 If (^^PCI0.LPC0.EC0.MBNH)
  7238.                 {
  7239.                     Store (0x2328, Index (PBIF, One))
  7240.                     Store (0x1C20, Index (PBIF, 0x04))
  7241.                     Store ("OANI$", Index (PBIF, 0x09))
  7242.                     Store ("NiMH", Index (PBIF, 0x0B))
  7243.                 }
  7244.                 Else
  7245.                 {
  7246.                     Store (0x1770, Index (PBIF, One))
  7247.                     Store (0x39D0, Index (PBIF, 0x04))
  7248.                     Sleep (0x32)
  7249.                     Store ("LION", Index (PBIF, 0x0B))
  7250.                 }
  7251.  
  7252.                 Store ("Primary", Index (PBIF, 0x09))
  7253.                 UPUM ()
  7254.                 Store (One, Index (PBIF, Zero))
  7255.             }
  7256.  
  7257.             Method (UPUM, 0, NotSerialized)
  7258.             {
  7259.                 Store (Buffer (0x0A)
  7260.                     {
  7261.                         /* 0000 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  7262.                         /* 0008 */    0x00, 0x00
  7263.                     }, Local0)
  7264.                 Store (Buffer (0x05)
  7265.                     {
  7266.                         0x36, 0x35, 0x35, 0x33, 0x35
  7267.                     }, Local6)
  7268.                 Store (Buffer (0x05)
  7269.                     {
  7270.                         0x31, 0x32, 0x33, 0x32, 0x31
  7271.                     }, Local7)
  7272.                 Store ("Hewlett-Packard", Index (PBIF, 0x0C))
  7273.             }
  7274.  
  7275.             Method (UPBS, 0, NotSerialized)
  7276.             {
  7277.                 Store (^^PCI0.LPC0.EC0.MBRM, Local5)
  7278.                 If (LNot (And (Local5, 0x8000)))
  7279.                 {
  7280.                     ShiftRight (Local5, 0x05, Local5)
  7281.                     ShiftLeft (Local5, 0x05, Local5)
  7282.                     If (LNotEqual (Local5, DerefOf (Index (PBST, 0x02))))
  7283.                     {
  7284.                         Store (Local5, Index (PBST, 0x02))
  7285.                     }
  7286.                 }
  7287.  
  7288.                 Store (^^PCI0.LPC0.EC0.MBCV, Index (PBST, 0x03))
  7289.                 Store (^^PCI0.LPC0.EC0.MBST, Index (PBST, Zero))
  7290.             }
  7291.  
  7292.             Method (IVBI, 0, NotSerialized)
  7293.             {
  7294.                 Store (Ones, Index (PBIF, One))
  7295.                 Store (Ones, Index (PBIF, 0x02))
  7296.                 Store (Ones, Index (PBIF, 0x04))
  7297.                 Store ("Bad", Index (PBIF, 0x09))
  7298.                 Store ("      ", Index (PBIF, 0x0A))
  7299.                 Store ("Bad", Index (PBIF, 0x0B))
  7300.                 Store ("Bad", Index (PBIF, 0x0C))
  7301.             }
  7302.  
  7303.             Method (IVBS, 0, NotSerialized)
  7304.             {
  7305.                 Store (Zero, Index (PBST, Zero))
  7306.                 Store (Ones, Index (PBST, One))
  7307.                 Store (Ones, Index (PBST, 0x02))
  7308.                 Store (0x2710, Index (PBST, 0x03))
  7309.             }
  7310.         }
  7311.  
  7312.         Device (ACAD)
  7313.         {
  7314.             Name (_HID, "ACPI0003")
  7315.             Name (_PCL, Package (0x01)
  7316.             {
  7317.                 _SB
  7318.             })
  7319.             Name (ACWT, Zero)
  7320.             Method (_PSR, 0, NotSerialized)
  7321.             {
  7322.                 If (ECON)
  7323.                 {
  7324.                     Store (^^PCI0.LPC0.EC0.SW2S, Local0)
  7325.                 }
  7326.                 Else
  7327.                 {
  7328.                     Store (One, Local0)
  7329.                 }
  7330.  
  7331.                 Return (Local0)
  7332.             }
  7333.         }
  7334.  
  7335.         Device (LID)
  7336.         {
  7337.             Name (_HID, EisaId ("PNP0C0D"))
  7338.             Method (_LID, 0, NotSerialized)
  7339.             {
  7340.                 If (ECON)
  7341.                 {
  7342.                     If (^^PCI0.LPC0.EC0.LIDS)
  7343.                     {
  7344.                         Store (Zero, Local0)
  7345.                     }
  7346.                     Else
  7347.                     {
  7348.                         Store (One, Local0)
  7349.                     }
  7350.                 }
  7351.                 Else
  7352.                 {
  7353.                     Store (One, Local0)
  7354.                 }
  7355.  
  7356.                 Return (Local0)
  7357.             }
  7358.         }
  7359.  
  7360.         Device (QLB0)
  7361.         {
  7362.             Name (_HID, "HPQ0007")
  7363.             Method (_STA, 0, NotSerialized)
  7364.             {
  7365.                 Return (0x0F)
  7366.             }
  7367.         }
  7368.  
  7369.         Device (WMID)
  7370.         {
  7371.             Name (WCDS, Package (0x13)
  7372.             {
  7373.                 0x04,
  7374.                 0x04,
  7375.                 0x04,
  7376.                 Zero,
  7377.                 0x04,
  7378.                 0x04,
  7379.                 Zero,
  7380.                 Zero,
  7381.                 0x04,
  7382.                 0x04,
  7383.                 0x0C,
  7384.                 Zero,
  7385.                 Zero,
  7386.                 Zero,
  7387.                 Zero,
  7388.                 0x05,
  7389.                 Zero,
  7390.                 Zero,
  7391.                 0x04
  7392.             })
  7393.             Method (CSMI, 2, Serialized)
  7394.             {
  7395.                 Store (Arg0, CMTF)
  7396.                 Store (Arg1, CMTI)
  7397.                 Store (0xC1, APMC)
  7398.                 Return (CMTO)
  7399.             }
  7400.  
  7401.             Method (HWMC, 2, NotSerialized)
  7402.             {
  7403.                 CreateDWordField (Arg1, Zero, SGIN)
  7404.                 CreateDWordField (Arg1, 0x04, COMD)
  7405.                 CreateDWordField (Arg1, 0x08, CMDT)
  7406.                 CreateDWordField (Arg1, 0x0C, DSZI)
  7407.                 If (LEqual (Arg0, One))
  7408.                 {
  7409.                     Store (Zero, Local0)
  7410.                 }
  7411.  
  7412.                 If (LEqual (Arg0, 0x02))
  7413.                 {
  7414.                     Store (0x04, Local0)
  7415.                 }
  7416.  
  7417.                 If (LEqual (Arg0, 0x03))
  7418.                 {
  7419.                     Store (0x80, Local0)
  7420.                 }
  7421.  
  7422.                 If (LEqual (Arg0, 0x04))
  7423.                 {
  7424.                     Store (0x0400, Local0)
  7425.                 }
  7426.  
  7427.                 If (LEqual (Arg0, 0x05))
  7428.                 {
  7429.                     Store (0x1000, Local0)
  7430.                 }
  7431.  
  7432.                 Store (Buffer (Add (0x08, Local0)) {}, Local1)
  7433.                 CreateDWordField (Local1, Zero, SIOU)
  7434.                 CreateDWordField (Local1, 0x04, RETC)
  7435.                 Store (DSZI, Local5)
  7436.                 If (LGreater (DSZI, 0x02F0))
  7437.                 {
  7438.                     Store (0x02F0, Local5)
  7439.                 }
  7440.  
  7441.                 CreateField (Arg1, Zero, Multiply (Add (Local5, 0x10), 0x08),
  7442.                     DAIN)
  7443.                 Store (0x4C494146, SIOU)
  7444.                 Store (0x02, RETC)
  7445.                 If (LEqual (SGIN, 0x55434553))
  7446.                 {
  7447.                     Store (0x03, RETC)
  7448.                     If (LEqual (COMD, One))
  7449.                     {
  7450.                         Store (0x04, RETC)
  7451.                         If (LEqual (CMDT, 0x05))
  7452.                         {
  7453.                             Store (GWLS (), Local2)
  7454.                             Store (Zero, RETC)
  7455.                         }
  7456.  
  7457.                         If (LEqual (CMDT, 0x0E))
  7458.                         {
  7459.                             Store (GWDD (), Local2)
  7460.                             Store (Zero, RETC)
  7461.                         }
  7462.  
  7463.                         If (LEqual (CMDT, 0x10))
  7464.                         {
  7465.                             Store (GHSI (), Local2)
  7466.                             Store (Zero, RETC)
  7467.                         }
  7468.  
  7469.                         If (LEqual (CMDT, 0x07))
  7470.                         {
  7471.                             If (DSZI)
  7472.                             {
  7473.                                 Store (DerefOf (Index (Arg1, 0x10)), Local3)
  7474.                                 Store (GBIF (Local3), Local2)
  7475.                                 Store (Zero, RETC)
  7476.                             }
  7477.                             Else
  7478.                             {
  7479.                                 Store (0x05, RETC)
  7480.                             }
  7481.                         }
  7482.  
  7483.                         If (LEqual (CMDT, One))
  7484.                         {
  7485.                             Store (GDST (), Local2)
  7486.                             Store (Zero, RETC)
  7487.                         }
  7488.  
  7489.                         If (LEqual (CMDT, 0x08))
  7490.                         {
  7491.                             Store (GBBT (), Local2)
  7492.                             Store (Zero, RETC)
  7493.                         }
  7494.  
  7495.                         If (LEqual (CMDT, 0x09))
  7496.                         {
  7497.                             Store (GHKS (), Local2)
  7498.                             Store (Zero, RETC)
  7499.                         }
  7500.  
  7501.                         If (LEqual (CMDT, 0x0A))
  7502.                         {
  7503.                             Store (GHKF (), Local2)
  7504.                             Store (Zero, RETC)
  7505.                         }
  7506.  
  7507.                         If (LEqual (CMDT, 0x0C))
  7508.                         {
  7509.                             Store (GBBV (), Local2)
  7510.                             Store (Zero, RETC)
  7511.                         }
  7512.  
  7513.                         If (LEqual (CMDT, 0x04))
  7514.                         {
  7515.                             Store (GDKS (), Local2)
  7516.                             Store (Zero, RETC)
  7517.                         }
  7518.  
  7519.                         If (LEqual (CMDT, 0x0B))
  7520.                         {
  7521.                             Store (BBST (), Local2)
  7522.                             Store (Zero, RETC)
  7523.                         }
  7524.  
  7525.                         If (LEqual (CMDT, 0x13))
  7526.                         {
  7527.                             Store (GBBS (), Local2)
  7528.                             Store (Zero, RETC)
  7529.                         }
  7530.  
  7531.                         If (LEqual (CMDT, 0x0F))
  7532.                         {
  7533.                             Store (GSAS (), Local2)
  7534.                             Store (Zero, RETC)
  7535.                         }
  7536.                     }
  7537.  
  7538.                     If (LEqual (COMD, 0x02))
  7539.                     {
  7540.                         Store (0x04, RETC)
  7541.                         If (LAnd (LGreater (CMDT, Zero), LLessEqual (CMDT, 0x13)))
  7542.                         {
  7543.                             If (LLess (DSZI, DerefOf (Index (WCDS, Subtract (CMDT, One)
  7544.                                 ))))
  7545.                             {
  7546.                                 Store (0x05, RETC)
  7547.                             }
  7548.                             Else
  7549.                             {
  7550.                                 CreateDWordField (Arg1, 0x10, DDWD)
  7551.                                 If (LEqual (CMDT, 0x05))
  7552.                                 {
  7553.                                     Store (SWLS (DDWD), Local2)
  7554.                                     Store (Zero, RETC)
  7555.                                 }
  7556.  
  7557.                                 If (LEqual (CMDT, One))
  7558.                                 {
  7559.                                     Store (SDST (DDWD), Local2)
  7560.                                     Store (Zero, RETC)
  7561.                                 }
  7562.  
  7563.                                 If (LEqual (CMDT, 0x09))
  7564.                                 {
  7565.                                     Store (SHKS (DDWD), Local2)
  7566.                                     Store (Zero, RETC)
  7567.                                 }
  7568.  
  7569.                                 If (LEqual (CMDT, 0x0A))
  7570.                                 {
  7571.                                     Store (SHKF (DDWD), Local2)
  7572.                                     Store (Zero, RETC)
  7573.                                 }
  7574.  
  7575.                                 If (LEqual (CMDT, 0x0B))
  7576.                                 {
  7577.                                     CreateDWordField (Arg1, 0x14, DDW1)
  7578.                                     CreateDWordField (Arg1, 0x18, DDW2)
  7579.                                     Store (SMRS (DDWD, DDW1, DDW2), Local2)
  7580.                                     Store (Zero, RETC)
  7581.                                 }
  7582.  
  7583.                                 If (LEqual (CMDT, 0x10))
  7584.                                 {
  7585.                                     If (LNotEqual (DSZI, DerefOf (Index (WCDS, Subtract (CMDT, One
  7586.                                         )))))
  7587.                                     {
  7588.                                         Store (0x05, RETC)
  7589.                                     }
  7590.                                     Else
  7591.                                     {
  7592.                                         CreateByteField (Arg1, 0x10, DB00)
  7593.                                         CreateByteField (Arg1, 0x11, DB01)
  7594.                                         CreateByteField (Arg1, 0x12, DB02)
  7595.                                         CreateByteField (Arg1, 0x13, DB03)
  7596.                                         CreateByteField (Arg1, 0x14, DB04)
  7597.                                         Store (SHSI (DB00, DB01, DB02, DB03, DB04), Local2)
  7598.                                         Store (Zero, RETC)
  7599.                                     }
  7600.                                 }
  7601.  
  7602.                                 If (LEqual (CMDT, 0x13))
  7603.                                 {
  7604.                                     Store (SBBS (DDWD), Local2)
  7605.                                     Store (Zero, RETC)
  7606.                                 }
  7607.                             }
  7608.                         }
  7609.                     }
  7610.  
  7611.                     If (LEqual (COMD, 0x00020002))
  7612.                     {
  7613.                         Store (0x21, RETC)
  7614.                         If (LEqual (CMDT, One))
  7615.                         {
  7616.                             Store (Package (0x03)
  7617.                                 {
  7618.                                     Zero,
  7619.                                     Zero,
  7620.                                     Buffer (0x04)
  7621.                                     {
  7622.                                         0x00, 0x00, 0x00, 0x00
  7623.                                     }
  7624.                                 }, Local2)
  7625.                             Store (Zero, Index (Local2, Zero))
  7626.                             Store (0x04, Index (Local2, One))
  7627.                             CSMI (One, Zero)
  7628.                             Store (CMTO, Index (DerefOf (Index (Local2, 0x02)), Zero))
  7629.                             Store (Zero, RETC)
  7630.                         }
  7631.  
  7632.                         If (LEqual (CMDT, 0x02))
  7633.                         {
  7634.                             Store (Package (0x02)
  7635.                                 {
  7636.                                     Zero,
  7637.                                     Zero
  7638.                                 }, Local2)
  7639.                             CSMI (0x02, DAIN)
  7640.                             Store (CMTO, RETC)
  7641.                         }
  7642.  
  7643.                         If (LEqual (CMDT, 0x03))
  7644.                         {
  7645.                             Store (Package (0x02)
  7646.                                 {
  7647.                                     Zero,
  7648.                                     Zero
  7649.                                 }, Local2)
  7650.                             CSMI (0x03, DAIN)
  7651.                             Store (CMTO, RETC)
  7652.                         }
  7653.                     }
  7654.                 }
  7655.  
  7656.                 If (LEqual (RETC, Zero))
  7657.                 {
  7658.                     Store (DerefOf (Index (Local2, Zero)), RETC)
  7659.                     If (LEqual (RETC, Zero))
  7660.                     {
  7661.                         If (LLessEqual (DerefOf (Index (Local2, One)), Local0))
  7662.                         {
  7663.                             Store (Zero, Local0)
  7664.                             While (LLess (Local0, DerefOf (Index (Local2, One))))
  7665.                             {
  7666.                                 Store (DerefOf (Index (DerefOf (Index (Local2, 0x02)), Local0)),
  7667.                                     Index (Local1, Add (Local0, 0x08)))
  7668.                                 Increment (Local0)
  7669.                             }
  7670.  
  7671.                             Store (0x53534150, SIOU)
  7672.                         }
  7673.                         Else
  7674.                         {
  7675.                             Store (0x05, RETC)
  7676.                         }
  7677.                     }
  7678.                 }
  7679.  
  7680.                 Return (Local1)
  7681.             }
  7682.  
  7683.             Name (_HID, "PNP0C14")
  7684.             Name (_UID, Zero)
  7685.             Name (WMIF, Zero)
  7686.             Name (WEID, Zero)
  7687.             Name (WEDT, Zero)
  7688.             Name (BUFF, Buffer (0x04)
  7689.             {
  7690.                 0x00, 0x00, 0x00, 0x00
  7691.             })
  7692.             CreateByteField (BUFF, Zero, OB0)
  7693.             CreateByteField (BUFF, One, OB1)
  7694.             CreateByteField (BUFF, 0x02, OB2)
  7695.             CreateByteField (BUFF, 0x03, OB3)
  7696.             Name (_WDG, Buffer (0x50)
  7697.             {
  7698.                 /* 0000 */    0x34, 0xF0, 0xB7, 0x5F, 0x63, 0x2C, 0xE9, 0x45,
  7699.                 /* 0008 */    0xBE, 0x91, 0x3D, 0x44, 0xE2, 0xC7, 0x07, 0xE4,
  7700.                 /* 0010 */    0x41, 0x44, 0x01, 0x02, 0x79, 0x42, 0xF2, 0x95,
  7701.                 /* 0018 */    0x7B, 0x4D, 0x34, 0x43, 0x93, 0x87, 0xAC, 0xCD,
  7702.                 /* 0020 */    0xC6, 0x7E, 0xF6, 0x1C, 0x80, 0x00, 0x01, 0x08,
  7703.                 /* 0028 */    0x21, 0x12, 0x90, 0x05, 0x66, 0xD5, 0xD1, 0x11,
  7704.                 /* 0030 */    0xB2, 0xF0, 0x00, 0xA0, 0xC9, 0x06, 0x29, 0x10,
  7705.                 /* 0038 */    0x41, 0x45, 0x01, 0x00, 0xD4, 0x2B, 0x99, 0xD0,
  7706.                 /* 0040 */    0x7C, 0xA4, 0xFE, 0x4E, 0xB0, 0x72, 0x32, 0x4A,
  7707.                 /* 0048 */    0xEC, 0x92, 0x29, 0x6C, 0x42, 0x43, 0x01, 0x00
  7708.             })
  7709.             Method (WMAD, 3, NotSerialized)
  7710.             {
  7711.                 Return (HWMC (Arg1, Arg2))
  7712.             }
  7713.  
  7714.             Method (GDST, 0, NotSerialized)
  7715.             {
  7716.                 Store ("HP WMI Command 0x1 (BIOS Read)", Debug)
  7717.                 Store (0x70, BCMD)
  7718.                 BSMI (Zero)
  7719.                 Store (ADDL, OB0)
  7720.                 Store (Zero, OB1)
  7721.                 Store (Zero, OB2)
  7722.                 Store (Zero, OB3)
  7723.                 Store (Package (0x03)
  7724.                     {
  7725.                         Zero,
  7726.                         0x04,
  7727.                         Buffer (0x04)
  7728.                         {
  7729.                             0x01, 0x02, 0x03, 0x04
  7730.                         }
  7731.                     }, Local0)
  7732.                 Store (OB0, Index (DerefOf (Index (Local0, 0x02)), Zero))
  7733.                 Store (OB1, Index (DerefOf (Index (Local0, 0x02)), One))
  7734.                 Store (OB2, Index (DerefOf (Index (Local0, 0x02)), 0x02))
  7735.                 Store (OB3, Index (DerefOf (Index (Local0, 0x02)), 0x03))
  7736.                 Return (Local0)
  7737.             }
  7738.  
  7739.             Method (SDST, 1, NotSerialized)
  7740.             {
  7741.                 Store ("HP WMI Command 0x1 (BIOS Write)", Debug)
  7742.                 And (Arg0, 0x1F, Local0)
  7743.                 Store (0x70, BCMD)
  7744.                 BSMI (Zero)
  7745.                 If (LEqual (Local0, CSTE))
  7746.                 {
  7747.                     Return (Package (0x02)
  7748.                     {
  7749.                         Zero,
  7750.                         Zero
  7751.                     })
  7752.                 }
  7753.                 Else
  7754.                 {
  7755.                     If (VGAF)
  7756.                     {
  7757.                         If (LEqual (Local0, One))
  7758.                         {
  7759.                             Store ("LCD", Debug)
  7760.                             Store (One, ^^PCI0.PB2.DVGA.LCDA)
  7761.                             Store (Zero, ^^PCI0.PB2.DVGA.CRTA)
  7762.                             Store (Zero, ^^PCI0.PB2.DVGA.TV0A)
  7763.                             Store (Zero, ^^PCI0.PB2.DVGA.HDTV)
  7764.                         }
  7765.  
  7766.                         If (LEqual (Local0, 0x02))
  7767.                         {
  7768.                             Store ("CRT", Debug)
  7769.                             Store (Zero, ^^PCI0.PB2.DVGA.LCDA)
  7770.                             Store (One, ^^PCI0.PB2.DVGA.CRTA)
  7771.                             Store (Zero, ^^PCI0.PB2.DVGA.TV0A)
  7772.                             Store (Zero, ^^PCI0.PB2.DVGA.HDTV)
  7773.                         }
  7774.  
  7775.                         If (LEqual (Local0, 0x03))
  7776.                         {
  7777.                             Store ("LCD+CRT", Debug)
  7778.                             Store (One, ^^PCI0.PB2.DVGA.LCDA)
  7779.                             Store (One, ^^PCI0.PB2.DVGA.CRTA)
  7780.                             Store (Zero, ^^PCI0.PB2.DVGA.TV0A)
  7781.                             Store (Zero, ^^PCI0.PB2.DVGA.HDTV)
  7782.                         }
  7783.  
  7784.                         If (LEqual (Local0, 0x04))
  7785.                         {
  7786.                             Store ("TV", Debug)
  7787.                             Store (Zero, ^^PCI0.PB2.DVGA.LCDA)
  7788.                             Store (Zero, ^^PCI0.PB2.DVGA.CRTA)
  7789.                             Store (One, ^^PCI0.PB2.DVGA.TV0A)
  7790.                             Store (Zero, ^^PCI0.PB2.DVGA.HDTV)
  7791.                         }
  7792.  
  7793.                         If (LEqual (Local0, 0x05))
  7794.                         {
  7795.                             Store ("LCD+TV", Debug)
  7796.                             Store (One, ^^PCI0.PB2.DVGA.LCDA)
  7797.                             Store (Zero, ^^PCI0.PB2.DVGA.CRTA)
  7798.                             Store (One, ^^PCI0.PB2.DVGA.TV0A)
  7799.                             Store (Zero, ^^PCI0.PB2.DVGA.HDTV)
  7800.                         }
  7801.  
  7802.                         If (LEqual (Local0, 0x06))
  7803.                         {
  7804.                             Store ("CRT+TV", Debug)
  7805.                             Store (Zero, ^^PCI0.PB2.DVGA.LCDA)
  7806.                             Store (One, ^^PCI0.PB2.DVGA.CRTA)
  7807.                             Store (One, ^^PCI0.PB2.DVGA.TV0A)
  7808.                             Store (Zero, ^^PCI0.PB2.DVGA.HDTV)
  7809.                         }
  7810.  
  7811.                         If (LEqual (Local0, 0x07))
  7812.                         {
  7813.                             Store ("LCD+CRT+TV", Debug)
  7814.                             Store (One, ^^PCI0.PB2.DVGA.LCDA)
  7815.                             Store (One, ^^PCI0.PB2.DVGA.CRTA)
  7816.                             Store (One, ^^PCI0.PB2.DVGA.TV0A)
  7817.                             Store (Zero, ^^PCI0.PB2.DVGA.HDTV)
  7818.                         }
  7819.  
  7820.                         If (LEqual (Local0, 0x10))
  7821.                         {
  7822.                             Store ("HDMI", Debug)
  7823.                             Store (Zero, ^^PCI0.PB2.DVGA.LCDA)
  7824.                             Store (Zero, ^^PCI0.PB2.DVGA.CRTA)
  7825.                             Store (Zero, ^^PCI0.PB2.DVGA.TV0A)
  7826.                             Store (One, ^^PCI0.PB2.DVGA.HDTV)
  7827.                         }
  7828.  
  7829.                         If (LNotEqual (TPOS, 0x40))
  7830.                         {
  7831.                             Notify (PCI0, Zero)
  7832.                         }
  7833.                         Else
  7834.                         {
  7835.                             Notify (^^PCI0.PB2.DVGA, Zero)
  7836.                         }
  7837.  
  7838.                         Sleep (0x02EE)
  7839.                         Notify (^^PCI0.PB2.DVGA, 0x80)
  7840.                     }
  7841.                     Else
  7842.                     {
  7843.                         If (LEqual (Local0, One))
  7844.                         {
  7845.                             Store ("LCD", Debug)
  7846.                             Store (One, ^^PCI0.AGP.VGA.LCDA)
  7847.                             Store (Zero, ^^PCI0.AGP.VGA.CRTA)
  7848.                             Store (Zero, ^^PCI0.AGP.VGA.TV0A)
  7849.                             Store (Zero, ^^PCI0.AGP.VGA.HDTV)
  7850.                         }
  7851.  
  7852.                         If (LEqual (Local0, 0x02))
  7853.                         {
  7854.                             Store ("CRT", Debug)
  7855.                             Store (Zero, ^^PCI0.AGP.VGA.LCDA)
  7856.                             Store (One, ^^PCI0.AGP.VGA.CRTA)
  7857.                             Store (Zero, ^^PCI0.AGP.VGA.TV0A)
  7858.                             Store (Zero, ^^PCI0.AGP.VGA.HDTV)
  7859.                         }
  7860.  
  7861.                         If (LEqual (Local0, 0x03))
  7862.                         {
  7863.                             Store ("LCD+CRT", Debug)
  7864.                             Store (One, ^^PCI0.AGP.VGA.LCDA)
  7865.                             Store (One, ^^PCI0.AGP.VGA.CRTA)
  7866.                             Store (Zero, ^^PCI0.AGP.VGA.TV0A)
  7867.                             Store (Zero, ^^PCI0.AGP.VGA.HDTV)
  7868.                         }
  7869.  
  7870.                         If (LEqual (Local0, 0x04))
  7871.                         {
  7872.                             Store ("TV", Debug)
  7873.                             Store (Zero, ^^PCI0.AGP.VGA.LCDA)
  7874.                             Store (Zero, ^^PCI0.AGP.VGA.CRTA)
  7875.                             Store (One, ^^PCI0.AGP.VGA.TV0A)
  7876.                             Store (Zero, ^^PCI0.AGP.VGA.HDTV)
  7877.                         }
  7878.  
  7879.                         If (LEqual (Local0, 0x05))
  7880.                         {
  7881.                             Store ("LCD+TV", Debug)
  7882.                             Store (One, ^^PCI0.AGP.VGA.LCDA)
  7883.                             Store (Zero, ^^PCI0.AGP.VGA.CRTA)
  7884.                             Store (One, ^^PCI0.AGP.VGA.TV0A)
  7885.                             Store (Zero, ^^PCI0.AGP.VGA.HDTV)
  7886.                         }
  7887.  
  7888.                         If (LEqual (Local0, 0x06))
  7889.                         {
  7890.                             Store ("CRT+TV", Debug)
  7891.                             Store (Zero, ^^PCI0.AGP.VGA.LCDA)
  7892.                             Store (One, ^^PCI0.AGP.VGA.CRTA)
  7893.                             Store (One, ^^PCI0.AGP.VGA.TV0A)
  7894.                             Store (Zero, ^^PCI0.AGP.VGA.HDTV)
  7895.                         }
  7896.  
  7897.                         If (LEqual (Local0, 0x07))
  7898.                         {
  7899.                             Store ("LCD+CRT+TV", Debug)
  7900.                             Store (One, ^^PCI0.AGP.VGA.LCDA)
  7901.                             Store (One, ^^PCI0.AGP.VGA.CRTA)
  7902.                             Store (One, ^^PCI0.AGP.VGA.TV0A)
  7903.                             Store (Zero, ^^PCI0.AGP.VGA.HDTV)
  7904.                         }
  7905.  
  7906.                         If (LEqual (Local0, 0x10))
  7907.                         {
  7908.                             Store ("HDMI", Debug)
  7909.                             Store (Zero, ^^PCI0.AGP.VGA.LCDA)
  7910.                             Store (Zero, ^^PCI0.AGP.VGA.CRTA)
  7911.                             Store (Zero, ^^PCI0.AGP.VGA.TV0A)
  7912.                             Store (One, ^^PCI0.AGP.VGA.HDTV)
  7913.                         }
  7914.  
  7915.                         If (LNotEqual (TPOS, 0x40))
  7916.                         {
  7917.                             Notify (PCI0, Zero)
  7918.                         }
  7919.                         Else
  7920.                         {
  7921.                             Notify (^^PCI0.AGP.VGA, Zero)
  7922.                         }
  7923.  
  7924.                         Sleep (0x02EE)
  7925.                         Notify (^^PCI0.AGP.VGA, 0x80)
  7926.                     }
  7927.  
  7928.                     Return (Package (0x02)
  7929.                     {
  7930.                         Zero,
  7931.                         Zero
  7932.                     })
  7933.                 }
  7934.             }
  7935.  
  7936.             Method (GDKS, 0, NotSerialized)
  7937.             {
  7938.                 Store ("HP WMI Command 0x04 (BIOS Read)", Debug)
  7939.                 Store (Package (0x03)
  7940.                     {
  7941.                         Zero,
  7942.                         One,
  7943.                         Buffer (One)
  7944.                         {
  7945.                             0x00
  7946.                         }
  7947.                     }, Local0)
  7948.                 If (LEqual (^^PCI0.LPC0.EC0.TLID, One))
  7949.                 {
  7950.                     Store (Package (0x03)
  7951.                         {
  7952.                             Zero,
  7953.                             One,
  7954.                             Buffer (One)
  7955.                             {
  7956.                                 0x04
  7957.                             }
  7958.                         }, Local0)
  7959.                 }
  7960.  
  7961.                 Return (Local0)
  7962.             }
  7963.  
  7964.             Method (GWLS, 0, NotSerialized)
  7965.             {
  7966.                 Store ("HP WMI Command 0x5 (BIOS Read)", Debug)
  7967.                 Store (One, WMIF)
  7968.                 And (BTWL, 0x03, Local0)
  7969.                 Or (Local0, 0x20, OB0)
  7970.                 Store (WWLS, Local1)
  7971.                 ShiftLeft (Local1, One, Local1)
  7972.                 Store (BWLS, Local2)
  7973.                 ShiftLeft (Local2, One, Local2)
  7974.                 Store (BTLS, Local3)
  7975.                 ShiftLeft (Local3, 0x03, Local3)
  7976.                 Or (Local1, Local3, Local1)
  7977.                 Or (Local2, Local3, Local2)
  7978.                 If (^^PCI0.SMBS.GP70)
  7979.                 {
  7980.                     If (LNot (WWLS))
  7981.                     {
  7982.                         Store (Zero, ^^PCI0.SMBS.GP70)
  7983.                     }
  7984.  
  7985.                     If (LNot (BTLS))
  7986.                     {
  7987.                         Store (Zero, ^^PCI0.SMBS.GP70)
  7988.                     }
  7989.                 }
  7990.  
  7991.                 If (^^PCI0.SMBS.GP13)
  7992.                 {
  7993.                     If (LNot (BWLS))
  7994.                     {
  7995.                         Store (Zero, ^^PCI0.SMBS.GP13)
  7996.                     }
  7997.  
  7998.                     If (LNot (BTLS))
  7999.                     {
  8000.                         Store (Zero, ^^PCI0.SMBS.GP13)
  8001.                     }
  8002.                 }
  8003.  
  8004.                 Or (^^PCI0.SMBS.GP70, Local1, Local1)
  8005.                 Or (^^PCI0.SMBS.GP13, Local2, Local2)
  8006.                 Store (Zero, OB2)
  8007.                 Store (Zero, OB1)
  8008.                 Or (Local1, 0x04, Local1)
  8009.                 Or (Local2, 0x04, Local2)
  8010.                 If (^^PCI0.SMBS.GP70)
  8011.                 {
  8012.                     Or (Local1, 0x10, Local1)
  8013.                 }
  8014.                 Else
  8015.                 {
  8016.                     And (Local1, 0xEF, Local1)
  8017.                 }
  8018.  
  8019.                 If (And (BTWL, One))
  8020.                 {
  8021.                     Store (Local1, OB1)
  8022.                 }
  8023.  
  8024.                 If (And (BTWL, 0x02))
  8025.                 {
  8026.                     Store (Local2, OB2)
  8027.                 }
  8028.  
  8029.                 Store (Zero, OB3)
  8030.                 Store (Package (0x03)
  8031.                     {
  8032.                         Zero,
  8033.                         0x04,
  8034.                         Buffer (0x04)
  8035.                         {
  8036.                             0x01, 0x02, 0x03, 0x04
  8037.                         }
  8038.                     }, Local0)
  8039.                 Store (OB0, Index (DerefOf (Index (Local0, 0x02)), Zero))
  8040.                 Store (OB1, Index (DerefOf (Index (Local0, 0x02)), One))
  8041.                 Store (OB2, Index (DerefOf (Index (Local0, 0x02)), 0x02))
  8042.                 Store (OB3, Index (DerefOf (Index (Local0, 0x02)), 0x03))
  8043.                 Return (Local0)
  8044.             }
  8045.  
  8046.             Method (SWLS, 1, NotSerialized)
  8047.             {
  8048.                 Store ("HP WMI Command 0x5 (BIOS Write)", Debug)
  8049.                 If (And (BTWL, 0x03))
  8050.                 {
  8051.                     If (And (Arg0, 0x0800))
  8052.                     {
  8053.                         If (And (Arg0, 0x08))
  8054.                         {
  8055.                             Store (One, WWLS)
  8056.                             Store (One, BWLS)
  8057.                             If (BTLS)
  8058.                             {
  8059.                                 Store (One, ^^PCI0.SMBS.GP70)
  8060.                             }
  8061.  
  8062.                             If (BTLS)
  8063.                             {
  8064.                                 Store (One, ^^PCI0.SMBS.GP13)
  8065.                             }
  8066.                         }
  8067.                         Else
  8068.                         {
  8069.                             Store (Zero, WWLS)
  8070.                             Store (Zero, BWLS)
  8071.                             Store (Zero, ^^PCI0.SMBS.GP70)
  8072.                             Store (Zero, ^^PCI0.SMBS.GP13)
  8073.                         }
  8074.                     }
  8075.  
  8076.                     If (And (Arg0, 0x0100))
  8077.                     {
  8078.                         If (And (Arg0, One))
  8079.                         {
  8080.                             Store (One, WWLS)
  8081.                             If (BTLS)
  8082.                             {
  8083.                                 Store (One, ^^PCI0.SMBS.GP70)
  8084.                             }
  8085.                         }
  8086.                         Else
  8087.                         {
  8088.                             Store (Zero, WWLS)
  8089.                             Store (Zero, ^^PCI0.SMBS.GP70)
  8090.                         }
  8091.                     }
  8092.  
  8093.                     If (And (Arg0, 0x0200))
  8094.                     {
  8095.                         If (And (Arg0, 0x02))
  8096.                         {
  8097.                             Store (One, BWLS)
  8098.                             If (BTLS)
  8099.                             {
  8100.                                 Store (One, ^^PCI0.SMBS.GP13)
  8101.                             }
  8102.                         }
  8103.                         Else
  8104.                         {
  8105.                             Store (Zero, BWLS)
  8106.                             Store (Zero, ^^PCI0.SMBS.GP13)
  8107.                         }
  8108.                     }
  8109.  
  8110.                     Return (Package (0x02)
  8111.                     {
  8112.                         Zero,
  8113.                         Zero
  8114.                     })
  8115.                 }
  8116.                 Else
  8117.                 {
  8118.                     Return (Package (0x02)
  8119.                     {
  8120.                         0x0D,
  8121.                         Zero
  8122.                     })
  8123.                 }
  8124.             }
  8125.  
  8126.             Method (GBIF, 1, NotSerialized)
  8127.             {
  8128.                 Store ("HP WMI Command 0x7 (BIOS Read)", Debug)
  8129.                 Acquire (^^PCI0.LPC0.EC0.MUT0, 0xFFFF)
  8130.                 If (LNot (ECON))
  8131.                 {
  8132.                     Store (Package (0x02)
  8133.                         {
  8134.                             0x0D,
  8135.                             Zero
  8136.                         }, Local0)
  8137.                     Sleep (0x96)
  8138.                     Release (^^PCI0.LPC0.EC0.MUT0)
  8139.                     Return (Local0)
  8140.                 }
  8141.  
  8142.                 If (Arg0)
  8143.                 {
  8144.                     Store (Package (0x02)
  8145.                         {
  8146.                             0x06,
  8147.                             Zero
  8148.                         }, Local0)
  8149.                     Sleep (0x96)
  8150.                     Release (^^PCI0.LPC0.EC0.MUT0)
  8151.                     Return (Local0)
  8152.                 }
  8153.  
  8154.                 If (LNot (^^PCI0.LPC0.EC0.MBTS))
  8155.                 {
  8156.                     Store (Package (0x02)
  8157.                         {
  8158.                             0x06,
  8159.                             Zero
  8160.                         }, Local0)
  8161.                     Sleep (0x96)
  8162.                     Release (^^PCI0.LPC0.EC0.MUT0)
  8163.                     Return (Local0)
  8164.                 }
  8165.  
  8166.                 Store (Package (0x03)
  8167.                     {
  8168.                         Zero,
  8169.                         0x80,
  8170.                         Buffer (0x80) {}
  8171.                     }, Local0)
  8172.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x18, RefOf (Local1))
  8173.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8174.                     One))
  8175.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), Zero))
  8176.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x10, RefOf (Local1))
  8177.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8178.                     0x03))
  8179.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x02))
  8180.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x0F, RefOf (Local1))
  8181.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8182.                     0x05))
  8183.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x04))
  8184.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x0C, RefOf (Local1))
  8185.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8186.                     0x07))
  8187.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x06))
  8188.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x17, RefOf (Local1))
  8189.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8190.                     0x09))
  8191.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x08))
  8192.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x08, RefOf (Local1))
  8193.                 Subtract (Local1, 0x0AAA, Local1)
  8194.                 Divide (Local1, 0x0A, Local2, Local1)
  8195.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8196.                     0x0B))
  8197.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x0A))
  8198.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x09, RefOf (Local1))
  8199.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8200.                     0x0D))
  8201.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x0C))
  8202.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x0A, RefOf (Local1))
  8203.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8204.                     0x0F))
  8205.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x0E))
  8206.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x19, RefOf (Local1))
  8207.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8208.                     0x11))
  8209.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x10))
  8210.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x16, RefOf (Local1))
  8211.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8212.                     0x13))
  8213.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x12))
  8214.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x3F, RefOf (Local1))
  8215.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8216.                     0x15))
  8217.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x14))
  8218.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x3E, RefOf (Local1))
  8219.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8220.                     0x17))
  8221.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x16))
  8222.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x3D, RefOf (Local1))
  8223.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8224.                     0x19))
  8225.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x18))
  8226.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x3C, RefOf (Local1))
  8227.                 Divide (Local1, 0x0100, Local2, Index (DerefOf (Index (Local0, 0x02)),
  8228.                     0x1B))
  8229.                 Store (Local2, Index (DerefOf (Index (Local0, 0x02)), 0x1A))
  8230.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x1C, RefOf (Local1))
  8231.                 Store (ITOS (ToBCD (Local1)), Local3)
  8232.                 Store (0x1C, Local2)
  8233.                 Store (Zero, Local4)
  8234.                 Store (SizeOf (Local3), Local1)
  8235.                 While (Local1)
  8236.                 {
  8237.                     GBFE (Local3, Local4, RefOf (Local5))
  8238.                     PBFE (DerefOf (Index (Local0, 0x02)), Local2, Local5)
  8239.                     Decrement (Local1)
  8240.                     Increment (Local2)
  8241.                     Increment (Local4)
  8242.                 }
  8243.  
  8244.                 Store (0x20, Index (DerefOf (Index (Local0, 0x02)), Local2))
  8245.                 Increment (Local2)
  8246.                 ^^PCI0.LPC0.EC0.SMRD (0x09, 0x16, 0x1B, RefOf (Local1))
  8247.                 And (Local1, 0x1F, Local7)
  8248.                 Store (ITOS (ToBCD (Local7)), Local6)
  8249.                 And (Local1, 0x01E0, Local7)
  8250.                 ShiftRight (Local7, 0x05, Local7)
  8251.                 Store (ITOS (ToBCD (Local7)), Local5)
  8252.                 ShiftRight (Local1, 0x09, Local7)
  8253.                 Add (Local7, 0x07BC, Local7)
  8254.                 Store (ITOS (ToBCD (Local7)), Local4)
  8255.                 Store (0x02, Local1)
  8256.                 Store (0x03, Local7)
  8257.                 While (Local1)
  8258.                 {
  8259.                     GBFE (Local5, Local7, RefOf (Local3))
  8260.                     PBFE (DerefOf (Index (Local0, 0x02)), Local2, Local3)
  8261.                     Decrement (Local1)
  8262.                     Increment (Local2)
  8263.                     Increment (Local7)
  8264.                 }
  8265.  
  8266.                 Store ("/", Index (DerefOf (Index (Local0, 0x02)), Local2))
  8267.                 Increment (Local2)
  8268.                 Store (0x02, Local1)
  8269.                 Store (0x03, Local7)
  8270.                 While (Local1)
  8271.                 {
  8272.                     GBFE (Local6, Local7, RefOf (Local3))
  8273.                     PBFE (DerefOf (Index (Local0, 0x02)), Local2, Local3)
  8274.                     Decrement (Local1)
  8275.                     Increment (Local2)
  8276.                     Increment (Local7)
  8277.                 }
  8278.  
  8279.                 Store ("/", Index (DerefOf (Index (Local0, 0x02)), Local2))
  8280.                 Increment (Local2)
  8281.                 Store (0x04, Local1)
  8282.                 Store (One, Local7)
  8283.                 While (Local1)
  8284.                 {
  8285.                     GBFE (Local4, Local7, RefOf (Local3))
  8286.                     PBFE (DerefOf (Index (Local0, 0x02)), Local2, Local3)
  8287.                     Decrement (Local1)
  8288.                     Increment (Local2)
  8289.                     Increment (Local7)
  8290.                 }
  8291.  
  8292.                 Store (Zero, Index (DerefOf (Index (Local0, 0x02)), Local2))
  8293.                 ^^PCI0.LPC0.EC0.SMRD (0x0B, 0x16, 0x20, RefOf (Local1))
  8294.                 Store (SizeOf (Local1), Local3)
  8295.                 Store (0x2C, Local2)
  8296.                 Store (Zero, Local4)
  8297.                 While (Local3)
  8298.                 {
  8299.                     GBFE (Local1, Local4, RefOf (Local5))
  8300.                     PBFE (DerefOf (Index (Local0, 0x02)), Local2, Local5)
  8301.                     Decrement (Local3)
  8302.                     Increment (Local2)
  8303.                     Increment (Local4)
  8304.                 }
  8305.  
  8306.                 Store (Zero, Index (DerefOf (Index (Local0, 0x02)), Local2))
  8307.                 Sleep (0x96)
  8308.                 Release (^^PCI0.LPC0.EC0.MUT0)
  8309.                 Return (Local0)
  8310.             }
  8311.  
  8312.             Method (GBBT, 0, NotSerialized)
  8313.             {
  8314.                 Store ("HP WMI Command 0x8 (BIOS Read)", Debug)
  8315.                 Store (Package (0x03)
  8316.                     {
  8317.                         Zero,
  8318.                         0x80,
  8319.                         Buffer (0x80)
  8320.                         {
  8321.                             /* 0000 */    0x31, 0x01, 0x9B, 0x01, 0xAE, 0x01, 0x9D, 0x01,
  8322.                             /* 0008 */    0xB6, 0x01, 0xB7, 0x01, 0xFF, 0xFF, 0xE6, 0x20,
  8323.                             /* 0010 */    0x42, 0x21, 0x69, 0x21, 0x6A, 0x21, 0x70, 0x21,
  8324.                             /* 0018 */    0x71, 0x21, 0x72, 0x21, 0x73, 0x21, 0x74, 0x21,
  8325.                             /* 0020 */    0x75, 0x21, 0x76, 0x21, 0x77, 0x21, 0x78, 0x21,
  8326.                             /* 0028 */    0x79, 0x21, 0x7A, 0x21, 0x7B, 0x21, 0x7C, 0x21,
  8327.                             /* 0030 */    0x7D, 0x21, 0x7E, 0x21, 0x7F, 0x21, 0x80, 0x21,
  8328.                             /* 0038 */    0x81, 0x21, 0x82, 0x21, 0x83, 0x21, 0x84, 0x21,
  8329.                             /* 0040 */    0x85, 0x21, 0x86, 0x21, 0x87, 0x21, 0x8D, 0x21,
  8330.                             /* 0048 */    0x8E, 0x21, 0x8F, 0x21, 0x90, 0x21, 0x91, 0x21,
  8331.                             /* 0050 */    0x92, 0x21, 0x93, 0x21, 0x00, 0x00
  8332.                         }
  8333.                     }, Local0)
  8334.                 Return (Local0)
  8335.             }
  8336.  
  8337.             Method (GHKS, 0, NotSerialized)
  8338.             {
  8339.                 Store ("HP WMI Command 0x9 (BIOS Read)", Debug)
  8340.                 Acquire (^^PCI0.LPC0.EC0.MUT0, 0xFFFF)
  8341.                 Store (Package (0x03)
  8342.                     {
  8343.                         Zero,
  8344.                         0x04,
  8345.                         Buffer (0x04) {}
  8346.                     }, Local0)
  8347.                 Store (^^PCI0.LPC0.EC0.GSHK (), Index (DerefOf (Index (Local0, 0x02)), Zero))
  8348.                 Release (^^PCI0.LPC0.EC0.MUT0)
  8349.                 Return (Local0)
  8350.             }
  8351.  
  8352.             Method (SHKS, 1, NotSerialized)
  8353.             {
  8354.                 Store ("HP WMI Command 0x9 (BIOS Write)", Debug)
  8355.                 Acquire (^^PCI0.LPC0.EC0.MUT0, 0xFFFF)
  8356.                 ^^PCI0.LPC0.EC0.SSHK (Arg0)
  8357.                 Release (^^PCI0.LPC0.EC0.MUT0)
  8358.